怎么扫描服务器开放了哪些端口?用宝塔拨测的端口扫描看开放状态和服务类型
想知道一个域名或 IP 对外开放了哪些端口、每个端口上跑的是什么服务,用宝塔拨测的 端口扫描 输入目标一键扫描即可。结果会逐个列出端口的开放/关闭状态、识别出的服务类型和响应时间。
端口扫描怎么用?
打开 端口扫描,在输入框填目标域名或 IP(例如 github.com),点「开始扫描」,稍等片刻结果页就会列出每个端口的扫描结果。下面是对 github.com 的一次实测:目标解析到 20.205.243.166(新加坡),本次扫描的探测节点是湖南株洲(电信)。

扫描结果怎么看?
这次扫描共测了 23 个常用端口,结果分成两类:
开放端口(3 个):
| 端口 | 状态 | 服务 | 响应时间 |
|---|---|---|---|
| 22 | 开放 | SSH | 90.72ms |
| 80 | 开放 | HTTP | 90.07ms |
| 443 | 开放 | HTTPS | 113.79ms |
关闭端口(20 个):FTP(21)、Telnet(23)、SMTP(25)、DNS(53)、POP3(110)、IMAP(143)、SMTPS(465)、SMTP(587)、IMAPS(993)、POP3S(995)、MSSQL(1433)、Oracle(1521)、MySQL(3306)、RDP(3389)、PostgreSQL(5432)、VNC(5900)、Redis(6379)、HTTP(8080)、HTTPS(8443)、MongoDB(27017)。
github.com 只开放 22、80、443 三个端口是符合预期的:22(SSH)用于 git 的 SSH 协议,80 和 443 是网站服务,其余数据库、远程桌面、邮件等端口都不对公网开放。
「服务」一栏帮你快速识别端口用途
结果里的「服务」是根据端口号判断的标准服务名:22 对应 SSH、80 对应 HTTP、443 对应 HTTPS。看这一栏就能快速判断每个开放端口在跑什么,不用逐个猜端口用途。
为什么大部分端口显示「关闭」?
数据库(MySQL 3306、Redis 6379、PostgreSQL 5432)、远程桌面(RDP 3389、VNC 5900)这些端口,规范做法是只在内网使用、不对公网开放。所以对一个正常配置的网站域名做扫描,结果里这些端口几乎都会显示「关闭」——这是安全配置,不是扫描失败。反过来,如果你自己的服务器上这些端口意外显示「开放」,就要检查是不是误开了防火墙规则。
常见问题
端口扫描能查到什么?
输入一个域名或 IP,端口扫描会逐个探测一组常用端口,列出每个端口的开放/关闭状态、识别出的服务类型(如 SSH、HTTP、HTTPS)以及响应时间。
结果里的「服务」一栏是什么意思?
它表示该端口上识别出的服务类型。例如 22 端口显示 SSH、80 显示 HTTP、443 显示 HTTPS,是根据端口号判断的标准服务名,帮你一眼看出这台主机对外提供了哪些服务。
为什么数据库端口(3306、6379 等)扫描结果显示关闭?
这是正常的:MySQL(3306)、Redis(6379)、PostgreSQL(5432)等数据库端口默认不对公网开放,只在内网使用。扫描结果显示关闭,说明目标没有把这些端口暴露到公网,是安全配置而不是故障。
端口扫描和 TCP 拨测有什么区别?
TCP 拨测针对一个端口(如 443)测它能不能建立连接;端口扫描则一次扫描一组端口,逐一看哪些开放、哪些关闭,并识别每个端口上的服务类型,适合用来摸清一台主机暴露了哪些服务。
扫描结果里的响应时间是什么?
它是探测节点到目标端口建立连接的耗时,单位毫秒(ms)。它受探测节点所在地和网络线路影响,只反映本次扫描那一刻的连通情况,不代表长期状态。