Linux 实用指令之查看端口开启情况
- 本文目录导读:
- 1、 netstat
- 2、 lsof
- 3、 ss
- 4、总结:
作为一名 Linux 系统管理员,了解如何查看端口开启情况是必不可少的。在这篇文章中,我们将介绍几个实用的命令行工具来帮助你检查系统上正在运行的进程和它们所侦听的端口。
1. netstat
netstat 命令可以显示活动网络连接、路由表信息以及网络接口状态等内容。使用该命令时需要加参数 -t 或者 -u 来只显示 TCP 或 UDP 协议相关信息。
例如:
```
netstat -t // 显示所有 TCP 协议相关信息
netstat -u // 显示所有 UDP 协议相关信息
另外,还可以加上参数 -n 来禁止进行域名解析,直接输出 IP 地址和端口号。
netstat -tn // 只显示 TCP 连接,并且不进行 DNS 解析
如果想要过滤掉某些结果,则可以使用 grep 命令来过滤。比如只想要查询 80 端口是否被监听,则可以输入以下命令:
sudo netstat -anp | grep ':80'
其中 `-a` 参数表示列出所有连接;`-n` 参数表示不对数字地址或者名称进行解析操作;`-p` 表示同时列出 PID 和程序名称。
2. lsof
lsof 命令可以列出当前系统中打开的所有文件和网络连接。我们可以通过过滤器来找到特定端口上运行的进程。
例如,要查看 8080 端口是否被占用,输入以下命令:
sudo lsof -i :8080
输出结果会显示在该端口上执行的进程名称、PID 和其他相关信息。
3. ss
ss 是一个更快速、更高效且功能更强大的 netstat 替代工具。它能够显示 TCP 和 UDP 的详细信息,并支持各种过滤器和排序方式。
要使用 ss 命令检查某个端口是否被监听,只需要输入以下命令:
sudo ss -plnt | grep ':80'
其中 `-p` 参数表示同时列出 PID 和程序名称;`-l` 表示只显示侦听状态下的套接字;`-n` 则是禁止进行 DNS 解析操作;而 `-t/-u/-w/-x` 分别表示查询 TCP/UDP/Raw/SCTP 协议相关信息。
总结:
以上三个命令都是 Linux 系统管理员必备技能之一,在日常工作中经常会用到。如果你想了解更多关于如何使用这些实用指令来管理 Linux 系统,请参考相应文档或者在线教程。
无论你是一名 Linux 初学者还是经验丰富的专业人士,了解如何查看端口开启情况都是必不可少的技能。使用上述命令可以让你快速找到系统中正在运行的进程和它们所侦听的端口,从而更好地管理和维护你的服务器。
希望这篇文章对你有所帮助。如果您有任何建议或反馈,请在评论区留言!