- 🐚作者简介:花神庙码农(专注于Linux、WLAN、TCP/IP、Python等技术方向)
- 🐳博客主页:花神庙码农 ,地址:https://blog.csdn.net/qxhgd
- 🌐系列专栏:善假于物
- 📰如觉得博主文章写的不错或对你有所帮助的话,还望大家三连支持一下呀!!! 👉关注✨、点赞👍、收藏📂、评论。
- 如需转载请参考转载须知!!
客户端通过SSH连接Linux服务器超时问题解决方法汇总
- ssh客户端、服务器配置
- 客户端配置
- 服务器配置
- SSH命令处理
- 工具配置
- putty
- Moba Xterm
- secureCRT
- iTerm2
- XShell
- 小结
- 参考资料
- 平时终端通过SSH连接Linux服务器时,当鼠标和键盘长时间不操作,服务器就会自动断开连接,需要重新连接。
- 根本原因可能是中间路由器的状态防火墙导致的,本文仅总结一下在两端解决此问题的方法。
ssh客户端、服务器配置
客户端配置
- 如果客户端使用的是 Mac 或 Linux,则可以编辑用户目录下的 ~/.ssh/config 并添加以下行:
ServerAliveInterval 120 #这将在SSH 连接上每 120 秒发送一个空数据包以使它们保持活动状态:
ServerAliveCountMax 3 #表示最大连续尝试连接次数
服务器配置
- 更改服务器上 /etc/ssh/sshd_config 的 SSH 配置文件:
ClientAliveInterval 120 // server每隔120秒给客户端发送一次保活信息包给客户端
ClientAliveCountMax 720 // server端发出的请求客户端没有回应的次数达到720次的时候就断开连接
如果客户端始终没有响应,则总超时时间为 timeout interval = ClientAliveInterval * ClientAliveCountMax;
- 此种方式,需要重启sshd进程。
SSH命令处理
- 在ssh连接命令中,使用ServerAliveInterval参数:
ssh -o ServerAliveInterval=30 qxhgd@192.168.1.1
工具配置
putty
- 启用putty Configuration -> Connection -> Seconds between keepalives ( 0 to turn off ),默认为0,改为60。
Moba Xterm
- Setting->Configuration->MobaXterm Configuration->SSH->SSH keepalive选中即可;
secureCRT
- 选项->终端->反空闲 中设置每隔多少秒发送一个字符串,或者是NO-OP协议包
iTerm2
- profiles - sessions - When idle - send ASCII code.
XShell
- 保持活动状态
小结
- 本文中涉及的方案,根据自己的情况,选一种即可,无需都使用。
参考资料
- sshd_config
如本文对你有些许帮助,欢迎大佬支持我一下,您的支持是我持续创作的不竭动力
支持我的方式