网络服务器端口怎么看,核心就三步:查本机谁在监听、查防火墙和云安全组是否放行、从外部做一次连通性探测。 端口不是简单的“开”或“关”,它至少分服务监听、主机放行、云上放行、远程可达四层,命令结果要交叉验证。
服务器端口怎么查看是否开放:先分清“本机监听”和“远程可达”
你可以把端口想成服务器上的一扇门,门后有没有人服务、门锁有没有打开、小区门禁有没有放行,是三件不同的事,看端口时,先在本机看服务有没有监听,再看系统防火墙和云安全组,最后从另一台机器探测。
按照IANA公开的端口号分配惯例,0–1023是系统端口,1024–49151是注册端口,49152–65535是动态或私有端口,常见业务端口里,22多为SSH,80为HTTP,443为HTTPS,3306常见于MySQL,3389常见于Windows远程桌面,6379常见于Redis,知道端口号,排查才有起点。
| 查看层级 | 常用手段 | 判断重点 | 常见误区 |
|---|---|---|---|
| 服务监听 | ss、netstat、lsof、资源监视器 |
端口是否处于LISTEN,绑定地址是0.0.0还是0.0.1 |
只看端口数字,不看监听地址 |
| 主机防火墙 | firewall-cmd、ufw、iptables |
入方向是否放行对应协议和端口 | 把本机防火墙当成云安全组 |
| 云安全组 | 云控制台入方向规则 | 协议、端口范围、源IP是否匹配 | 安全组放行了,服务却只监听本机 |
| 远程可达 | telnet、nc、Test-NetConnection |
TCP握手是否成功 | 端口通就以为应用一定正常 |
Linux服务器端口怎么查看:ss、netstat、lsof三件套
在Linux上,先看监听列表,常用命令如下:
sudo ss -tulnp:同时看TCP、UDP监听和进程,权限足够时能看到PID和程序名。sudo ss -lntp | grep :80:只筛TCP的80端口。sudo netstat -tulnp:老系统常见,输出直观,但部分新系统需要先装net-tools。sudo lsof -i :8080:从进程反查端口占用,适合确认“谁占了8080”。ss -ulnp:排查UDP服务时用,别只查TCP。
看结果时重点盯三列:本地地址、端口、进程。0.0.1:3306表示只允许本机访问;0.0.0:3306或:3306才更可能接受外部连接,业内专家指出,ss读取内核连接表,比老式netstat更轻量,生产环境排查端口占用时优先用它。
服务配置文件也要会看,Nginx可执行nginx -T | grep -n listen,Apache可查Listen配置,SSH可看/etc/ssh/sshd_config里的Port,MySQL可看bind-address和port,改完配置后记得重载服务,例如systemctl reload nginx,否则命令看到的是旧监听。
Windows服务器端口怎么看:netstat与资源监视器
Windows上最顺手的是netstat -ano,再配合tasklist找进程,操作路径不复杂:
netstat -ano | findstr :3389:查3389端口和对应PID。tasklist | findstr PID:把PID换成上一步查到的数字,定位程序。- PowerShell执行
Get-NetTCPConnection -LocalPort 80:按端口查连接状态。 - 打开“资源监视器”,进入“网络”页签,看“侦听端口”和“TCP连接”,适合图形化核对。
- 查远程端口可用
Test-NetConnection -ComputerName 目标IP -Port 目标端口。
Windows下要留意协议。netstat -ano -p tcp只看TCP,排查UDP服务要加-p udp,查进程时权限不足会漏信息,尽量用管理员终端。
Windows和Linux查看端口占用对比:命令不同,思路一致
两个系统命令长得不一样,排查顺序其实一样:先看监听,再找PID,再看进程,最后确认防火墙和外部连通。
| 目标 | Linux常用命令 | Windows常用命令 |
|---|---|---|
| 查看监听端口 | ss -tulnp |
netstat -ano |
| 按端口筛选 | ss -lntp | grep :80 |
netstat -ano | findstr :80 |
| 查PID对应进程 | ps -fp PID |
tasklist | findstr PID |
| 查端口占用进程 | lsof -i :8080 |
Get-NetTCPConnection -LocalPort 8080 |
| 远程探测 | nc -zv IP 端口 |
Test-NetConnection 目标 -Port 端口 |
云服务器安全组端口怎么放行:控制台规则比防火墙更先看
云服务器端口不通,很多人第一反应是进系统改防火墙,更稳的顺序是先看云控制台安全组入方向规则,再看系统防火墙,行业共识认为,云服务器端口不通时,安全组和主机防火墙要分开查,前者是平台层,后者是系统层。
操作路径可以按这个顺序走:
- 登录云控制台,找到实例绑定的安全组,查看入方向规则。
- 确认协议是TCP还是UDP,端口范围是否包含目标端口,源IP是
0.0.0/0还是指定网段。 - 进入系统查主机防火墙:CentOS系常用
firewall-cmd --list-ports和firewall-cmd --list-all;Ubuntu系常用ufw status verbose;更底层的看iptables -L -n。 - 回到服务本身,确认监听地址不是只绑了
0.0.1。 - 从外部机器做一次探测,不要只看服务器本机
curl。
安全组放行时,源IP别图省事全开,数据库、Redis、远程桌面这类端口,尽量限定办公网或跳板机网段,端口范围也要写准,80和8080不是一回事,TCP和UDP也不能混。
本地电脑怎么查看远程服务器端口:telnet、nc与PowerShell三条路
从本地电脑看远程服务器端口,本质是发起一次TCP连接,常用三条路:
telnet 目标IP 端口:连上会显示空白或成功提示,拒绝或超时说明没通,Windows可在“启用或关闭Windows功能”里打开Telnet客户端。nc -zv 目标IP 端口:Linux和macOS常用,输出succeeded一类信息表示TCP可达。Test-NetConnection -ComputerName 目标IP -Port 端口:PowerShell里看TcpTestSucceeded,适合Windows排查。
端口通了不等于应用正常,比如80端口TCP能连,但HTTP返回502,问题在应用层,可再用curl -v http://目标IP:端口看响应头和状态码,ping不通也不能直接判断端口不通,ICMP和TCP是两套逻辑。
端口开放了却访问不了:四个常见原因
| 现象 | 优先检查 | 具体动作 |
|---|---|---|
本机0.0.1:端口能连,外部不能 |
监听地址 | 看ss输出是否绑定0.0.0,改服务配置 |
| 本机外部地址能连,公网不能 | 安全组或防火墙 | 查入方向规则和firewall-cmd/ufw |
| 远程探测超时 | 路由、安全组、源IP限制 | 换一台同网段机器测,核对源IP |
| 远程端口通但业务报错 | 应用层 | 查服务日志、反向代理、证书和端口映射 |
还有一种场景容易漏:用了NAT、负载均衡或容器映射,容器里服务监听0.0.0:8080,宿主机没做-p 8080:8080,外部当然看不到,Kubernetes里则要查Service的targetPort和nodePort是否对应。
北京服务器端口检测服务价格与自查成本怎么权衡
北京服务器端口检测服务价格通常受资产数量、IP数量、端口范围、检测深度、报告要求和现场配合影响,单纯做端口扫描,和包含整改建议、合规报告、复测的检测,不是一回事,企业如果只是确认某个业务端口通不通,按上面的命令自查成本更低;如果要做上线前安全检查或等保整改,第三方服务更有交付价值,地域差异主要体现在服务响应和现场配合,不必把“北京”当成价格唯一变量。
网络服务器端口怎么看,说到底就是别跳步:先服务监听,再主机防火墙,再云安全组,最后远程探测,四层里任何一层没放行,外部访问都会失败。
网络服务器端口怎么看Q&A
服务器端口怎么看是否被防火墙拦截?
先在本机用ss -tulnp确认服务在监听,再看firewall-cmd --list-all、ufw status或iptables -L -n,云服务器还要查安全组入方向,本机0.0.1:端口能连、外部不能连,多半是监听地址、主机防火墙或安全组其中一层没放行。
Linux和Windows查看端口占用哪个更准?
两者都读系统连接表,准确性取决于权限和命令是否用对,Linux用ss -tulnp加lsof -i :端口,Windows用netstat -ano加tasklist,管理员权限下结果都可靠,排查时别只看TCP,UDP服务要单独查。
网络服务器端口怎么看才不遗漏云安全组?
按“服务监听主机防火墙云安全组远程探测”的顺序走,每一步留一条命令结果,安全组看协议、端口范围、源IP,主机防火墙看放行列表,远程用nc或Test-NetConnection验证,云服务器安全组和主机防火墙是两层独立规则,任何一层未放行,外部探测都不会成功。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/790746.html


