Ubuntu

“打開”埠並未真正打開

  • April 10, 2022

我使用以下命令在 Ubuntu 中打開 2022 埠:

sudo iptables -A INPUT -p tcp --dport 2022 -j ACCEPT

但是如果我在埠 2022 上啟動一個 Web 伺服器,它就無法訪問。

如果我執行命令查看打開的埠:

sudo iptables -vnL

輸出開始於

在此處輸入圖像描述

現在,顯示在那裡的埠(如 3000 或 4000)可以工作,但 2022 不能。

發生了什麼,如何啟用埠 2022?

順序很重要。您在 iptables 中的 2022 條目在後面DROP,因此DROP首先匹配並且您的ACCEPT條目永遠不會到達。

您需要插入而不是附加(-I而不是-A)。

開放埠是包過濾器不阻塞的埠。為了使這個埠可以訪問,必須綁定一些東西,並且在 TCP 的情況下,開始監聽它。

您可以使用ss -nl或來檢查是否正在執行此操作netstat -an | grep LISTEN

引用自:https://serverfault.com/questions/1098249