私のサーバーは、次のようにtcpdumpを使用してキャプチャされた特定のポート(7777)をターゲットとする単一のIPでフラッディングされます。
16:38:35.079994 IP 20.195.191.67.58074 > 12.34.56.78.7777: UDP、長さ 4
ソースIPをブロックするために2つの方法を試しました。
ip route add blackhole 20.195.191.67/32
iptables -A INPUT -s 20.195.191.67 -j DROP
ただし、tcpdumpは変更を報告しません。そのIPのトラフィックは引き続き発生します。私のサーバーはまだその影響を感じています(サービスはほとんど応答しません)。
ここで何か抜けましたか? IPをブロックしようとしても効果がないのはなぜですか?
答え1
ここで何か抜けましたか? IPをブロックしようとしても効果がないのはなぜですか?
ポート7777(アンリアルトーナメントサーバー?)このパケットはとにかく破棄されます。 iptablesにこれを具体的に削除するように指示すると、Linuxはそのポートでリッスンしているプログラムを見つけることができません。パケットはまだサーバーに到達して処理されます。
これは専用のファイアウォールを置き、実際に必要なサーバーのポートのみを開く必要がある大きな理由です。ほとんどはそのようなシナリオのための一種の洪水検知/防止機能を備えています。
残念ながら、誰かが単一の(使用されていない)ポートにパケットを送信してサーバーを超える可能性がある場合、これを防ぐためにサーバー自体で行うことはできません。
答え2
他の回答で述べたように、iptables/ファイアウォールの有無にかかわらず、サーバーはまだパケットを処理する必要があります。あなたが試すことができるのは、ルーターでIPをブロックしたり、IPブロックを処理する「Cloudflare」などのサービスを介してすべてのトラフィックを集中することです(ハードウェアはパケットフラッドを処理する必要はありません)。
答え3
特定のIPの攻撃を自動的にブロックするfall2banのインストールを検討してください。今こうすれば効果があると思います。
iptablesに関しては、次のことを行う必要があります。service iptables save