Linux如何查看监听端口?

在 Linux 中查看监听端口,主要使用 netstat -tuln 或更现代的 ss -tuln 命令,lsof -i 也可查看进程监听的端口信息。

使用 netstat 命令(经典工具)

netstat 是传统网络工具,适合大多数Linux发行版(需安装 net-tools 包):

Linux如何查看监听端口?

# 安装net-tools(如未预装)
sudo apt install net-tools     # Debian/Ubuntu
sudo yum install net-tools     # CentOS/RHEL
# 查看所有监听端口(IPv4和IPv6)
netstat -tuln
# 参数说明:
# -t : TCP协议
# -u : UDP协议
# -l : 仅显示监听状态
# -n : 以数字形式显示端口(不解析服务名)
# -p : 显示进程名(需sudo权限)

输出示例

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      1234/sshd  
tcp6       0      0 :::80           :::*            LISTEN      5678/nginx

使用 ss 命令(推荐,更高效)

ss(Socket Statistics)是 netstat 的现代替代品,性能更强,预装于多数新系统:

# 查看所有TCP/UDP监听端口
ss -tuln
# 高级用法:
ss -tuln sport = :80    # 监听80端口的连接
ss -tuln state listening # 明确过滤监听状态

使用 lsof 命令(查看进程关联)

lsof 列出被进程打开的文件(包括网络套接字):

Linux如何查看监听端口?

# 安装lsof(如未预装)
sudo apt install lsof     # Debian/Ubuntu
sudo yum install lsof     # CentOS/RHEL
# 查看所有监听端口
sudo lsof -i -P -n | grep LISTEN
# 参数说明:
# -i : 显示网络连接
# -P : 禁用端口服务名解析(显示数字端口)
# -n : 禁用主机名解析(显示IP)

通过 /proc 文件系统(底层查看)

Linux 内核通过 /proc/net 暴露网络信息:

# 查看TCP监听
cat /proc/net/tcp | awk '{$2=$3=""; print $0}' | grep "0A"  # 0A=LISTEN状态(十六进制)
# 查看UDP监听
cat /proc/net/udp

需转换端口:0016 → 十进制22(SSH端口)。


防火墙工具辅助查看

若防火墙(如 iptablesfirewalld)启用,可能影响实际可访问性:

Linux如何查看监听端口?

# 检查防火墙规则
sudo iptables -L -n -v        # iptables
sudo firewall-cmd --list-all  # firewalld(CentOS/RHEL)

使用场景建议

  • 快速检查:优先用 ss -tuln(速度快,无需安装)。
  • 进程关联:用 lsofnetstat -tulnp 定位程序路径。
  • 脚本处理ss/proc 输出更易解析。
  • 兼容旧系统netstat 作为备选。

安全注意事项

  1. 最小化监听:关闭非必要端口(如数据库端口暴露到公网)。
  2. 权限控制:使用 sudo 查看进程时避免泄露敏感信息。
  3. 定期审计:通过 cron 任务定时检查监听端口变化。

引用说明参考 Linux 官方手册(man netstatman ss)、Red Hat 文档及网络管理最佳实践,命令测试于 Ubuntu 22.04 和 CentOS 7 环境。

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/47145.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年7月6日 00:05
下一篇 2025年7月6日 00:14

相关推荐

  • Linux如何挂载新硬盘?

    在Linux中创建新硬盘需三步:首先用fdisk或parted对磁盘分区,然后使用mkfs命令(如mkfs.ext4)格式化分区,最后通过mount命令将分区挂载到目录即可使用。

    2025年7月4日
    000
  • Linux系统运行时长怎么查

    使用uptime命令直接显示系统运行时长及负载;或查看/proc/uptime第一列获取精确秒数;也可执行who -b查看启动时间后手动计算差值。

    2025年6月11日
    100
  • Linux怎么处理超大文件

    Linux通过支持64位文件系统(如ext4、XFS)和启用大文件支持(LFS)功能实现大文件存储,关键包括使用支持大容量的文件系统格式、确保内核与工具链为64位环境,并正确配置挂载选项。

    2025年6月15日
    100
  • 如何安装Linux服务器系统?

    准备U盘或光盘启动介质,从该介质引导服务器,进入安装程序后按提示操作:选择语言、键盘布局、配置网络,最重要的是规划磁盘分区(建议为 /home、/var 等单独分区),设置root密码及创建用户账户,确认安装选项后开始安装,安装完成后重启并更新系统。

    2025年6月24日
    100
  • Linux服务器安全补丁必做攻略

    Linux服务器打补丁需及时更新软件源,使用yum update或apt upgrade命令安装安全补丁,优先处理关键漏洞,更新前备份重要数据,测试环境验证后重启生效。

    2025年6月21日
    200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN