拒绝连接

如果你的客户端向远程服务器主机发送连接请求,并且远程主机响应说它拒绝接受请求,则会发生连接被拒绝错误。 连接被拒绝错误实质上意味着计算机不接受与所请求的 IP 地址和端口的连接。

拒绝连接可能是由阻止连接请求的防火墙引起的。可以将配置为阻止与特定端点的连接的防火墙设置为丢弃连接请求 - 在这种情况下,客户端永远不会得到响应并最终会超时。或者防火墙可以通过拒绝响应来响应连接连接请求。

除了防火墙,在 SSH 的情况下,连接被拒绝有几个可能的原因:

  • 你可能使用错误的端口号进行连接。SSH 的标准端口号为 22,但有些人在不同的端口上运行 ssh 服务以阻止未经授权的访问尝试。

  • 你可能试图连接到错误的计算机。你可能输错了主机名或 IP 地址。或者计算机可能正在使用已更改的动态分配地址。

  • ssh 服务器进程可能没有运行:

    • 如果系统正在启动,它可能尚未启动。
    • 它可能已被禁用; 例如,当系统处于单用户模式时。
    • 它可能配置错误,导致无法启动。
    • 计算机可能没有设置 SSH 服务器。MS Windows 系统通常不包括 SSH 服务器。在某些 Linux 系统上,SSH 服务器可能是可选组件。OS X 包含 SSH 服务器,但默认情况下已禁用。
  • SSH 服务器进程可能没有侦听你尝试连接的特定 IP 接口上的连接。大多数计算机至少有两个 IP 接口,一个 localhost 接口和一个或多个网络接口。每个活动接口都有一个与之关联的 IP 地址。SSH 服务器通常配置为接受任何 IP 接口上的连接。但它可以配置为仅接受特定接口上的连接。在这种情况下,即使连接请求具有正确的端口,计算机也将拒绝连接到 SSH 服务器未侦听的 IP 地址。

  • 服务器可能有对同一端口的连接请求积压。这是罕见且不寻常的,但如果主机接收连接请求的速度超过了可以处理的速度,则主机最终将开始拒绝新的连接请求。

请注意,除防火墙外,连接被拒绝意味着你正在与远程计算机通信 - 它只是不接受你的连接请求。