Keeping Your SSH Connections Alive: Configuring ServerAliveInterval and ServerAliveCountMax
Maintaining a stable SSH connection is essential when working on remote servers. Disconnections due to inactivity can interrupt workflows and be quite frustrating. Fortunately, you can configure SSH to send periodic keep-alive messages, preventing your connection from timing out.
Step-by-Step Guide
1. Open the SSH Client Configuration File
Use your preferred text editor to modify the SSH configuration file. For example, with vim
:
sudo vim /etc/ssh/ssh_config
If OpenSSH is installed via Homebrew, the configuration file might be located at:
/usr/local/etc/ssh/ssh_config
2. Modify the Configuration
Add the following lines after the Host *
directive to apply these settings to all SSH connections:
ServerAliveInterval 240
ServerAliveCountMax 10
ServerAliveInterval
: Specifies the interval (in seconds) at which the client sends keep-alive messages to the server. In this case, every 240 seconds.ServerAliveCountMax
: Limits the number of keep-alive messages sent without response before the connection is terminated. Here, the client will attempt to send 10 keep-alive messages.
3. Save and Exit
If you’re using vim
:
- Press
ESC
to enter command mode. - Type
:wq
and pressEnter
to save and exit.
4. Test the Configuration
To test if the new settings are working:
- Connect to a remote server using SSH:
ssh user@your-server
- Ensure the connection remains active during periods of inactivity.
Conclusion
With this configuration, your SSH client will actively send keep-alive signals, reducing the risk of unexpected disconnections. Adjust the values of ServerAliveInterval
and ServerAliveCountMax
as needed to suit your environment.
Comments
Post a Comment