在网络质量不佳时,ssh在一段时间无数据发送时容易掉线。在客户端或服务端添加心跳间隔,主动发送心跳,可在一定程度缓解这一情况。同时可根据心跳无效次数自动断开连接,防止因网络问题造成已登录用户锁死服务器上的资源。

服务端和客户端都可以配置心跳,保持连接。

服务端可在/etc/ssh/sshd_config中添加:

ClientAliveInterval 3
ClientAliveCountMax 30

即每3秒主动向客户端发送一次心跳,当连续30次失败时自动断开客户端连接。

客户端可在/etc/ssh/ssh_config中添加:

ServerAliveInterval 5
ServerAliveCountMax 30

即每5秒向服务端发送一次心跳,当连续30次失败时自动断开客户端连接。

建议将客户端和服务端的心跳间隔设置为互质的值,可以提高一段时间内的平均网络占用次数,缓解因网络问题导致的ssh掉线的情况。

标签: Linux

添加新评论