web-dev-qa-db-ja.com

LinuxはDDOSに対して低レベルでudpをブロックします

私のサーバーは現在、1秒あたり約50万のUDPパケットでDDOS攻撃を受けています。

UDPはiptablesでブロックされていますが、プロセッサはまだ過負荷です。

下位レベルでUDPをブロックして、パケットをすべてのiptablesチェーン/モジュールに渡さずに、以前でもドロップする方法はありますか?

1
Vilial

https://unix.stackexchange.com/questions/243079/netfilter-iptables-why-not-)の図に示すように、パケットをドロップする可能性のある最も早いポイントはiptables rawテーブルです。 using-the-raw-table

次のように、PREROUTINGチェーン内のパケットをドロップできます。

iptables -t raw -A PREROUTING -p udp -j DROP

ただし、このアプローチでは、接続追跡が行われる前にrawテーブルの処理が行われるため、サーバーによって開始された要求に対するDNS応答もドロップします。

次のように、許可されたUDPホストを追加できます。

iptables -t raw -A PREROUTING -p udp -s !nnn.nnn.nnn.nnn -j DROP

どこ nnn.nnn.nnn.nnnは、UDPトラフィックを受信するホストのIPアドレスです。

サーバーによっては、接続追跡の前にUDPトラフィックを無効にすると、他の結果が生じる可能性もあります。

4
Tero Kilkanen