具有端口转发功能的 Mosh(如 SSH)

geb*_*erl 11 ssh port-forwarding mosh

通过 连接到我的开发服务器时ssh,我可以通过以下方式将远程端口转发到本地端口:

ssh my-user@some-domain.com -L 5432:localhost:5432
Run Code Online (Sandbox Code Playgroud)

但是我宁愿使用,mosh因为我的连接往往会下降。

所以我尝试mosh使用--ssh参数扩展我的常用命令(有效):

mosh --ssh "ssh -L 5432:localhost:5432" my-user@some-domain.com
Run Code Online (Sandbox Code Playgroud)

这使我可以毫无错误地连接 - 但对我的端口没有任何作用。

有没有办法在通过连接时使端口转发工作mosh

geb*_*erl 14

我在Mosh 的 GitHub 上发现了这个确切功能的未解决问题。以及目前在bountysource的公开赏金为 616 美元。

所以看起来现在还不可能。

——

作为 SSH 断开连接问题的解决方法,我将以下几行添加到我的服务器/etc/ssh/sshd_config

ClientAliveInterval 60  # send null packet every x seconds to clients
ClientAliveCountMax 720  # time them out after doing so y times
Run Code Online (Sandbox Code Playgroud)

然后重启 SSH 守护进程并通过 SSH 重新登录。

sudo /etc/init.d/ssh restart
sudo service ssh restart
sudo systemctl restart ssh
Run Code Online (Sandbox Code Playgroud)

这当然无助于像 mosh 那样在移动连接上更换手机信号塔之类的情况。