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 tmux
oder byobu
lä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?
Enter
vorher 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.~
gefolgt von?
gibt Ihnen eine vollständige Liste der unterstützten Escape-SequenzenOpenssh 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
ClientAliveInterval
undClientAliveCountMax
config. Auf der Clientseite finden Sie die OptionenServerAliveInterval
undServerAliveCountMax
.TCPKeepAlive
ist 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 .
quelle
Versuchen Sie Ctrl+Break
quelle