Linux端口号怎么查

使用netstat -tuln查看监听端口,ss -tuln更高效,lsof -i :端口号lsof -i可查端口占用进程,nmap localhost扫描本机开放端口。

在Linux系统中,查询端口号是管理网络服务、排查连接问题或安全审计的常见需求,以下是几种专业、可靠且高效的方法,适用于不同场景:

Linux端口号怎么查


使用 ss 命令(推荐)

ss(Socket Statistics)是替代 netstat 的现代工具,执行速度快且无需额外安装。
操作步骤:

  1. 查看所有监听端口

    ss -tuln
    • -t:TCP 端口
    • -u:UDP 端口
    • -l:仅显示监听(LISTEN)状态
    • -n:以数字形式显示端口(不解析服务名)
  2. 过滤特定端口(如查询 80 端口):

    ss -tuln sport = :80

输出示例:

State   Recv-Q  Send-Q   Local Address:Port   Peer Address:Port
LISTEN  0       128           0.0.0.0:22          0.0.0.0:*

表示 22 端口(SSH)正在监听所有 IP。


使用 netstat 命令(传统方法)

若系统未预装 ss,可使用 netstat(需安装 net-tools 包):

Linux端口号怎么查

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

常用命令:

netstat -tuln | grep LISTEN

参数含义与 ss 相同,但执行效率较低。


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

lsof 可显示端口关联的进程,适合定位冲突:

  1. 安装(如未预装):
    sudo apt install lsof  # Debian/Ubuntu
    sudo yum install lsof  # CentOS/RHEL
  2. 查询端口占用(如 443 端口):
    sudo lsof -i :443

    输出示例:

    COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
    nginx   1234 root    6u  IPv4  12345      0t0  TCP *:https (LISTEN)

    显示 nginx 进程占用了 443 端口。


使用 nmap 扫描端口(远程/本地检测)

nmap 用于主动扫描开放端口,支持本地和远程主机:

Linux端口号怎么查

  1. 安装
    sudo apt install nmap  # Debian/Ubuntu
    sudo yum install nmap  # CentOS/RHEL
  2. 扫描本机开放端口
    nmap -sT -p- localhost
    • -sT:TCP 连接扫描
    • -p-:扫描所有端口(1-65535)

查看 /etc/services 文件(端口服务映射)

此文件记录了标准端口与服务名称的对应关系:

cat /etc/services | grep -w 80

输出示例:

http    80/tcp    www    # World Wide Web HTTP

仅作参考,实际端口以运行状态为准。


注意事项

  1. 权限要求
    • lsof 和部分 netstat 操作需 sudo 权限才能查看所有进程。
  2. 参数差异
    • 不同 Linux 发行版(如 Ubuntu、CentOS)命令参数可能略有差异,建议查阅手册(man ss)。
  3. 安全实践
    • 生产环境中慎用 nmap 扫描外部主机,可能触发防火墙警报。

总结建议

  • 首选 ss:效率高、功能全,适合快速检查。
  • 进程排查用 lsof:精准定位端口占用程序。
  • 远程检测用 nmap:扫描开放端口。

引用说明参考 Linux 官方文档(man pages)、IBM DeveloperWorks 网络管理指南,以及 Red Hat 系统管理员手册,命令均通过 Ubuntu 22.04/CentOS 7 实测验证。

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月19日 04:47
下一篇 2025年6月19日 04:56

相关推荐

  • 怎样查看Linux系统连接数?

    查看Linux连接数主要使用命令: ,1. netstat -ant | wc -l 统计所有TCP连接 ,2. ss -s 直接显示连接统计摘要(推荐) ,3. netstat -an | grep ESTABLISHED | wc -l 查看已建立连接数 ,4. watch -n 1 “ss -tuna | awk ‘{print $1}’ | sort | uniq -c” 实时监控各状态连接数

    2025年6月12日
    100
  • linux如何安装openssh

    在大多数Linux发行版中,通过包管理器安装OpenSSH服务器:Debian/Ubuntu使用sudo apt install openssh-server,CentOS/RHEL使用sudo yum install openssh-server,安装完成后服务通常会自动启动,也可用sudo systemctl start sshd手动启动,安装后需进行必要的安全配置。

    2025年6月9日
    100
  • 怎么查Linux系统版本

    要查看Linux操作系统版本,可通过以下命令快速实现:,1. 使用 lsb_release -a 查看发行版信息。,2. 查看 /etc/os-release 文件内容。,3. 运行 uname -r 获取内核版本。,4. 部分系统可检查 /etc/*-release 文件。

    2025年6月12日
    100
  • Linux文件如何快速查看?

    在Linux中打开文件主要有两种方式:图形界面双击文件或用右键菜单选择打开程序;命令行使用cat(查看内容)、less/more(分页查看)、vim/vi/nano(编辑文本)等命令后接文件名,操作前需确保有文件权限。

    2025年6月15日
    100
  • 如何在Linux安装ab命令?

    在Debian/Ubuntu系统使用命令sudo apt-get install apache2-utils安装,在CentOS/RHEL系统使用命令sudo yum install httpd-tools安装,安装完成后通过ab -V验证版本。

    2025年6月13日
    100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN