我是iptables的新手,我试图确保理解这一陈述。
iptables -t nat -A PREROUTING -p tcp -d 5.5.5.5 --dport 25 -m limit --limit 20/min --limit-burst 25 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -d 5.5.5.5 --dport 25 -j DROP
如果一个地址在20分钟内连接到5.5.5.5超过25次阻止该IP?
答案 0 :(得分:3)
你关闭了。这不是TCP连接级别,而是在数据包级别上。要处理连接而不是数据包 - 您需要使用状态模块。
请参阅:https://www.debian-administration.org/article/187/Using_iptables_to_rate-limit_incoming_connections
仅TCP协议的协商已经是很多数据包了。请参阅:http://www.inetdaemon.com/tutorials/internet/tcp/3-way_handshake.shtml
这两条规则适用于所有以太网设备 - >如果protocol是tcp,目标IP地址是5.5.5.5,目标端口是25个限制传入数据包到每分钟20个,每分钟额外25个可突发数量。超过此限制。
答案 1 :(得分:0)
您可能希望查看fail2ban:它会阻止多个失败的连接。它适用于SSH,可以配置为其他协议。