Linux 中使用 SSH 连接总是隔一段时间就会断开该怎么办?

2024年6月3日系统运维评论20,848字数 613阅读2分2秒阅读模式

之前用 Centos 服务器也没这个问题,最近切换到 Debian 9,SSH 连接总是隔一段时间就会断开重新连接,但也没影响工作,也就没在意。

但是,今天想安装 PHP,那玩意耗时比较久,然后,每次安装途中,因为我没有操作,连接就断开了,重连后进度丢失,只能再来一次,气的我够呛。

必须,把这个问题给彻底解决了,谷歌,启动~

解决思路

因为是过一段时间就断开,说明服务器肯定是认为客户端已经下线,所以主动断开了连接。

猜测其它服务器不会这样,就是因为没有这个机制。

那么,解决的话,只需要让服务器偶尔和客户端交流下,就可以解决掉这个问题。

解决方法

1.

打开 SSH 配置文件

vim sshd_config

2.

修改 ssh 配置

去掉注释,并修改这三行

TCPKeepAlive yes
ClientAliveInterval 20
ClientAliveCountMax 3
  • TCPKeepAlive 顾名思义,保持TCP为活跃状态
  • ClientAliveInterval 指定服务端向客户端请求消息的时间间隔,单位是秒
  • ClientAliveCountMax 指服务端发出请求后客户端无响应则自动断开的最大次数(这个值我看网上好多教程都没搞清楚,设置的非常大,完全没必要,这个值其实为重试次数,意味着连接失败会重新试几次,而如果正常连接,根本不用重试,而如果无法连接,一直重试,浪费资源,也没有意义)

3.

重启 sshd 服务

/etc/init.d/ssh restart

现在问题就被解决了。

Ethan_2024-06-03_17-26-29

在 Linux 中使用 logrotate 管理日志文件 系统运维

在 Linux 中使用 logrotate 管理日志文件

logrotate 是一个在 Linux 操作系统中用来管理日志文件的工具。其主要功能是帮助系统管理员自动管理和轮换日志文件,防止日志文件过大,占用过多的磁盘空间。logrotate 可以定期对日志文...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定