从 NAT 后面访问 Azure VM

问题描述

所以我对这一切都很陌生,目前正在学习 ssh 和 NAT。

所以我在 Azure 上设置了一个 VM,为了连接到它,我需要通过 ssh 连接到它。但问题是我无法通过 ssh 连接到它,因为我目前正在大学学习,因此我在 NAT 后面,因此一直出现“连接超时”错误

我也尝试将认端口 (22) 更改为 443 或 80 仍然是相同的错误,这证实我在 NAT 之后。

所以目前 ssh 的唯一方法是使用运行良好的 VPN。 但是经过一番研究后,我发现我也可以使用反向 SSH 隧道来实现相同的目的,但无法想出如何做到这一点。我知道这比仅使用 VPN 风险更大,但无论如何只是想尝试一下。

所以有人可以帮我吗?

解决方法

如果您位于 NAT 后面,则传出 SSH 连接(您的计算机 -> Azure VM)不应受到影响。 NAT 通常会阻止对您机器的传入 SSH 访问,而不是从它出来。

我也尝试将默认端口 (22) 更改为 443 或 80 仍然是同样的错误,这证实我在 NAT 后面。

您更改了哪台机器上的默认端口,您还是 Azure VM?更改您机器上的默认端口不会影响传出 SSH 连接,因为它仅适用于到您机器上 SSH 服务器的传入 SSH 连接(如果您在本地运行一个)。

最好的办法是实际查看 VM 所在的 Azure 虚拟网络的安全组。确保它允许端口 22 上的传入 SSH 连接到您的 VM。