如何用netstat命令查看系统开启的TCP端口

使用netstat命令查看系统开启的TCP端口的核心方法是执行netstat -an | findstr LISTENING(Windows)或netstat -tlnp(Linux),这能直接列出所有处于监听状态的TCP连接及其对应的端口号。

在服务器运维和网络安全排查中,端口状态是判断服务是否正常运行的第一道防线,很多新手在面对满屏的代码时感到无从下手,其实只要掌握几个关键参数,就能像老练的网管一样快速定位问题,本文将通过具体场景,拆解不同操作系统下的实操步骤,帮助你彻底搞懂端口监控。

netstat命令详解,查看本机网络连接IP端口协议,网络测试教程 #知识分享官#
加载中
netstat命令详解,查看本机网络连接IP端口协议,网络测试教程 #知识分享官#

为什么需要关注TCP监听端口

TCP端口是网络通信的入口,就像房子的门窗,如果门窗大开且无人看管,黑客就能轻易潜入,业内专家指出,绝大多数数据泄露事件都源于未正确配置的开放端口,定期审查端口状态不仅是技术需求,更是安全合规的基本要求。

Windows系统下的端口查看实操

Windows环境是最常见的办公场景,这里的操作相对直观,但需要区分命令提示符(CMD)和PowerShell的不同用法。

基础命令:快速筛选监听状态

在Windows中,最经典的命令组合是netstat -ano,这个命令会输出所有网络连接、端口监听情况以及进程ID(PID),为了只看TCP端口,我们需要结合过滤工具。

使用Findstr进行精准过滤

在CMD窗口中输入以下命令:

netstat -ano | findstr LISTENING

这条命令的执行逻辑非常清晰:

  • netstat -ano:列出所有协议、所有连接,并显示关联的进程ID。
  • 管道符,将前一个命令的输出作为后一个命令的输入。
  • findstr LISTENING:只保留包含“LISTENING”关键字的行,即正在等待连接的端口。

输出结果通常包含五列信息:协议、本地地址、外部地址、状态和PID,本地地址中的冒号后面就是端口号。

如何用netstat命令查看系统开启的TCP端口

0.0.0:80表示本机所有IP的80端口正在监听。

关联进程:找出谁占用了端口

看到PID后,你可能想知道是哪个软件在运行,此时可以使用tasklist命令进行交叉查询,假设上一步得到的PID是1234,你可以输入:

tasklist | findstr 1234

系统会返回进程名称,如nginx.exe或java.exe,这样你就知道是Web服务器还是数据库服务占用了端口。

Linux系统下的端口查看技巧

Linux服务器占据了企业级应用的大部分市场,其命令风格更加简洁高效,但权限要求更高。

核心命令解析:netstat -tlnp

在Linux终端中,推荐使用netstat -tlnp命令,这个参数组合是查看TCP端口的黄金标准。

  • -t:仅显示TCP协议。
  • -l:仅显示监听状态的端口。
  • -n:以数字形式显示IP和端口,避免DNS解析带来的延迟和混淆。
  • -p:显示占用端口的进程名称和PID。

执行后,你会看到类似如下的输出:

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      1024/sshd
tcp        0      0 127.0.0.1:3306          0.0.0.0:               LISTEN      2048/mysqld

权限问题:为什么看不到进程名?

如果在执行命令时,PID/Program name列显示为“-”,说明当前用户没有权限查看其他用户的进程信息,这是Linux的安全机制,解决方法是使用sudo提升权限:

sudo netstat -tlnp

如何用netstat命令查看系统开启的TCP端口

输入密码后,你将看到完整的进程信息,如sshd或mysqld。

替代方案:ss命令的优势

近年来,越来越多的Linux发行版开始推荐使用ss命令替代netstat,因为ss速度更快,能显示更多内核级信息,对于想知道如何查看Linux开启的TCP端口ss -tlnp是更现代的选择。

其参数含义与netstat类似:

  • -t:TCP协议。
  • -l:监听状态。
  • -n:数字格式。
  • -p:显示进程。

执行sudo ss -tlnp,输出结果与netstat高度相似,但在处理成千上万个连接时,响应速度有明显优势。

端口状态解读与安全建议

仅仅看到端口开放是不够的,理解端口状态背后的含义至关重要。

常见TCP端口状态及其含义

在netstat的输出中,状态列是关键信息,以下是几种常见状态的场景分析:

LISTEN:正常监听

这是最理想的状态,表示服务正在等待连接,Web服务器的80或443端口通常处于此状态,如果预期中的服务端口未显示LISTEN,说明服务可能未启动或配置错误。

ESTABLISHED:连接已建立

表示通信双方已经成功握手并正在传输数据,如果某个端口突然出现大量ESTABLISHED连接,且来源IP异常,可能是遭受了DDoS攻击或端口扫描。

CLOSE_WAIT:等待关闭

这是一个危险信号,它表示远程端已经关闭连接,但本地应用程序尚未调用close()函数,如果大量端口处于CLOSE_WAIT状态,通常意味着代码存在资源泄漏,需要开发人员介入优化。

如何关闭不必要的端口

发现高危端口后,下一步是进行加固。

停止相关服务

如果是Windows,可以在“服务”管理器中找到对应服务并停止,停止IIS服务可以关闭80端口,在Linux中,使用

如何用netstat命令查看系统开启的TCP端口

systemctl stop service_name命令。

配置防火墙

更推荐的方式是通过防火墙规则限制访问,而不是直接停止服务。

Windows防火墙配置

使用netsh命令可以添加防火墙规则,禁止外部访问8080端口:

netsh advfirewall firewall add rule name="Block 8080" dir=in action=block protocol=TCP localport=8080

Linux防火墙配置

对于使用iptables的系统,命令如下:

sudo iptables -A INPUT -p tcp --dport 8080 -j DROP

对于使用firewalld的系统(如CentOS 7+),命令为:

sudo firewall-cmd --permanent --add-port=8080/tcp --remove-port=8080/tcp
sudo firewall-cmd --reload

常见问题解答

netstat命令查看系统开启的TCP端口常见问题

为什么netstat显示端口为0.0.0.0而不是127.0.0.1?

0.0.0表示监听所有网络接口,包括本地回环和外部网卡,这意味着该端口不仅本机可以访问,外部网络也可以尝试连接,如果服务只需要本机访问,应配置为127.0.0.1,以提高安全性。

如何查看UDP端口?

netstat默认可能只显示TCP,要查看UDP端口,可以在命令中加入-u参数,即netstat -an | findstr UDP(Windows)或netstat -ulnp(Linux),UDP是无连接协议,没有ESTABLISHED状态,只有SENDQ和RECVQ队列状态。

netstat命令在Windows 11中还能用吗?

可以,虽然微软推荐使用Get-NetTCPConnection等PowerShell cmdlet,但netstat作为传统命令依然保留在Windows 11中,完全兼容且功能一致,对于习惯命令行操作的管理员来说,它依然是最快捷的工具。

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

赞 (0)
如何清理Ubuntu的磁盘空间?Ubuntu释放磁盘空间方法介绍
上一篇 2026年6月22日 14:38
cdn人员架构,cdn运维人员岗位职责与技能要求
下一篇 2026年6月22日 14:40

相关推荐

  • 上海跨境支付网站防御方案

    上海跨境支付网站防御方案必须从DDoS防护、Web应用防火墙、数据加密与合规审计四个维度构建纵深防御体系,才能有效应对每日数万次的攻击尝试与数据窃取风险,跨境支付业务涉及资金流转与用户隐私,网站一旦被攻破,不仅面临直接经济损失,还可能触发监管处罚,一套适配业务场景的防御方案是刚需,下面我们拆解方案的核心要素与落……

    2026年8月11日
    500
  • 海外服务器线路选择建议,海外服务器哪条线路速度快?

    海外服务器线路的选择直接决定了业务的稳定性、访问速度与用户体验,核心结论在于:必须根据业务受众地域、规模预算及对延迟敏感度,精准匹配线路类型,优先选择具备BGP智能切换能力的CN2 GIA或优化带宽线路,而非单纯追求低价的普通国际带宽, 选择不当会导致丢包率高、晚高峰拥堵,严重影响业务转化, 深入解析三大核心线……

    2026年3月5日
    12600
  • com域名注册哪里最便宜?com域名注册费用及平台推荐

    注册.com域名最便宜的选择通常是GoDaddy、Namecheap或阿里云等主流注册商,但“便宜”不仅看首年价格,更要看续费成本和隐藏费用,Namecheap和Porkbun在长期持有成本上往往更具优势,选择域名注册商时,很多人只盯着首年的超低折扣,却忽略了第二年的高昂续费,这种“低价陷阱”在行业内非常普遍……

    2026年6月24日
    1700
  • 租用服务器带宽有哪些价格套路?服务器带宽租用费用怎么算

    租用服务器带宽的价格陷阱本质上源于信息不对称,企业若不掌握核心计费逻辑与配置标准,极易陷入“低价中标、高价运维”的困境,真正具备性价比的带宽方案,必须建立在“独享带宽、透明计费、优质线路”三大基石之上,而非单纯追求报价单上的数字低廉,在数字化业务高速发展的今天,带宽成本直接关系到企业的运营利润与用户体验,识别价……

    2026年3月5日
    12700
  • 个人真的能做跨境电商吗?个人怎么开跨境电商

    跨境电商个人完全可以做,且门槛已大幅降低,关键在于选择轻资产平台并掌握合规运营技巧,过去大家总觉得做外贸需要巨额资金、庞大团队和复杂资质,这种观念在2026年已经过时,随着供应链数字化和平台政策下沉,个人卖家拥有了前所未有的入场机会,你不需要租写字楼,也不需要雇佣几十个员工,一部手机、一个电脑,加上对选品的敏锐……

    2026年6月24日
    4200
  • html建站程序怎么用?免费开源的html建站程序有哪些

    HTML建站程序是构建静态网页的基础工具,适合对加载速度、安全性及SEO友好度有极高要求的个人博客、企业展示页及文档站点,其核心优势在于无需数据库即可实现极速访问,在2026年的数字营销环境中,网站不仅是信息的载体,更是品牌信任的第一触点,许多初学者在起步阶段往往纠结于选择复杂的CMS系统还是轻量级的代码方案……

    2026年6月8日
    4800
  • 广州高防服务器租用DDoS防御能力怎么评估,哪家好?

    使用**官方或开源工具**(如hping3、LOIC)模拟小规模攻击,观察服务器响应测试前务必通知机房运维,避免被误判为真实攻击并触发封禁关注测试期间**CPU和内存占用率**,若异常升高说明清洗机制无效测试持续时长建议**不少于15分钟**,因为短时攻击不足以暴露问题注意:加压测试不应超过租用合同的防御上限……

    2026年8月11日
    300
  • WordPress下载后如何自动发邮件?设置产品下载自动发送确认邮件教程

    通过配置WordPress插件并结合SMTP服务,即可实现用户下载产品后自动发送包含下载链接或凭证的确认邮件,这是提升B2B转化率和用户体验的标准做法,在数字化营销的当下,用户购买虚拟产品或下载资源后,能否及时收到一封结构清晰、包含关键信息的确认邮件,直接决定了复购率和品牌信任度,许多站长在搭建网站时,往往忽略……

    2026年6月25日
    1600
  • HTML5能直接接收数据库吗?前端如何获取后端数据

    HTML5本身并不直接存储数据库,而是通过IndexedDB、WebSQL(已废弃)或LocalStorage等浏览器本地存储API,将结构化或非结构化数据持久化保存在用户终端设备上,实现离线数据读写与同步,在2026年的Web开发语境下,前端数据持久化早已超越了简单的Cookie时代,开发者不再依赖服务器端S……

    2026年6月6日
    4200
  • 互联网专线接入市场现状如何?哪家运营商专线性价比高

    互联网专线接入市场正从单纯的带宽售卖转向“连接+安全+算力”的综合服务竞争,企业选择时需重点关注SLA保障、多线BGP质量及私有云集成能力,而非仅看价格,随着数字化转型进入深水区,企业对网络稳定性的容忍度已降至冰点,过去那种“能上网就行”的观念彻底过时,现在每一毫秒的延迟、每一次抖动都可能直接转化为业务损失,互……

    2026年6月1日
    3100

发表回复

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