Linux查看端口状态的最快方法?

使用 netstat 命令(经典工具)

安装(部分系统需手动安装):

sudo apt install net-tools  # Debian/Ubuntu
sudo yum install net-tools  # CentOS/RHEL

常用参数组合

sudo netstat -tuln
  • -t:仅显示TCP端口
  • -u:仅显示UDP端口
  • -l:仅显示监听中的端口
  • -n:以数字形式显示地址和端口(不解析域名)
  • -p:显示进程名/ID(需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
  • 关键列
    Local Address0.0.0:22 表示所有IP监听22端口(SSH服务)
    StateLISTEN 表示端口正在等待连接

使用 ss 命令(netstat 的现代替代)

优势:执行速度更快,无需额外安装(默认集成于主流发行版)。
基础命令

sudo ss -tuln

参数含义同 netstat
过滤特定端口(如查看80端口):

sudo ss -tuln sport = :80

使用 lsof 命令(查看进程占用端口)

安装(未预装时):

sudo apt install lsof  # Debian/Ubuntu
sudo yum install lsof  # CentOS/RHEL

查看所有监听端口

sudo lsof -i -P -n | grep LISTEN
  • -i:显示网络连接
  • -P:禁止端口别名(显示数字端口)
  • -n:禁止IP地址解析(显示原始IP)

输出示例

sshd    1234  root    3u  IPv4  12345  0t0  TCP *:22 (LISTEN)
  • 含义:进程 sshd(PID 1234)正在监听22端口。

使用 nmap 扫描本地端口(安全审计)

安装

sudo apt install nmap  # Debian/Ubuntu
sudo yum install nmap  # CentOS/RHEL

扫描本机开放端口

sudo nmap -sT -p- 127.0.0.1
  • -sT:TCP全连接扫描(最稳定)
  • -p-:扫描所有65535个端口(范围1-65535)

输出示例

PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http
  • STATEopen 表示端口可访问,filtered 可能被防火墙拦截。

查看端口关联服务

通过 /etc/services 文件查询端口对应的标准服务:

grep 22 /etc/services

输出示例:

ssh   22/tcp    # Secure Shell

常见问题解决

  1. 无权限查看进程信息
    → 使用 sudo 提权执行命令(如 sudo ss -tulp)。

  2. 命令未找到
    → 按前文方法安装对应工具包(如 net-toolslsof)。

  3. 端口监听但无法访问
    → 检查防火墙:

      sudo ufw status          # Ubuntu防火墙
      sudo firewall-cmd --list-ports  # CentOS防火墙

总结建议

  • 日常快速检查 → 使用 ss -tuln(效率最高)
  • 排查进程占用 → 使用 lsof -i :端口号
  • 深度安全扫描 → 使用 nmap
  • 生产环境操作前 → 通过测试环境验证命令,避免误操作影响服务。

安全提示

  • 关闭非必要端口以减少攻击面。
  • 定期审计端口使用情况(结合自动化脚本)。
  • 敏感服务避免绑定 0.0.0(所有接口),建议限制IP范围。

引用说明: 参考 Linux 官方手册(man netstat/man ss/man lsof)、Nmap 官方文档及 Red Hat/CentOS、Ubuntu 安全实践指南,命令兼容主流 Linux 发行版(包括 Ubuntu、Debian、CentOS、RHEL 等)。

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

(0)
酷番叔酷番叔
上一篇 2025年7月1日 04:25
下一篇 2025年7月1日 04:43

相关推荐

  • Linux如何返回上级目录?

    核心命令:cd ..命令作用cd .. 是返回上级目录的标准命令, 在Linux中代表父目录(即当前目录的直接上级),操作步骤:# 1. 查看当前目录(确认位置)pwd# 输出示例:/home/user/documents/project# 2. 执行返回命令cd ..# 3. 再次验证位置pwd# 输出示例……

    2025年8月5日
    2100
  • Linux日志中如何快速查找所有error?

    find 命令(最强大灵活)适用场景:精确搜索(名称、类型、时间、大小等),支持递归遍历目录,基础语法:find [搜索路径] [匹配条件] [操作]常用示例:按名称查找(区分大小写): find /home -name "report.txt" # 在 /home 下查找 report.t……

    2025年7月13日
    3400
  • Linux如何查看文件文字编码方式?

    在Linux系统中,文字编码是影响文本文件正确显示的关键因素,常见的编码包括UTF-8、GBK、ISO-8859-1等,若编码不匹配,文件内容可能会出现乱码,因此掌握查看文字编码的方法非常重要,本文将详细介绍Linux下查看文字编码的多种方式,涵盖命令行工具、图形界面工具及不同场景下的处理技巧,帮助用户快速定位……

    2025年8月23日
    1300
  • 为什么问题总反复出现?

    当Linux系统重启后IP配置丢失,本质是临时配置与持久化配置的差异,以下按优先级排序解决方案:权限问题(90%的根源) sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 # CentOS/RHEL sudo nano /etc/netplan/01-net……

    2025年6月28日
    3700
  • 如何快速安装GPM?

    在Linux系统中,GPM(General Purpose Mouse)是一项关键服务,它允许用户在文本模式的控制台(TTY)中使用鼠标进行操作,例如选择文本、复制粘贴等,这对于服务器维护、系统修复或偏好命令行环境的用户尤为重要,下面详细介绍如何使能GPM,涵盖安装、配置、启动及故障排除,根据您的Linux发行……

    2025年7月28日
    2100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信