当我研究一些 DDoS 保护方法时,我遇到了一些防火墙规则,这些规则将设置了 RST 位的数据包限制为每秒 60 个。这确实有些道理。但它也没有检查其他标志。
对我来说,设置了 RST 标志和设置了其他标志的数据包似乎无效,因此我们可以丢弃/拒绝它。
问题是:实际上我们能看到有效的 TCP RST 数据包以及其他 TCP 标志(位)设置吗?
以下是我所谈论的 Linux Iptables 规则:
iptables -A INPUT -p tcp --tcp-flags RST RST -m limit --limit 2/s --limit-burst 2 -j ACCEPT
我认为它应该是这样的:
iptables -A INPUT -p tcp --tcp-flags ALL RST -m limit --limit 2/s --limit-burst 2 -j ACCEPT