
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
。ただし、チェーン内に同じREJECT
ルールを追加するとINPUT
、ルールが機能し、パケットが拒否されます。
念のため、生の 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
しかし、2つのルールは同じです。
何か案が?