When ssh times out it will terminate or you will get error message
write failed : broken pipe
There are two solutions. One is to configure the SSH server to send a packet to the client, and the other is to configure your SSH client to send a packet to the server. If you have lots of servers, setting it on the client will be easiest. If you connect to a single server from lots of different locations, then setting it on the server will make more sense. Or, you can configure both to do it.
Configure the server
Open up
Open up
/etc/ssh/sshd_config
and find the ClientAliveInterval option (if it’s not there, add it). The value is in seconds, so I went with 180 seconds, or 3 minutes.ClientAliveInterval 180
Configure the client
Edit /etc/ssh/ssh_config
and find the ServerAliveInterval option (if it’s not there, add it). Again, this value is in seconds, so a 9-minute interval is 180 seconds.
Edit /etc/ssh/ssh_config
and find the ServerAliveInterval option (if it’s not there, add it). Again, this value is in seconds, so a 9-minute interval is 180 seconds.
ServerAliveInterval 180
The default of both of these values is 0, which means no alive packets are sent. Setting them to anything other than 0 makes the SSH server or client send a packet across the encrypted SSH channel every ‘n’ seconds, thus avoid the idle timeout on the router. It has finally resolved my timeout issues, for which I’m very grateful.
No comments:
Post a Comment