Você pode fazer isso ativando o TCPKeepALive. Adicione algo como o seguinte à sua linha de comando
ssh -o TCPKeepAlive=yes -o ServerAliveInterval=50
Ou você pode modificar seu ~ / .ssh / config e adicionar
Anfitrião *
ServerAliveInterval 50
Eu tenho um script bash que tem alguma lógica que precisa ser feita local e remotamente. Por isso, várias chamadas ssh e rsync (para transferência de dados) são feitas, por exemplo:
command_0
rsync ... # Data to remote
ssh remote command_1
rsync ... # Receive results
...
# Above pattern is repeated multiple times
Eu tenho alguns problemas relacionados a conexões ssh quebradas devido a ssh_exchange_identification: Connection closed by remote host
. O script acima também é acionado 30 vezes para diferentes conjuntos de dados de forma assíncrona. Como posso manter minha conexão ssh viva durante uma chamada do script para diminuir as criações de conexões ssh?
Obrigado antecipadamente!
Você pode fazer isso ativando o TCPKeepALive. Adicione algo como o seguinte à sua linha de comando
ssh -o TCPKeepAlive=yes -o ServerAliveInterval=50
Ou você pode modificar seu ~ / .ssh / config e adicionar
Anfitrião *
ServerAliveInterval 50