Für diejenigen, die sich fragen, @edward-coast
Wenn Sie Keep Alive für den Server einstellen möchten, fügen Sie dies zu /etc/ssh/sshd_config
hinzu :
ClientAliveInterval 60
ClientAliveCountMax 2
ClientAliveInterval :Legt ein Timeout-Intervall in Sekunden fest, nach dem, wenn keine Daten vom Client empfangen wurden, sshd(8) eine Nachricht über den verschlüsselten Kanal sendet, um eine Antwort vom Client anzufordern.
ClientAliveCountMax :Setzt die Anzahl der Client-Alive-Meldungen (siehe unten), die gesendet werden können, ohne dass sshd(8) irgendwelche Meldungen vom Client zurückerhält. Wenn dieser Schwellenwert erreicht wird, während Client-Alive-Meldungen gesendet werden, trennt sshd den Client und beendet die Sitzung.
Der ssh-Daemon (sshd), der serverseitig läuft, schließt die Verbindung von der Serverseite, wenn der Client still wird (d. h. keine Informationen sendet). Um Verbindungsabbrüche zu vermeiden, weisen Sie den ssh-Client an, ab und zu ein Lebenszeichen an den Server zu senden.
Die Konfiguration dazu befindet sich in der Datei $HOME/.ssh/config
, erstellen Sie die Datei, falls sie nicht existiert (die Konfigurationsdatei darf nicht allgemein lesbar sein, führen Sie also chmod 600 ~/.ssh/config
aus nach Erstellung der Datei). Um das Signal z.B. vier Minuten (240 Sekunden) zum entfernten Host, fügen Sie Folgendes in diese Konfigurationsdatei ein:
Host remotehost
HostName remotehost.com
ServerAliveInterval 240
Um das Senden eines Keep-Alive-Signals für alle Hosts zu aktivieren, fügen Sie den folgenden Inhalt in die Konfigurationsdatei ein:
Host *
ServerAliveInterval 240
Ich wollte eine einmalige Lösung:
ssh -o ServerAliveInterval=60 [email protected]
Gespeichert unter einem Alias:
alias sshprod='ssh -v -o ServerAliveInterval=60 [email protected]'
Jetzt kann wie folgt eine Verbindung hergestellt werden:
[email protected]:~$ sshprod