返回

技术指南:如何使用Linux检查端口占用情况,保障服务器安全

开发工具

如何使用 lsof 命令查看端口占用情况

lsof 是一个功能强大的命令行工具,可以列出当前系统打开的文件。通过使用 lsof 命令,我们可以轻松查看哪些进程正在使用哪些端口。

1. 安装 lsof 命令

lsof 命令通常预装在大多数 Linux 发行版中。如果您尚未安装 lsof,可以使用以下命令进行安装:

sudo apt-get install lsof

2. 使用 lsof 命令查看端口占用情况

要使用 lsof 命令查看端口占用情况,请执行以下步骤:

  1. 打开终端窗口。
  2. 输入以下命令:
sudo lsof -iTCP -sTCP:LISTEN

3. 查看输出结果

lsof 命令将列出所有正在监听 TCP 端口的进程。输出结果如下所示:

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd      2109 root   10u  IPv6 52068      0t0  TCP *:ssh (LISTEN)
nginx     2148 nginx  10u  IPv4 54724      0t0  TCP *:http (LISTEN)

在上面的示例中,我们可以看到 sshd 和 nginx 进程正在监听端口 22 和 80。

如何使用 netstat 命令查看端口占用情况

netstat 是另一个常用的命令行工具,可以显示网络连接、端口占用情况等信息。

1. 安装 netstat 命令

netstat 命令通常预装在大多数 Linux 发行版中。如果您尚未安装 netstat,可以使用以下命令进行安装:

sudo apt-get install net-tools

2. 使用 netstat 命令查看端口占用情况

要使用 netstat 命令查看端口占用情况,请执行以下步骤:

  1. 打开终端窗口。
  2. 输入以下命令:
sudo netstat -tulpn

3. 查看输出结果

netstat 命令将列出所有正在监听 TCP 和 UDP 端口的进程。输出结果如下所示:

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      2109/sshd
tcp        0      0 127.0.0.1:80             0.0.0.0:*               LISTEN      2148/nginx

在上面的示例中,我们可以看到 sshd 和 nginx 进程正在监听端口 22 和 80。

总结

通过使用 lsof 和 netstat 命令,我们可以轻松查看 Linux 服务器中端口占用情况。掌握端口占用情况对于保障系统安全至关重要。我们可以通过定期检查端口占用情况,及时发现并解决潜在的安全威胁,确保服务器稳定运行。