Iptables
為什麼 iptables 不阻塞任何埠?
我執行了 iptables 並應用了最新的規則(即我重新啟動了服務,它說一切正常)。
我只使用 system-config-firewall 來編輯/定義任何規則,所以我不應該有手動創建的錯誤。如果可以避免,我不想手動編輯它。
我以為我已經對其進行了配置,以便我的 Apache 埠打開
80
,443
但不是 Tomcat 正在偵聽的埠(即8080
,8443
)。然而,事實並非如此……我可以在任何機器上毫無問題地瀏覽它們。最終,我確實希望 Tomcat 埠可以訪問,但我不明白為什麼它們已經存在。我預計我需要明確打開它們。
此外,在我添加規則以顯式打開它們之前,我的所有郵件埠也都可以訪問(
110
,143
,587
,993
,995
…)再次,我確實希望這些打開,但我不明白為什麼它們總是如此?這是我的 iptables 輸出。為什麼一切似乎都是開放的?可能是因為沒有 OUTPUT 規則?另外,為什麼會有看似重複的規則?system-config-firewall 是否無法控制此類重複項?我怎樣才能清理它?我想只能通過手動編輯…
Chain INPUT (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 2834 692K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 5 511 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 3 14 990 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 4 114 6717 ACCEPT all -- eth0 * 0.0.0.0/0 0.0.0.0/0 5 0 0 ACCEPT all -- eth1 * 0.0.0.0/0 0.0.0.0/0 6 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 7 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 8 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:443 9 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:25 10 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:993 11 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:995 12 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 13 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 14 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:443 15 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:993 16 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:995 17 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:110 18 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:143 19 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:587 20 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:465 21 0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 3 0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 4 0 0 ACCEPT all -- eth0 * 0.0.0.0/0 0.0.0.0/0 5 0 0 ACCEPT all -- eth1 * 0.0.0.0/0 0.0.0.0/0 6 0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT 3208 packets, 1537K bytes) num pkts bytes target prot opt in out source destination
請參閱 INPUT 鏈中的第 3、4 和 5 行 - 這些規則允許來自介面 eth0、eth1 和 lo 的任何埠的任何數據包通過。IPTables 與第一個匹配規則一起使用,因此當數據包獲得第一個允許/拒絕它的規則時,它就會被應用。您應該只為確切的埠設置規則並拒絕任何其他流量。