服务器端设置
-
修改 SSH 配置文件 :在服务器上编辑
/etc/ssh/sshd_config文件,找到以下参数并进行修改:ClientAliveInterval:设置服务器向客户端发送存活探测消息的时间间隔(秒),建议设置为 300(5 分钟),防止连接因长时间无操作而被意外断开。ClientAliveCountMax:设置服务器发送存活探测消息的次数,若超过该次数未收到客户端响应则断开连接,建议设置为 3。- 修改完成后执行
systemctl restart sshd命令重启 SSH 服务,使配置生效。
客户端设置
-
修改 SSH 配置文件 :在客户端编辑
~/.ssh/config文件,添加以下配置:ServerAliveInterval:设置客户端向服务器发送存活探测消息的时间间隔(秒),建议设置为 300。TCPKeepAlive:设置是否启用 TCP KeepAlive 功能,建议设置为yes,以保持连接的活跃状态。
网络环境优化
- 检查网络连接稳定性 :使用
ping命令测试客户端与服务器之间的网络连接是否稳定,确保网络没有中断或丢包现象。 - 避免防火墙限制 :检查服务器和客户端的防火墙设置,确保允许 SSH 连接通过。可以通过
telnet example.com 22命令测试 SSH 端口是否开放。
超时时间设置
- 调整应用程序超时时间 :如果 SSH 连接是通过某个应用程序发起的,可以在应用程序的配置文件中增加 SSH 连接的超时时间。例如,某些编程语言的库可能允许设置连接超时时间,可根据实际情况进行调整。
示例
-
服务器端配置示例 :
-
编辑
/etc/ssh/sshd_config文件,在文件末尾添加以下内容:bash
ClientAliveInterval 300 ClientAliveCountMax 3 -
保存文件并执行
systemctl restart sshd重启 SSH 服务。
-
-
客户端配置示例 :
-
编辑
~/.ssh/config文件,添加以下内容:bash
Host * ServerAliveInterval 300 TCPKeepAlive yes
-