Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10202537
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: LINUX

2011-12-05 09:33:59

SSH 连接超时解决办法
分类: Linux 768人阅读 评论(0) 举报

 

高版本的Linux自带的OpenSSH在使用的时候,几分钟不操作的话就会自动断开连接,这是出于安全的考虑,但是对于需要长时间使用的用户来说很麻烦,每次都要重新连接。

 

原因有多种, 环境变量TMOUT引起,ClientAliveCountMaxClientAliveInterval设置问题或者甚至是防火墙的设置问题.解决方法如下:

 

1echo $TMOUT
如果显示空白,表示没有设置, 等于使用默认值0, 一般情况下应该是不超时. 如果大于0, 可以在如/etc/profile之类文件中设置它为0.


2. ClientAliveInterval 60
/etc/ssh/sshd_config中增加ClientAliveInterval 60, ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0, 不发送.ClientAliveInterval 60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了.这里比较怪的地方是:不是客户端主动发起保持连接的请求(FTerm, CTerm),而是需要服务器先主动.

另外,至于ClientAliveCountMax, 使用默认值3即可.ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开. 正常情况下, 客户端不会不响应.

 

比如:在/etc/ssh/sshd_config中加入

ClientAliveInterval ****(time in seconds)

ClientAliveCountMax ****(count)

 

但是数字太大例如9999,可能会有溢出问题.

 

3. 启用putty keepalive
putty -> Connection -> Seconds between keepalives ( 0 to turn off ),
默认为0, 改为60.

 

上述3个方法应该能解决大部分问题, 如果不行, man sshd_config, 然后尝试更改其他设置吧.

 

还可以用此方法解决:

ping -i (使用这个时间记数,定时发送给客户端一个消息)


注意:修改了ssd_config要重启/etc/rc.d/init.d/sshd restart

阅读(762) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~