Linux服务器端口号怎么看,如何查看端口占用情况?

在Linux服务器上查看端口号,最直接的办法是登录后执行 ss -tulnp(或 netstat -tulnp),输出里本地地址冒号后面的数字就是正在监听的端口号;想查某个具体端口被谁占用,用 sudo lsof -i:端口号 更快。

端口号是Linux网络排查里绕不开的一环,服务起不来、网站打不开、数据库连不上,十有八九要先看一眼端口在不在、被谁占着、绑到了哪个地址,下面按实际排查顺序拆开讲,命令都能直接复制验证。

如何知道在Linux中哪些应用程序在使用哪个端口-4种方式
加载中
如何知道在Linux中哪些应用程序在使用哪个端口-4种方式
l
leocybsec_二十八次元
2002--
原视频地址

端口号不是文件,它藏在内核的网络栈里

Linux里的端口号不是某个目录下的文件,而是内核网络协议栈的一部分,应用调用 bind() 把套接字绑到某个端口,内核记录下来,ss、netstat、lsof 这些工具本质上是去读内核暴露的信息。

  • 端口号范围是 0 到 65535,0 到 1023 是知名端口,普通用户不能直接绑定。
  • 监听端口表示有程序在等连接,状态通常是 LISTEN;已建立连接表示已经有会话,状态是 ESTAB。
  • 查看端口时重点看三样:协议(tcp/udp)、本地地址、进程名和PID。

也可以直接读 /proc/net/tcp 和 /proc/net/tcp6,但里面的端口是十六进制,可读性差,日常排查没必要绕这一圈,行业共识认为,先用高层命令定位,再按需深入内核文件,效率最高。

Linux服务器端口号怎么查看是否被占用

登录服务器后,先跑一条总览命令:

  • ss -tulnp:列出所有TCP和UDP监听端口,并显示进程。-t 是TCP,-u 是UDP,-l 只看监听,-n 不解析服务名,-p 显示进程。
  • ss -tulnp | grep ':8080':只看8080端口。
  • sudo lsof -i:8080:按端口反查进程,输出直观。
  • sudo fuser -v 8080/tcp:快速看谁占着这个端口。
  • netstat -tulnp:老牌命令,很多老教程在用,新系统可能没预装。

ss -tulnp 的典型输出里,Local Address:Port 这一列最关键。0.0.0:80 表示监听所有IPv4地址的80端口,0.0.1:3306 表示只监听本机回环地址,[::]:22 表示IPv6监听。users:(("nginx",pid=1234,fd=6)) 则直接告诉你进程名和PID。

注意:不加 sudo 时,-p 可能看不到其他用户的进程信息,输出里的 users 字段会是空的,这不是端口没被占用,而是权限不够。

netstat和ss查看端口号有什么区别

这两个命令经常被拿来比较,实际差异主要在依赖包和性能上。

对比项 ss netstat
所属软件包 iproute2 net-tools
现代发行版默认安装 多数默认有 不少新系统需手动装
读取方式 直接读内核 遍历 /proc 较多
连接数很大时 响应更快 相对慢一些
输出习惯 字段紧凑 老运维更熟悉

结论很直接:新系统优先用 ss,老系统或脚本里已经写了 netstat 就继续用,两者都能完成端口查看,不存在谁完全替代谁的问题,如果服务器上 netstat 提示 command not found,装 net-tools 即可,但更建议直接适应 ss。

云服务器Linux查看端口号开放状态的实操路径

这是最容易踩坑的场景:ss -tulnp 明明看到 0.0.0:8080 在监听,浏览器却打不开,原因通常不在端口查看本身,而在“本机监听”和“外部可达”之间隔了好几层。

按下面顺序排查:

  • 第一层,本机监听:ss -tulnp | grep ':8080',确认绑定地址不是 0.0.1。
  • 第二层,本机防火墙:CentOS系看 firewall-cmd --list-ports,Ubuntu系看 ufw status,老系统看 iptables -L -n。
  • 第三层,云平台安全组:登录云控制台,检查入方向规则是否放行了对应端口和协议。
  • 第四层,外部验证:从另一台机器执行 telnet 公网IP 8080 或 nc -zv 公网IP 8080,有回应才说明链路通。

放行命令示例:

  • firewalld:sudo firewall-cmd --add-port=8080/tcp --permanent && sudo firewall-cmd --reload
  • ufw:sudo ufw allow 8080/tcp
  • iptables:sudo iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

需要提醒的是,安全组和系统防火墙是两套东西,只开一层不够,业内专家指出,云主机端口不通的案例里,很大比例是安全组没放行,而不是服务没起来。

华南地区机房Linux服务器端口号排查也有类似差异:托管物理机通常没有云控制台安全组,端口不通要先查机房边界防火墙和交换机ACL;云主机则要先看控制台安全组,再看系统防火墙,场景不同,排查顺序要调整。

Linux服务器端口号查看工具收费吗

日常排查用到的 ss、netstat、lsof、fuser 都是系统自带或开源软件,不收费。nmap 也是开源工具,用于端口探测,但生产环境扫描前要确认授权,商业监控平台按主机数或实例数收费,适合长期监控,不适合临时查端口,云控制台里查看安全组规则同样免费,真正要避免的是在网上随便下载所谓“端口查看器”,来源不明的二进制文件风险很高。

按端口找进程,按进程找端口

实际运维里有两个方向,命令不一样。

已知端口号,反查是哪个程序占的

  • sudo ss -tulnp | grep ':8080'
  • sudo lsof -i:8080
  • sudo fuser -v 8080/tcp
  • 确认进程后先 kill -15 PID 平滑退出,别上来就 kill -9。

如果端口处于 TIME_WAIT,并不代表被程序占用。ss -tan state time-wait | wc -l 可以统计数量,短连接多的服务出现大量 TIME_WAIT 属于正常现象,调内核参数比反复杀进程更有效。

已知进程,看它开了哪些端口

  • sudo ss -tulnp | grep 'pid=1234'
  • sudo lsof -p 1234 -a -i
  • sudo ss -tanp | grep 1234,这条会连同已建立连接一起列出。

容器场景要单独看。docker ps 能看到端口映射,docker port 容器名 能列出具体映射关系,docker inspect 容器名 里的 NetworkSettings 字段更完整。容器内监听 8080,宿主机没做 -p 映射,外面照样访问不到,这时候在宿主机上查端口是查不出结果的。

几个容易看走眼的细节

  • 0.0.1:8080 和 0.0.0:8080 完全不同,前者只允许本机访问,后者才对外监听。
  • IPv6 的 ::8080 在多数Linux默认配置下会同时接受IPv4连接,但并非所有服务都这样,别默认认为一定覆盖。
  • ss -tuln 不加 -p 也能看端口,只是看不到进程,适合权限受限时先确认端口状态。
  • 大量 ESTAB 连接不代表端口异常,要结合业务并发看。
  • 端口查看命令本身开销很小,ss 读内核信息,对线上服务影响可以忽略;nmap 全端口扫描会产生明显流量,避开业务高峰。

关于Linux服务器端口号查看的常见问答

没有root权限怎么查看Linux服务器端口号?

可以执行 ss -tuln 查看监听端口,但 -p 参数显示进程信息通常需要 root 或相应权限。lsof 普通用户只能看到自己启动的进程,也可以读 /proc/net/tcp,但端口是十六进制,需要换算,更稳妥的做法是让管理员为特定命令配置 sudo 权限,而不是直接给完整 root。

ss显示端口在监听,为什么外部还是访问不了?

按绑定地址、本机防火墙、云安全组、外部网络策略四层依次查,先用 ss -tulnp 确认不是只绑了 0.0.1,再查 firewall-cmd 或 ufw,然后看云控制台入方向规则,最后从同网段另一台机器用 nc -zv 验证,四层都通,端口才真正可达。

查看端口号会影响线上服务器性能吗?

ss 直接读取内核网络信息,开销很小,日常排查可以放心执行。netstat 在连接数很大时会慢一些,但通常也在可接受范围,真正需要谨慎的是端口扫描类操作,全端口扫描会产生大量探测包,生产环境应避开业务高峰并在授权范围内进行。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/772951.html

赞 (0)
上一篇 2026年10月22日 16:00
下一篇 2026年10月22日 16:01

相关推荐

  • DMIT香港Pro VPS值得购买吗?香港高防VPS推荐

    对于追求极致稳定性与低延迟的国内用户而言,DMIT香港Pro (CN2 GIA) VPS凭借$298.88/年的高性价比,是平衡性能与成本的最优解,尤其适合对网络质量有严苛要求的企业级应用,在服务器租赁市场,香港节点一直是连接大陆与海外流量的黄金跳板,并非所有香港VPS都能提供稳定的CN2 GIA线路,DMIT……

    2026年7月1日
    1300
  • qq炫舞无法链接版本服务器失败怎么办

    QQ炫舞提示无法连接版本服务器,九成是本地网络或客户端缓存问题,按本文顺序排查,多数情况下五分钟内即可恢复,老玩家都懂,卡在“获取版本信息”这一步比跳断连击还让人崩溃,别急着卸游戏,咱们一步步说人话解决,先分清是“服务器真挂了”还是“你连不上”动手改设置之前,先明确问题出在哪一方,这一判断决定了后续操作方向,乱……

    2026年8月27日
    700
  • ASPX图片上传失败怎么办?三步解决源码报错问题!

    在ASP.NET中,上传图片可以通过FileUpload控件结合服务器端代码实现,核心步骤包括前端表单设计、后端文件处理和安全性优化,以下是详细实现方法,ASPX源码上传图片的基本原理ASP.NET的FileUpload控件允许用户从本地选择图片文件,服务器端代码(如C#)处理上传过程,关键是通过System……

    2026年2月7日
    12930
  • OA系统如何转移到服务器上,有哪些注意事项?

    OA系统迁移到服务器上的核心思路是:先在目标服务器搭建好运行环境,再迁移程序文件和数据库,最后修改配置文件完成对接,整个过程不需要重写代码,但步骤顺序一旦颠倒,很容易出现连不上数据库或登录白屏这类问题,下面按标准流程拆解每一个环节,迁移前先摸清OA系统的底细动手迁移前,先搞清楚手头这套OA系统是哪种架构,不同架……

    2026年10月18日
    100
  • 我的世界服务器服主如何制作32k?,怎么制作

    我的世界服务器怎么做32k附魔装备,核心答案是:通过管理员权限使用附魔指令,突破原版附魔等级上限,为武器或盔甲附加超高等级魔咒,这套玩法的本质是增强玩家体验或作为特殊活动的奖励机制,但多数服务器为了平衡性会对其进行限制,我的世界服务器服主怎么设置32k:先搞懂底层原理在动手制作之前,服主得明白32k不是一颗“超……

    2026年8月19日
    1200
  • 服务器bios如何管理硬盘?服务器bios设置硬盘启动顺序、RAID配置与硬盘检测方法

    服务器 BIOS 管理硬盘:高效配置与故障规避的实战指南在企业级 IT 基础设施中,服务器 BIOS 管理硬盘是决定系统启动、数据安全与硬件兼容性的核心环节,正确配置 BIOS 硬盘选项,可提升 30% 以上的启动效率,降低 50% 以上的识别异常风险,本文基于主流厂商(Dell PowerEdge、HPE P……

    2026年4月15日
    6100
  • 为什么ASP.NET原理如此重要?详解核心机制与实战应用

    ASP.NET是微软构建在.NET平台之上的核心Web应用程序开发框架,其本质是提供了一个强大、高效且安全的运行时环境和编程模型,用于创建动态网站、Web应用程序、Web服务和实时应用,理解其核心原理对于构建高性能、可扩展和可维护的现代Web应用至关重要, 核心运行机制:请求处理管道ASP.NET的核心是一个高……

    2026年2月13日
    14530
  • AIoT走进现实生活,AIoT技术如何改变我们的日常生活?

    AIoT(人工智能物联网)已不再是停留在概念阶段的未来技术,而是切实改变社会运转逻辑的核心驱动力,AIoT走进现实生活的最核心价值在于:它通过“端-边-云”的协同计算,实现了物理世界与数字世界的精准映射与智能反馈,从而大幅提升了资源配置效率与人类生活质量,这不仅是技术的迭代,更是生活方式的彻底革新, 智能家居……

    2026年3月11日
    13100
  • 刺激云618活动真的加量不加价吗?香港VPS推荐

    刺激云618活动加量不加价,香港VPS仅需18元/月即可享受2核2G配置及10M独享CN2线路,这是目前性价比极高的跨境网络解决方案,在云计算市场竞争日益激烈的当下,寻找稳定且低延迟的服务器资源一直是开发者和中小企业的痛点,刺激云推出的这次618大促,直接打破了行业对“低价即低质”的刻板印象,通过提供18元/月……

    2026年6月27日
    2000
  • AIoT智能建筑发展前景如何,智能建筑发展趋势分析

    AIoT技术正在重塑建筑行业的底层逻辑,推动传统建筑从单一的物理外壳向具备感知、交互与自我进化能力的智慧生命体转变,这一变革的核心结论在于:AIoT智能建筑发展的终极目标,并非单纯的技术堆叠,而是通过数据价值挖掘实现能源效率极致化与用户体验人性化的完美统一,未来建筑将不再是冰冷的钢筋混凝土,而是能够主动思考、响……

    2026年3月22日
    12500

发表回复

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