最近、毎秒1つのTCP接続のみを許可するポート2421のサーバーでSyn-Floodを防止しようとしていましたが、既存の接続を停止しないでください。 。私のスクリプトに問題がありますか?
#!/bin/bash
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -p tcp --dport 2421 --syn -m limit --limit 1/second --limit-burst 3 -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED -j ACCEPT
答え1
あなたのコードは動作します。問題は別の場所にあります。
ルールがまったく影響を受けるかどうかを確認できます。
iptables -nvL INPUT
誤ってIPv6を使用した可能性があります(このアドレスが使用されている場合は、localhost
代わりに127.0.0.1を使用してください)。
iptables
またはそれ以降の製品を除いて使用中ですnftables
。確認してください
nft list ruleset