如何在VPS服务器上查看端口号?
| 查询方法 |
适用场景 |
常用命令 |
| netstat命令 |
查看正在监听的端口 |
netstat -tuln |
| ss命令 |
查看套接字统计信息 |
ss -tuln |
| lsof命令 |
查看端口对应进程 |
lsof -i :端口号 |
| nmap命令 |
扫描端口开放状态 |
nmap 服务器IP |
| 防火墙状态 |
查看防火墙规则 |
iptables -L 或 firewall-cmd –list-all |
VPS如何查看端口号?全面解析VPS端口查询方法与问题排查
作为VPS服务器管理的基础操作,端口查询是每个服务器管理员都需要掌握的技能。端口是网络通信的入口点,了解端口状态对于服务器安全、服务部署和故障排查都至关重要。
主要查询方法概览
| 方法类别 |
具体命令 |
主要功能 |
适用系统 |
| 基础查询 |
netstat -tuln |
显示监听端口 |
Linux全系 |
| 现代替代 |
ss -tuln |
更快速的端口查询 |
较新Linux |
| 进程关联 |
lsof -i |
查看端口对应进程 |
需安装lsof |
| 远程扫描 |
nmap |
从外部检测端口 |
需安装nmap |
| 防火墙检查 |
iptables/firewall-cmd |
查看防火墙规则 |
不同发行版 |
详细操作步骤
方法一:使用netstat命令查询端口
操作说明
netstat是传统的网络统计工具,可以显示网络连接、路由表、接口统计等信息。
使用工具提示
- 大多数Linux系统预装netstat
- 如未安装,可通过
yum install net-tools或apt install net-tools安装
代码块模拟工具界面
# 查看所有监听中的TCP和UDP端口
$ netstat -tuln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0: LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0: LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0: LISTEN
tcp6 0 0 :::22 ::: LISTEN
udp 0 0 0.0.0.0:68 0.0.0.0:
参数说明:
-t: 显示TCP端口
-u: 显示UDP端口
-l: 仅显示监听中的端口
-n: 以数字格式显示地址和端口
方法二:使用ss命令(推荐)
操作说明
ss命令是netstat的现代替代品,速度更快,功能更强大。
使用工具提示
- 较新的Linux发行版默认安装
- 如果系统没有netstat,ss是更好的选择
代码块模拟工具界面
# 使用ss命令查看监听端口
$ ss -tuln
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:
tcp LISTEN 0 128 [::]:22 [::]:
tcp LISTEN 0 128 0.0.0.0:80 0.0.0.0:
tcp LISTEN 0 128 127.0.0.1:25 0.0.0.0:
查看特定端口的连接信息
$ ss -tuln | grep :80
tcp LISTEN 0 128 0.0.0.0:80 0.0.0.0:
方法三:使用lsof命令查询端口进程
操作说明
lsof可以显示端口对应的进程信息,便于排查问题。
使用工具提示
- 需要安装lsof工具:
yum install lsof 或 apt install lsof
代码块模拟工具界面
# 查看哪些进程在使用80端口
$ lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 12345 root 6u IPv4 12345 0t0 TCP :http (LISTEN)
nginx 12346 www 6u IPv4 12346 0t0 TCP :http (LISTEN)
查看所有网络连接
$ lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1234 root 3u IPv4 12345 0t0 TCP :ssh (LISTEN)
nginx 12345 root 6u IPv4 12346 0t0 TCP :http (LISTEN)
方法四:使用nmap进行端口扫描
操作说明
nmap是专业的网络扫描工具,可以从外部检测端口开放状态。
使用工具提示
- 需要安装nmap:
yum install nmap 或 apt install nmap
- 可以扫描本机或其他服务器的端口
代码块模拟工具界面
# 扫描本机端口
$ nmap localhost
Starting Nmap 7.80 ( https://nmap.org ) at 2025-11-01 04:34 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00012s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
25/tcp open smtp
Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds
方法五:检查防火墙状态
操作说明
防火墙可能阻止端口访问,需要检查防火墙规则。
使用工具提示
- iptables:传统Linux防火墙
- firewalld:较新系统的防火墙服务
代码块模拟工具界面
# 检查iptables规则
$ iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
检查firewalld规则(CentOS/RHEL 7+)
$ firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: ssh dhcpv6-client http
ports: 80/tcp 443/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
常见问题与解决方案
| 问题 |
原因 |
解决方案 |
| 端口显示为LISTEN但无法访问 |
防火墙阻止或绑定地址错误 |
检查防火墙规则,确认服务绑定到0.0.0.0而非127.0.0.1 |
| 命令未找到(command not found) |
工具未安装 |
使用对应包管理器安装net-tools、lsof或nmap |
| 端口状态为TIMEWAIT |
连接未正常关闭 |
等待系统自动清理或调整TCP参数 |
| 服务重启后端口仍被占用 |
进程未完全终止 |
使用kill -9 PID强制终止进程或重启服务器 |
| 外部无法访问特定端口 |
云服务商安全组限制 |
在云服务商控制台添加安全组规则允许该端口 |
通过掌握这些端口查询方法,您将能够有效地管理和维护VPS服务器,确保网络服务的正常运行和安全性。每种方法都有其适用场景,建议根据具体需求选择合适的工具进行端口状态检查。
发表评论