Talvez uma combinação com a tela ajude. Para a reconexão automática, você precisará de uma autenticação de chave também.
Eu criei um alias: alias sshtunnel = 'TERM = xterm ssh nome_do_servidor -a -x -t / opt / local / bin / screen -xRR -A -e ^ Zz -U -O -S tunnelToServer' A tela garante que sua sessão de terminal esteja ativa.
A última etapa é criar um script que verifique o host e inicie o alias novamente: $ while:; fazer enquanto ! ping -c1 -t1 server > / dev / null; dormir 10; feito; sshtunnel; Conexão de echo ao servidor caiu em $ (data); dormir 10; feito
Isso deve sobreviver a todas as quedas de rede. Você pode brincar com os tempos de sono também.
Se você chamar screen -ls, encontrará sua sessão de tela com o nome "tunnelToServer".