乐闻世界logo
搜索文章和话题

How to check which ports are listening on a linux server?

4 个月前提问
3 个月前修改
浏览次数12

1个答案

1

要检查Linux服务器中哪些端口正在监听,可以使用多种工具和命令来实现。这里有几种常用的方法:

1. netstat 命令

netstat 是一个非常强大的网络工具,可以用来查看网络连接、路由表、接口统计等信息。要查看正在监听的端口,可以使用以下命令:

bash
netstat -tulnp
  • -t 表示显示TCP连接。
  • -u 表示显示UDP连接。
  • -l 表示仅显示监听状态的套接字。
  • -n 表示显示数字形式的地址和端口号。
  • -p 表示显示监听端口的应用程序的进程号和名称。

这条命令将列出所有在监听状态的TCP和UDP端口,并显示哪个程序或服务正在监听这些端口。

2. ss 命令

ss 是另一个非常有用的工具,用于查看套接字统计信息。它被认为是 netstat 的现代替代品,性能更好。要查看监听端口,可以使用:

bash
ss -tuln

参数与 netstat 命令类似,ss 命令的输出也包括正在监听的端口和对应的服务详情。

3. lsof 命令

lsof 命令意为“list open files”,在Linux中几乎一切皆文件,包括网络连接。lsof 可以用来查看那些文件(包括端口)被哪些进程打开。要查看监听的端口,可以使用:

bash
lsof -i -n | grep LISTEN
  • -i 参数让 lsof 显示网络连接相关的信息。
  • -n 防止 lsof 将IP地址转换为主机名,加快处理速度。

这条命令会列出所有处于监听状态的端口及其相关的进程信息。

示例使用

假设你是服务器管理员,需要检查服务器上是否有MySQL数据库服务正在监听默认的3306端口。你可以使用以下命令:

bash
ss -tuln | grep 3306

如果你看到类似于以下的输出,这意味着MySQL服务正在监听3306端口:

shell
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 2398/mysqld

以上就是如何在Linux服务器上检查监听端口的几种方法。根据你的具体需求和环境,选择最适合你的工具来进行操作。

2024年8月14日 13:08 回复

你的答案