Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So lösen Sie das Linux-Timeout-Problem bei der SSH-Verbindung (Teilen)

So lösen Sie das Linux-Timeout-Problem bei der SSH-Verbindung (Teilen)

奋力向前
奋力向前nach vorne
2021-09-13 13:14:374145Durchsuche

Im vorherigen Artikel „Eine kurze Analyse der Schritte zur Installation von ZenTao in Centos8 (mit Code)“ haben wir die Schritte zur Installation von ZenTao in Centos8 vorgestellt. Der folgende Artikel stellt Ihnen vor, wie Sie das SSH-Verbindungs-Timeout-Problem unter Linux lösen können. Er hat einen bestimmten Referenzwert und Freunde in Not können sich darauf beziehen.

So lösen Sie das Linux-Timeout-Problem bei der SSH-Verbindung (Teilen)

Während der Entwicklung muss ich mich oft beim Remote-Server anmelden, also melde ich mich über ssh oder putty an, aber wenn ich mich umdrehe, wird das Der Server wird automatisch getrennt. Es ist sehr ärgerlich. Wie kann man das Problem lösen, dass die SSH-Verbindung Linux nach einer Zeitüberschreitung automatisch getrennt wird? ssh或者putty登录,可是一转身,这厮就自动断开了。让人非常恼火,如何解决SSH连接Linux超时自动断开?

修改服务器相关配置

<strong>$TMOUT</strong>系统环境变量

# 用以下命令判断是否是否设置了该参数
echo $TMOUT
# 如果输出空或0表示不超时,大于0的数字n表示n秒没有收入则超时
# 修改方法
vi /etc/profile
# ----------------------------
export TMOUT=900
# ----------------------------
# 将以上900修改为0就是设置不超时
source /etc/profile
# 让配置立即生效

<strong>sshd</strong>服务配置

cd /etc/ssh
# 查看sshd_config中关于客户端活动状态的配置
grep ClientAlive sshd_config
# 默认配置如下
# ----------------------------
#ClientAliveInterval 0
#ClientAliveCountMax 3
# ----------------------------
# ClientAliveInterval指定了服务器端向客户端请求消息的时间间隔, 默认是0, 不发送。设置60表示每分钟发送一次, 然后客户端响应, 这样就保持长连接了。
# ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开。正常情况下, 客户端不会不响应,使用默认值3即可。
# 备份原配置文件
cp sshd_config sshd_config.bak
# 启用客户端活动检查,每60秒检查一次,3次不活动断开连接
sed -i "s/#ClientAliveInterval 0/ClientAliveInterval 60/g" sshd_config
sed -i "s/#ClientAliveCountMax 3/ClientAliveCountMax 3/g" sshd_config
# 确认修改
grep ClientAlive sshd_config
# 比较配置文件差异
diff sshd_config sshd_config.bak
# 重新加载ssd配置,让配置生效
service sshd reload

修改客服端相关配置

登录脚本

#!/usr/bin/expect
set timeout 60
spawn ssh user@host
      interact {
            timeout 300 {send "\x20"}
      }
expect eof

每隔 300 秒就会自动打一个空格(x20),具体的时间间隔可以根据具体情况设置。

<strong>windows</strong>配置

如果你在windows下通过工具连接,可以设置为

secureCRT:选项---终端---反空闲 中设置每隔多少秒发送一个字符串,或者是NO-OP协议包

putty

Serverbezogene Konfigurationen ändern

<strong>$TMOUT</strong>Systemumgebungsvariablen

rrreee<strong>sshd </strong>Dienstkonfigurationrrreee

Clientbezogene Konfiguration ändern

Anmeldeskript🎜rrreee🎜🎜Alle 300 Sekunden wird automatisch ein Leerzeichen eingegeben (x20) , das spezifische Zeitintervall kann entsprechend der spezifischen Situation eingestellt werden. 🎜🎜🎜<strong>windows</strong>Konfiguration🎜🎜Wenn Sie über Tools unter windows eine Verbindung herstellen, können Sie es auf 🎜🎜 einstellen secureCRT: Optionen---Terminal---Anti-Idle, legen Sie fest, wie viele Sekunden eine Zeichenfolge gesendet werden soll, oder NO-OP Protokollpaket 🎜🎜putty:putty -> Connection -> Sekunden zwischen Keepalives (0 zum Ausschalten), der Standardwert ist 0, ändern Sie sich auf 300. 🎜🎜Empfohlenes Lernen: 🎜Linux-Video-Tutorial🎜🎜

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Linux-Timeout-Problem bei der SSH-Verbindung (Teilen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:chuchur.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen