在 CentOS 系统中,SSH 会话可能会因为多种原因超时,例如网络不稳定、服务器配置等。要解决这个问题,你可以尝试以下方法:
编辑 /etc/ssh/sshd_config 文件,找到以下参数并进行调整:
ClientAliveInterval:设置客户端空闲时间间隔,单位为秒。例如,设置为 60 表示每 60 秒发送一次保持活跃信号。默认值为 0,表示不发送。ClientAliveCountMax:设置允许的最大空闲次数。例如,设置为 3 表示允许客户端最多连续空闲 3 次(即 180 秒)。修改完成后,保存文件并重启 SSH 服务:
sudo systemctl restart sshd
编辑 ~/.ssh/config 文件(如果不存在,请创建一个),添加以下内容:
Host *
ServerAliveInterval 60
ServerAliveCountMax 3
这里的 ServerAliveInterval 和 ServerAliveCountMax 参数与服务器端的类似。修改完成后,保存文件。
tmux 或 screen 工具:tmux 和 screen 是终端复用工具,可以在一个终端窗口中创建多个会话。当 SSH 会话超时时,你可以重新连接并恢复之前的会话。
例如,使用 tmux:
tmux:sudo yum install tmux
tmux:tmux
tmux attach
使用 screen 的方法类似,只需将上述命令中的 tmux 替换为 screen 即可。
通过以上方法,你可以有效解决 CentOS 系统中 SSH 会话超时的问题。