远程机器突然无法通过 ssh 访问

远程机器突然无法通过 ssh 访问

几周前,我设置了一台远程 Ubuntu 机器,我能够毫无问题地通过 ssh 进入它。直到几个小时前,机器停止响应,我试图开始一个新的会话。现在我只得到:

ssh: connect to host IP port XYZ: Operation timed out.

不幸的是,我无法物理访问该机器,因此我试图找出问题所在。我试过:

ping IP

但我一直收到Request timeout for icmp_seq 0。我的家人尝试重新启动机器和路由器,但没有帮助。有什么建议吗?

附言:我是远程机器设置的新手,因此如果没有包含相关信息来回答我的问题,我很抱歉。


显然,一个问题是路由器的 IP 在ssh连接过程中发生了变化。我仍然遇到问题,但可能与机器有关,而不是与网络有关。

答案1

可能有许多停止工作的原因。没有物理访问就不可能知道。

但是,根据您的问题,这是您在家中设置的一台机器。首先想到的是路由器的 IP 地址发生了变化。这在使用 DHCP 租约的家用路由器中很常见。或者可能是路由器重置了,SSH 的端口转发消失了。可能是 SSH 服务器没有启动。这样的例子不胜枚举。

答案2

最终,依靠 ssh 来继续在您不直接管理的网络上工作是一项艰巨的任务。

按可能性排序:


路由器IP动态分配(例如通过 DHCP),并且其租约已过期,因此路由器获取了另一个 IP,并且您拥有的 IP 已重新分配给另一个 ISP 客户。

诊断:请现场人员访问whatismyip.com或类似服务,并向您读取 IP。如果您过去成功 ping 过 IP,则您现在无法 ping可能表明旧 IP 未分配且未重新分配,但这并无定论。

解决方法:连接到新 IP。长期解决方法是使用动态域名解析未来服务(诺伊普例如很受欢迎)


路由器故障/发生故障,或者与 ISP 的连接中断

诊断:请现场人员浏览互联网。这也会导致 ping 失败。

解决方法:要么帮助排除故障,要么拨打 ISP


路由器固件已升级或重置,并且您的端口转发设置就消失了。

诊断:如果可能,请现场人员访问浏览器页面并仔细检查设置。Ping 应该仍然有效。

修复:重新添加设置。为了防止再次发生这种情况,您可以设置自动SSH 反向连接(-R)。您可以将其与自动SSH为了稳健性,或者如果您有雄心壮志,甚至可以设置 VPN 客户端(例如 openvpn)。


ISP 决定对 22 端口进行防火墙保护. 这虽然不寻常,但也不是闻所未闻。

诊断:在新端口上设置 SSH,两者在电脑上面以及路由器上的端口转发。Ping 应该仍能正常工作。

解决方法:只需使用其他端口或拨打 ISP

答案3

由于 SSH 不再工作的原因已经得到解答(公共 IP 更改、端口转发规则重置等),
我想对 ping 超时的事实做出回应:

Ping 不使用任何端口,因为它不使用 TCP/UDP,而是使用 ICMP。这意味着如果您 p​​ing 公共 IP,您就会 ping 将服务器连接到互联网的路由器,出于安全原因,路由器很可能不会响应 ping(大多数家用路由器都会这样做)。

如果您 p​​ing 机器的私有 IP 地址(192.168.xx 或类似的地址),您用于连接互联网的路由器将不会转发 ping,因为 192.168.xx 是一个私有 IP 地址范围,这意味着对此类 IP 的请求不会通过互联网转发。

相关内容