ヌルルートでサービス拒否(DoS)をブロックする方法

ヌルルートでサービス拒否(DoS)をブロックする方法

server high load

この記事では、サーバーの高負荷の問題を解決するために、サービス拒否(DoS)IPとそのnull routeを見つける方法について説明します。

1. 高負荷

最近、サーバーは異常に高い負荷、CPU使用率のヒット、平均15〜20%に達しました。

#top

load average: 15.08, 18.30, 20.63

2. 接続されているのは誰ですか?

これがDOS攻撃なのか、単一のIPだけが接続を悪用するのかわかりませんか? 次のコマンドをlist all the IP addresses connected to my serverに発行します。

#netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

     215 122.163.226.243
     189 114.198.236.100
     156 120.63.179.245
     38 141.0.9.20
     37 49.248.0.2
     37 153.100.131.12
     31 223.62.169.73
     30 65.248.100.253
     29 203.112.82.128
     29 182.19.66.187

以下の3つのIPは150以上の接続を取得していますが、これは本当に異常なことですが、何をしようとしているのですか?

 215 122.163.226.243
 189 114.198.236.100
 156 120.63.179.245

P.S Google above IPs, 2 are from India, 1 from Pakistan.

3. ヌルルート

上記の3つのIPが高負荷の問題の根本原因であると考え、それらのIPをヌルルーティングして、これらの3つのIPからのすべての着信接続がドロップまたは無視されるようにします。

nullルートコマンド

route add 122.163.226.243 gw 127.0.0.1 lo
route add 114.198.236.100 gw 127.0.0.1 lo
route add 120.63.179.245 gw 127.0.0.1 lo

代替コマンド
次のコマンドを使用してIPをヌルルーティングすることもできます。どちらも同じことを実行します。

route add -host 122.163.226.243 reject
route add -host 114.198.236.100 reject
route add -host 120.63.179.245 reject

netstat -nrを使用してすべてのルートを表示し、ルートテーブルに追加されていることを確認します。

# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
114.198.236.100 127.0.0.1       255.255.255.255 UGH       0 0          0 lo
120.63.179.245  127.0.0.1       255.255.255.255 UGH       0 0          0 lo
122.163.226.243 127.0.0.1       255.255.255.255 UGH       0 0          0 lo

完了し、数秒待ってからサーバーの負荷をもう一度確認してください。これで正常に戻りました。

#top

load average: 1.08, 5.30, 30.63

接続されているすべてのIPをもう一度確認すると、それらの攻撃者のIPはなくなります。

#netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head

     40 141.0.9.20
     37 49.248.0.2
     36 153.100.131.12
     31 223.62.169.73
     25 65.248.100.253
     29 203.112.82.128
     29 182.19.66.187
     38 142.0.9.20
     28 141.121.9.20
     38 141.0.9.201

完了しました。

4. ヌルルートを削除

既存のヌルルートIPを削除するには、route deleteを使用します。

route delete 122.163.226.243
route delete 114.198.236.100
route delete 120.63.179.245

CSF Firewall
サービス拒否(DoS)を防ぐには、CSFをセットアップし、CT_LIMITをlimit the number of connections from IP to access serverに構成してみてください。