SSH远程链接超时断开的三种解决方法

在使用SSH登陆连接Linux服务器的时候,如果一段时间没有操作,服务器会自动断开与客户端的连接,这样重新登录就会比较麻烦,小编整理了SSH远程链接超时断开的三种解决方法,供大家参考。

  第一种是修改服务器配置文件/etc/ssh/sshd_config,在配置文件里加入下面三行:

1 <span class="typ">TCPKeepAlive</span><span class="pln"> yes

2 </span><span class="typ">ClientAliveInterval</span> <span class="lit">60</span>

3 <span class="typ">ClientAliveCountMax</span> <span class="lit">20</span>

  以上设置,是让sshd服务每间隔60秒向客户端发送keepalive报文以保持连接,直到连续20次没有收到keepalive回应,才断开与客户端的连接。其实为这几行配置在原文件里都有,只是前面有#号没有生效,可以把这几行前面的注释符号#去掉,然后改一下数字就好了。修改完成以后,需要重新启用ssh服务才能生效。

  第二种是在客户端这边配置,根据你使用的不同客户端,可以做相应的设置:

  putty的设置方法:putty -> Connection -> Seconds between keepalives ( 0 to turn off ), 默认为0. 改为60

  MobaXterm的设置方法:setting>SSH>sessions setting>勾选ssh Keepalive

  第三种,如果你昌直接使用命令行的SSH客户端直接登录远程服务器,还可以修改SSH客户端的配置文件,一般是在全局配置文件/etc/ssh/ssh_config或者用户级配置文件~/.ssh/config里,加入以下代码:

1 <span class="typ">TCPKeepAlive</span><span class="pln"> yes

2 </span><span class="typ">ServerAliveInterval</span> <span class="lit">60</span>

3 <span class="typ">ServerAliveCountMax</span> <span class="lit">20</span>

  securecrt的设置方法:会话选项 –> 终端 –> 反空闲–>选中发送协议 NO-OP(p) 每 60 秒

  或者每次使用ssh连接到服务器的时候手动加上参数,格式如下:

<span class="pln">ssh </span><span class="pun">-</span><span class="pln">o </span><span class="typ">ServerAliveInterval</span><span class="pun">=</span><span class="lit">60</span><span class="pln"> username@server</span><span class="pun">-</span><span class="pln">ip</span>

  以上就是SSH远程链接超时断开的三种解决方法,希望对大家有所帮助