Linux保持长时间会话不断开

使用SSH方式登录Linux操作系统的云服务器时,过一段时间就会自动断开连接。本篇操作介绍如何保持SSH会话持续连接不断开。

配置sshd

可通过修改sshd配置文件来解决自动断开的问题,编辑/etc/ssh/sshd_config文件设置心跳,保持连接。

vim /etc/ssh/sshd_config
# 新增如下两个配置
ClientAliveInterval 600      
ClientAliveCountMax 10

ClientAliveInterval 600 表示每600秒发送一次请求, 从而保持连接。

ClientAliveCountMax 10 表示服务器发出请求后客户端没有响应的次数达到10次,就自动断开连接。

无响应的SSH客户端将在大约600×10=6000秒后断开连接。

修改完后重启sshd

# CentOS6
service sshd restart

# CentOS7
systemctl restart sshd

# 注意,执行这个操作会断开ssh连接。

设置Linux系统的空闲等待时间TMOUT

如果第一个方法不能解决断开连接的问题,那么大概率是因为在环境变量种配置了TMOUT。为了增强Linux系统的安全性,我们需要在用户输入空闲一段时间后自动断开,这个操作可以由设置TMOUT值来实现。将以下字段加入到/etc/profile 中即可(对所有用户生效)。

vim /etc/profile

export TMOUT=6000                            # 设置6000秒内用户无操作就自动断开终端

readonly TMOUT                                # 将值设置为readonly 防止用户更改

有的时候设置了超时时间很短的话,当需要进行很多操作的时候,不希望经常超时断开,可以每次登录时候先在命令行下面执行下的命令,重启失效。执行以下命令,防止超时退出。

$TMOUT=0

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注