我对autossh有问题,以防短网络中断(高达60岁)。这每天都会发生,因为我的ISP在早上断开了网络连接。即使使用了autossh,ssh隧道也会一直处于故障状态,直到手动重新启动。如果我用更长的中断时间测试它,自动恢复隧道罚款。
当使用"AUTOSSH_DEBUG=1“启动autossh时,在短时间断开连接期间将显示以下内容:
Warning: remote port forwarding failed for listen port
当同时查看ssh服务器时,我在"netstat -pln“中看到,旧端口在那里保存了大约60年代,直到它最终消失。如果客户端在此期间尝试重新连接,则不会重新创建隧道,也不会重试上面的消息。当端口在服务器上消失后重新连接时,ssh成功地重新创建隧道。
是否有一种方法来延迟自动重连接?如果连接失败,是否有重新尝试的方法(我猜目前没有重试,因为它被归类为警告)?有没有办法缩短时间,直到剩余的端口被sshd移除?
我的环境是Debian挤在客户端,Wheezy在服务器上。
编辑:我忘了提到,如果我使用autossh而没有管理端口"-M 0“,或者使用回送端口"-M 2000:7”,或者使用完全配对的管理循环"-M 2000“,就会发生这种情况。
发布于 2013-12-24 10:28:31
如果ssh选项ExitOnForwardFailure不能设置所有请求的动态、隧道、本地和远程端口转发,则可以将ssh选项设置为“使ssh终止连接”。
Autossh将重新创建新的ssh连接,直到转发成功。
https://serverfault.com/questions/512978
复制