本篇文章为大家展示了怎样解决SSH连接Linux超时问题,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
在开发当中经常需要登录远程服务器,于是通过ssh
或者putty
登录,可是一转身,这厮就自动断开了。让人非常恼火,如何解决SSH
连接Linux
超时自动断开?
$TMOUT
系统环境变量
# 用以下命令判断是否是否设置了该参数 echo $TMOUT # 如果输出空或0表示不超时,大于0的数字n表示n秒没有收入则超时 # 修改方法 vi /etc/profile # ---------------------------- export TMOUT=900 # ---------------------------- # 将以上900修改为0就是设置不超时 source /etc/profile # 让配置立即生效
sshd
服务配置
cd /etc/ssh # 查看sshd_config中关于客户端活动状态的配置 grep ClientAlive sshd_config # 默认配置如下 # ---------------------------- #ClientAliveInterval 0 #ClientAliveCountMax 3 # ---------------------------- # ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0, 不发送。设置60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了。 # ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开。正常情况下, 客户端不会不响应,使用默认值3即可。 # 备份原配置文件 cp sshd_config sshd_config.bak # 启用客户端活动检查,每60秒检查一次,3次不活动断开连接 sed -i "s/#ClientAliveInterval 0/ClientAliveInterval 60/g" sshd_config sed -i "s/#ClientAliveCountMax 3/ClientAliveCountMax 3/g" sshd_config # 确认修改 grep ClientAlive sshd_config # 比较配置文件差异 diff sshd_config sshd_config.bak # 重新加载ssd配置,让配置生效 service sshd reload
登录脚本
#!/usr/bin/expect set timeout 60 spawn ssh user@host interact { timeout 300 {send "\x20"} } expect eof
每隔 300 秒就会自动打一个空格(\x20),具体的时间间隔可以根据具体情况设置。
windows
配置
如果你在windows
下通过工具连接,可以设置为
secureCRT
:选项---终端---反空闲 中设置每隔多少秒发送一个字符串,或者是NO-OP
协议包
putty
:putty -> Connection -> Seconds between keepalives ( 0 to turn off ), 默认为 0, 改为 300.
上述内容就是怎样解决SSH连接Linux超时问题,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。