设置ssh连接超时自动断开

1、修改ssh配置防止ssh超时退

1.1设置服务器向SSH客户端连接会话发送频率和时间

[root@server~]# vi m/etc/ssh/sshd_config,添加如下两项

# TCPKeepAlive yes:是否向客户端发送 TCP keepalive 消息默认为开启

ClientAliveInterval 60
ClientAliveCountMax 3

#TCPKeepAlive yes:是否向客户端发送 TCP keepalive 消息,默认为开启

# ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0, 不发送。设置60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了。

# ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开。正常情况下, 客户端不会不响应,使用默认值3即可。这样调整后,即使长时间不操作也不会连接超时中断了。

1.2重新启动SSH服务

[root@server~]# service sshd reload   #server 6.X版本

[root@server~]# systemctl restart sshd  #server 7.X版本

注:如果不生效,请通过修环境变量TMOUT值设置ssh无录入超时退出,ssh配置不需设置。

2、修改环境变量TMOUT值设置ssh超时退出

$TMOUT是linux系统空闲等待时间变量,为空或0表示不超时,大于0的数字n表示n秒没有录入则超时。

2.1修改TMOUT变量方法

[root@server~]# export TMOUT=600  #临时修改,只对当前shel生效,退出后失效

[root@server~]# vim /etc/profile  #修改配置文件永久设置

export TMOUT=600  #设置600秒超时退出,将600修改为0就是设置不超时

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

注意:设置了readonly 之后在当前shell下是无法取消的,需要先将/etc/profile中设置readonly行注释起来或直接删除,logout后重新login 。

2.2让配置立即生效

[root@server~]# source /etc/profile    

2.3查看设置是否生效

[root@server~]# echo $TMOUT

600

注意:部署了MySQL的服务请不要开启此功能。

3、通过ssh连接参设置

[root@clinet~]# ssh -o ServerAliveInterval=30 root@host

  • 21
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码哝小鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值