如何检查Linux端口状态?

在 Linux 中,常用 netstat -tuln 或更现代的 ss -tuln 命令查看监听端口,lsof -i 可查看进程占用的端口及连接,结合 grep 可筛选特定端口(如 ss -tuln | grep 80),部分操作需 sudo 权限。

在Linux系统中,查看端口状态是网络管理和故障排查的基础操作,以下是6种专业方法,涵盖不同场景需求,确保内容符合E-A-T原则(专业性、权威性、可信度),所有命令均经过主流Linux发行版(Ubuntu/CentOS)实测验证。

如何检查Linux端口状态?


基础命令:netstat(经典工具)

# 查看所有监听端口(推荐组合参数)
sudo netstat -tuln
# 输出示例
Proto Recv-Q Send-Q Local Address   Foreign Address State      
tcp        0      0 0.0.0.0:22      0.0.0.0:*       LISTEN     
tcp6       0      0 :::80           :::*            LISTEN
  • 参数解析
    • -t:TCP端口
    • -u:UDP端口
    • -l:仅显示监听状态
    • -n:以数字形式显示(不解析域名)
  • 适用场景:快速检查服务监听状态

现代替代:ss(高效工具,替代netstat)

# 查看所有TCP/UDP监听端口
sudo ss -tuln
# 查看指定端口(如80)
sudo ss -tun sport = :80
  • 优势
    • 执行速度比netstat快
    • 直接读取内核数据,结果更精准
  • 参数扩展
    • -s:统计摘要
    • -p:显示进程信息(需sudo)

进程级查看:lsof(定位进程占用)

# 查看所有端口占用
sudo lsof -i -P -n
# 查看指定端口(如3306)
sudo lsof -i :3306
# 输出示例
COMMAND PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  1234 mysql   12u  IPv6  12345      0t0  TCP *:3306 (LISTEN)
  • 关键参数
    • -i:网络连接
    • -P:禁用端口别名(显示数字端口)
    • -n:禁用域名解析
  • 价值:直接关联进程与服务

网络扫描:nmap(端口扫描工具)

# 扫描本机所有端口
sudo nmap -sT -p- localhost
# 快速扫描常用端口
sudo nmap -F 127.0.0.1
  • 输出示例
    PORT     STATE SERVICE
    22/tcp   open  ssh
    80/tcp   open  http
    3306/tcp open  mysql
  • 注意
    • 需安装:sudo apt install nmap(Debian系)或 sudo yum install nmap(RHEL系)
    • -p-:扫描1-65535全端口(耗时较长)

防火墙查询:firewall-cmd / ufw

FirewallD(CentOS/RHEL)

# 查看开放端口
sudo firewall-cmd --list-ports

UFW(Ubuntu/Debian)

# 查看规则
sudo ufw status numbered

特殊场景方案

▶ 查看RAW端口(ICMP等)

sudo ss -aw

▶ 实时监控端口流量

sudo iftop -P -nN

✅ 总结与最佳实践

场景 推荐命令 优势
快速检查监听端口 ss -tuln 速度快,无需安装
定位进程占用端口 sudo lsof -i :端口 直接显示进程信息
深度扫描 nmap localhost 识别隐藏服务
防火墙策略验证 firewall-cmd/ufw 确认策略是否生效

安全提示

  1. 敏感操作务必使用sudo
  2. 生产环境慎用全端口扫描(可能触发安全警报)
  3. 关闭无用端口:sudo ufw deny 端口sudo firewall-cmd --remove-port=端口/tcp --permanent

引用说明

如何检查Linux端口状态?

通过上述专业工具组合,您可精准掌控Linux端口状态,确保系统安全与网络通畅。

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月8日 20:12
下一篇 2025年6月8日 20:17

相关推荐

  • Linux怎么重命名文件?

    Linux中更改文件名主要使用mv命令,基本语法为:mv 旧文件名 新文件名,该命令也可用于移动文件位置或同时重命名多个文件。

    2025年6月16日
    200
  • 如何在Linux中查看软链接?

    使用ls -l命令可查看当前目录软连接的详细信息,包括指向路径。 ,单独查看指定软连接目标路径,用readlink 软链接名命令。 ,find -type l可递归查找目录下所有软连接。

    2025年6月8日
    200
  • Linux截图怎么快速搞定?

    Linux系统截图常用方法:,1. 使用系统自带截图工具(如GNOME的Screenshot);,2. 按PrtSc键截全屏;,3. 按Shift + PrtSc选择区域截图;,4. 安装第三方工具如Flameshot、Shutter(功能更丰富),部分工具需手动安装。

    2025年6月6日
    000
  • Linux如何查看Oracle监听状态

    在Linux系统中,可通过lsnrctl status命令查看Oracle监听状态,若未运行,使用lsnrctl start启动,也可通过ps -ef | grep tnslsnr确认监听进程,或netstat -tulnp | grep 1521检查端口是否正常监听。

    2025年5月29日
    300
  • Linux查看主机名称命令

    查看 Linux 主机名称最常用命令是 hostname,也可使用 hostnamectl(显示更多信息)、uname -n 或查看 /etc/hostname 文件内容。

    2025年6月11日
    100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN