SSH 连接器服务

SSH 连接器服务

我家里、大学里和 Android 手机上都有许多 Linux 计算机。我希望能够随时通过 SSH 连接到其中任何一台计算机,但它们都隐藏在不同的网络后面,它们可能会随时失去连接或更改其外部 IP 地址。

理想情况下,我会有一些类似于 Dropbox 的后台应用程序,它可以与具有已知地址的某些外部服务保持连接(重新连接)。然后,每当我想从一台计算机通过 SSH 连接到另一台计算机时,该服务都会安排建立连接。我有一台 Raspberry Pi,它有一个 DynDNS 地址和转发端口,因此如果需要,我可以自己运行该服务。但重要的是,流量不要通过该服务器,因为我不想让我的两台大学计算机在彼此相邻时将数据发送回家和返回。

有软件可以做到这一点吗?

或者,是否有类似于旧 Hamachi 的免费 VPN 服务,可以在多台 Linux 计算机和 Android 上运行?那么它们将全部位于一个伪本地网络上,并且可以自由地在彼此之间进行 ssh 连接。据我所知,目前没有这样的免费服务,这似乎很奇怪,因为有大量的免费文件同步服务(Dropbox、Google Drive、Mega 等)。

答案1

泽罗蒂尔似乎完全适合您的用例:

他们称之为“软件定义网络”。它有点像 VPN 和 Hamachi 等服务的混合体。基本上,您能够创建网络(具有唯一 ID),您可以连接并授权设备。这是一个 P2P 网络,但如果您的网络不允许入站连接,则可以使用超级节点。

它们目前支持多种操作系统:Linux、FreeBSD、Android、Windows、OSX。

除了 Android,您还可以同时连接多个网络。连接到网络会在您的操作系统中创建一个虚拟网卡。

如果您想使用 DNS,您也可以使用 zeroconf 或类似的东西。

它基于 UDP,能够很好地处理网络变化。我曾多次经历过手机从 wifi 切换到 LTE 或反之亦然。

答案2

您可以考虑使用 SSH 隧道。

从您的 RPi 设备创建一些您需要访问的隧道,然后您可以使用本地 RPi 端口通过 SSH 连接到它们。

问题是如果设备重新启动,您的连接就会中断。

相关内容