限制单个IP并发TCP连接的方法适应于保护Linux上的各种TCP服务,使用iptables 中patch-o-matic中iplimit补丁来实现,对各种TCP服务比较通用。
做法:
配置Linux核心,使用2.4.20,并使用www.netfilter.org中patch-o-matic中的 base补丁中的iplimit。编译配置安装新核心。
使用www.netfilter.org的 iptables 1.2.8,安装到系统中。
示例:
1 限制连往本机的telnet单个IP并发连接为2个,超过的连接被拒绝:
iptables -I INPUT -p tcp --dport 23 -m iplimit --iplimit-above 2 -j REJECT
2 限制连往本机的web服务,1个C段的IP的并发连接不超过100个,超过的被拒绝:
iptables -I INPUT -p tcp --dport 80 -m iplimit --iplimit-above 100 --iplimit-mask 24 -j REJECT