一、使用netstat命令
netstat命令是一种非常实用的命令,可以用来显示网络连接、路由表、网络接口和网络统计信息等。它还可以用来显示系统中正在监听的端口。要查看端口,只需在终端中输入以下命令:
netstat -tuln
这个命令的意思是列出所有TCP、UDP协议的监听状态的网络连接,其中-t表示TCP,-u表示UDP,-l表示仅列出正在监听的端口,-n表示以数字形式显示端口号,而不是使用服务名称。
执行该命令后,您将看到类似于下面的输出:
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 :::22 :: LISTEN
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp6 0 0 :::5353 ::
这个输出显示了系统中所有正在监听的端口,其中22是SSH端口,68是DHCP客户端端口,5353是mDNS协议端口。
二、使用lsof命令
lsof命令是“list open files”的缩写,它可以显示系统中所有打开的文件和进程。它还可以用来显示系统中正在使用的端口。要查看端口,请在终端中输入以下命令:
sudo lsof -i :端口号
其中“端口号”是您要查找的端口号。例如,要查找80端口,请使用以下命令:
sudo lsof -i :80
执行该命令后,您将看到类似于下面的输出:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 1063 root 11u IPv4 10392 0t0 TCP *:http (LISTEN)
nginx 1063 root 12u IPv6 10393 0t0 TCP *:http (LISTEN)
这个输出显示了使用80端口的进程和应用程序。在这个例子中,我们可以看到Nginx web服务器正在使用80端口。
三、使用ss命令
ss命令是Linux系统中的另一种网络监控工具,它可以显示系统中所有的套接字(sockets)。要查看端口,请在终端中输入以下命令:
ss -tuln
这个命令的意思是列出所有TCP、UDP协议的监听状态的套接字,其中-t表示TCP,-u表示UDP,-l表示仅列出正在监听的套接字,-n表示以数字形式显示端口号,而不是使用服务名称。
执行该命令后,您将看到类似于下面的输出:
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 128 :::22 ::
LISTEN 0 128 :::80 ::
这个输出显示了系统中所有正在监听的套接字,其中22是SSH端口,80是HTTP端口。
综上所述,Linux系统提供了多种方法来查看系统中的端口,包括netstat、lsof和ss命令。这些命令非常实用,并且可以用来监控网络连接和端口状态,以确保系统的网络安全和稳定性。