我知道这是一个奇怪的问题,但我找不到任何解决方案。我有一个问题,通过这些规则(来自iptables-save
):
-A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/sec --limit-burst 2 -j ACCEPT
-A INPUT -p tcp -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
只要符合速率限制规则,所有端口都是开放的。那么,我如何才能让这些规则拒绝所有超过速率限制的连接,而不是允许所有低于速率限制的连接?
答案1
建议:您应该遵循此规则来防止阻止正在进行的连接:
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/sec --limit-burst 2 -j ACCEPT
-A INPUT -p tcp -m conntrack --ctstate NEW -m limit --limit 60/sec --limit-burst 20 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags RST RST -j DROP
-A INPUT -p tcp -m conntrack --ctstate NEW -j DROP
现在,所有不被第一条规则接受的匹配流量都将被丢弃。