Gost 0.1.1
Statistiken berechnen
Quelle: https://github.com/ch1aki/gost
Lizenz: MIT
Alternativen: keine
Viele Konsolenprogramme geben nur Zahlenwerte über einen definierten Zeitraum zurück. Wer die Daten statistisch aufbereiten möchte, musste bislang selbst Hand anlegen. Das kleine, in Go implementierte Tool Gost springt hier in die Bresche. Das noch sehr junges Projekt ist noch in keinem Repository enthalten. Anwender finden Binaries für Linux und MacOS sowie die Quellen auf der Projektseite.
Die Konfiguration erfolgt über Kommandozeilenparameter beim Aufruf. Gost nimmt über eine Pipe Daten von der Standardeingabe entgegen. Ohne Parameter aufgerufen, gibt es eine vollständige Statistik der erfassten Werte aus. Dazu gehören auch die Gesamtzahl der erhobenen Daten, deren minimaler und maximaler Wert, die Summe der Werte, der Mittelwert sowie die Standardabweichung.
Benötigt der Benutzer nicht alle oder nur einzelne statistische Daten, gibt er mit »–min« und »–max« nur die minimalen oder maximalen Werte der erfassten Zahlen aus. Der Schalter »–variance« sorgt dafür, dass Gost die Streuung von Werten um den Mittelwert berechnet. Das Format der Standardausgabe eignet sich zwar bestens für das Weiterverarbeiten in eigenen Skripten, lässt sich von Menschen aber nur schlecht lesen. Dem hilft die Option »–markdown« ab: Sie dient dazu, die Ausgabe im entsprechenden Format als Tabelle zu speichern.
Die Dokumentation von Gost bleibt bislang äußerst dürftig. Lediglich »-h« gibt eine Übersicht aller Parameter aus. Unter Github finden sich ebenfalls nur zwei Beispiele. Hier geht Probieren über Studieren.
Bridge 0.2.1
TCP-Proxy
Quelle: https://github.com/wzshiming/bridge
Lizenz: MIT
Alternativen: Squid, Tiny Proxy
Bei Bridge ist der Name Programm: Der einfache, in Go geschriebener TCP-Proxy ermöglicht das Weiterleiten von Paketen über mehrere Server. Bridge unterstützt mehrere Protokolle. Neben etlichen Paketen für diverse Plattformen und Betriebssysteme gibt es auf der Github-Seite auch ein Docker-Image.
Ohne weitere Parameter aufgerufen, schreibt Bridge eine einfache Online-Hilfe ins Terminal. Detaillierte Erläuterungen und einige Anwendungsbeispiele finden sich auf der Projektseite. Zum kaskadierenden Weiterleiten von Datenpaketen über mehrere Proxy-Server unterstützt das Tool die Protokolle SOCKS 4 und 5, HTTP(S) und SSH. Hinter »-b« schreiben Benutzer die Adresse und den Port, auf denen Bridge eingehende Verbindungen erwartet; Adresse und Port des Zielsystems legt »-p« fest.
Beim Kaskadieren über mehrere Proxy-Server ist die Reihenfolge beim Aufruf entscheidend. Alle weiteren Proxy-Server stehen ebenfalls hinter »-p«. Dabei muss der Nutzer Adresse und Port des Zielsystems immer als Erstes nennen. Die Github-Seite zeigt ein Beispiel zu diesem Szenario. Optional kann das Tool in der SSH-Konfiguration den Verbindungsaufbau über mehrere Server automatisieren.
Auch wenn Bridge erst ein halbes Jahr alt ist, hat das Tool viel Potenzial. Die Dokumentation ist noch etwas dünn; der Debug-Schalter »-d« hilft im Zweifelsfall weiter.
Ffsend 0.2.64
Konsolen-Client für Firefox Send
Quelle: https://github.com/timvisee/ffsend
Lizenz: GPLv3
Alternativen: Ssend-cli
Plattformen für den schnellen Austausch von Dateien gibt es im Netz zuhauf; als Alternative bietet sich das Hosten eines eigenen Diensts an. Wer davor zurückscheut und Firefox Send, den Ende-zu-Ende verschlüsselnden Filesharing-Dienst der Mozilla Foundation nutzen möchte, findet in Ffsend einen einfachen Client. Anwender nutzen ihn, um auf der Shell bequem Dateien hoch- und wieder herunterzuladen. Im Github-Repository stehen fertige Pakete bereit, sodass einem schnellen Start nichts im Weg steht.
Um eine Datei unter https://send.firefox.com abzulegen, ruft der Anwender Ffsend zusammen mit dem Kommando »upload« und dem Dateinamen auf. Nach erfolgreicher Übertragung gibt das Tool eine URL aus, unter der die Datei während der nächsten 24 Stunden verfügbar bleibt. Um den Zugriff kümmert sich der Befehl »parameters«: Neben einer einfachen Authentifizierung kann der Nutzer Timeout-Werte für Anfragen und die Übertragung definieren sowie ein Download-Limit festlegen. Hinter »password« lässt sich zudem ein Kennwort einrichten. Wer sich dafür interessiert, wie oft eine Datei heruntergeladen wurde und wie lange sie noch zur Verfügung steht, der setzt »info« ein. Versehentlich hochgeladene Daten entfernt der Schalter »delete«.
Ffsend verwaltet Daten auf Firefox Send zuverlässig und schützt sie sogar per Passwort. Einziges Manko: Eine Manpage fehlt. Das ausführliche Handbuch unter Github gefällt dafür.
Deadwiki 0.1.17
Schlankes Wiki für den Privatgebrauch
Quelle: https://github.com/xvxx/deadwiki
Lizenz: MIT
Alternativen: Wackowiki, Lionwiki
Viele Wiki-Lösungen setzen neben einem Webserver eine eigene Datenbank voraus. Das in Go geschriebene, schlanke Deadwiki dagegen bringt seinen eigenen Webserver mit und nutzt zum Verwalten der Wiki-Artikel das Dateisystem statt einer Datenbank. Die Github-Seite stellt Binaries für Linux bereit, sodass man sofort loslegen kann.
In der Voreinstellung lauscht Deadwiki auf allen Schnittstellen an Port 8000 auf eingehende Verbindungen; die Schalter »-H« und »-p« bestimmen ein alternatives Interface und einen anderen Port. Als letzte Option geben Anwender das Verzeichnis an, in dem die Wiki-Artikel landen sollen; andernfalls speichert das Tool im aktuellen Ordner. Deadwiki arbeitete mit Git zusammen. Nach dem Einrichten des Repositorys ruft der Benutzer »dead -s« auf, und das Tool synchronisiert automatisch.
Deadwiki speichert die Artikel im Markdown-Format, im Webbrowser lassen sie sich per Klick auf den Titel erreichen. Über den Link »new« entstehen neue Beiträge. Der einfache Editor unterstützt beim Schreiben in der Markdown-Syntax. Geöffnete Artikel bearbeiten Nutzer über »edit«. Für mehr Ordnung lassen sich die Beiträge händisch in Unterverzeichnissen sortieren, für deren Namen Deadwiki jedoch weder Leer- noch Sonderzeichen unterstützt.
Wegen der fehlenden Rechteverwaltung eignet sich Deadwiki nur für den Privatgebrauch, macht dort aber eine gute Figur. Der automatische Abgleich mit Git überzeugt.
SKM 0.8.1
SSH-Schlüssel verwalten
Quelle: https://github.com/TimothyYe/skm
Lizenz: MIT
Alternativen: Open SSH
Wer entfernte Systeme per SSH betreut, möchte vielleicht etwas Ordnung in die entsprechende Schlüsselsammlung bringen. Dabei hilft das Go-Tool SKM, dass der Nutzer mit dem Aufruf »skm -i« initialisiert. Es legt dann im Hintergrund das Verzeichnis »~/.skm/« an und verschiebt in »~/.ssh/« vorhandene Schlüssel dorthin. Die SSH-Konfigurationsdateien »authorized_keys«, »config« und »known_hosts« bleiben am ursprünglichen Ort.
Ein neues SSH-Schlüsselpaar entsteht mit dem Kommando »create«, wozu SKM auf Ssh-keygen zurückgreift. Der Anwender gibt einen eindeutigen Namen ein und setzt über »-t« und »-b« das Crypto-System und die Schlüssellänge. Andernfalls verwendet SKM die Voreinstellungen von Ssh-keygen. Der Befehl »skm ls« listet alle Schlüssel auf; ein Pfeil vor einem Eintrag zeigt den Default-Schlüssel an. Mit »use« lässt sich der Standard-Key wechseln. SKM setzt dann einen symbolischen Link auf die Dateien »~/.ssh/id_rsa« und »~/.ssh/id_rsa.pub«.
Das Kommando »display« gibt den aktuellen öffentlichen Schlüssel aus; »copy« transferiert ihn auf einen entfernten Rechner. Die Kommandos »backup« und »restore« realisieren eine rudimentäre Sicherungslösung für die verwalteten Schlüssel. Die landen entweder als Tar-Archive im Home-Verzeichnis oder werden von Restic gesichert. Nicht mehr benötigte Schlüssel entfernt »delete« aus der SKM-Verwaltung.
Gut gefällt die ausführliche Anleitung unter Github. Vom Backup/Restore-Feature profitieren streng genommen nur Restic-Anwender, aber die vorbereiteten Tar-Archive sichern auch andere Tools.
Sysbox 0.6.0
Ein Tool, viele Funktionen
Quelle: https://github.com/skx/sysbox
Lizenz: GPLv2
Alternativen: GNU-Tools
Ein Werkzeug, sie zu knechten, sie alle zu finden: Das könnte das Motto von Sysbox sein. Das in Go implementierte Tool fasst 27 verschiedene Funktionen zusammen, vom einfachen Taschenrechner über Auswahlmenüs für Dateien und die Standardeingabe bis hin zur Syntaxkontrolle für JSON- und YAML-Dateien. Dazu kommen ein rudimentärer Webserver, ein Finger-Dienst sowie ein Passwortgenerator und mehr.
Alle Funktionen lassen sich über Unterbefehle erreichen. Mit »choose-file« öffnet Sysbox etwa eine einfache Ncurses-Oberfläche, die alle Dateien im aktuellen Verzeichnis auflistet. Anwender können die Liste filtern, alle ausgewählten Files auf »STDOUT« ausgeben und über »-execute« einen Befehl definieren, der dann ausgeführt wird. Das Pendant für die Standardeingabe heißt »choose-stdin«.
Für Netzwerkarbeiten stehen gleich mehrere Kommandos bereit. So startet »httpd« einen einfachen Webserver. Der Befehl »http-get« lädt den Inhalt einer URL herunter, »torrent« ruft einen Bittorrent-Client auf, und »ssl-expiry« überprüft die Gültigkeit von SSL-Zertifikaten. Neue Kennwörter erzeugt »make-password«. Über diverse Schalter steuert der Nutzer deren Länge sowie die Verwendung von Ziffern und Sonderzeichen. Eine Liste aller IP-Adressen des lokalen Systems liefert »ips«.
Sysbox bietet eine Reihe interessanter Funktionen und integriert sich gut in eigene Skripte. Admins finden hier eine mächtige Werkzeugsammlung, die kaum Wünsche offen lässt. (Uwe**Vollbracht/hej)











