Aus Nutzersicht

Die Installation der Software unterscheidet sich nicht von der Serverseite, wobei fehlende Systemnutzer oder Verzeichnisse hier keine Rolle spielen. Zur Nutzung schaltet man dem SSH-Kommando nur einen Proxy vor. Dazu genügt eine kleine Änderung an »~/.ssh/config« :

Host *
ProxyCommand monkeysphere-ssh-↩
proxycommand %h %p

Das bewirkt den Aufruf des Kommandos »monkeysphere-ssh-proxycommand« für jeden Rechner, der per SSH erreicht werden soll. Natürlich lässt sich die Direktive auch auf einige Hosts beschränken,selbst global gesetzt kommt es aber nicht zu Problemen mit "normalen" SSH-Servern.

Weiterhin benötigt Monkeysphere seinen eigenen GPG-Unterschlüssel, der per »monkeysphere gen-subkey« erzeugt werden kann. Sofern noch nicht geschehen, muss nun mit Hilfe von GnuPG der Schlüssel des Admins signiert, und ein entsprechender Trustlevel zugewiesen werden:

gpg --sign-key F1C2F114
gpg --edit-key F1C2F114

Da Schlüssel erneuert und wiederrufen werden können, muss der lokale Schlüsselbund nun natürlich ständig aktuell sein. Hierbei bietet sich ein einfacher Cronjob an, der periodisch das Kommando »gpg --refresh-keys« aufruft, und Änderungen automatisch einpflegt. Optional lässt sich der Monkeysphere-Subkey in Verbindung mit dem »ssh-agent« nutzen. Hierzu dient das Kommando »monkeysphere subkey-to-ssh-agent« , das GnuTLS allerdings in Version 2.6 erwartet, was noch nicht alle aktuellen Distributionen mitbringen.

Hat alles geklappt, muss beim ersten Kontakt mit dem neuen Server kein Fingerprint mehr bestätigt oder ein Passwort eingegeben werden. Zukünftig spielt es auch keine Rolle mehr, ob der Server neu installiert, oder aus anderen Gründen mit einem neuen Host-Schlüssel versehen wird. Auch ein durch den Benutzer widerrufener und entsprechend neu erzeugter Schlüssel ist für den Administrator vollkommen transparent. So lange dafür Sorge getragen wird, dass die aktuellen Schlüssel auf einem Keyserver abgelegt und abrufbar sind, administriert sich das System nahezu selbständig.

Fazit

Dank nicht vollständiger Installationsroutine des Tarballs in Verbindung mit einer etwas lückenhaften Dokumentation kann es derzeit noch ein etwas steiniger Weg bis zum Betrieb sein. Sofern möglich, sollte daher auf die fertig bereitgestellten Pakete für Debian oder den FreeBSD-Port zurückgegriffen werden. Auch danach ist das Verfahren zunächst einmal ungewohnt, gerade GnuPG-Poweruser finden sich aber sehr schnell zurecht.

Derzeit wenig praktikabel ist der Betrieb in Umgebungen, in denen auch nicht-Unixoide Clientsysteme zum Einsatz kommen. Neben zwei aus C-Code kompilierten Binaries basiert die Software vollständig auf Bash-Scripten, und auch wenn sich eine solche Umgebung unter Windows beispielsweise mit Hilfe von Cygwin [6] nachbilden lässt, ist fraglich, ob sich der Aufwand hierfür lohnt.

Trotz allem könnte Monkeysphere recht interessant gerade für verteilte Projekte sein, die gemeinsam Zugang zu einem oder mehreren SSH-Servern benötigen. Anstatt ständig öffentliche SSH-Keys nachzupflegen, oder Passwörter (günstigenfalls ohnehin schon GnuPG-verschlüsselt) herumzuschicken, basiert diese Lösung auf einem Web-of-Trust. Sollte ein Schlüssel, egal ob auf Client- oder Serverseite in die falschen Hände geraten, muss dieser "nur" noch widerrufen werden, um ihm seine Gültigkeit zu entziehen. Die Verbindung über die PKI macht es möglich. Ein Security-Debakel wie die vorhersagbaren Schlüssel des Debian-Projekts wäre somit erheblich einfacher zu lösen gewesen.

Der Autor

Christian Ney beschäftigt sich als Systems Engineer Security für die Computacenter AG & Co. oHG tagtäglich mit Netzwerk-, Security- und Firewallthemen.

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

Bug in OpenSSH eröffnet Sicherheitslücke

Vergessener Code im OpenSSH-Client eröffnet die Möglichkeit, geheime Schlüssel auszulesen. 

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2021