SSH链接一段时间无操作自动断开如何解决?
嗯,这个反正我挺需要的,所以也记录一下,虽然网上解决方案都烂大街了,我也很显然也是直接参考别人了,但记录一下,不记录一下,保不齐那一天别人博文不在了,我就又是一脸懵逼了!
服务端解决方案
个人比较推荐这种,虽然还有一种是客户端解决方案,但基本上限制的必须是linux系统下才可以用,windows下无效;所以我个人比较推荐在服务端处理这个问题!
解决方案非常简单,就是编辑 /etc/ssh/sshd_config
这个文件(注意!是 sshd_config,有个d,不是ssh_config),然后根据自己自己的实际诉求添加如下属性即可!
多久发送一次心跳包,单位:秒
ClientAliveInterval 60
这里就表示60秒发送一次心跳包,心跳包啥意思不知道就直接百度吧,简单理解就是保证链接;
客户端多久没响应则断开,单位:次
ClientAliveCountMax 60
这个就表示,当服务端给客户端发送心跳包60次客户端鸟反应都没有的时候,就断开了(老舔狗了,舔狗舔到最后一无所有)
客户端解决方案
客户端解决方案其实跟服务端就是一模一样的,仅仅是修改的文件不一样,服务端是 sshd_config
,客户端是 ssh_config
,即客户端文件路径是:/etc/ssh/ssh_config
,然后可供修改的参数都是一样的!
但也正是因为如此,客户端解决方案也就限制了只有linux系统下可用,当然MacOS也算(别杠,我知道MasOS不是linux,我只是懒得特别介绍而已)