如何使用 autossh 建立多个 SSH 反向连接?

如何使用 autossh 建立多个 SSH 反向连接?

我用了自动SSH在我的树莓派中连接到我的一个 VPS。

但是我有 4 个 raspberry-pi。我使用相同的脚本连接到我的远程 VPS,以便我可以随时远程登录每个 raspberry pi。

对于这 4 个 pi,我是autossh这样使用的:

将此行添加到my /etc/rc.local我的第一个 Pi 上。

sudo su pi -c "autossh -M 1122 -4 -NC -R \*:8822:localhost:22 [my_vps_username]@[my_vps_IP] -p 22" & 所以我可以用

ssh -l pi [my_vps_IP] -p 8822连接到我的第一个 Pi。

如果我想连接到第二个 Pi,我必须将端口更改为 8823 或其他。

sudo su pi -c "autossh -M 1122 -4 -NC -R \*:8823:localhost:22 [my_vps_username]@[my_vps_IP] -p 22" &

问题是:

如何进行大量 SSH 反向连接而无需逐一指定端口?

我可能有 100 个 Pi,并且需要在开机时随时通过 SSH 连接它们。摆脱端口重复,并系统地管理这些 SSH 连接。

欣赏!

答案1

这里没有什么魔法。一次只能将一个应用程序绑定到任何一个 IP:Port 元组。您正在绑定到 127.0.0.1:XXXX。要连接多个隧道,您需要维护它们绑定到哪些端口或绑定到哪些 IP 地址的映射表(请记住,127/8 的全部都可在本地主机接口上使用)。

这是无法避免的。您需要为每个远程系统分配端口并跟踪它们。

相关内容