ssh 上服务器后,避免连接频繁被断开

发布时间: 2018-03-09 11:25:19 作者: 大象笔记

最近调一个线上的 wordpress 主题,实在懒得搭建本地开发环境,我就直接在服务器上开发调试了。

但是问题来了,ssh 上服务器使用 vim 进行开发调试,最不爽的一点是,经常性会遇到

Write failed: Broken pipe

即,一段时间不进行键盘操作,本地与服务器的网络连接就会自动断开。

然后,就需要重新 ssh 上去,非常烦躁。

网上找了一个好方法,编辑本地的 ssh 配置

sudo vim /etc/ssh/ssh_config

添加两行配置

ServerAliveInterval 30
ServerAliveCountMax 10

就能完美解决网络自动断开的问题。

其原理是,本地 ssh 客户端每隔 30s 向服务器端 sshd 发送 keep-alive 数据包,如果连续发送 10 次,server 无回应,则断开连接。这样同时规避了网络闪断的问题。

虽然可以在服务器端设置 ClientAliveInterval 来实现同样的效果,在客户端做更合适。

我是一名山东烟台的开发者,联系作者