MGP*_*MGP 9 ssh iptables brute-force-attacks
我正在尝试将 iptables 规则设置为每分钟仅允许 3 次 IP 尝试通过 SSH 连接到 servir,然后断开所有连接以防止 SSH 攻击;但似乎我做错了什么!
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set --name DEFAULT --rsource
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --name DEFAULT --rsource -j DROP
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
谢谢
Gre*_*SAT 10
我认为您最好使用fail2ban,因为您的 ipfilter 规则也会阻止合法连接。fail2ban只会在连接失败后阻止 IP。
接下来,一种常见的做法是在尝试连接到端口 22 时禁止 IP,并将您的 ssh 服务器绑定到另一个端口。如果您的计算机不是众所周知的目标,那么您每周只会面临几个非法连接。
对于您提出的确切问题:
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP
Run Code Online (Sandbox Code Playgroud)
您可以使用以下 2 条规则实现您想要的
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 -j DROP
Run Code Online (Sandbox Code Playgroud)
请注意,使用-Awhich 将规则添加到链的末尾可能会违反 iptables 规则的处理方式,即按顺序处理,因此如果在达到您的规则之前有一般的 DROP 或允许规则,那么它们将永远不会被执行。
话虽如此,您可能还会发现fail2ban是实现此类块的更好方法。
| 归档时间: |
|
| 查看次数: |
713 次 |
| 最近记录: |