检查 SSH 端口 22 是否开放

主机
仅扫描你拥有或已明确获准探测的主机。扫描会检查约 20 个常见 TCP 端口。
下一步

新服务器上无法登录,或者不确定防火墙变更是否阻断了 SSH?输入主机地址,并在结果中查找端口 22。此扫描还会显示 Telnet 和 FTP,通常您会希望关闭这两项。

如何测试 SSH 可达性

  1. 1

    输入服务器

    在主机字段中输入服务器的公网主机名或 IP 地址。

  2. 2

    运行扫描

    点击“下一步”,然后点击“扫描常见端口”。

  3. 3

    查找 22

    如果端口 22 出现并标注为 SSH,说明从外部对该端口的 TCP 连接已成功。

  4. 4

    检查 21 和 23

    FTP(21)和 Telnet(23)同样包含在此扫描中,因此您可以立即看出旧的远程访问是否暴露。

端口 22 出现意味着什么

端口 22 显示为开放,表示服务器接受了该端口上的 TCP 连接。这证实网络路径是通的:防火墙、安全组和云规则放行了流量,并且有程序正在监听。但它并不能确认您的密钥或密码会被接受,只能说明这扇门是可以到达的。

如果端口 22 没有出现

扫描只显示开放的端口,因此 22 缺失可能有以下几种原因:

  • SSH 守护进程未运行,或者在其他端口上监听。
  • 主机防火墙或云安全组阻止了来自互联网的 22 端口。
  • 服务器无法访问,或仍在启动中。
  • 运行扫描的网络中,服务商过滤了 22 端口。

这个基础扫描器无法区分这些原因。许多管理员会有意将 SSH 迁移到其他端口,而该端口不在本工具的固定列表中,因此自定义的 SSH 端口不会显示。

排查顺序

  1. 确认服务器正在运行,例如确认 443 等 Web 端口显示为开放。
  2. 检查云防火墙或安全组中是否有您 SSH 端口的入站规则。
  3. 检查主机防火墙规则。
  4. 确认 SSH 服务正在运行,并确认它使用的端口。

加固提示

暴露在公网上的 SSH 会持续受到自动化登录尝试的攻击。仅使用密钥登录,并限制源地址,可以降低这种风险。请只扫描您管理的服务器。

同一扫描中的相关端口

同一次运行还会检查 Web 端口 80、443、8080 和 8443。当 SSH 看似无响应时,这一点很有用:如果 HTTPS 有响应而 SSH 没有,说明服务器在运行,问题仅限于 SSH 或其防火墙规则。如果完全没有任何响应,请优先怀疑服务器本身、其网络或服务商层面的阻断。

请记住,扫描是从一个公网地址发起连接的。如果您的 SSH 规则只允许您自己的 IP 地址,那么即使您自己能够连接,端口在这里也会正确地显示为关闭。 如果您预期 SSH 应该开放但实际未开放,请每次只更改一项,并在每次更改后重新扫描,这样您就能知道是哪一步解决了问题。

常见问题

不可以。扫描器只测试固定的 18 个端口,其中 22 是唯一的 SSH 端口。自定义的 SSH 端口不会被检查。

开放只表示 TCP 连接已被接受。登录仍可能因密钥错误、用户被禁用,或 SSH 配置中的允许列表而失败。

在现代服务器上很少见。Telnet 以未加密的方式传输数据,因此如果您管理的机器上出现了端口 23,请查明是什么在监听,除非确实需要,否则应将其关闭。

不会。它只打开一个 TCP 连接然后关闭。它不发送任何凭据,也不尝试任何密码。

相关工具

此工具还提供其他语言版本

使用指南与应用场景