资讯专栏INFORMATION COLUMN

SSH连接自动断开问题探究

ninefive / 1772人阅读

摘要:自己关于连接断开问题的一些探究。使用连接断开的提示信息。从安全角度来说,连接空闲后自动断开,是合理的,对于开发者此行为不方便调试,探究到根本原因,我们需要做的就是适应场景。

自己关于SSH连接断开问题的一些探究。


更新2018-03-12
修改sshd_config的keep alive配置没有生效。之前确认的问题原因非真正导致连接断开的原因。使用ssh连接断开的提示信息“timed out waiting for input: auto-logout。”搜索,一篇英文文档说明了TMOUT环境变量作用,该变量是系统检测session空闲时间,如果TMOUT未赋值,则auto-logout功能关闭,即session不会空闲超时关闭;如果设置TMOUT的值,比如TMOUT=300,auto-logout检测session输入,若300s内无输入关闭session自动退出。
TMOUT变量在以下几个文件中会有定义:/etc/profile(全局)或./profile或./bash_profile,其中全局定义的TMOUT会被局部定义的TMOUT覆盖。
echo $TMOUT显示环境变量查看当前超时时间为300s,定义在/etc/profile中,将TMOUT设置为86400(24h),source重新读取配置文件,新建的session 30min内无输入也没有关闭,至此问题解决。


新安装的OS,SSH配置遇到若干问题,第一个问题:root登录失败,用web登录正常,ssh登录提示denied,上网搜寻ssh配置项“PermitRootLogin”默认是no,修改为yes后重启SSH服务,解决。
第二个问题相当棘手,SSH连接几分钟未操作,会自动断开,上网搜索连篇累牍关于keep alive的说明,全部都是配置“ClientAliveInterval”和“ClientAliveCountMax”,修改后重启SSH,没有任何用处,一段时间不操作,连接该断还是断,怀疑网上的配置有误。仔细想想这么多的文章都提到keep alive,问题应该是这里,keep alive选项没有生效,可能不是SSH保活机制问题,而是网络连接机制问题。把sshd_config的配置从头到尾看了一遍,发现有一个“TCPKeepAlive”的选项,搜索了该选项的说明,ClientAlive是SSH发出是加密选项,TCP Alive是协议栈发出,非加密信息,安全性降低。
同时搜索了网上ssh tcp keep alive,有个博文提到,linux的防火墙会检测网络连接,如果没有流量,触发规则防火墙会断开TCP连接,TCP连接终止后,SSH客户端检测连接异常自然无法运行,这才是client keep alive无法生效的根本原因。
从安全角度来说,SSH连接空闲后自动断开,是合理的,对于开发者此行为不方便调试,探究到根本原因,我们需要做的就是适应场景。
手上有几台服务器,CENTOS的服务器没有类似问题,当前这个小众的服务器才有,对比了两个OS的SSH默认配置,CENTOS没有配置keep alive但不会空闲断开。防火墙相关的配置网上没找到,后续碰到再研究。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/10502.html

相关文章

  • 解决Linux关闭终端(关闭SSH等)后运行的程序或者服务自动停止【后台运行程序】

    摘要:在注销后使用命令运行后台中的程序。当前与终端交互的进程称为前台进程组。使用命令可以更清楚地看到这个关系使用命令可以看到,登录和在同一个会话期,为会话期首进程,所在进程组为,所在进程组为,为前台进程组。 问题描述:当SSH远程连接到服务器上,然后运行一个服务 ./catalina.sh start,然后把终端开闭(切断SSH连接)之后,发现该服务中断,导致网页无法访问。 解决方法:使用n...

    CoyPan 评论0 收藏0
  • linux保持ssh连接

    摘要:经常我们在用远程连接主机时,由于长时间不操作就会自动断开连接,很不方便。通过配置服务端或客户端,可以让我们保持连接。 经常我们在用ssh远程连接主机时,由于长时间不操作就会自动断开连接,很不方便。 通过配置ssh服务端或客户端,可以让我们保持ssh连接。 服务端配置 vim /etc/ssh/sshd_config,添加如下配置: # 表示每30秒服务端就向客户端发送一个数据包来保...

    mating 评论0 收藏0
  • 保持ssh连接断开

    摘要:问题描述自从使用了的之后。基本上就依赖它来跟服务器交互了。用系统的登陆服务器之后,一会不用就断开,这让我很难受。经常关键时刻掉链子。解决方案添加或者修改配置使修改的配置文件生效又可以愉快的玩耍了 问题描述 自从使用了window10的wsl之后。基本上就依赖它来跟服务器交互了。装的是Linux的ubuntu系统。用系统的ssh登陆服务器之后,一会不用就断开,这让我很难受。经常关键时刻掉...

    2i18ns 评论0 收藏0
  • 解决Mac下SSH闲时自动中断的问题

    摘要:使用自带终端连接服务器时,只要隔一小段时间不进行操作的话连接就会自动中断,造成了不好的体验。就是重启重启后可能需要等待分钟左右才能重新连接上。最后验证测试就可以了。 使用 Mac 自带终端 SSH 连接服务器时,只要隔一小段时间不进行操作的话连接就会自动中断,造成了不好的体验。解决方法如下: 1、连接到你的服务器 2、编辑服务端配置文件 /etc/ssh/sshd_config vim...

    tuniutech 评论0 收藏0
  • 堡垒跳板机实现——ldap配置

    摘要:进程由软件包提供,根据配置信息,与后端的认证服务器进行交互。 这是关于堡垒跳板机的第三篇文章,之前介绍了实现堡垒跳板机的整体三层架构 和 设计实现:堡垒跳板机整体架构堡垒跳板机架构实现 本篇介绍整个体系中的一个补充,对第三层ldap架构的实现的具体操作进行下记录。 整体目标 后端服务器数量日益增加,账号的数量也在不断增加,账号的统一管理变得尤为重要。结合堡垒机,主要针对服务器账号体系接...

    Charles 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<