SSH: Clientalivemaxcount = 0 mit Putty?

328
CuttingWide

Ich wundere mich also über ein bestimmtes Verhalten meines SSH-Daemons bei der Verwendung von Clientaliveinterval und Clientalivemaxcount.

Nehmen Sie die folgende Konfiguration an:

Clientaliveinterval 60 Clientalivemaxcount 0

Nehmen Sie auch die folgenden anderen Parameter an:

  • Server-Betriebssystem: Debian-Stretch-basiert (Proxmox VE 5)
  • Client-Betriebssystem: Windows 10 64-Bit
  • Verbindung mit: WinSCP und Putty

Die oben beschriebenen Einstellungen sollten meinen Client nach 60 Sekunden trennen, ohne Pakete zu senden. Das funktioniert jetzt, wenn es um meine WinSCP-Sitzung geht. Aber warum funktioniert das nicht für Putty?

BEARBEITEN: Siehe meine eigene Antwort, um zu beschreiben, was falsch war und wie man es beheben kann.

0
Hast du zufällig Keep Alives eingeschaltet, es ist unter "Verbindungen" in Kitt? djsmiley2k vor 6 Jahren 0
Danke, @ djsmiley2k. Ich habe eine Antwort hinzugefügt, die beschreibt, was ich getan habe, um das Problem zu beheben. CuttingWide vor 6 Jahren 0

1 Antwort auf die Frage

2
CuttingWide

Danke an den Kommentar von djsmiley2k, der mich auf die richtige Spur gebracht hat!

Ich würde gerne erklären, was in meinem Fall falsch war (da es überhaupt nicht so offensichtlich ist, denke ich), so dass es anderen helfen könnte.

  1. Nach dem Einloggen habe ich eine Putty-Sitzung in WinSCP gestartet.
  2. Ich habe die angegebene Zeit gewartet und nach 60 Sekunden wurde die WinSCP-Sitzung getrennt.
  3. Meine Putty-Sitzung funktionierte jedoch immer noch.
  4. Klicken Sie mit der rechten Maustaste auf das Putty-Terminalfenster -> Einstellungen ändern -> Verbindung
  5. Ich habe jetzt bemerkt, dass es einen Wert von 30s gibt Seconds between keepalives.
  6. Nachdem Sie diesen Wert manuell auf 0 gesetzt haben, wurde die Verbindung nach dem definierten Zeitraum wie erwartet getrennt.
  7. Beim erneuten Verbinden trat jedoch das gleiche Verhalten erneut auf.

Aus der offiziellen Dokumentation von WinSCP dazu :

Standardmäßig erstellt WinSCP temporäre Site-Einstellungen für PuTTY (unter dem Namen> "WinSCP-temporäre Sitzung"). Die Site-Einstellungen enthalten nur die von WinSCP bekannten Optionen, meistens Verbindungsoptionen. Es fehlen insbesondere> Terminal-Optionen, so die Es gelten die Standardeinstellungen. Um die Standardeinstellungen zu ändern, ändern Sie> das Profil "Standardeinstellungen" in PuTTY.

Wenn Sie eigene sitzungsspezifische Optionen konfigurieren möchten, können Sie PuTTY> Site-Einstellungen unter demselben Namen wie eine WinSCP-Site speichern. WinSCP weist dann> PuTTY an, diese Sitzung zu öffnen (es werden weder Einstellungen noch Verbindungen> Optionen exportiert).

So beheben Sie dieses Verhalten:

  1. Open Putty (außerhalb von WinSCP).
  2. Laden Sie die Spezialsitzung WinSCP temporary session
  3. Gehe zu Connection
  4. Stellen Sie keepalivessicher, dass der -Wert auf 0 gesetzt ist.
  5. Geh zurück zu Session
  6. Speichern Sie die Konfiguration unter demselben Namen wie Ihr Sitzungsname in WinSCP .
  7. Versuchen Sie es erneut und Sie sollten herausfinden, dass sowohl die WinSCP- als auch die Putty-Verbindung erwartungsgemäß beendet werden.