Ich denke, Sie haben die falsche Seite genommen: In Ihrem Fall sshd
(Server-Seite) schlägt wahrscheinlich weder eine Sitzung fehl, noch haben sie abgestandene Sitzungen . Wenn Sie sie beenden, sollte dies nicht helfen, abgesehen von dem Nebeneffekt, dass etwa alle verbundenen ssh
Client-Verbindungen abgebrochen werden.
Es ist der ssh
Client, der die Verbindung nicht beendet, wenn der Portweiterleitungsmechanismus nicht erstellt wurde. Und dieses Verhalten ist kein Fehler.
Sie müssen sich die ExitOnForwardFailure
Option im ssh-Handbuch ansehen .
Ihr Skript wäre:
for ((;;))
Zusätzlich sollten Sie straffen ServerAliveInterval
und ServerAliveCountMax
für den Kunden früher deconnections zu erkennen. (Und Sie sollten sicherstellen, dass TCPKeepAlive
ist on
die der Standardwert ist). Beachten Sie, dass autossh
Sie nicht mehr helfen werden, wenn Sie diese Optionen festgelegt haben.