iptables 在自定义链中忽略 REJECT,但在主链中有效

iptables 在自定义链中忽略 REJECT,但在主链中有效

我为 smtp 服务器配置了一个带有 fail2ban 的服务器。现在,fail2ban 正确地禁止了 IP,我可以在 fail2ban 的 iptables 链中看到它们。但是,内核似乎忽略了 iptables fail2ban 链 REJECT 规则。相反,如果我将相同的规则添加到 INPUT 链,它就会起作用。

的输出iptables -L -n -v为:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  207  8339 f2b-postfix  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 80,443,25,587,110,995,143,993,4190
   17  2172 REJECT     all  --  *      *       141.98.11.68         0.0.0.0/0            reject-with icmp-port-unreachable

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain f2b-postfix (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       141.98.11.68         0.0.0.0/0            reject-with icmp-port-unreachable
  207  8339 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

如您所见,链REJECT中的规则f2b-postfix被忽略(0 个数据包),所有数据包都符合规则RETURN。但是,如果我REJECTINPUT链中添加相同的规则,它会起作用并拒绝数据包。

为了确保万无一失,我还检查了原始 iptables 配置:

-A INPUT -s 141.98.11.68/32 -j REJECT --reject-with icmp-port-unreachable
-A f2b-postfix -s 141.98.11.68/32 -j REJECT --reject-with icmp-port-unreachable

但两条规则是相同的。

任何想法?

相关内容