desabilitando a expiração da sessão ssh

4

Estou instalado o Ubuntu no Virtual Box, e uso o xshell (um aplicativo de terminal remoto) para o ssh para o Ubuntu. Quando eu hibernar o computador durante a noite, depois de ligá-lo, a sessão expirou e eu deveria fazer o ssh para o Ubuntu novamente. Existe uma maneira de configurar o ssh para expirar durante a hibernação ou depois de horas de conexão ideal? Eu uso o Fedora para, se as configurações tiverem diferenças, por favor mencione isso. Eu uso o Windows 7.

    
por Sam 09.01.2013 / 17:20

2 respostas

5

Experimente o tmux. No lado do servidor:

sudo apt-get install tmux

Após o login, inicie o tmux.

tmux

Se a conexão quebrar, efetue login novamente via ssh e reconecte a sessão do tmux. Para descobrir o número da sessão:

tmux ls

A saída pode ser algo assim:

0: 1 windows (criado quarta-feira 9 de janeiro 12:27:40 2013)

Conecte-se à sessão numerada do tmux assim:

tmux attach -t 0

Então você está de volta onde você a deixou.

    
por 09.01.2013 / 17:29
4

Não. ssh é um protocolo baseado em TCP sem suporte para "hibernação" ou mesmo para "roaming" (alterações de endereço IP). Você precisará de algo mais se terminar a conexão ssh antes de hibernar e se conectar novamente quando retomar não é desejável.

Provavelmente, experimente mosh ( "o shell móvel" ).

Mas, para breve, não. As conexões TCP são fechadas no tempo limite e ssh não inclui nenhuma estratégia para lidar com isso.

    
por 09.01.2013 / 17:30