web-dev-qa-db-ja.com

iptablesのすべての宛先のすべてをACCEPTするとポート8445が許可されないのはなぜですか?

次の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がデフォルトで許可されないのはなぜですか?

3
Joel Ginsberg

iptables-L/--listコマンドの長期にわたる設計上の欠陥が原因です。 -v/--verboseオプションを使用しない限り、完全なファイアウォールルールは表示されません。これを実行すると、そのルールがすべてのトラフィックを受け入れることがわかります-loインターフェース上!

4
Michael Hampton