怎么查看linux服务器开放哪个端口,如何查看linux服务器所有开放端口?

查看Linux服务器开放端口,最直接的方法是使用ss命令,输入ss -tlnp即可列出所有TCP端口监听状态,加上grep筛选就能快速定位你关心的端口。 这个命令在绝大多数Linux发行版中默认可用,无需额外安装,比传统netstat更快更准。

核心命令:linux查看端口命令 ss 与 netstat 对比

ss属于iproute2包,是netstat的现代替代方案,两者都能列出开放端口,但ss在信息细节和性能上更胜一筹,下面分别拆解它们的用法。

ss命令详解

ss命令参数组合很短,但很实用,常用组合是ss -tlnp,含义如下:

  • -t:只显示TCP端口
  • -l:只显示监听中的端口(LISTEN状态)
  • -n:以数字格式显示地址和端口,避免解析服务名
  • -p:显示占用端口的进程PID和名称

要查看UDP端口,把-t换成-u,比如ss -ulnp,想同时看TCP和UDP,直接写ss -tulnp

实操示例:

  • 查看所有监听端口:ss -tlnp
  • 查看80端口是否开放:ss -tlnp | grep :80
  • 查看特定进程占用的端口:ss -tlnp | grep nginx

netstat命令详解

netstat默认不包含在最小化安装的Linux中,需要额外安装net-tools包,常用组合是netstat -tuln,参数:

  • -t:TCP
  • -u:UDP
  • -l:监听状态
  • -n:数字格式
  • -p:显示进程(需root权限)

注意: 很多线上系统已经不再预装netstat,遇到command not found时,直接用ss即可。

ss与netstat对比

怎么查看linux服务器开放哪个端口,如何查看linux服务器所有开放端口?

对比项 ss netstat
默认安装 是(iproute2) 否(需额外安装)
执行速度 快,直接从内核读取数据 较慢,读取/proc文件系统
信息详细度 更详细,显示socket状态、缓冲区信息 基本够用
适用场景 现代运维首选 兼容旧脚本或习惯

据统计,近年来新装Linux系统默认都不带netstat,所以ss是更稳妥的linux查看端口命令。

怎么查看linux服务器端口是否开放从本地到远程

本地检查只能看到端口是否在监听,外部验证才能确认端口真正可达,防火墙可能拦截流量,即使端口在监听。

本地检查端口监听状态

登录服务器后,直接运行ss -tlnp,输出中State列为LISTEN代表端口开放,如果端口不在列表中,说明服务没启动或配置错误。

具体步骤:

  1. 查看所有监听端口:ss -tlnp
  2. 筛选特定端口,如ssh -tlnp | grep 3306
  3. 确认进程无误:ss -tlnp | grep mysqld

从外部验证端口是否开放

在另外一台机器上(或同一个云账号下的内网机器),用以下工具测试:

  • telnettelnet 服务器IP 端口,如果连接成功,显示Connected,说明端口开放
  • nc (netcat)nc -zv 服务器IP 端口-z表示只扫描不发送数据,-v打印详细信息
  • curl:针对HTTP/HTTPS端口,curl -I http://服务器IP:端口,看返回的头信息

注意: 测试时保证目标机器防火墙允许入站流量,否则会显示超时或被拒绝。

防火墙规则对端口开放的影响

即使端口在监听,防火墙没放行,外部依然无法访问,检查防火墙规则:

  • iptablesiptables -L -n 查看所有规则链,注意INPUT

    怎么查看linux服务器开放哪个端口,如何查看linux服务器所有开放端口?

    链是否允许目标端口

  • firewalldfirewall-cmd --list-ports 查看开放端口,或firewall-cmd --list-all 查看完整配置
  • ufwufw status 查看启用的规则

排查思路: 先本地确认端口在监听,再确认防火墙放行,最后从外部测试,如果本地监听但外部不通,多半是防火墙或云厂商安全组规则没配置。

端口被占用怎么办?排查linux哪个端口被占用

当启动服务时提示“端口已占用”,需要找到占用端口的进程并处理。

查找占用端口的进程

使用ss -tlnp直接显示PID和进程名,如果端口处于非监听状态,用ss -tanp查看所有TCP连接(包括已建立),也可以使用lsof -i :端口号,但这需要root权限才能看到完整进程信息。

示例: 查看80端口被谁占用

ss -tlnp | grep :80
# 输出类似:LISTEN 0 128 :80 : users:(("nginx",pid=1234,fd=6))

说明PID为1234的nginx进程占用80端口。

释放端口或修改配置

根据占用进程决定处理方式:

  • 如果是必需服务,记录其PID,确认后可以用kill -9 PID强制终止(谨慎使用,可能影响业务)
  • 如果是自己启动的测试程序,直接关闭即可
  • 如果是误配置导致端口冲突,修改服务配置文件(如Nginx的listen指令),重启服务

预防建议: 在启动服务前,先用ss -tlnp | grep :端口号确认端口空闲,避免冲突。

进阶:linux端口开放状态查询与安全审计

除了基础查看,安全人员常需要系统性地扫描端口范围,评估暴露面。

使用nmap扫描端口

nmap是专业的端口扫描工具,不要对未授权服务器使用,常见用法:

  • 扫描单个端口:nmap -sT 目标IP -p 22,80,443
  • 扫描常见端口:

    怎么查看linux服务器开放哪个端口,如何查看linux服务器所有开放端口?

    nmap -sT --top-ports 100 目标IP

  • 快速扫描全部端口:nmap -sT -p- 目标IP(耗时较长)

注意: 云服务器上使用nmap扫描自己或同内网机器,不会触发违规,但扫描外部IP可能被记为攻击行为。

定期检查开放端口的必要性

行业共识认为,缩小开放端口范围是降低入侵风险的最有效手段之一,很多安全事件都是因为非必要端口暴露在公网(如Redis、MongoDB默认端口未加限制),建议每季度使用ss -tlnp和防火墙规则对比,关闭不再使用的端口。

实操建议:

  • 列出所有监听端口:ss -tlnp
  • 与业务端口清单对比,标记异常端口
  • 用防火墙限制来源IP,只允许特定IP访问管理端口

常见问题与解答(linux端口开放状态查询Q&A)

如何查看Linux服务器所有开放端口?

使用ss -tlnp(TCP)和ss -ulnp(UDP)即可列出所有监听端口,要查看包含已建立连接在内的所有端口,去掉-l参数,如ss -tanp,如果系统没有ss,用netstat -tuln代替。

用什么命令查看端口对应的服务名称?

ss -tlnpusers字段会显示进程名和PID,如果显示不完整,用lsof -i:端口号(需root)能更详细地列出进程信息,包括文件描述符,也可以组合ps -p PID -o comm=获得进程名。

ss和netstat有什么区别?

ss是iproute2包的一部分,默认安装,直接从内核获取数据,速度快且信息丰富;netstat来自net-tools包,需要额外安装,解析/proc文件系统,较慢,多数情况下,ss已经完全覆盖netstat的功能,建议优先使用ss,如果需要在旧脚本中保持兼容,netstat仍有存在价值,但新系统应转向ss。

掌握ss和netstat命令,再结合防火墙规则检查,就能完整掌握Linux服务器的端口开放状态。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/689452.html

(0)
上一篇 2026年8月19日 04:26
下一篇 2026年8月19日 04:26

相关推荐

  • 北京微信平台开发公司哪家好?北京微信开发公司

    北京微信平台开发公司并非简单的代码堆砌者,而是基于2026年AI大模型与微信生态深度整合的数字化解决方案提供商,其核心价值在于通过“智能小程序+私域自动化”实现企业获客成本降低30%以上且转化率提升显著,2026年微信生态开发的技术范式重构进入2026年,传统的“模板化”小程序开发已无法满足企业精细化运营需求……

    2026年7月4日
    0603
  • 宠物app规划和开发,宠物app开发费用多少钱

    2026年宠物APP开发的核心在于构建“AI+IoT+社区”的闭环生态,成功的关键不再是单一功能堆砌,而是通过精准的用户画像与全生命周期服务实现高留存,建议预算控制在50-100万区间以打造MVP(最小可行性产品)版本,随着“它经济”在2026年进入深水区,宠物主的需求已从基础的喂食拍照升级为健康管理、智能硬件……

    2026年6月1日
    01191
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 电商公司产品开发人员,他们的工作内容与挑战有哪些?

    核心职责与能力提升随着互联网的飞速发展,电商行业已经成为我国经济的重要组成部分,在这个充满活力的行业中,产品开发人员扮演着至关重要的角色,他们负责策划、设计、开发和优化电商平台的商品,以满足消费者的需求,本文将详细介绍电商公司产品开发人员的核心职责和能力提升策略,产品开发人员的核心职责市场调研与分析产品开发人员……

    2025年10月31日
    03500
  • 个人能开发小程序吗,个人如何开发小程序赚钱

    个人完全可以独立开发小程序,这不仅是技术门槛降低的结果,更是云服务生态成熟的必然趋势,对于个人开发者而言,现在开发一款小程序,不再需要组建庞大的技术团队,只需具备基础的前端知识(或利用低代码平台),配合成熟的云服务基础设施,即可快速实现从创意到产品的落地, 核心难点已从早期的“如何写代码”转变为“如何设计产品逻……

    2026年4月6日
    02632

发表回复

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

评论列表(1条)

  • 老魂5096的头像
    老魂5096 2026年8月19日 04:44

    读了这篇文章,我深有感触。作者对端口的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!