PuTTYで以前のセッションをすべて終了する

PuTTYで以前のセッションをすべて終了する

別のサーバーへの Telnet 接続を開きましたが、PuTTY を閉じても、別の端末にログインしているように見えます。これは、PuTTY がアイドル状態になるたびに発生すると思います。これを回避する方法をご存知の方はいませんか? プロセスを強制終了してコンピューターを再起動してみましたが、それでも同じで、他の誰もそのアカウントでログインしていないことは保証できます。

答え1

それはサーバーのファイアウォールの背後には、少し厳しすぎるファイアウォールがあります。接続が長時間アイドル状態になると、ファイアウォールはそれを「忘れて」、状態テーブルから削除します。ただし、両方のホストの TCP 層では、接続がまだアクティブであるとみなされます。

これが起こると、ファイアウォールは接続に属するすべてのパケットを許可しなくなります。通常のデータ パケットだけでなく、接続が閉じられたことを示す TCP FIN パケットや TCP RST パケットも許可されなくなります。

(通常、このタイムアウトは少なくともTCP 接続の場合は数時間かかりますが、一部のベンダー (例: Mikrotik RouterOS) はデフォルトで非常に短いタイムアウトを設定しています。

ユーザーとしては、回避策として PuTTY の「キープアライブ」機能を有効にしてみることもできます。つまり、ダミー パケットを送信して、ファイアウォールが接続がまだ使用中であると認識するようにします。

  • 繋がりキープアライブ間の秒数:60秒か300秒くらいです。(これはプロトコル固有のパケットを使用しますが、すべきTelnet で働いています。

  • 繋がり低レベルTCPオプション→ [✔]TCPキープアライブを有効にする(これはどのプロトコルでも機能しますが、キープアライブ パケットを送信する頻度を指定することはできません。数時間の範囲になる場合があります。)

関連情報