SSH - 无需端口转发的远程登录

SSH - 无需端口转发的远程登录

我的朋友使用 Ubuntu 16.04,我使用 Fedora 27。他们是 Linux 新手,时不时向我寻求帮助。我发现通过 SSH 远程访问他们的系统比通过视频通话等方式帮助他们更方便(当我们连接到同一个网络时,我执行过几次,但我们分开时从未执行过)。我家里没有互联网连接。相反,我打开我的移动热点,并将我的笔记本电脑连接到它。考虑到这一点,当我们在两个不同的位置并连接到不同的网络时,我如何使用 SSH 登录他们的系统?(我知道我应该在 Fedora 论坛上问这个问题,但我认为 Ubuntu 和 Fedora 在这个问题上的说明是相同的)。

答案1

如果你位于两个不同的位置(假设有两个不同的公共 IP 地址),远程用户的路由器必须有一个port forwarding来自source port any -> 22source port 22 -> 22Linux 主机(主机名或 IP 地址)的条目。假设 Linux 主机正在接受 ssh 连接port 22或使用为 ssh 配置的任何端口。

无论何时你都会尝试ssh 使用他们的公共 IP 地址,他们的路由器将接受请求,并根据端口转发条目,数据包将被发送到正确的主机(Linux 主机)。在这种情况下,您的公共 IP 地址无关紧要。您可以使用热点或其他任何方式获取它。只要您可以访问互联网,您就应该能够使用他们的公共 IP 地址进行 SSH,或者DNS namespace如果使用动态域名解析

如果你经常使用 SSH,每次处理公共 IP 地址似乎都太多了,那么DDNS你可以利用许多免费服务。其中之一就是北爱普科斯大学如何在 Linux 上运行可以参见这里

答案2

请记住,将 ssh 暴露给互联网会带来被黑客攻击的巨大风险。因此,我建议听从 pa4080 的建议,使用 TeamViewer 或 VNC Connect 等。

如果您想在另一个系统上远程工作,请考虑在两个主机(或它们各自的网关,如 DSL 路由器)之间设置专用 VPN

相关内容