私の目標は、特権が制限されているサーバーでSSH接続タイムアウトを増やすことです。読み取り/etc/ssh/sshd_config
(追加/書き込み)権限もありませんsudo
。
マイコンピュータでローカルに次のことを行いました~/.ssh/config
。
Host *
ServerAliveInterval 300
ServerAliveCountMax 2
ただし、ローカルSSHデーモン(sudo systemctl reload sshd
)を再ロードした後も、接続は予想よりも早く切断されます。
私の質問は:標準のグローバルソリューションを修正して使用するよりも、私のサーバーに接続を維持するように指示する/etc/ssh/sshd_config
他の方法はありますかClientAliveInterval X
?
答え1
完了するのにかかる時間を決定する必要があります。怠惰セッションがタイムアウトしました。 (アイドル状態ではなくセッションでタイムアウトが発生した場合は、間違ったタイプのソリューションを探しています。)
たとえば、1分の場合、Keepaliveをその値の半分、つまり30秒に設定します。
デフォルト設定()を変更するのではなく、ターゲットHost *
ホストの特定のエントリとそのホストに接続するために使用できるすべてのエイリアスを作成することをお勧めします。デフォルト設定(Host *
)もある場合(たとえば、デフォルトのターゲットユーザー名を設定した場合)、この特定の項目がデフォルト項目の前にリストされていることを確認してください。
Host myServer myServerAlias myServer.my.domain 10.11.12.13
ServerAliveInterval 30
30秒ごとにキープアライブを盲目的に送ることは無駄なので、タイムアウトを決定して半分に減らすのに時間を費やす価値があります。