我正在尝试通过 SSH 连接到我在另一个城市的 Ubuntu 服务器。该服务器的 IP 地址类似于129.123.x.xxx
。我使用 Windows 和康德连接到 Ubuntu。当我使用校园 VPN 将我的 IP 地址更改为 时129.123.y.yyy
,我没有遇到任何问题,并且命令在 cmder 中有效。但是当我断开 VPN 并将我的 IP 更改为另一个城市的 IP 并尝试命令时,它不起作用并给出连接超时的错误。这有什么问题?如果端口未打开,那么它不应该与 VPN 一起使用。为什么它只适用于 VPN?解决方案是什么?ssh [email protected]
208.234.z.zzz
ssh [email protected]
22
答案:以下两个答案都很有帮助。但我必须选择一个。
答案1
由于您可以通过 VPN 连接到服务器,但不能通过标准网络连接到服务器,这表明您所在城市中您现在连接的网络的某些属性阻止了连接。测试此问题的一种方法是使用其他 VPN。如果它与您现在使用的 VPN 以外的 VPN 兼容,则确认您周围的网络给您带来了麻烦。在这种情况下,解决方案就是使用 VPN,因为它不受您的控制。
答案2
您知道 Ubuntu 设备的 IP 地址是否可以公开访问吗?
VPN 连接基本上使您的设备处于同一网络邻近区域,并且会影响您可以/不能访问的内容。如果您的设备只能通过本地网络访问,则 VPN 会让您的设备成为该网络的“本地”设备。没有 VPN - 您无法访问这些“本地”资源。
现在回答你的问题:
这有什么问题?
没什么问题。你的 Ubuntu 设备可能无法通过互联网公开访问。
如果端口 22 未打开,则它不应该与 vpn 一起使用。
不完全是。在您的终端(您的城市) - 您可能已阻止端口 22。一旦您通过 VPN 连接,您的端口 22 上的连接将通过 VPN 连接进行隧道传输,因此它不会被阻止(因为 VPN 连接本身不会被阻止)。
为什么它只适用于 vpn?解决方案是什么?
取决于实际问题(因为我们没有足够的信息):
- 如果您这边的端口 22 被阻止 - 那么 VPN 允许通过端口 22 建立隧道连接。
- 如果你的 Ubuntu 设备只能在本地访问——那么 VPN 是你唯一的解决方案