在 CentOS 中设置 SSH 超时(自动断开连接) 通常有两种场景:
编辑 SSH 服务端配置文件:
vi /etc/ssh/sshd_config
添加或修改以下参数:
ClientAliveInterval 300
ClientAliveCountMax 0
说明:
ClientAliveInterval 300:每 300 秒(5 分钟)向客户端发送一次保活请求ClientAliveCountMax 0:如果客户端无响应,立即断开示例(10 分钟无操作断开):
ClientAliveInterval 600
ClientAliveCountMax 0
修改后重启 SSH 服务:
systemctl restart sshd
编辑全局环境变量文件:
vi /etc/profile
在末尾添加:
export TMOUT=600
表示 600 秒(10 分钟)无操作自动退出。
使配置生效:
source /etc/profile
⚠️ 注意:
如果你是 不想被超时断开,可在客户端配置:
Host *
ServerAliveInterval 60
表示每 60 秒向服务器发送一次保活包。
| 需求 | 配置位置 |
|---|---|
| 服务器断开空闲连接 | /etc/ssh/sshd_config |
| 登录后无操作退出 | /etc/profile (TMOUT) |
| 防止被断开 | 客户端 ~/.ssh/config |
如果你能说明是 服务器主动踢人,还是 连接自动断,我可以给你更精确的配置。