设置 SSH 命令行空闲保持会话

本文介绍了如何解决使用SSH连接Linux时遇到的自动断开问题。通过在客户端添加`ServerAliveInterval`配置,设置每隔120秒发送心跳包,或者在服务端设置`ClientAliveInterval`和`ClientAliveCountMax`来保持会话存活,避免因闲置导致的连接中断。只需调整这些参数,无需对每个客户端进行单独设置。
摘要由CSDN通过智能技术生成

楔子

使用 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值