解决SSH自动断线问题

在连接远程SSH服务的时候,经常会发生长时间后的断线,或者无响应(无法再键盘输入)。

总体来说有两个方法:

1、依赖ssh客户端定时发送心跳。

putty、SecureCRT、XShell都有这个功能,但是并不保险。

此外在Linux下:

#打开

sudo vim /etc/ssh/ssh_config

# 添加

ServerAliveInterval 20

ServerAliveCountMax 999

即每隔20秒,向服务器发出一次心跳。若超过999次请求,都没有发送成功,则会主动断开与服务器端的连接。

2、更一劳永逸的方法是:更改服务器端,即在ssh远端。

# 打开

sudo vim/etc/ssh/sshd_config

# 添加

ClientAliveInterval 30

ClientAliveCountMax 6

ClientAliveInterval表示每隔多少秒,服务器端向客户端发送心跳,是的,你没看错。

下面的ClientAliveInterval表示上述多少次心跳无响应之后,会认为Client已经断开。

所以,总共允许无响应的时间是60*3=180秒。

测试有效

时间: 2024-11-09 00:47:14

解决SSH自动断线问题的相关文章

解决SSH自动断线,无响应的问题。

在连接远程SSH服务的时候,经常会发生长时间后的断线,或者无响应(无法再键盘输入). 总体来说有两个方法: 1.依赖ssh客户端定时发送心跳. putty.SecureCRT.XShell都有这个功能,但是目测不太好用. 此外在Linux下: 1 2 3 4 5 #打开 sudo vim  / etc / ssh / ssh_config # 添加 ServerAliveInterval 20 ServerAliveCountMax 999 即每隔20秒,向服务器发出一次心跳.若超过999次请求

shell实现SSH自动登陆

前言 公司开发使用docker,每次登陆自己开发机总要输入 ssh [email protected]_string,然后再确认输入password,手快了还经常会输错.作为一个懒人,肯定要找一个取巧的方式,查看了下ssh命令,由于它要进行一次跟服务器的加密交互,所以没有直接附带密码登陆的选项,只好作罢. 前些天在同事进行技术分享时,看到他竟然只输入了一行命令./test.sh就成功登陆了开发机,甚是惊异,于是回来搜索研究了一下,遂成此文. shell脚本基础 在编写ssh自动登陆脚本之前,先说

[转]expect实现ssh自动交互

shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh [email protected] expect "*password:" send "123\r" expect "*#" interact 原文链接:http://www.xuanhao360.com/linux-expects/ Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使之自动化完成.形

linux expect详解(ssh自动登录)

shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh [email protected] expect "*password:" send "123\r" expect "*#" interact 原文链接:http://www.xuanhao360.com/linux-expects/ Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使之自动化完成.形

解决ssh登录后闲置时间过长而断开连接

解决ssh登录后闲置时间过长而断开连接 时我们通过终端连接服务器时,当鼠标和键盘长时间不操作,服务器就会自动断开连接,我们还的需要重新连接,感觉很麻烦,总结一下解决此问题的方法方法一.修改/etc/ssh/sshd_config配置文件,找到ClientAliveCountMax(单位为分钟)修改你想要的值,执行service sshd reload 方法二.找到所在用户的.ssh目录,如root用户该目录在:/root/.ssh/在该目录创建config文件vi /root/.ssh/conf

shell脚本实现ssh自动登录远程服务器示例

本文转载自 懒惰的肥兔 :http://www.xuanhao360.com/linux-expects/ shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh [email protected] expect "*password:" send "123\r" expect "*#" interact Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使

SSH自动断开连接的原因

方法一: 用putty/SecureCRT连续3分钟左右没有输入, 就自动断开, 然后必须重新登陆, 很麻烦. 在网上查了很多资料, 发现原因有多种, 环境变量TMOUT引起,ClientAliveCountMax和ClientAliveInterval设置问题或者甚至是防火墙的设置问题. 所以可以这么尝试: 1, echo $TMOUT如果显示空白,表示没有设置, 等于使用默认值0, 一般情况下应该是不超时. 如果大于0, 可以在如/etc/profile之类文件中设置它为0.Definiti

SSH自动断开处理

解决ssh登录后闲置时间过长而断开连接 时我们通过终端连接服务器时,当鼠标和键盘长时间不操作,服务器就会自动断开连接,我们还的需要重新连接,感觉很麻烦,总结一下解决此问题的方法 方法一. 修改/etc/ssh/sshd_config配置文件,找到ClientAliveCountMax(单位为分钟)修改你想要的值, 执行service sshd reload 方法二. 找到所在用户的.ssh目录,如root用户该目录在: /root/.ssh/ 在该目录创建config文件 vi /root/.s

SSH自动断开连接的原因-20200323

方法一: 用putty/SecureCRT连续3分钟左右没有输入, 就自动断开, 然后必须重新登陆, 很麻烦. 在网上查了很多资料, 发现原因有多种, 环境变量TMOUT引起,ClientAliveCountMax和ClientAliveInterval设置问题或者甚至是防火墙的设置问题. 所以可以这么尝试: 1, echo $TMOUT如果显示空白,表示没有设置, 等于使用默认值0, 一般情况下应该是不超时. 如果大于0, 可以在如/etc/profile之类文件中设置它为0.Definiti