当你管理一个Linux服务器时,了解服务器上正在运行的服务以及它们使用的端口是至关重要的。这可以帮助你确保服务正常运行,定位问题,以及提高服务器的安全性。在这篇博客文章中,我将向你介绍如何使用Linux命令来查看服务端口号。
查看所有打开的端口
要查看服务器上所有打开的端口,可以使用以下命令:
sudo netstat -tulpn
这个命令会显示所有正在运行的服务及它们所使用的端口号。其中:
-t
: 显示TCP端口-u
: 显示UDP端口-l
: 仅显示监听状态的端口-p
: 显示与端口关联的进程信息-n
: 以数字形式显示端口号,而不是服务名称
这将输出类似以下的信息:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 5678/apache2
udp 0 0 0.0.0.0:53 0.0.0.0:* 901/bind
这个例子中,SSH服务使用端口22,Apache服务使用端口80,DNS服务使用端口53。
查看特定端口是否被使用
如果你想检查特定端口是否被使用,可以使用以下命令:
sudo lsof -i :端口号
例如,要检查端口80是否被使用,可以运行:
sudo lsof -i :80
这将显示使用端口80的进程信息。
使用ss命令
ss
是netstat
的替代工具,也可以用来查看端口信息:
sudo ss -tulpn
这个命令的输出与netstat
类似。
通过这些命令,你可以轻松地监控服务器上的端口活动,确保服务正常运行,并及时发现潜在的问题。记得在使用这些命令时使用sudo
,以确保你有足够的权限来访问有关端口和进程的信息。