重试断开的 SSH 连接

重试断开的 SSH 连接

我使用ssh -L -g,但间歇性地丢失连接,因此:

$ ssh -L 8080:localhost:8080 example.com -g
Last login: Tue Apr 24 07:19:04 2012 from 203.0.113.123
Read from remote host example.com: Connection timed out
Connection to example.com closed.

有人能建议一种强大的方法来保持这些连接处于活动状态,并在它们关闭时重新连接。

答案1

你可以尝试莫什

答案2

autossh似乎满足了我的要求,从自述

autossh is a program to start a copy of ssh and monitor it, 
restarting it as necessary should it die or stop passing traffic.

替换问题中给出的论点:

autossh -M 0 -L 8080:localhost:8080 example.com -g

-M 0需要转动monitoring loop off

我能够kill -9从连接example.com并看到连接通过以下方式自动重新建立autossh

local$ autossh -M 0 -L 8080:localhost:8080 example.com -g
Last login: Wed Apr 25 03:23:56 2012 from 203.0.113.123
example.com$

kill -9在 上的连接的 PID 上执行example.com

local$ Connection to example.com closed.
Last login: Wed Apr 25 03:34:01 2012 from 203.0.113.123
local$ 

相关内容