GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So verhindern Sie, dass die SSH-Sitzung eine Zeitüberschreitung erhält

Der Linux-SSH-Server trennt die SSH-Sitzung standardmäßig nie von der Serverseite. Überprüfen Sie die Switch-/Router-/Firewall-Konfiguration, um das Problem zu vermeiden, ohne die Konfiguration der SSH-Server/Clients zu ändern. Wenn die SSH-Sitzung aufgrund von Inaktivität getrennt wird und Sie dies beenden möchten, befolgen Sie bitte die folgenden Schritte, entweder auf Client- oder Serverseite, wie unten beschrieben:

Clientseitige Einstellungen

Um Keep Alive systemweit zu aktivieren (Root-Zugriff erforderlich), bearbeiten Sie die Konfigurationsdatei /etc/ssh/ssh_config . Um die Einstellungen nur für einen bestimmten Benutzer festzulegen, bearbeiten Sie auf ähnliche Weise ~/.ssh/config (erstellen Sie die Datei, falls sie nicht existiert). Folgendes einfügen:

Host *
ServerAliveInterval 300
ServerAliveCountMax 2

Diese Einstellungen veranlassen den SSH-Client oder -Server, alle 300 Sekunden (5 Minuten) ein Nullpaket an die andere Seite zu senden und aufzugeben, wenn er nach 2 Versuchen keine Antwort erhält, an welchem ​​Punkt die Verbindung wahrscheinlich bestanden hat trotzdem verworfen.

Von der Manpage ssh_config:

ServerAliveCountMax:

Setzt die Anzahl der Server-Alive-Meldungen (siehe unten), die gesendet werden können, ohne dass ssh(1) irgendwelche Meldungen vom Server zurückerhält. Wenn dieser Schwellenwert erreicht wird, während Server-Alive-Meldungen gesendet werden, trennt ssh die Verbindung zum Server und beendet die Sitzung. Es ist wichtig zu beachten, dass sich die Verwendung von Server-Alive-Nachrichten stark von TCPKeepAlive (unten) unterscheidet. Die Server-Alive-Nachrichten werden über den verschlüsselten Kanal gesendet und sind daher nicht fälschbar. Die von TCPKeepAlive aktivierte TCP-Keepalive-Option ist spoofbar. Der Server-Alive-Mechanismus ist wertvoll, wenn Client oder Server darauf angewiesen sind, zu wissen, wann eine Verbindung inaktiv geworden ist.

Der Standardwert ist 3. Wenn beispielsweise ServerAliveInterval (siehe unten) auf 15 gesetzt ist und ServerAliveCountMax auf dem Standardwert belassen wird und der Server nicht mehr reagiert, wird ssh nach etwa 45 Sekunden getrennt. Diese Option gilt nur für Protokollversion 2; In Protokollversion 1 gibt es keinen Mechanismus, um eine Antwort vom Server auf die Server-Alive-Meldungen anzufordern, daher liegt die Trennung in der Verantwortung des TCP-Stacks.

ServerAliveInterval:

Legt ein Timeout-Intervall in Sekunden fest, nach dem, wenn keine Daten vom Server empfangen wurden, ssh(1) eine Nachricht über den verschlüsselten Kanal sendet, um eine Antwort vom Server anzufordern. Der Standardwert ist 0, was bedeutet, dass diese Nachrichten nicht an den Server gesendet werden, oder 300, wenn die Option „BatchMode“ festgelegt ist. Diese Option gilt nur für Protokollversion 2. ProtocolKeepAlives und SetupTimeOut sind Debian-spezifische Kompatibilitätsaliase für diese Option.

Serverseitige Einstellung

Wenn Sie Administratorzugriff auf den Server haben, können Sie die Optionen ClientAliveInterval, TCPKeepAlive und ClientAliveCountMax in der SSHd-Konfigurationsdatei konfigurieren. Der Pfad der Datei ist /etc/ssh/sshd_config

# vi /etc/ssh/sshd_config
ClientAliveInterval 30
TCPKeepAlive yes 
ClientAliveCountMax 99999

Sie müssen den SSH-Server neu starten, damit die Änderungen wirksam werden.

# service sshd restart


Cent OS
  1. So aktualisieren Sie von openSUSE 13.1 auf openSUSE 13.2

  2. Wie führe ich einen ClamAV-Scan von SSH auf dem cPanel-Server aus?

  3. So erstellen Sie ein SSH-Banner in CentOS/RHEL Server

  4. So senden Sie Daten von einer Remote-SSH-Sitzung an die lokale Zwischenablage

  5. Wie lade ich eine Datei mit SSH vom Server herunter?

So aktivieren Sie SSH auf openSUSE

So melden Sie sich von einer Ubuntu-Sitzung ab [Anfängertipp]

So aktivieren Sie den SSH-Server unter Ubuntu 22.04

So migrieren Sie von CentOS 8 auf CentOS Stream Server:

So melden Sie einen Benutzer unter Linux von SSH ab

Wie Sie von Windows aus SSH in Ihren Linux-Server einbinden