Uberspace Host Manifest

Posted by mic on Thursday, April 30, 2015

Als wir angefangen haben, alle unsere Uberspace-Hosts mit Ansible zu managen, hat uns etwas genervt: das manuelle Abgleichen von SSH-Fingerprints.

Da dachten wir, man könnte ja mal die Liste der Uberspace-Hosts mit ihren IP-Adressen und SSH-Fingerprints automatisch generieren. Diese kann man nun herunterladen, die Signatur überprüfen und die Liste der bekannten SSH-Hosts übernehmen.

Dies kommt nun auch dir zu Gute; denn so hast du auf einen Schlag alle Uberspace-Hosts vorliegen und kannst dich fröhlich auf jeden davon verbinden – ohne nervige Fingerprint-Abfrage.

Gerade für User, die mehrere Uberspaces betreiben und häufiger neue Hosts ansteueren, kann das praktisch sein. Außerdem gibt es noch ein bisschen mehr Sicherheit, denn die Fingerprints werden per OpenPGP signiert, so dass man sich eigentlich gar nicht mehr auf die HTTPS-Verbindung verlassen muss, die den jeweiligen Fingerabdruck aus dem Uberspace Dashboard gesichert überträgt.

Der verwendete OpenPGP-Schlüssel (von hallo@uberspace.de) hat folgenden Fingerprint:

D857 7A7E A2A6 7DE6 055C  58F9 694B 6491 B723 9DE6

Das Uberspace Host Manifest kann man mit ein paar Shell-Eingaben einbinden. Dies geht zum Beispiel folgendermaßen. (Achtung: die Datei hosts wird dabei überschrieben!)

[elise@amnesia ~]$ curl -O https://uberspace.de/hosts
[elise@amnesia ~]$ curl -O https://uberspace.de/hosts.asc
[elise@amnesia ~]$ gpg < hosts.asc
... schauen, ob die Signatur stimmt ...
[elise@amnesia ~]$ cat hosts >> $HOME/.ssh/known_hosts

Wenn neue Uberspace-Hosts angelegt werden, fügen wir sie unten an und signieren die Liste neu. In dem Fall musst du natürlich noch die Liste neu herunterladen, die Signatur überprüfen und die neuen Hosts in deine Liste übernehmen. Aber das bekommst du bestimmt hin.