Linux中查看监听中的端口

netstat

netstat命令可提供网络连接相关的信息。想要查看所有监听中的TCP或UDP端口,包含使用端口和套接字状态的服务,可使用如下命令

sudo netstat -tunlp

命令中的选项参数有如下含义

  • -t -显示TCP端口。

  • -u -显示UDP端口。

  • -n -显示数字地址而不是解析主机。

  • -l -仅显示监听端口。

  • -p -显示监听进程的PID和名称。仅当以root用户或 sudo 用户身份运行命令时,才会显示此信息。

也可以使用grep命令对查询结果做一些筛选。例如,查看哪个进程使用TCP协议监听端口22,可执行如下命令

sudo netstat -tnlp | grep :22

ss

ss是新版netstat,它缺少netstat的部分功能,但它能够显示更多关于TCP的信息,而且比netstat更快。命令选项都差不多,想要使用ss命令获取监听中的端口,可使用如下命令:

sudo ss -tunlp

lsof

通过lsof命令获取监听端口列表

sudo lsof -nP -iTCP -sTCP:LISTEN

使用的命令选项有如下含义

  • -n -不要将端口号转换为端口名称。
  • -p -不解析主机名,显示数字地址。
  • -iTCP -sTCP:LISTEN - 仅显示TCP状态为LISTEN的网络文件。

想要查看特定端口的进程监听信息,例如想查看端口3306,可使用如下命令:

sudo lsof -nP -iTCP:3306 -sTCP:LISTEN

你可能感兴趣的:(基础常识,linux,运维,服务器)