在Linux系统中,检查监听(listening)端口的状态是确保网络服务和应用程序正常运行的重要步骤。以下是一些常用的方法来检查哪些端口正在监听:
netstat
命令netstat
是一个强大的网络统计工具,可以显示网络连接、路由表、接口统计等信息。
sudo netstat -tuln
-t
:显示TCP端口。-u
:显示UDP端口。-l
:仅显示监听状态的套接字。-n
:以数字形式显示地址和端口号。示例输出:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp6 0 0 :::80 :::* LISTEN
udp 0 0 0.0.0.0:123 0.0.0.0:*
ss
命令ss
是 netstat
的替代品,性能更好,输出更简洁。
sudo ss -tuln
示例输出:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 *:80 *:*
lsof
命令lsof
可以列出当前系统打开的文件和使用这些文件的进程。
sudo lsof -i -P -n | grep LISTEN
-i
:显示网络相关的文件。-P
:不将端口号转换为服务名。-n
:不将IP地址转换为主机名。示例输出:
sshd 1234 root 3u IPv4 12345 0t0 TCP *:22 (LISTEN)
nginx 5678 www-data 6u IPv4 23456 0t0 TCP *:80 (LISTEN)
如果在检查过程中发现某些端口未按预期处于监听状态,可能是以下原因:
iptables
或 firewalld
检查防火墙规则。iptables
或 firewalld
检查防火墙规则。通过以上方法,可以有效检查和诊断Linux系统中的监听端口状态,确保网络服务的正常运行。
领取专属 10元无门槛券
手把手带您无忧上云