Como manter conexões SSH "vivas"

Se você for um usuário SSH comum, provavelmente notou que às vezes ele "se desconecta". Para corrigir isso, basta "sujar um pouco" as mãos e alterar alguns arquivos de configuração.


Para fazer isso, você deve alterar os valores atribuídos a 2 variáveis ​​ServerAliveCountMax e ServerAliveInterval.

ServerAliveCountMax define o número de mensagens "server is alive" que podem ser enviadas sem que o ssh receba uma resposta do servidor. Este tipo de mensagem é essencial para saber se a conexão ainda está ativa ou não (talvez o servidor "caiu", etc.).

ServerAliveInterval define o intervalo (em segundos) após o qual, no caso de não haver resposta do servidor, o ssh reenviará uma mensagem solicitando uma resposta.

No cliente

Para que as alterações tenham efeitos para todos os usuários, o arquivo deve ser modificado  / etc / ssh / ssh_config. Por outro lado, se você deseja que as alterações tenham efeito apenas para o seu usuário, modifique o arquivo ~ / .ssh / config.

Adicione o seguinte no arquivo de configuração SSH:

Hospedeiro *
    ServerAliveInterval 300
    ServerAliveCountMax 3

No servidor

Para que o servidor mantenha as conexões com todos os clientes ativas, adicione o seguinte no arquivo / etc / ssh / sshd_config:

ServerAliveInterval 300
ServerAliveCountMax 3

Esta configuração faz com que o cliente / servidor envie uma mensagem à contraparte a cada 300 segundos (5 minutos) e desista na 3ª oportunidade caso não tenha recebido resposta.