Ich habe gerade von der ControlMaster / ControlPath-Funktion von OpenSSH erfahren, mit der Sie eine einzige SSH-Verbindung verwenden können, um mehrere Terminals auszuführen.
Da ich häufig SSH verwende, um die Portweiterleitung zu verwenden, um verschlüsselte und authentifizierte VNC-Sitzungen zu erhalten, habe ich sofort erkannt, dass Sie einem Remoteserver, zu dem Sie bereits eine Verbindung hergestellt haben, keine Portweiterleitungen hinzufügen können. Das ist scheiße.
Manchmal fand ich später heraus, dass Sie diese Einschränkung umgehen können, indem Sie ~ C in einer laufenden SSH-Terminalsitzung eingeben. Dies öffnet eine Befehlszeile, in der Sie Portweiterleitungen hinzufügen oder entfernen können.
Meine Frage lautet nun: Wie kann ich Portweiterleitungen zu einer vorhandenen SSH-Sitzung hinzufügen, die die ControlMaster / ControlPath-Funktion verwendet, ohne auf eine Terminalsitzung innerhalb dieser SSH-Sitzung zugreifen zu müssen? Ich benötige dies, um mein Skript zu aktivieren, das eine sichere getunnelte VNC-Verbindung startet, damit ich seine Portweiterleitungen hinzufügen und später entfernen kann.
(Ich weiß, dass ich einen Terminal-Multiplexer wie GNU Screen oder tmux verwenden könnte, eigentlich mache ich das schon. Aber ich mag die Idee, aus mehreren Gründen nur eine SSH-Sitzung zu verwenden.)