| by mxdata | No comments

解决macOS Mojave(10.14.6) SSH连接断开问题

在使用SSH客户端进行连接管理的时候如果长时间不输入命令, 服务器会自动断开连接, macOS Mojave(10.14.6) 系统上问题比较严重,即时服务端一直发送数据,也会出现连接中断的情况,导致长时间执行的远程 Shell 会大概率失败。

12345# 如果全局所有用户都有效,则调整如下文件$ sudo vim /etc/ssh/ssh_config # 如果仅仅当前用户都有效,则调整如下文件# vim ~/.ssh/config

然后在配置文件尾部,增加如下内容:

123456789101112Host *        SendEnv LANG LC_*         # macOS Mojave 需要设置为 no 否则照样会断开         TCPKeepAlive no         # 客户端每隔 60S 发送一个空报文        ServerAliveInterval 60         # macOS Mojave 需要增加,原因在于Qos检测命令不被对端支持,导致连接丢失        # packet_write_wait: Connection to 10.10.10.111 port 22: Broken pipe        IPQoS lowdelay throughput

同时,对于超长时间的SSH监控,需要设置屏幕关闭时不要让电脑休眠,否则依旧会断开,原因在于对端发送数据的时候,电脑休眠,对于长时间的空连接是没问题的,但是对于数据频繁发送的情况,是必须阻止电脑休眠的。如下图:

参考链接


发表评论