如果用ssh链接一个Linux的服务端,一段时间不请求服务器服务,服务器则会会自动放弃这个连接会话。如何延长到不中断会话呢?
解题思路:让客户端和服务器端,有节奏地握手。
Step1:配置客户端
打开文件
#vim /etc/ssh/ssh_config
在文件的最后面添加如下两行内容:
Host *
ServerAliveInterval 30
这表示要让系统中所有用户的ssh client都具有这个属性;
另外,如果要指定服务端,可以使用-o的参数 ServerAliveInterval进行设置超时的时间:
ssh -o ServerAliveInterval=30 IP地址
2、配置服务端
打开文件
sudo vim /etc/ssh/sshd_config
在文件的最后一行增加如下内容:
ClientAliveInterval 120
ClientAliveCountMax 1
这 样,SSH Server 每 120 秒才会自动发送一个信号给 Client,并期待 Client 回应。如果2分钟内没有收到Client端的1次回应,则会放弃ssh的这个连接会话。
最后,重启本机的ssh客户端,让配置生效:
/etc/init.d/ssh restart
本文介绍了如何通过配置SSH客户端和服务器端的设置,来防止因长时间无操作导致的SSH连接断开。主要步骤包括在客户端的ssh_config文件中设置ServerAliveInterval,以及在服务端的sshd_config文件中设置ClientAliveInterval和ClientAliveCountMax,从而实现定期心跳检测,延长SSH会话的存活时间。最后,重启SSH服务使配置生效。

1440

被折叠的 条评论
为什么被折叠?



