Öffnen Sie ein neues Terminal in derselben SSH-Sitzung

11

Gibt es eine Möglichkeit, ein neues Terminal in einer vorhandenen SSH-Sitzung zu öffnen? Ich bin bei einem Remote-System angemeldet und habe eine spezielle Sitzung, die ich anfordern und auf den Empfang warten muss. Ich weiß, dass ich dann den Befehl "xterm &" verwenden kann, um mehrere xterm-Fenster in dieser Sitzung zu öffnen, aber xterm verhält sich anders als das in OSX integrierte Terminal. Gibt es eine Möglichkeit, mehrere Terminalfenster innerhalb der vorhandenen SSH-Sitzung zu öffnen?

Brendan
quelle
1
tmux ist über homebrew erhältlich. Ich habe es selbst nicht benutzt, obwohl
AllInOne

Antworten:

10

Ja, Sie können die bestehende SSH-Verbindung wiederverwenden und SSH in einem beliebigen Terminal öffnen. Weitere Informationen finden Sie in dieser Antwort auf eine StackOverflow-Frage:

Wenn Sie die erste Verbindung mit -M öffnen:

ssh -M $REMOTEHOST

Nachfolgende Verbindungen zu $ ​​REMOTEHOST "huckepack" auf die vom Master ssh hergestellte Verbindung. Am auffälligsten ist, dass keine weitere Authentifizierung erforderlich ist. Weitere Informationen finden Sie unter man ssh_config unter "ControlMaster". Verwenden Sie -S, um den Pfad zum gemeinsam genutzten Socket anzugeben. Ich bin mir nicht sicher, wie die Standardeinstellung lautet, da ich die Verbindungsfreigabe stattdessen über die Konfigurationsdatei konfiguriere.

In meiner .ssh / config-Datei habe ich die folgenden Zeilen:

host *
  ControlMaster auto
  ControlPath ~/.ssh/ssh_mux_%h_%p_%r

Auf diese Weise muss ich nicht daran denken, -M oder -S zu verwenden. ssh stellt fest, ob für die Kombination aus Host, Port und Benutzername bereits eine gemeinsam nutzbare Verbindung besteht, und verwendet diese nach Möglichkeit.

Teksisto
quelle