アクティブに使用せずにSSH接続を維持するにはどうすればよいですか。使用すると正常に動作しますが、数分間使用しないと切断されます。接続するたびにメールが届くので、SSHセッションを存続させるにはどうすればよいですか?
注:私の.ssh/config
ファイルでは、一番上に
Host *
ServerAliveInterval 3
しかし、それは機能していないようです。
*
それらすべてであるはずですよね?
アクティブに使用せずにSSH接続を維持するにはどうすればよいですか。使用すると正常に動作しますが、数分間使用しないと切断されます。接続するたびにメールが届くので、SSHセッションを存続させるにはどうすればよいですか?
注:私の.ssh/config
ファイルでは、一番上に
Host *
ServerAliveInterval 3
しかし、それは機能していないようです。
*
それらすべてであるはずですよね?
回答:
サーバーへのパケット送信の試行回数と間隔を指定する必要があります。.ssh/config
ファイルに次の行を入れることができます。
Host examplehost
Hostname examplehost.com
ServerAliveInterval 180
ServerAliveCountMax 2
これにより、180秒(3分)ごとにサーバーにパケットが送信され、クライアントからの応答がない後に接続を閉じる前に2回試行されます。
ServerAliveCountMax
。おそらくこれで問題が解決しました。
LinuxおよびApple Mac OS Xオペレーティングシステムでは、この~/.ssh/config
ファイルを使用して、SSH接続を維持する設定を含む、多くのSSH設定を指定できます。これを行うには、次の手順に従います。
任意のテキストエディタを使用~/.ssh/config
して、ローカルコンピュータでファイルを開きます。注:.ssh
ディレクトリーまたは構成ファイルが存在しない場合は、作成してください。
次の行を構成ファイルに追加します。ホストの値は、あなたが望む任意の名前にすることができます。他の設定のラベルにすぎません。ホスト名の値は、アクセスしたいリモートホストです。example.comをドメイン名に置き換えます。ユーザー名を自分のホスティングアカウントのユーザー名に置き換えます。
Host example
Hostname example.com
Port 7822
User username
ServerAliveInterval 240
ServerAliveCountMax 2
この構成では、SSHクライアントは240秒(4分)ごとにサーバーにパケットを送信して、接続を維持します。(ServerAliveCountMax設定で指定されたように)2回試行してもクライアントが応答を受信しない場合、クライアントは接続を閉じます。
使用可能なすべてのSSH構成設定の詳細についてman ssh_config
は、コマンドラインで入力してください。
変更を構成ファイルに保存します。
SSHを使用してアカウントに接続します。これを行うには、単にssh exampleと入力します。ここで、exampleはステップ2で指定したHost値を表します。
接続を監視します。それでも低下する場合ServerAliveInterval
は、接続が安定するまで設定ファイルの設定を徐々に減らします。
詳細については、次のURLを確認してくださいhttps://www.a2hosting.com/kb/getting-started-guide/accessing-your-account/keeping-ssh-connections-alive
次のように、sshコマンドでこれらの引数を追加することもできます...
ssh -o ServerAliveInterval=180 -o ServerAliveCountMax=2 $HOST