关于SSH长时间无操作自动断开

使用 ssh 客户端远程连接到服务器时, 默认情况下, 一段时间不操作, 没有向服务器发送指令, 就自动断开了连接, 需要重新登录

使用过的客户端中, xshell 默认情况下是会自动发送心跳来保持连接, 其他的一些如 mobaxterm, windterm, windows terminal自带的ssh, 时间久没有操作都是会断开连接的, 需要手动设置, 以下是手动设置的方法

  1. 命令行参数设置

如果是在终端中使用ssh命令连接远程机器, 如在Windows Terminal中, 可以通过添加以下参数来设置每隔60秒向Server端发送一个空包以保持连接

1
ssh -o ServerAliveInterval=60 root@127.0.0.1

使用以上参数只会对本次连接会话有效, 如果需要每次都自动保持连接, 可以使用下面的方法

  1. 客户端.ssh/config文件设置

~/.ssh/config 文件中添加ServerAliveInterval 60

Host xxx
    HostName 127.0.0.1
    User root
    ServerAliveInterval 60