ホームページ >運用・保守 >Linuxの運用と保守 >SSH接続のLinuxタイムアウト問題を解決する方法(共有)

SSH接続のLinuxタイムアウト問題を解決する方法(共有)

奋力向前
奋力向前転載
2021-09-13 13:14:374207ブラウズ

前回の記事「centos8にZenTaoをインストールする手順を簡単に分析(コード付き)」では、centos8にZenTaoをインストールする手順を紹介しました。次の記事では、Linux での SSH 接続のタイムアウト問題を解決する方法を紹介します。

SSH接続のLinuxタイムアウト問題を解決する方法(共有)

開発中、リモート サーバーにログインする必要がよくあるため、ssh または putty# を介してログインします。 ## が、振り向くと、こいつは自動的に切断されました。 SSHconnectionLinux がタイムアウト後に自動的に切断される問題を解決するにはどうすればよいですか?

サーバー関連の構成の変更

$TMOUT<strong></strong>システム環境変数

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

sshd<strong></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

Every 300 1秒ごとにスペース(\x20)が自動入力されますが、状況に応じて一定の時間間隔を設定できます。

windows<strong></strong>構成

windows のツールを介して接続すると、

secureCRT: オプション---ターミナル---アンチアイドル、文字列を送信する秒数、または NO-OP プロトコルに設定できます。パッケージ

putty: putty -> 接続 -> キープアライブ間の秒数 (0 でオフ)、デフォルトは 0、300 に変更します。 : Linux ビデオ チュートリアル

以上がSSH接続のLinuxタイムアウト問題を解決する方法(共有)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はchuchur.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。