zoukankan      html  css  js  c++  java
  • 设置 SSH 命令行空闲保持会话

    楔子

    使用 Mac 或 Linux 原生的命令行 ssh user@ip 方式连接 Linux 闲时会自动断开终端卡死。

    为解决这个问题,查了到篇博客翻译下关键步骤记录下来。解决方式可以分服务端设置和客户端设置。

    客户端设置

    在不修改连接的服务端,仅设置客户端的配置,较常用。

    #追加闲时超时配置,每隔120秒向服务端发一个心跳包,如果依旧超时,再减小这个值即可
    echo "ServerAliveInterval 120" >> ~/.ssh/config
    

    服务端设置

    服务端设置的好处是不用为每个客户端分别去设置闲时会话保持时间。缺点是需要重启 sshd 服务。

    添加 如下配置到 /etc/ssh/sshd_config

    #向客户端发送心跳包间隔,以下是每120秒发一次心跳包,以保持会话存活。
    ClientAliveInterval 120
    #统计向客户端发送心跳我次数上限,也就是最多发送720次,按此配置是 120s * 720次 = 86400s = 24小时
    ClientAliveCountMax 720
    

    保存后重启 sshd 服务

    /etc/init.d/ssh restart
    

    总结

    当服务端与客户端都处理闲时状态时,如果其中一者配置了闲时会话保持,则会话不会中断。

    参考原文地址:https://www.bjornjohansen.com/ssh-timeout

  • 相关阅读:
    批量清理harbor镜像
    常用的git命令
    Gentoo网络管理方法总结
    Pelican主题配置:elegant
    Pelican搭建静态博客
    UNIX基础--安装应用程序: Packages 和 Ports
    UNIX基础--Manual Pages
    UNIX基础--Shells
    UNIX基础--进程和守护进程
    UNIX基础--磁盘组织
  • 原文地址:https://www.cnblogs.com/hellxz/p/how-to-solve-ssh-timeout.html
Copyright © 2011-2022 走看看