SSH como resultado da inatividade pode ser bastante irritante. Isto normalmente obriga você a reiniciar a conexão e começar tudo de novo.
Felizmente, você pode facilmente aumentar o limite de tempo limite do SSH e manter sua sessão SSH viva mesmo após alguma inatividade. Isso acontece quando o servidor ou o cliente envia pacotes nulos para o outro sistema para manter a sessão viva.
Leia Relacionada: Como proteger e endurecer o OpenSSH Server
Vamos agora explorar como você pode aumentar o timeout da conexão SSH no Linux.
Incrementar o timeout da conexão SSH
No servidor, vá para o arquivo de configuração /etc/ssh/sshd_config
.
$ sudo vi /etc/ssh/sshd_config
Rollar e localizar os seguintes parâmetros:
#ClientAliveInterval #ClientAliveCountMax
O parâmetro ClientAliveInterval
especifica o tempo em segundos que o servidor irá esperar antes de enviar um pacote nulo para o sistema cliente para manter a conexão viva.
Por outro lado, o parâmetro ClientAliveCountMax
define o número de mensagens vivas do cliente que são enviadas sem receber nenhuma mensagem do cliente. Se este limite for atingido enquanto as mensagens estão sendo enviadas, o daemon sshd irá abandonar a sessão, terminando efetivamente a sessão ssh.
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
O valor de Timeout será de 1200 segundos * 3 = 3600 segundos. Isto é equivalente a 1 hora, o que implica que a sua sessão ssh permanecerá viva durante 1 hora sem cair.
Alternativamente, você pode alcançar 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
Conclusion
Como medida de segurança SSH, é sempre aconselhável não definir o valor de timeout do SSH para um valor enorme. Isto é para evitar que alguém passe e desvie a sua sessão quando você está fora por um longo período de tempo. E é tudo para este tópico.