Linux系统上检查本机端口是否开通
在Linux系统中,检查本机端口是否开通(即是否有服务在监听该端口)可以通过多种方法实现。以下是几种常用的方法:
方法1:使用netstat
netstat
是一个常用的网络工具,可以查看系统上的网络连接和监听端口。运行以下命令:
sudo netstat -tulnp | grep 8088
-
-t
:显示TCP端口。 -
-u
:显示UDP端口。 -
-l
:仅显示监听状态的端口。 -
-n
:以数字形式显示IP地址和端口。 -
-p
:显示监听该端口的进程信息(需要sudo
权限)。
如果端口
8088
上有服务在监听,会看到类似以下的输出:tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 1234/my_service
如果没有服务在监听,该命令不会输出任何内容。
方法2:使用ss
ss
是一个更现代的工具,功能类似于netstat
,并且在某些系统中可能更推荐使用。运行以下命令:
sudo ss -tulnp | grep 8088
参数含义与
netstat
类似:-
-t
:显示TCP端口。 -
-u
:显示UDP端口。 -
-l
:仅显示监听状态的端口。 -
-n
:以数字形式显示IP地址和端口。 -
-p
:显示监听该端口的进程信息。
如果端口
8088
上有服务在监听,会看到类似以下的输出:tcp LISTEN 0 128 *:8088 *:* users:(("my_service",pid=1234,fd=3))
如果没有服务在监听,该命令不会输出任何内容。
方法3:使用lsof
lsof
(list open files)可以列出系统中打开的文件和网络连接。运行以下命令:
sudo lsof -i :8088
如果端口
8088
上有服务在监听,会看到类似以下的输出:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
my_service 1234 user 3u IPv4 0x123456789abcdef 0t0 TCP *:8088(LISTEN)
如果没有服务在监听,该命令不会输出任何内容。
方法4:使用nmap
扫描本机
虽然
nmap
通常用于扫描远程主机,但也可以用来扫描本机端口。运行以下命令:
nmap -p 8088 127.0.0.1
或者:
nmap -p 8088 localhost
如果端口
4430
是开放的,会看到类似以下的输出:PORT STATE SERVICE
8088/tcp open unknown
如果端口未开放,你会看到:
PORT STATE SERVICE
8088/tcp closed unknown
总结
-
如果只想快速检查端口是否被监听,选择
netstat
或ss
最快捷。 -
如果想查看监听该端口的进程信息,选择
lsof
。 -
如果想使用更通用的扫描工具,选择
nmap
可以用于检查本机端口。