Acho que o problema é que você não definiu ServerAliveInterval
no cliente. Conforme explicado em man ssh_config
:
ServerAliveInterval
Define um intervalo de tempo limite em segundos após o qual, se nenhum dado tiver recebido do servidor, o ssh (1) enviará uma mensagem através do o canal criptografado para solicitar uma resposta do servidor. o o padrão é 0, indicando que essas mensagens não serão enviadas para o servidor, ou 300, se a opção BatchMode estiver definida. Esta opção aplica-se apenas à versão 2 do protocolo. ProtocolKeepAlives e SetupTimeOut são aliases de compatibilidade específicos do Debian para este opção.
Então, se eu estiver certo, basta adicionar essa linha ao arquivo /etc/ssh/ssh_config
no cliente para corrigir o problema:
ServerAliveInterval 30
Isso enviará as mensagens keep alive a cada 30 segundos. Isso é meio frequente, mas depois de ter certeza disso, você pode reduzir a frequência conforme necessário.