<a href="https://s2.51cto.com/wyfs02/M01/A5/F6/wKioL1nGTTCwE0p9AAGVJibPwX0491.png" target="_blank"></a>
命令:
iptables -N syn-flood
iptables -A syn-flood -m limit --limit 50/s --limit-burst 10 -j RETURN
iptables -A syn-flood -j DROP
iptables -I INPUT -j syn-flood
解释:
-N 创建一个条新的链
--limit 50/s 表示每秒50次;1/m 则为每分钟一次
--limit-burst 表示允许触发 limit 限制的最大包个数 (预设5),它就像是一个容器,最多装10个,超过10个就装不下了,这些包就给后面的规则了
-I INPUT -j syn-flood 把INPUT的包交给syn-flood链处理
这里的--limit-burst=10相当于说最开始有10个可以匹配的包去转发,然后匹配的包的个数是根据--limit=50/s进行限制的,也就是每秒限制转发50个数据包,多余的会被下面符合要求的DROP规则去处理,进行丢弃,这样就实现了对数据包的限速问题。
扩展:<内容来自《云计算网络珠玑》>
<a href="https://s2.51cto.com/wyfs02/M00/A5/F6/wKioL1nGTl6i0nTNAAbXleIhaNA962.png-wh_500x0-wm_3-wmp_4-s_1992914726.png" target="_blank"></a>
本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1968041,如需转载请自行联系原作者