Wie kann ich mich von einer abgestürzten SSH-Sitzung lösen?


62

Oft habe ich eine SSH-Sitzung, die nicht mehr reagiert (zum Beispiel, wenn ich die Internetverbindung verliere und dann die Verbindung wieder herstelle). Ctrl+ C, Ctrl+ D, Ctrl+ Zund eine Unmenge von Tastendrücken haben keine Wirkung.

Meistens habe ich bereits ein tmuxoder byobuläuft es bereits, sodass ich einfach ein anderes Terminal starten und die Verbindung wiederherstellen kann. Es fühlt sich jedoch umständlich an. Wie kann ich SSH vom aktuellen Terminal trennen?

Antworten:


87

Verwenden Sie das "Escape-Zeichen" (normalerweise die Tilde ~), um eine SSH-Sitzung zu steuern:

  • ~gefolgt von .schließt die SSH-Verbindung;
  • ~gefolgt von Ctrl+ Zunterbricht den SSH-Prozess;
  • ~gefolgt von einem anderen ~sendet ein Literal ~.

Sie können das Escape-Zeichen mit der -eOption ssh festlegen .

Denken Sie auch daran

Sie sollten auch daran denken, Entervorher zu drücken ~. Das Escape-Zeichen funktioniert, wenn es das erste Zeichen in der Zeile ist. Sie können auch ~und später verwenden ?, um Hilfe vom ssh-Client zu erhalten. (Dank des Kommentars von Lukasz Stelmach .)


11
Sie sollten auch daran denken, Entervorher zu drücken ~. Das Escape-Zeichen funktioniert, wenn es das erste Zeichen in der Zeile ist. Sie können auch ~und später verwenden ?, um Hilfe vom ssh-Client zu erhalten.
Lukasz Stelmach

7
~gefolgt von ?gibt Ihnen eine vollständige Liste der unterstützten Escape-Sequenzen
Matijs

1

Openssh kann so konfiguriert werden, dass Client- oder Server-Alive-Nachrichten an die andere Seite gesendet werden. Wenn keine Antwort erhalten wird, wird die Verbindung beendet. Auf der Serverseite finden Sie die Optionen ClientAliveIntervalund ClientAliveCountMaxconfig. Auf der Clientseite finden Sie die Optionen ServerAliveIntervalund ServerAliveCountMax. TCPKeepAliveist auch eine Option, kann aber gefälscht werden, während die früheren Optionen dies nicht tun. Daher sind sie wahrscheinlich besser.

Wenn Sie diese auf vernünftige Werte setzen, wird die Verbindung wahrscheinlich nie wieder hängen bleiben. Der einzige Nachteil ist, dass Ihre SSH-Verbindungen aus Sicherheitsgründen möglicherweise offen bleiben, wenn Sie dies lieber tun würden.

Weitere Informationen finden Sie in den Manpages OpenSSH sshd config und OpenSSH ssh config .


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.