Como prevenir o tempo limite de conexão SSH no Linux

Se você gastar muito tempo na linha de comando você pode ter encontrado um problema irritante onde o tempo de sua sessão termina após um período relativamente curto de inatividade. Embora isto seja desejável do ponto de vista da segurança, pode causar problemas quando você está tentando executar uma longa operação.
O que acontece é que sua conexão com o servidor é reinicializada quando você está ocioso por um tempo, normalmente produzindo o erro: Resetar a conexão por par. Para contornar isso, você precisa definir uma opção Keep Alive no servidor.

Veja também : Instale e configure o OpenSSH-server no Linux

Neste guia, você aprenderá como prevenir o timeout da conexão SSH e manter sua sessão SSH viva mesmo após alguma inatividade no Linux.

Increase SSH Connection Timeout

No servidor, vá para o arquivo de configuração /etc/ssh/sshd_config

$ sudo vi /etc/ssh/sshd_config

Scroll e localize os seguintes parâmetros:

#ClientAliveInterval #ClientAliveCountMax

Onde,

  • ClientAliveInterval: Define um intervalo de tempo limite em segundos após o qual se nenhum dado tiver sido recebido do cliente, o sshd enviará uma mensagem através do canal criptografado para solicitar uma resposta do cliente. O padrão é 0, indicando que estas mensagens não serão enviadas para o cliente. Esta opção aplica-se apenas à versão de protocolo 2.
  • ClientAliveCountMax: Define o número de mensagens vivas do cliente que podem ser enviadas sem que o sshd receba qualquer mensagem de volta do cliente. Se este limite for atingido enquanto as mensagens do cliente alive estiverem sendo enviadas, o sshd desconectará o cliente, terminando a sessão.

O valor de timeout é dado pelo produto dos parâmetros acima i.e.

Timeout value = ClientAliveInterval * ClientAliveCountMax

Por exemplo, digamos que você tenha definido seus parâmetros como mostrado:

ClientAliveInterval 1200ClientAliveCountMax 3
Increase SSH Timeout

O valor de Timeout será de 1200 segundos * 3 = 3600 segundos. Isto é equivalente a 1 hora, o que implica que sua sessão ssh permanecerá viva por um tempo ocioso de 1 hora sem cair.
Alternativamente, você pode obter o mesmo resultado especificando apenas o parâmetro ClientAliveInterval.

ClientAliveInterval 3600

Até feito, recarregue o daemon OpenSSH para que as alterações entrem em vigor.

$ sudo systemctl reload sshd

Deixe uma resposta

O seu endereço de email não será publicado.