使用 iptables 限制 UDP 流量

使用 iptables 限制 UDP 流量

我已使用此规则设置了 UDP 流量的限制:

iptables -A INPUT -i eth0 -p udp -m limit --limit 1/s --limit-burst 1000 -j ACCEPT

现在,我时不时会看到 ntpd 服务无法与远程服务器同步。我绝对不想让规则变得不那么严格,因为 --limit 1/s 肯定足以让 ntpd 同步。

是否有某种额外的流量来自 ntpd?

答案1

使用的 udp 限制规则是非特定的,因此如果数据包紧跟导致限制器启动的其他不相关 udp 数据包之后,则 ntpd 同步可能会出现问题。一个建议是专门允许源端口 123:

iptables -A INPUT -i eth0 -p udp --sport 123 -m limit --limit 1/s --limit-burst 1000 -j ACCEPT
iptables -A INPUT -i eth0 -p udp -m limit --limit 1/s --limit-burst 1000 -j ACCEPT

另一个更安全的建议是,仅当数据包是响应您发起的请求时才允许该数据包(可能随后遵循您的原始规则):

iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

相关内容