SSH为了安全考虑,会每隔一段时间检查C/S通道是否有数据通过,如果没有数据,则自动断开连接。可以从服务器或者客户端修改/etc/ssh/sshd_config里的参数,来解决SSH自动断开问题,这里以Linux系统为例,进行说明。

1、方法一 修改服务器ssh连接参数

    在服务器设置ssh连接参数。
    a) 停止ssh服务

sudo /etc/init.d/ssh stop

    b) 设置连接参数
    修改/etc/ssh/sshd_config文件

sudo vim /etc/ssh/sshd_config

    在/etc/ssh/sshd_config文件的末尾,添加如下2个参数

ClientAliveInterval 60
ClientAliveCountMax 5

    表示每60秒连接一下客户端,最大重试次数为5次。

    c) 重启ssh服务

sudo /etc/init.d/ssh restart

2、方法二 修改客户端ssh连接参数

    在客户端设置ssh连接参数。
    a) 停止ssh服务

sudo /etc/init.d/ssh stop

    b) 设置连接参数
    修改/etc/ssh/sshd_config文件

sudo vim /etc/ssh/sshd_config

    在/etc/ssh/sshd_config文件的末尾,添加如下2个参数

ClientAliveInterval 60
ClientAliveCountMax 5

    表示每60秒连接一下服务器,最大重试次数为5次。

    c) 重启ssh服务

sudo /etc/init.d/ssh restart

    方法一和方法二,都可以解决SSH自动断开的问题,只需要选取一个方法即可。

3、软件里设置自动连接

    在Xshell软件里,给每个SSH会话,设置"异常断开时自动连接",如图(1)所示。

图(1)在XShell里设置自动连接

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐