sshセッションのアイドルタイムアウト


9

私たちが開発のほとんどを行っているSolarisマシンは、SSHセッションをタイムアウトするという厄介な癖があります。クライアントがUbuntuデスクトップ、Solarisデスクトップ、またはWindowsデスクトップ(putty)のどちらであるかは関係ありません。一般的な要因は、大きなSolarisマシンです。

これを防ぐために何かできることはありますか?昼休みを取り、開いて微妙に構成したターミナルセッションがすべてフリーズしている場合は煩わしいので、すべてを終了してすべてのコンテキストを再確立する必要があります。

回答:


8

はい。キープアライブパケットを送信するようにSSHを設定します


/ etc / ssh / sshd_configに「KeepAlive Yes」がすでにあります。ただし、ClientAliveInterval値はありませんでした。追加したので、その様子を見ていきます。
アンドリュー

1
また、他の方法でも同じことができることにも注意してください。サーバー構成を変更できなかった場合は、ServerAliveIntervalを使用する代わりに、sshクライアントにキープアライブパケットを送信させることができます。
SpoonMeiser 2009

その記事の場所が変更されました。こちらが現在のものです。forumone.com
John Bachir

2

キープアライブ動作がうまく機能しないことがわかりました。〜/ .ssh / configスクリプトにServerAliveIntervalを追加してみましたが、gitではうまく機能しません。

結局のところ、「画面」のステータスバーにタイムスタンプを追加しています。これは、接続を維持するのに十分なアクティビティです。


screen(1)以外でこの機能が必要な場合は、Spinner
Drew Stephensを

1

キープアライブパケットも送信するようにPuttyを構成できます。

設定、接続、キープアライブ間の秒数。


1

まず、ログアウトしているのがシェルか、sshかを判別する必要があります。テストするには、リモートマシンにSSHでログインし、vi以下のファイルを使用します。

長い時間が経過してもless / viを移動できる場合は、sshで問題ありません。この場合は、使用しているシェルを判別し、タイムアウトを無効にします。SSHではなく、タイムアウトしているシェルである可能性が高いです。ただし、一部のファイアウォールは、キープアライブが送信されない場合、アイドルセッションを閉じます。

Solaris管理者は、設定を読み取り専用にすることにより、シェルでタイムアウトを無効にできないようにすることができます。これはありそうもないことですが、可能です。通常は、別のシェルを使用してこれを回避できます。


1

シェルの再構成に問題がある場合は、GNU screenを使用できます。SSHセッションがタイムアウトした場合は、再度ログインして再接続するだけで、シェルは以前と同じ状態になります。


0

Solarisマシンでtcshを実行すると、autologout変数が設定される可能性があります。これを0に設定(autologout = 0に設定)または設定解除(autologoutを設定解除)すると、ログアウトが中止されます。


0

これは赤いニシンかもしれませんが、試してください

unset TMOUT

シェルプロンプトで。これは確かに過去にはうまくいきましたが、特定のアーキテクチャ(またはシェル)に制限されているかどうかは思い出せません。



0

top別の端末で実行できますか?それは定期的なトラフィックを生成する必要がありますか?



-1

Linux / bsdサーバーで「ClientAliveInterval 300」を使用すると、常に成功しました。


-1

sshd次のような行の構成を確認してください/etc/ssh/sshd_config

ClientAliveInterval 600
ClientAliveCountMax 0
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.