zoukankan      html  css  js  c++  java
  • 解决 macOS 下 SSH 空闲一段时间后自动断开

    macOS 下使用 Terminal 连接 SSH 远程主机空闲一段时间就会进入假死状态,无法操作,短暂无响应后。

    遇到这种事情,非常麻烦,可能接着的命令重新开 tab 连接,前面的结果都看不到了。

    实质是终端没有设置心跳连接,终端连接一段时间后无法检测到心跳就会断开连接。

    解决办法

    分别包括客户端和服务端

    客户端配置

    在使用 Shell 的机器上设置,我配置后,已经解决。但找到的资料还有服务端配置,那就一起配置下,免得出问题。

    仅当前用户配置

    在客户端修改终端设置,每隔固定时间发心跳包来保持长连接状态。推荐使用此方式进行配置,仅对当前用户生效。

    vim ~/.ssh/config
    
    添加
    
    Host *
        ServerAliveInterval 30
        ServerAliveCountMax 2
    

    全局配置

    sudo vim /etc/ssh/ssh_config
    添加
    ServerAliveInterval 30
    ServerAliveCountMax 2
    

    服务端配置

    sudo vim /etc/ssh/sshd_config
    查找以下注释字段取消注释或直接添加到文件中
    ClientAliveInterval 60
    ClientAliveCountMax 3
    

    参数说明

    参数 说明
    ClientAliveInterval 指定了服务器端向客户端请求消息 的时间间隔,默认是 0 ,不发送
    ClientAliveInterval 60 表示每分钟发送一次,然后客户端响应,这样就保持长连接了
    ClientAliveCountMax 使用默认值 3 即可
    ClientAliveCountMax 表示服务器发出请求后客户端没有响应的次数达到一定值,就自动断开。正常情况下,客户端不会不响应。

    重新加载 sshd 服务。退出客户端,再次登陆即可验证。

    参考链接

    解决 macOS 下 SSH 空闲自动断开问题
    Mac OS X Terminal ssh Connection Keepalive - Rick Cogley

  • 相关阅读:
    centos6.4下django1.11.3项目的部署
    inner join和left join 、right join 的区别?
    php中的对象赋值
    windows下Call to undefined function curl_init() error问题
    include和require的区别误区
    第一车网笔试题
    借贷宝笔试题
    40斤西瓜3人分,求分法
    走楼梯算法
    ip地址分类
  • 原文地址:https://www.cnblogs.com/ysmintor/p/jie-jue-macos-xia-ssh-kong-xian-yi-duan-shi-jian-h.html
Copyright © 2011-2022 走看看