Startseite>Self-Hosting-Lösung YunoHost für die private Cloud
Aus Raspberry Pi Geek 10/2017

Self-Hosting-Lösung YunoHost für die private Cloud

© Volodymyr Krasjuk, 123RF

Mit einfachen Mitteln

Ferdinand Thommes

YunoHost bietet eine große Anzahl von Diensten auf einer bewährten Debian-Server-Plattform, die Sie selbst hosten können.

Der Erfolg des Raspberry Pi basiert auf einer Kultur des Selbstmachens mit einfachen Mitteln. YunoHost [1] passt perfekt in dieses Ökosystem. Es reiht sich ein in Projekte wie Freedom Box [2], Sandstorm [3], Ubos [4] oder das kürzlich eingestellte ArkOS [5]. Alle davon versetzen den Anwender in die Lage, einen Server unter eigener Kontrolle zu betreiben und darauf möglichst unkompliziert verschiedene Webdienste sicher zu installieren.

YunoHost basiert auf Debian und steht für die Architekturen i386, amd64, PowerPC und ARM in Version 2.5 zum Herunterladen bereit. Eine Demo-Seite [6] bietet die Möglichkeit, Benutzerschnittstelle und Backend für die Administration vorab zu testen. Das System bringt alle benötigten Programme für einen Server vorkonfiguriert mit. Darauf sind bereits einige Dienste installiert, andere stehen als Apps zur Installation per Mausklick bereit.

Gleich nach dem Setup des Betriebssystems bietet dieses als Grundlage für die zu installierenden Dienste Nginx [7] als Webserver, MariaDB als Datenbank, den Mail Transfer Agent Postfix [8] und den IMAP-Server Dovecot [9] samt Spamfilter Rspamd [10]. Der XMPP-Server Metronome IM [11], OpenLDAP [12], Dnsmasq [13] und das transparente Authentifizierungssystem SSOwat [14] für Single-Sign-On sind ebenso vorinstalliert wie Let’s Encrypt [15] zum Erstellen von SSL-Zertifikaten.

Gut ausgestattet

Das Angebot offizieller Apps für verschiedenste Webdienste beläuft sich derzeit auf 21 Pakete [16], die Sie mit nur einem Klick installieren. Darunter befinden sich neben bekannten Diensten wie WordPress, Nextcloud, Roundcube oder Dokuwiki auch weniger bekannte wie die Pocket-Alternative Wallabag [17], der CalDAV- und CardDAV-Server Baikal [18], der Webmailer Rainloop [19] sowie der verschlüsselte Paste-Service ZeroBin [20].

Die Liste der von der Community entwickelten und betreuten inoffiziellen Apps [21] fällt wesentlich länger aus: Sie umfasst rund 100 Programme wie etwa einen eigenen Sync-Server für Firefox [22], den Git-Service Gogs [23], den CI-Server Jenkins [24], Mattermost [25] als Alternative zu Slack, die Foto-Galerie Piwigo [26] und viele andere mehr.

Damit ist aber immer noch nicht Schluss: Es gibt noch die Abteilung Apps in Progress, deren Apps Sie zwar testen dürfen, aber ohne Garantie, dass sie bereits zuverlässig laufen oder die Installation überhaupt gelingt.

Welche Plattform?

Auf welcher Plattform YunoHost sich sinnvoll einsetzen lässt, richtet sich nach den Diensten, die Sie bereitstellen möchten. Der Raspberry Pi 3, auf dem die Software im Test lief, hat – bedingt durch die Bauart – seine Grenzen. Von daher stellt sich die Frage, ob Dienste wie WordPress, Nextcloud oder Dokuwiki darauf dauerhaft gut aufgehoben sind. Die Software läuft aber selbst auf den früheren Ausgaben des kleinen Rechners. Hier hängt die Auswahl jedoch noch mehr von den künftigen Aufgaben ab.

Vieles hängt individuell davon ab, wie viele Daten Sie lagern und wie viele Sie hin und her bewegen. Beim Durchsatz zeigen sich recht schnell die Grenzen des RasPi, ebenso bei der Bandbreite seines Ethernet-Anschlusses [27]. Für einen Test der gewünschten Ausstattung an Diensten eignet sich der kleine Rechner in jedem Fall. Ansonsten besteht die Möglichkeit, die Software auf einem lokalen Rechner oder einem V-Server bei einem professionellen Hoster zu installieren. Läuft auf dem betreffenden Rechner bereits Debian, integrieren Sie das Programm per Skript ins System [28].

Eine virtuelle Maschine, bereitgestellt von Virtualbox, Vmware oder KVM, eignet sich ebenfalls als Basis für einen Test. Im Gegensatz zum herkömmlichen Einsatz der Network Address Translation (NAT) kommt hier, da Sie später per Interface zugreifen, der Brückenmodus zum Einsatz. Ein Image für Vagrant [29] steht ebenfalls bereit.

Debian als Basis

Für die Installation laden Sie zunächst das Image für die ARM-Plattform herunter und schieben es auf eine SD-Karte vorzugsweise der Class 10 mit mindestens 8 GByte Kapazität. Achten Sie dabei penibel darauf, das richtige Device auszuwählen, da Sie sonst die Daten auf einer im Rechner verbauten Partition verlieren. Zum Schreiben der Daten eignet sich der Befehl Dd ebenso wie grafische Werkzeuge wie Etcher unter Linux oder Rufus unter Windows. Die entsprechende ARM-Version für den RasPi basiert auf Raspbian 8 “Jessie”.

Nach dem Kopieren des Images auf die SD-Karte stecken Sie diese in den vorgesehenen Einschub des RasPi und verbinden den Mini-Rechner mit einem Ethernet-Kabel, dem Netzteil und wahlweise Display und Tastatur. Rund 90 Sekunden dauert der Bootvorgang, dann ermitteln Sie die IP-Adresse des RasPi.

Haben Sie ein Display angeschlossen, zeigt der Rechner die IP-Adresse bereits an. Ohne angeschlossenes Display hilft der Befehl hostname -i auf der Konsole des Rechners. Alternativ erfahren Sie die Adresse über die Weboberfläche des Routers. Unter Windows eignet sich das Programm Advanced IP Scanner [30] dazu, im lokalen Netz angemeldete IP-Adressen aufzuzeigen. Ähnliches erledigen Sie unter Linux mit Bordmitteln (Listing 1).

Listing 1

 

$ sudo arp-scan --localnet | grep Raspberry

Nun gilt es noch, die Installation abzuschließen. Ohne Display fahren Sie per SSH fort oder rufen in einem Browser die Adresse http://RasPi-IP auf, um grafisch fortzufahren. Da YunoHost standardmäßig ein selbst erstelltes Zertifikat verwendet, erscheint im Browser der Hinweis, die Verbindung sei nicht sicher. Das dürfen Sie im privaten Umfeld ignorieren und eine Ausnahme erlauben, um in die Oberfläche zu gelangen (Abbildung 1).

Abbildung 1: Der erste Blick in das Backend zeigt alle Kategorien auf, darunter den Bereich, in dem Sie die Dienste auf dem Host konfigurieren.

Abbildung 1: Der erste Blick in das Backend zeigt alle Kategorien auf, darunter den Bereich, in dem Sie die Dienste auf dem Host konfigurieren.

Möchten Sie anderen Anwendern von außen Zugriff auf Dienste gewähren, sollten Sie dazu eine eigene Domain nutzen. Dazu erstellen Sie mit dem Befehl yunohost domain cert-install ein SSL-Zertifikat mit Let’s Encrypt und installieren es, sodass es künftig die Verbindung per HTTPS absichert. Das setzt aber voraus, dass der Domain-Registrar zuvor den A-Record anpasst, damit dieser auf die IP-Adresse der Domain verweist. Danach dauert es in der Regel 24 Stunden oder länger, bis der Wechsel propagiert ist.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 6 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
€0,99 – Kaufen
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland