次のIPtables構成を持つテストサーバーがあります。
[root@rhel64 /]# iptables --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-Host-prohibited
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- anywhere anywhere reject-with icmp-Host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ポート8445でリッスンしているアプリケーションにアクセスしようとすると、拒否されました。 tcpトラフィックを8445に明確に許可するルールを追加したら、それにアクセスできます。私の質問は、「すべて受け入れる-どこでも」というルールがある場合、上記の構成でポート8445がデフォルトで許可されないのはなぜですか?
iptables
-L
/--list
コマンドの長期にわたる設計上の欠陥が原因です。 -v
/--verbose
オプションを使用しない限り、完全なファイアウォールルールは表示されません。これを実行すると、そのルールがすべてのトラフィックを受け入れることがわかります-lo
インターフェース上!