
Abbildung 1: Läuft auf einem Rechner der Webserver Shell In A Box, surft ihn der Admin per Browser an und trifft auf ein Bash-Login.
Alle Dienste, die nicht bei drei auf dem Baum sind, hievt irgendwann irgendwer ins Web. Warum nicht auch den Remote-Login?! Eine Software, die das implementiert, hört auf den beschreibenden Namen “Shell In A Box” und schickt – mit etwas Javascript- und CSS-Magie gewürzt – eine Shell in Richtung Browser.
Der hier vorgestellte Web-Login ist bei vielen Distributionen etabliert oder unter [1] zu bekommen. Auf meinem Test-Kubuntu hüpft die Shell In A Box mit
apt-get -fym install shellinabox
in die Kiste. Sie startet als Serverdienst im Hintergrund und lauscht gewöhnlich auf Port 4200. Surfe ich »localhost:4200« mit einem Browser an, erhalte ich den Login-Prompt der Bash und darf mich wie gewohnt einloggen und arbeiten (Abbildung 1). Und es muss nicht immer gleich der komplette Login sein. Ich kann auch die Ausgabe von Programmen, die in der Bash laufen, ins Web umleiten.
Shell In A Box lässt sich gut anpassen. Mit
shellinaboxd -t--localhost-only -p 8001--no-beep -s '/htop/:nobody:nogroup:/:htop-d 5'
verfrachte ich etwa den Prozessmonitor Htop ins Web. Der Parameter »-t« klemmt die SSL-Verschlüsselung ab, die serienmäßig aktiviert ist. Das Abschalten ist hier unkritisch, weil ich Shell In A Box nur lokal auf 127.0.0.1 lauschen lasse – also wörtlich: In a Box. Wenn mir der serienmäßige Port 4200 nicht behagt, wähle ich irgendeinen anderen, hier per »-p 8001« . Durch »–no-beep« deaktiviere ich nervige Benachrichtigungstöne.
Verschiedene Schalentiere
Nach »-s« folgt der eigentliche Shellbefehl, dessen Ausgabe der Browser darstellen soll. Das geht durchaus auch mit mehreren Kisten-Shell-Instanzen gleichzeitig, weshalb ich zur Unterscheidung eine URL angebe (»/htop« ). Um die Ausgabe zu sehen, muss ich also die URL »http://127.0.0.1/htop« im Browser aufrufen. Das Ergebnis sieht dann aus wie in Abbildung 2.
Der Browser kann nicht nur statisch den Textausfluss der üblichen Kommandozeilentools anzeigen, sondern arbeitet interaktiv, wenn die aufgerufenen Programme das können. Drücke ich beispielsweise in der Htop-Ausgabe von eben die Taste [M], so zeigt mir der Browser die Prozesse nach Speicherbedarf absteigend sortiert an, ganz wie auf der nativen Kommandozeile gewohnt.
Wie immer im Produktivbetrieb rate ich auch bei dem Shellinaboxd zur Umsicht. Wer seine Bash ins Web exportiert, sollte mindestens auf HTTPS bestehen. Die Benutzerrechte möglichst konservativ zu wählen, wie im Htop-Beispiel mit »nobody:nogroup« geschehen, ist eine weitere gute Idee.

M«.” width=”300″ height=”225″ />
Abbildung 2: Hier läuft der Prozessmonitor Htop in der Shell In A Box. Trotz Browserdarstellung funktionieren Hotkeys wieInfos
- Shell In A Box: https://code.google.com/p/shellinabox/






