如何在 Ubuntu 中打开端口

如何在 Ubuntu 中打开端口
  • 我的无线网络正在监听 192.168.1.4
  • SSH 正在监听 192.168.1.4:22
  • 防火墙未运行
  • 未配置 TCP 包装器,
  • 我可以无线连接到互联网
  • 我的内核日志显示我正在尝试从另一台主机连接,但 nmap 扫描显示所有端口都已关闭。

我如何打开一个端口?

答案1

您有公共 IP 地址吗?您在哪里运行 NMAP?听起来您正在尝试使用来自互联网的本地网络 IP。实际上,计算机不在同一个网络中,无法相互访问。相反,您应该使用面向互联网的 IP 地址。

在检查端口是否打开之前,尝试在主机之间运行 ping 命令。

在源计算机上:

ping 192.168.1.4

如果 ping 数据包通过,则两台计算机之间可以建立连接。

然后您也可以在主机上运行 netstat -l 命令来查看 SSH 守护进程是否确实监听了 22 端口:

netstat -l

答案2

您的问题不太清楚,您介意解释一下吗?

除非服务在端口上运行,否则 nmap 不会将其显示为打开。据我所知,在 Ubuntu 中,iptables 的默认策略是接受,因此如果您启动在 X 端口上运行的服务,它将毫无问题地通过防火墙。因此,这些端口并不是真正“关闭”的,因为它们被阻止了,只是没有任何东西可以监听它们上的任何内容。

话虽如此,如果你想明确打开一个端口,你可以用 iptables 打开它

iptables -I INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -p udp --dport 53 -j ACCEPT

您可以将 -p 更改为不同的协议,将 --dport 更改为不同的端口号。iptables 还有一大堆其他选项可供您查看。如果您想阻止它们,可以将 -j ACCEPT 更改为 DROP 或 REJECT。

相关内容