私のiptablesは私が望んでいたものとは逆に動作します

私のiptablesは私が望んでいたものとは逆に動作します

私にはこの一連のiptablesルールがあります...

$ sudo iptables -n -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
LOG        all  --  0.0.0.0/0            0.0.0.0/0           limit: avg 5/min bu
REJECT     tcp  --  192.168.1.134        0.0.0.0/0           tcp dpt:22 reject-w

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

... 上記は 192.168.1.134 をブロックしますが、192.168.1.134 からの試行はログに記録されません。代わりに、他のクライアントからの接続がログに記録されます。ドロップされたパケットのみをログに記録したいのです。私がやりたいのは、ドロップされたパケットをすべてログに記録することです。

答え1

既存のLOGルールを削除し、一致するパケットのみをログに記録するルールに置き換えます。これは、ルール--dport 22によって拒否される同じパケットと一致します。REJECT

iptables -D INPUT 1  # Deletes rule 1 on INPUT chain
iptables -I INPUT 1 -p tcp -s 192.168.1.134 --dport 22 -j LOG

関連情報