Hacker-Terminal mit Terminator, Powerline und zsh

Tools für die effektive Arbeit im Terminal

Hacker und Penetration Tester arbeiten oft zu einem erheblichen Teil unter Linux im Terminal mit Kommandozeilen-Befehlen. Für viele Hacker bedeutet das Terminal Freiheit. Sie können sich nur schwer mit teilweise unübersichtlichen Oberflächen von Programmen mit grafischer Oberfläche anfreunden. Im Terminal herrscht Selbstbestimmung. Mit den richtigen Zusatzprogrammen lässt sich der Arbeitsplatz noch komfortabler gestalten.

Glaubt man so manchem Hacker, geht im Terminal alles schneller, denn es ist der direkteste Weg dem Computer mitzuteilen, wie die zu lösende Aufgabe lautet. Mit seinen zahlreichen, hochspezialisierten Tools und flexiblen Anpassungsmöglichkeiten gibt Linux dem Anwender die Möglichkeit, gerade mit der Kommandozeile die Werkzeuge kreativ zu verknüpfen und neue, individuelle Wege zu gehen.

Aber nicht nur Hacker nutzen das Terminal. Auch für Entwickler ist es oftmals einfacher kleine Skripte und Programme direkt über das Terminal zu starten. Jeder Linux-Anwender, der mehr aus seinem System herausholen möchte und professionell damit arbeitet, landet früher oder später auf der Kommandozeile. Mit einem individuellen und auf die eigenen Bedürfnisse angepassten Terminal steigern wir nicht nur den Spaßfaktor, sondern insgesamt auch die Praktikabilität für viele relevante Aufgaben.

Hinweis: In diesem Beitrag betrachten wir Kali Linux, aber prinzipiell gelten die Ausführungen auch in anderen Distributionen.

Flexible Gestaltung mit Terminator

Auch wenn das Standard-Terminal von Kali Linux schon viele Möglichkeiten mitbringt, hat es seine Grenzen. Mit der Terminalprogramm-Alternative Terminator ist es möglich, das Terminal umfassend an die eigenen Bedürfnisse anzupassen. Es ist in Python geschrieben und eignet sich insbesondere für Profis, die mit mehreren Terminalfenstern arbeiten möchten. Die Installation in Kali und anderen Debian-basierten Distributionen ist einfach und geschieht mit dem folgenden Befehl, dem ggf. ein sudo vorangesetzt werden muss:

apt install terminator

Terminator wird Usual Applications – Zubehör gestartet, kann aber auch über Rechtklick auf den Eintrag im Anwendungsmenü dem Desktop oder der Schnellstart-Leiste hinzugefügt werden. Terminator sieht zunächst sehr schlicht aus und verzichtet bewusst auf die traditionelle Menüleiste. Das Programm kann mit der Maus oder über Tastenkombinationen gesteuert werden. Über das Kästchen-Symbol oben links lässt sich das Gruppen-Menü öffnen, was allerdings nur in speziellen Fällen benötigt wird.

Die Maus-basierte Steuerung findet ansonsten über das Kontextmenü statt, das über Rechtsklick im Terminalfenster geöffnet werden kann. Hier ist insbesondere die Funktion zum Teilen des Fensters. Interessant. Ein Terminalfenster kann horizontal oder vertikal geteilt werden. Die Aufteilung ist beliebig möglich und kann flexibel fortgesetzt und erweitert werden.

Profis nutzen die zahlreichen Shortcuts: Mit Strg+Shift+O teilt sich das Terminal-Fenster in zwei horizontale und mit STRG+Shift+E in zwei vertikale Hälften. So können in einem Terminal die Ausgaben mehrerer Programme nebeneinander angesehen werden.

Über das Gruppen-Menü oben links können mehrere Terminalfenster einer Gruppe zugeordnet werden. Dazu wird eine Gruppe erstellt und die anderen Terminals über dieses Menü der Gruppe zugeordnet. Wird nun in einem Fenster einer Gruppe etwas eingegeben, so wird das auch auf die anderen Terminals der Gruppe übertragen. So sind z.B. gleichzeitig Updates oder Monitoring-Befehle auf mehreren Systemen möglich, wenn zuvor eine Verbindung via SSH zu den Systemen hergestellt wurde.

Terminator lässt sich außerdem sehr einfach über die Einstellungen den eigenen Vorstellungen anpassen. Mit einem Rechtsklick und einem Klick auf Einstellungen, können unter dem Reiter Profil viele verschiedene Designs erstellt und ausprobiert werden. Neben den Farben lassen sich auch die Schrift, der Hintergrund, sowie eigene Befehle je nach Bedürfnis konfigurieren. Im Reiter Tastenbelegungen findet sich eine Übersicht über die Shortcut-Befehle. Natürlich können auch diese angepasst werden.

Mit Powerline den Prompt gestalten

Die Fensteroptik und -Funktionalität hat mit Terminator bereits ein Upgrade erhalten, allerdings ist die eigentliche Shell noch auf dem alten Stand. Doch auch hier können wir einiges optimieren. Ein häufig genutztes Tool ist Powerline. Dabei handelt es sich um ein Status-Line-Tool zum Verschönern des Prompts, also der Eingabezeile, die die Shell zur Verfügung stellt. Bei der Shell handelt es sich in der Regel um die Bash. Neben optischen Verbesserungen unterstützt Powershell auch die Usability an verschiedenen Stellen und kann auch für andere Tools, wie z.B. vim genutzt werden. Powerline wird ebenfalls ganz einfach installiert, ggf. sudo nicht vergessen:

apt install powerline

Um die Shell ab sofort mit Powerline zu starten, muss zuerst eine Konfiguration in der .bashrc – Datei vorgenommen werden. Die .bashrc liegt standardmäßig im Home-Verzeichnis des Benutzers und teilt dem Terminal beim Starten mit, wie sich die Shell verhalten soll. Folgende Code-Zeilen müssen am Ende der Datei ergänzt werden, damit Powerline beim nächsten Öffnen des Terminals aktiviert wird:

powerline-daemon -q

POWERLINE_BASH_CONTINUATION=1

POWERLINE_BASH_SELECT=1

source /usr/share/powerline/bindings/bash/powerline.sh

Um Powerline auch in der aktiven Shell zu starten, kann der folgende Befehl ausgeführt werden:

source ~/.bashrc

Im Ergebnis erhalten wir ein ansehnliches Upgrade des Promptes, der nicht nur den Pfad optisch ansprechend darstellt, sondern auch wartende Background-Jobs anzeigt und Feedback zu den eingegebenen Befehlen und deren Status gibt.

Leider ist die Installation nicht auf jedem System so einfach durchzuführen und erfordert mitunter noch mehr spezielle Konfiguration. Die obige Anleitung funktioniert zumindest auf Kali Linux und Ubuntu.

Weitere Optimierungen durch die Z-Shell

Insgesamt überzeugender als Bash und Powerline ist die Z-Shell (zsh), zum Beispiel mit der Erweiterung oh-my-zsh. Die zsh ist schon an sich wie eine Erweiterung der normalen Bash, also der Standard-Shell auf Linux-Systemen. Ein Feature, das man nicht mehr missen möchte, ist beispielsweise das einfache Navigieren durch Verzeichnisse. Durch das Drücken der Tabulator-Taste klappt sich in der zsh ein Menü auf, mit dem sehr einfach durch die Verzeichnisse gewechselt werden kann. Außerdem verzeiht die zsh kleinere Rechtschreibfehler beim Schreiben des Verzeichnisnamen und korrigiert diesen mit Hilfe der Tabulatortaste. Die zsh kann mit dem folgenden Befehl installiert werden:

apt install zsh

Beim ersten Aufruf durch Eingabe von zsh im Terminal wird zunächst der Konfigurationsassistent gestartet.

Für den Einstieg bietet sich Option (2) an, die eine empfohlene Konfiguration in der Datei ~/.zshrc erstellt, mit der der Anwender starten kann. Später sind Anpassungen jederzeit möglich. Nach ein wenig Eingewöhnung werden die Vorteile der zsh in der täglichen Arbeit schnell sichtbar. Sie kann durch den folgenden Befehl als Standard-Shell etabliert werden und damit die Bash ablösen:

chsh -c /bin/zsh [User]

Optional kann der User angegeben werden, für den die Änderung gelten soll. Standardmäßig ist das der ausführende Benutzer. Nach der nächsten Anmeldung wird der User im Terminalfenster von der zsh begrüßt.

Die zsh durch Oh-my-zsh optimieren

Die zsh kann durch Erweiterungen wie oh-my-zsh ergänzt werden. Dabei handelt es sich um ein durch die Community entwickeltes Framework zur Verwaltung der zsh und ihren Funktionen. Oh-my-zsh ermöglicht die Integration von Plugins und kann auch zur Verwaltung der ZSH-Themes verwendet werden.

Zunächst werden die Tools wget und git benötigt:

apt install wget git

Das Skript zum Installieren von oh-my-zsh befindet sich unter: https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh

Es kann sehr einfach mit folgendem Befehl installiert werden:

Achtung: dieser Befehl lädt Code aus dem Internet auf das System und führt ihn ohne weitere Fragen aus. So kann ein Hacker mit bösen Absichten sehr leicht Malware einschleusen. Daher sollte der Code und der Link immer zuerst sehr genau überprüft werden.

sh -c "$(wget -O- \ https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Die Installation stellt sich folgendermaßen dar:

Wie zu erkennen, wird die Datei ~/.zshrc angepasst und enthält im Anschluss zahlreiche Einträge zur Konfiguration der zsh.

Es gibt eine riesige Auswahl an Themes, die unter https://github.com/ohmyzsh/ohmyzsh/wiki/Themes präsentiert werden und  sich sehr schnell in der .zshrc einstellen lassen. Dazu kann einfach die .zshrc-Datei mit einem beliebigen Text-Editor geöffnet werden und die Zeile ZSH_THEME=”robbyrussel” in das gewünschte Theme (z.B. agnoster oder bira) abgeändert werden. Danach kann der Anwender in der aktiven Shell die Änderungen mit dem folgenden Befehl aktivieren:

source ~./zshrc

Mit oh-my-zsh können zudem Plugins integriert werden. Dabei handelt es sich um kleine Helferlein in Form von Befehlsvereinfachungen und anderem. Dazu wird die Konfigurationszeile plugins= in der Datei ~/.zshrc angepasst.

Auf https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins findet sich eine Liste verfügbare Plugins und deren Erläuterung.

Fazit

Das Terminal mit der Shell ist das “Zuhause” für viele Hacker, Entwickler und Administratoren. Es bietet sich an, seine Arbeitsumgebung hier zu verschönern und zu optimieren. Mit Programmen, Tools und Frameworks wie Terminator, Powerline und zsh bzw. oh-my-zsh wird der Arbeitsplatz stylischer, funktioneller und leistungsfähiger. Dabei sind der Kreativität und Individualität kaum Grenzen gesetzt.

Autor des Beitrags:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.

Menü