gws Asked: 2022-04-10 13:30:34 +0800 CST2022-04-10 13:30:34 +0800 CST 2022-04-10 13:30:34 +0800 CST “打开”端口并未真正打开 772 我使用以下命令在 Ubuntu 中打开 2022 端口: sudo iptables -A INPUT -p tcp --dport 2022 -j ACCEPT 但是如果我在端口 2022 上启动一个 Web 服务器,它就无法访问。 如果我运行命令查看打开的端口: sudo iptables -vnL 输出开始于 现在,显示在那里的端口(如 3000 或 4000)可以工作,但 2022 不能。 发生了什么,如何启用端口 2022? ubuntu port iptables 2 个回答 Voted Best Answer Gerald Schneider 2022-04-10T22:26:08+08:002022-04-10T22:26:08+08:00 顺序很重要。您在 iptables 中的 2022 条目在后面DROP,因此DROP首先匹配并且您的ACCEPT条目永远不会到达。 您需要插入而不是附加(-I而不是-A)。 drookie 2022-04-10T22:10:16+08:002022-04-10T22:10:16+08:00 开放端口是包过滤器不阻塞的端口。为了使这个端口可以访问,必须绑定一些东西,并且在 TCP 的情况下,开始监听它。 您可以使用ss -nl或来检查是否正在执行此操作netstat -an | grep LISTEN。
顺序很重要。您在 iptables 中的 2022 条目在后面
DROP
,因此DROP
首先匹配并且您的ACCEPT
条目永远不会到达。您需要插入而不是附加(
-I
而不是-A
)。开放端口是包过滤器不阻塞的端口。为了使这个端口可以访问,必须绑定一些东西,并且在 TCP 的情况下,开始监听它。
您可以使用
ss -nl
或来检查是否正在执行此操作netstat -an | grep LISTEN
。