Upgrade zu einer voll interaktiven Shell mit Socat
Für eine umfassendere Lösung können wir das socat
-Tool verwenden, um eine voll interaktive Shell zu erhalten, die alle Funktionen unterstützt, einschließlich Tab-Vervollständigung, Verlaufsnavigation und Kompatibilität mit Texteditoren.
Zunächst überprüfen Sie, ob socat
auf dem Zielsystem installiert ist, indem Sie den folgenden Befehl ausführen:
which socat
Wenn socat
verfügbar ist, folgen Sie diesen Schritten:
-
Öffnen Sie ein neues Terminalfenster
und starten Sie einen Listener auf Port 5912
mit dem folgenden socat
-Befehl:
socat file:$(tty),raw,echo=0 tcp-listen:5912
Warten Sie, bis die Verbindung hergestellt ist.
-
Führen Sie in der einfachen Shell den folgenden Befehl aus, um eine Verbindung zum Listener herzustellen und die Shell zu einer voll interaktiven Shell zu aktualisieren:
socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:127.0.0.1:5912
-
Gehen Sie zurück zum Terminalfenster, in dem Sie den Listener eingerichtet haben. Hier sollten Sie sehen, dass eine Verbindung mit dem Zielsystem hergestellt wurde. Sie sollten jetzt eine voll interaktive Shell haben, die alle Funktionen bietet, die Sie von einer normalen Terminal-Sitzung erwarten würden.
Beispielausgabe:
labex:project/ $ socat file:$(tty),raw,echo=0 tcp-listen:5912
labex@660d5d5ee229593d40db9301:~$
Testen Sie die neue interaktive Shell, indem Sie Befehle wie cat
, ssh
, vim
verwenden und mit den Pfeiltasten nach oben und unten durch den Befehlsverlauf navigieren.