0xC*_*22L 5 iptables ipset netfilter
connlimit让我限制每个客户端/服务的连接数。我如何将这样的规则与最新版本的 Linux 内核和 netfilter 中可用的 IP 集结合起来?
小智 4
假设我们有一个名为 的 ipset MYTESTSET,并且该 ipset 的类型为hash:ip。它只会存储 ip 地址。
然后与您的 IPset 进行匹配,并在与connlimit匹配扩展进行匹配后,使用您想要的参数。
iptables -A INPUT -p tcp
-m set --match-set MYTESTSET src
-m connlimit --connlimit-above 1 --connlimit-saddr --connlimit-mask 32
-j DROP
这将执行以下操作:对于 IP 集中的每个源,将计算连接数,如果有多个 (--connlimit-above 1),它将被丢弃,从而限制ipset 中每个源的连接数到 1。(您也可以使用其他方式进行匹配,使用--connlimit-upto xxxand-j ACCEPT代替DROP)
如果您想考虑整个集合并允许ipset 中的所有源有1 个连接,则将--connlimit-mask开关设置为 0。
| 归档时间: |
|
| 查看次数: |
1558 次 |
| 最近记录: |