FIREWALLD 与 IPTABLES -NOTRACK 的等效性是什么

FIREWALLD 与 IPTABLES -NOTRACK 的等效性是什么

我最近转换到了 centos 7,到目前为止,我开始喜欢防火墙结构中区域的简单性,但是我似乎找不到firewalldiptables“NOTRACK”这样的配置参数,它基本上忽略了传入连接的状态。换句话说,我需要一个无状态firewalld设置,以便跟上进入我的 DNS 缓存服务器的查询量。

这是我使用的语法iptables

iptables -t raw -I OUTPUT -p udp --dport 53 -j NOTRACK
iptables -t raw -I OUTPUT -p udp --sport 53 -j NOTRACK
iptables -t raw -I PREROUTING -p udp --dport 53 -j NOTRACK
iptables -t raw -I PREROUTING -p udp --sport 53 -j NOTRACK
iptables -I INPUT -p udp --dport 53 -j ACCEPT
iptables -I INPUT -p udp --sport 53 -j ACCEPT
iptables -I OUTPUT -p udp --dport 53 -j ACCEPT

ip6tables -t raw -I OUTPUT -p udp --dport 53 -j NOTRACK
ip6tables -t raw -I OUTPUT -p udp --sport 53 -j NOTRACK
ip6tables -t raw -I PREROUTING -p udp --sport 53 -j NOTRACK
ip6tables -t raw -I PREROUTING -p udp --dport 53 -j NOTRACK
ip6tables -I INPUT -p udp --dport 53 -j ACCEPT
ip6tables -I INPUT -p udp --sport 53 -j ACCEPT
ip6tables -I OUTPUT -p udp --dport 53 -j ACCEPT

答案1

我不记得将流量标记为 NOTRACK 的语法,但在原始表中执行此操作是正确的。

您需要一个规则来 iptables -A INPUT -m state --state NOTRACK -j ACCEPT 真正让流量通过。(以及针对 IPv6 的对应规则)。

答案2

使用直接规则

Raw

# firewall-cmd --direct --add-rule ipv4 raw PREROUTING 0 -p udp --dport 53 -j NOTRACK
# firewall-cmd --direct --add-rule ipv4 raw PREROUTING 0 -p udp --sport 53 -j NOTRACK
# firewall-cmd --direct --add-rule ipv4 raw OUTPUT 0 -p udp --dport 53 -j NOTRACK
# firewall-cmd --direct --add-rule ipv4 raw OUTPUT 0 -p udp --sport 53 -j NOTRACK

--permanent一旦您测试了规则是否有效,就将其添加到上述内容中。

有关详细信息,请参阅For more info, see如何使用firewalld禁用连接跟踪(conntrack)?

相关内容