1.背景
通常默认公有云上的ECS远程连接,很容易断开,当你有什么事情被打断或者去操作别的机器同步做点其他事情,你会发现你SSH客户端登录窗口经常会断开掉,非常烦人,经常要重新登录。而且这时候终端会卡在那里,十分的不方便。所以在网上找了几个配置SSH的方法,能保证连接能够长时间不断开。 方法有两种,一般配置一种就可以。
2.配置方式
2.1 客户端配置
$ vim ~/.ssh/config #添加如下内容
Host *
ServerAliveInterval 60
ServerAliveCountMa 30
说明:
本地SSH Client每隔60s向
Server
端SSHD发送 keep-alive 包,如果发送30次, Server端还无回应则断开连接。
2.2 服务端配置
vim /etc/ssh/sshd_config
然后找到下面两项:
ClientAliveInterval 60
ClientAliveCountMax 30
这两项默认可能是注释掉的,去掉#
,然后如上设置.
说明:
- ClientAliveInterval: 这个其实就是SSH Server与Client的心跳超时时间,也就是说,当客户端没有指令过来,Server间隔
ClientAliveInterval
的时间(单位秒)会发一个空包到Client来维持心跳,60表示每分钟发送一次,然后客户端响应,这样就保持长连接了保证Session有效, 默认是0, 不发送; - ClientAliveCountMax:当心跳包发送失败时重试的次数,比如现在我们设置成了30,如果Server向Client连续发30次心跳包都失败了,就会断开这个session连接。
评论 (0)