私はDDoS予防の一環として、次の規則を適用します。
なりすましパケット保護
-A INPUT -s 255.0.0.0/8 -j LOG --log-prefix "Spoofed source IP"
-A INPUT -s 255.0.0.0/8 -j DROP
-A INPUT -s 0.0.0.0/8 -j LOG --log-prefix "Spoofed source IP"
-A INPUT -s 0.0.0.0/8 -j DROP
ステルススキャンとTCP SYNフラッド防止
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "Stealth scan attempt?"
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
これで、IPアドレスごとに1分間に許可される接続数を適用したいと思います。そのために拡張機能を使用する予定です--limit
。しかし、今はまだ拡張機能を使用することをお勧めします--cstate
。聞くことはほとんどありません。
- iptablesが分/秒あたりのIPアドレスごとに許可するデフォルトの接続数は何ですか?
- 分/秒あたりのデフォルト接続は何ですか?オペレーティングシステムレベルでのそのような制限
1 秒あたり 60 の接続が許可されていると仮定し、その制限を超えると、1 秒あたり 25 の接続を強制します。これを行うには、次の規則をお勧めします。
/sbin/iptables -A INPUT -p tcp -m conntrack --ctstate NEW -m limit --limit 25/s --limit-burst 60 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m conntrack --ctstate NEW -j DROP
最初のルールを追加した後に2番目のルールが必要かどうか。