Optimiert und abgesichert: NextcloudPi als RasPi-Image

Konfiguration

Für die zentrale Konfiguration des Systems setzt NextcloudPi ein ähnliches Werkzeug ein wie Raspbian: Mit sudo nextcloudpi-config steuern Sie die Funktionen, die den Spezialisten von einer Standardinstallation abheben (Abbildung 3). Für einen Zugriff auf den Cloud-Speicher von außerhalb des lokalen Netzwerks (also über ein Smartphone mit der Nextcloud-App) sollten Sie zunächst eine Weiterleitung der Ports 80 (HTTP) und 443 (HTTPS) vom WLAN-Router auf den Raspberry Pi einrichten.

Abbildung 3: ein spezielles Werkzeug hilft Ihnen dabei, die spezifischen Einstellungen des System zu konfigurieren.

Anschließend richten Sie über die Option free Dynamic DNS provider (need account) in der Konfiguration mit No-IP eine DynDNS-Domain, sodass Sie Ihren eigenen Cloud-Speicher immer unter einer festen Domain wie zuhause.ddns.net erreichen. Eventuell bietet aber der Router bereits eine solche Funktion an.

Funktionieren die Port-Weiterleitung und der DynDNS-Name, holen Sie sich über Let's Encrypt: automatic signed SSL certificates ein kostenloses Let's-Encrypt-Zertifikat (Abbildung 4). Das sorgt für eine ordentlich verschlüsselte Verbindung, sowie dafür, dass sich der Browser oder ein Client sich beim Aufruf der Seite nicht über ein fehlerhaftes Zertifikat beschweren. Die weiteren Optionen in der Konfiguration beziehen sich auf Fail2Ban sowie Limits der Installation wie die maximale Dateigröße bei Uploads oder den Ablageort der Daten.

Abbildung 4: Die kostenlosen Zertifikate von Let's Encrypt sorgen dafür, dass Server und Client sicher und verschlüsselt kommunizieren.

Abgeriegelt

Haben Sie eine Portweiterleitung eingerichtet und ist der RasPi immer unter einer bestimmten DynDNS-Adresse zu erreichen, dann steht er wie jeder andere Server im Internet. Dabei hinkt er zwar in Sachen Leistung und Anbindung einem echten Root-Server hinterher (eine DSL-Leitung bietet besonders in Sachen Upload deutlich weniger Bandbreite als die Standleitung eines Rechenzentrums), doch er ist denselben Gefahren ausgesetzt wie jeder andere Rechner.

Ein beliebter Angriffspunkt sind Brute-Force-Angriffe auf SSH oder die auf dem Webserver laufenden Anwendungen. Dabei gerät der Server in der Regel nicht gezielt ins Visier der Angreifer; stattdessen beharken diese potenzielle Ziele wahllos in kompletten IP-Bereichen.

Hinter den Angriffen steckt in der Regel keine große Magie: Die Angreifer probieren einfach so lange automatisiert bekannte Kombinationen aus Benutzername und Passwort durch (bei einem RasPi etwa pi/raspberry) oder variieren beliebte Namen und Passwörter, etwa anhand eines Wörterbuchs, bis sie einen Treffer landen.

Mit Fail2Ban verhindern Sie das, indem das Tool über die Protokolldateien gescheiterte Logins verfolgt und entsprechende IP-Adressen nach bestimmten Kriterien einbremst. Je öfter ein Client versucht, sich mit falschen Daten einzuloggen, desto länger wartet das System, bis es einen weiterer Versuch zulässt. Am Ende blockiert Fail2Ban diese Adresse meist komplett.

Sie aktivieren diesen Schutz zunächst über die Option Brute force protection in der Konfiguration. Die vom System getroffenen Vorgaben passen in der Regel, Sie sollten an dieser Stelle nichts ändern. Anschließend ist das System automatisch scharfgeschaltet und überwacht den SSH-Server sowie die Nextcloud-Instanz (Listing 1).

Listing 1

 

$ sudo fail2ban-client status
Status
|- Number of jail:      2
`- Jail list:           ssh, nextcloud

Den aktuellen Status für einen Dienst fragen Sie ab, indem Sie dessen Namen als Argument übergeben. Im Beispiel aus Listing 2 zeigt dieser noch keine Auffälligkeiten. Auf dem SSH-Server gab es jedoch von der IP 192.168.111.199 bereits zu viele gescheiterte Logins, sodass diese gesperrt wurde. Sollte es sich dabei um einen Fehler handeln, machen Sie diese Maßnahme wieder rückgängig (Listing 3).

Listing 2

 

$ sudo fail2ban-client status nextcloud
Status for the jail: nextcloud
|- filter
|  |- File list:        /var/www/nextcloud/data/nextcloud.log
|  |- Currently failed: 0
|  `- Total failed:     0
`- action
   |- Currently banned: 0
   |  `- IP list:
   `- Total banned:     0
$ sudo fail2ban-client status ssh
Status for the jail: ssh
|- filter
|  |- File list:        /var/log/auth.log
|  |- Currently failed: 0
|  `- Total failed:     6
`- action
   |- Currently banned: 1
   |  `- IP list:       192.168.111.199
   `- Total banned:     1

Listing 3

 

$ sudo fail2ban-client set ssh unbanip 192.168.111.199

Im Test funktionierte das mit der aktuellen Version von NextCloudPi jedoch nur für den SSH-Server in vollem Umfang. In Bezug auf das Webfrontend verzögerte Fail2Ban zwar weitere Login-Versuche subjektiv, doch zum kompletten Sperren der IP-Adresse kam es nie.

Bei der Abfrage des Status antwortete der Client immer Currently failed: 0, hatte also nie ein gescheitertes Login verbucht. Hier gilt es also, noch nachzubessern. Sie sollten daher auf jeden Fall das Standard-Login des Admin-Users ändern und dafür sorgen, dass die Nutzer des Cloud-Speichers sichere Passwörter verwenden.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Aktuelle Ausgabe

02/2019
Neue Energien

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Scheibchenweise

    Zu den Stärken von Sonic Pi gehört es, mit wenigen Zeilen Code Samples dynamisch auszuwählen und zu zerlegen.

  • Unter Strom

    Für einen kleinen Spannungsmesser wie den INA3221 gibt es viele Einsatzmöglichkeiten. Wir zeigen, wie Sie den flexiblen Baustein richtig verdrahten.

  • Vermittlungsstelle

    Fischertechnik-Modelle bieten sich zum Fernsteuern an. Mit dem Ftduino schlagen Sie die Brücke zwischen dem RasPi und dem Technik-Spielzeug.

  • Durchgeschlängelt

    Mit den M0-Boards steigen Sie unkompliziert in die Welt der Mikrocontroller ein – ganz ohne C-Kenntnisse.

  • Gesiebt und gefiltert

    Filter und Werbeblocker einzurichten ist besonders auf Smartphones aufwendig. Den eBlocker hingegen schließen Sie einfach nur an Ihren Router an.

  • Es werde Licht

    Wollen Sie bei beginnender Dämmerung nicht ständig die Helligkeit der heimischen Beleuchtung nachregeln, überlassen Sie das einfach einem RasPi – der macht es automatisch.

  • Energiekontrolle

    Der Gesetzgeber erschwert das Direktvermarkten von Strom durch technische Hürden: So muss sich die Einspeisung etwa aus der Ferne abschalten lassen. Der RasPi löst das Problem.

  • H<->2<->-Power

    Gilt es, Energie aus einer regenerativen Quelle zu speichern, erweist sich die Kombi aus einer Brennstoffzelle und dem RasPi als ideale Lösung.

  • Kleine Wolke

    Lokale Cloud-Lösungen im Heimnetz finden immer mehr Nutzer. Mit dem RasPi und Seafile haben Sie eine Lösung zur Hand, die selbst professionellen Ansprüchen genügt.

  • Planvoll verdrahtet

    Die Leiterplattendesign-Software KiCad leistet trotz einer etwas umständlichen Bedienung auch Hobbybastlern gute Dienste.