我想知道,有人可以帮助我理解/解释这个 iptables 规则到底起什么作用吗?
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Dropped"
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP
谢谢
答案1
好吧,这里有两条规则。我将逐一介绍它们。
我认为以下内容正确:
规则1
-A INPUT
将此规则添加到 INPUT 链
-i eth0
此规则仅适用于通过 eth0 到达的数据包
-p tcp
此规则仅适用于 tcp 流量
! --syn
匹配未设置 SYN 位的数据包。
-m state
跟踪此连接的状态。
-state NEW
这仅适用于新连接。
-m limit
调用速率限制器。
--limit 5/m
每分钟限制比赛场次为 5 场。
--limit-burst 7
将初始匹配数据包的最大数量设置为 7。
-j LOG
将此条目写入 iptables 日志。
--log-level
将日志详细程度设置为 4。
--log-prefix "Dropped"
在日志消息前面加上“Dropped”。
规则 2
-A INPUT
将此规则添加到 INPUT 链
-i eth0
此规则仅适用于通过 eth0 到达的数据包
-p tcp
此规则仅适用于 tcp 流量
! --syn
此规则不适用于 SYN 数据包。
-m state
跟踪此连接的状态。
--state NEW
这仅适用于新连接。
-j DROP
丢弃符合上述条件的数据包。
答案2
记录坏的 tcp 包(每分钟 5 个,最多 7 个)并丢弃