1. Private Cloud
Die Cloud hat sich als Dateiablage für Dokumente, Fotos etc. etabliert, auf die man von überall Zugriff hat. Zu den bekannten Cloud-Anbietern zählen Dropbox, Google Drive, iCloud und Co. Das Dilemma: Die Nutzung kommerzieller Anbieter ist zwar bequem, geht allerdings mit dem Verlust der Datenhoheit einher – dabei gibt es Alternativen, die sich mit wenig Aufwand in das eigene Heimnetz integrieren lassen.
Nextcloud ist eine quelloffene und freie Software, die neben dem Speichern von Daten auf einem eigenen Server ebenfalls weitere Funktionen bietet. Über Apps/Erweiterungen lassen sich so Kalender, Adressbuch, Notizen und mehr nutzen. Dabei behält der Nutzer stets die vollständige Kontrolle über seine Daten. Über diverse Clients können die Daten dann zwischen beliebig vielen Systemen synchronisiert werden.
In der Artikelserie »NextCloudPi« möchte ich euch aufzeigen, wie ihr mit einem Raspberry Pi und dem Open-Source-Projekt NextCloudPi eine eigene Cloud in eurer Heimnetzwerk integriert. Damit eure Nextcloud dann auch von »außen« sicher erreichbar ist, wird der Zugang in das Heimnetzwerk per Virtual Private Network (VPN) erfolgen. In einem weiteren Teil werden wir uns dann dem Update-Prozess auf eine neuere (NextCloudPi-)Version widmen. So könnt ihr die Vorteile einer Cloud genießen, ohne persönliche Daten in fremde Hände abzugeben.
2. Hardware
Der Betrieb von Nextcloud auf dem Raspberry Pi funktioniert ab dem Raspberry Pi 2. Für eine bessere Performance solltet ihr jedoch mindestens einen Raspberry Pi 3 B(+) oder besser einen Pi 4 (2 GB RAM und mehr) verwenden. Für die Artikelserie verwende ich die folgenden Bauteile:
- Raspberry Pi 3 Modell B | 1024 MB RAM (inkl. WLAN)
- Offizielles Micro USB Netzteil 2A – 5V für Raspberry Pi 3
- Offizielles Gehäuse für Raspberry Pi 3 (himbeer / weiß)
- SanDisk Ultra Android microSDHC 16GB bis zu 80 MB/Sek Class 10
- 16 GB Transcend USB-Stick
- Ethernet-Kabel
Ein Bildschirm oder externe Tastatur sind im Normalfall nicht notwendig. Nach dem Aufspielen des NextCloudPi-Images erfolgt die Konfiguration über das Webinterface oder optional über eine Secure Shell (SSH).
3. Basisinstallation
Für die Installation ist mindestens eine microSD-Karte mit 8 Gigabyte erforderlich. Über einen externen USB-Stick oder -Festplatte könnt ihr die Speicherkapazität dann erweitern und dort eure persönlichen Daten ablegen – getrennt vom System bzw. der microSD-Karte. Nachfolgend sind alle Schritte beschrieben, mit denen NextCloudPi auf die microSD-Karte installiert wird.
Unterstütze den Blog mit einem Dauerauftrag!
Unabhängig. Kritisch. Informativ. Praxisnah. Verständlich.
Die Arbeit von kuketz-blog.de wird vollständig durch Spenden unserer Leserschaft finanziert. Sei Teil unserer Community und unterstütze unsere Arbeit mit einer Spende.
3.1 NextCloudPi-Image laden und entpacken
Zunächst wird das NextCloudPi-Image auf den Rechner geladen. Klickt auf den Link und wählt anschließend unter Assets (neuestes Datum) die Datei NextCloudPi_RaspberryPi_vXXX.zip
aus. Darin befindet sich das neueste Image für den Raspberry Pi mit der Endung zip
.
Das gepackte Image muss zunächst entpackt werden:
- Windows: Mit 7Zip oder Winrar entpacken
- Linux: Je nach Distribution ist ein grafisches Entpack-Tool bereits mitgeliefert
- macOS: Anklicken und auspacken
- Linux (Terminal):
unzip NextCloudPi_RaspberryPi_vXXX.zip
- macOS (Terminal):
unzip -xvf NextCloudPi_RaspberryPi_vXXX.zip
Steckt anschließend die SD-Karte in euren Rechner bzw. das Lesegerät.
3.2 Image auf SD-Karte transferieren
Anschließend muss das entpackte Image (bspw. NextCloudPi_RaspberryPi_v1.50.3.img) auf die SD-Karte übertragen werden. Am einfachsten funktioniert das mit Etcher – einem quelloffenen Tool für Windows, Linux und macOS.
- Etcher: Zunächst wählt ihr
Select Image
und navigiert dann zum Ordner, in dem sich das entpackte Image befindet und wählt es aus. Anschließend wählt ihr das Ziellaufwerk, in unserem Fall also die eingelegte SD-Karte. Mit einem Mausklick aufFlash
wird der Vorgang gestartet. - Linux (Terminal):
sudo dd bs=4M conv=fsync if=NextCloudPi_RaspberryPi_v1.50.3.img of=/dev/sdX
– stellt unbedingt sicher, dass ihr bei/dev/sdX
das korrekte Device/Gerät angeben habt (also die SD-Karte). Eine ausführliche Beschreibung zur Installation über das Linux-Terminal findet ihr hier. - macOS (Terminal):
sudo dd bs=1m if=NextCloudPi_RaspberryPi_v1.50.3.img of=/dev/rdiskN; sync
– stellt unbedingt sicher, dass ihr bei/dev/rdiskN
das korrekte Device/Gerät angeben habt (also die SD-Karte). Eine ausführliche Beschreibung zur Installation über das macOS-Terminal findet ihr hier.
3.3 RaspberryPi anschließen
Nachdem der Flash-Vorgang abgeschlossen ist, wird die SD-Karte vom Rechner entfernt und in das vorgesehene Einschubfach im RaspberryPi gesteckt. Verkabelt den RaspberryPi nun vollständig und schließt ihn mit dem Netzwerk- bzw. Ethernet-Kabel direkt an einem freien Port an eurem Router an.
3.4 Im Netzwerk erkennen
Ihr könnt den Raspberry Pi nun zum ersten Mal starten. Im Normalfall sollte euer Router einen bestimmten IP-Adressbereich reserviert haben, um mittels DHCP eine IP-Adresse an den Pi zu vergeben. Da die IP-Adresse dynamisch vergeben wird, müsst ihr natürlich herausfinden über welche IP-Adresse, der Pi nun erreichbar ist:
- Router-Interface: Über das Router-Interface solltet ihr die IP-Adresse ablesen können. Bei einer Fritz!Box findet ihr die vergebene Adresse unter
Heimnetz -> Netzwerk
. Der Gerätename lautetnextcloudpi
. Mit einem Klick auf den Stift am Ende der Zeile könnt ihr die IP-Adresse ändern. - nmap: Mit nmap einfach kurz das lokale LAN scannen: nmap 192.168.1.0/24
3.5 Zugriff auf das Webinterface
Über die IP-Adresse oder den DNS-Namen kann anschließend der Zugriff auf das NextCloudPi-Webinterface erfolgen. Gebt dazu entweder die IP-Adresse im Browser ein:
https://192.168.50.10
oder
https://nextcloudpi
Nach der Eingabe werdet ihr je nach Browser dann erstmal mit einer Sicherheitswarnung begrüßt:
Diese Fehlermeldung/Sicherheitswarnung könnt ihr zunächst ignorieren bzw. müsst eine Ausnahme anlegen, damit ihr auf das Webinterface zugreifen könnt. Klickt dazu (je nach Browser) einfach auf Erweitert
und anschließend auf Risiko akzeptieren und Fortfahren
.
Die Warnung erfolgt deshalb, weil NextCloudPi ab Werk kein eigenes TLS-Zertifikat mitbringt bzw. keines, das von einer (dem Browser bekannten) Zertifizierungsstelle (CA) signiert wurde. Selbst signierte Zertifikate werden von den Browsern üblicherweise mit einer Fehlermeldung/Sicherheitswarnung quittiert.
4. NextCloudPi: Initiale Konfiguration
Bei erstmaligem Aufruf des Webinterfaces zeigt euch NextCloudPi den Standard-Benutzernamen ncp
und zwei unterschiedliche Passwörter an. Sichert alle Informationen in eurem Passwort-Manager. Anschließend klickt ihr auf Aktivieren
:
Danach begrüßt euch entweder der Einrichtungsassistent oder die Startseite des Dashboards. Bevor ihr beginnt, die Nextcloud zu nutzen, solltet ihr den Einrichtungsassistenten starten/abschließen. Ihr könnt ihn entweder über das Menü erreichen NextCloudPi -> Zauberstab
oder alternativ über die Adresse:
https://IP-NextCloudPi:4443/wizard/
Sofern ihr einen externen USB-Datenträger angeschlossen habt, trefft ihr unter dem Menüpunkt USB Configuration
die nachfolgenden Entscheidungen. Achtung: Der Datenträger wird dabei vollständig gelöscht:
Beim Menüpunkt External access
besteht die Möglichkeit, eure Nextcloud von »außen«, also aus dem Internet (bzw. von unterwegs), erreichbar zu machen. Aus Sicherheitsgründen würde ich hier No
wählen. Der direkte Zugriff aus dem Internet auf eure Nextcloud ist zwar bequemer, geht aber auch mit einem vermeidbaren Risiko einher. In einem weiteren Teil der Artikelserie »NextCloudPi« wird der Zugriff auf die Nextcloud per VPN realisiert. Der Zugriff von »außen« ist also erst dann möglich, wenn ihr euch per VPN auf eurem Router (oder vergleichbarem Gerät) eingewählt habt. Beim Bekanntwerden einer kritischen Sicherheitslücke, die sich eventuell auch remote bzw. aus der Ferne ausnutzen lässt, müsst ihr dann nicht sofort ins Schwitzen kommen. Dann habt ihr genügend Zeit, um erforderliche (Sicherheits-)Aktualisierungen in Ruhe einzuspielen.
Nach diesem Schritt ist der Einrichtungsassistent beendet:
NextCloudPi is ready!
5. Absicherung | Hardening
5.1 SSH-Zugriff
Zunächst ermöglichen wir den Zugriff auf den RaspberryPi per Secure Shell (SSH):
https://IP-NextCloudPi:4443/
Wählt aus dem Menü den Punkt NETWORKING -> SSH
:
Setzt ein Häkchen bei Active
und ändert anschließend das Passwort. Mit einem Klick auf Apply
bestätigt ihr den Vorgang. Danach könnt ihr euch per SSH auf dem RaspberryPi einloggen:
ssh pi@IP-ADRESSE
Nach der Authentifizierung wird euch NextCloudPi erneut zu einem Passwortwechsel auffordern.
5.2 Firewall aktivieren
Über das Menü wählt ihr SECURITY -> UFW
und aktiviert die Firewall (ufw):
Nach der Aktivierung über das Webinterface kontrollieren wir via SSH-Zugang (siehe Ziffer 5.1) den Status der Firewall:
sudo ufw status numbered
Der Output sieht dann wie folgt aus:
To Action From -- ------ ---- [ 1] 80/tcp ALLOW IN Anywhere [ 2] 443/tcp ALLOW IN Anywhere [ 3] 4443/tcp ALLOW IN Anywhere [ 4] 22 ALLOW IN Anywhere [ 5] DNS ALLOW IN Anywhere [ 6] Samba ALLOW IN Anywhere [ 7] 2049 ALLOW IN Anywhere [ 8] Anywhere ALLOW IN 192.168.0.0/16/udp [ 9] 80/tcp (v6) ALLOW IN Anywhere (v6) [10] 443/tcp (v6) ALLOW IN Anywhere (v6) [11] 4443/tcp (v6) ALLOW IN Anywhere (v6) [12] 22 (v6) ALLOW IN Anywhere (v6) [13] DNS (v6) ALLOW IN Anywhere (v6) [14] Samba (v6) ALLOW IN Anywhere (v6) [15] 2049 (v6) ALLOW IN Anywhere (v6)
Den Regelsatz kann man nun noch weiter optimieren. Wenn der Samba-Dienst auf dem NextCloudPi bspw. nicht aktiv ist, kann die Regel auch entfernt werden:
sudo ufw delete 6
Deleting: allow Samba Proceed with operation (y|n)? y Rule deleted
Danach ist der Zugriff auf die Samba-Freigabe (per IPv4) nicht mehr möglich – auch dann nicht, wenn der Dienst auf dem NextCloud-Pi aktiv ist. Bitte beachten: Die dazugehörigen IPv6-Regeln solltet ihr ebenfalls entfernen. Bei Bedarf könnt ihr auch die Zugriffsmöglichkeit auf die Dienste NFS (Port 2049) und/oder DNS (Port 53) verbieten.
Eine minimierte Firewall-Konfiguration würde dann wie folgt aussehen:
To Action From -- ------ ---- [ 1] 80/tcp ALLOW IN Anywhere [ 2] 443/tcp ALLOW IN Anywhere [ 3] 4443/tcp ALLOW IN Anywhere [ 4] 22 ALLOW IN Anywhere [ 5] Anywhere ALLOW IN 192.168.0.0/16/udp [ 6] 80/tcp (v6) ALLOW IN Anywhere (v6) [ 7] 443/tcp (v6) ALLOW IN Anywhere (v6) [ 8] 4443/tcp (v6) ALLOW IN Anywhere (v6) [ 9] 22 (v6) ALLOW IN Anywhere (v6)
Warnung
Solche Eingriffe solltet ihr bitte mit Bedacht vornehmen und diese ebenfalls dokumentieren. Im Zweifelsfall solltet ihr einfach die Standard-Vorgaben belassen.5.3 Updates
Das Einspielen von (Sicherheits-)Updates ist ein Vorgang, der regelmäßig und zeitnah durchgeführt werden sollte. NextCloudPi unterscheidet zwischen drei verschiedenen Update-Ebenen:
- Betriebssystem (Debian/Raspbian): Alle Updates, die das Basissystem (Debian GNU/Linux) betrifft
- NextCloud-Installation: Updates, die Nextcloud betreffen
- NextCloudPi: Und letztendlich alle Updates, die NextCloudPi selbst betreffen
Standardmäßig werden Sicherheitsupdates eingespielt. Um das Einspielen von herkömmlichen Updates (Verbesserungen, Funktionserweiterung, Bugfixes) müsst ihr euch selbst kümmern. Das Einspielen der Updates für die Nextcloud und auch NextCloudPi könnt ihr zwar automatisieren, allerdings rate ich davon ab. Herkömmliche Updates solltet ihr selbst einspielen bzw. zu einem Zeitpunkt, bei dem ihr auf mögliche Eingaben/Fehler auch reagieren könnt.
Update einleiten
ÜberUPDATES -> Update
könnt ihr ein vollständiges Update einleiten – das betrifft dann das Betriebssystem, Nextcloud und auch NextCloudPi. Dies solltet ihr nach der initialen Konfiguration unbedingt einmal durchführen, bevor ihr beginnt, die Nextcloud zu nutzen. Bei mir hat das nicht direkt geklappt, aber die Eingabe von sudo dpkg --configure -a
per SSH hat das Problem korrigiert und anschließend konnten alle Updates eingespielt werden.
Standardmäßig wird euch NextCloudPi benachrichtigen, sobald für Nextcloud oder NextCloudPi neue Updates zur Verfügung stehen. Unter UPDATES -> Update-Benachrichtigungen
könnt ihr das Verhalten bei Bedarf anpassen.
5.4 Standard-Nutzer anlegen
Der Standard-Nutzer ncp
verfügt über Admin-Rechte. Dieses Konto solltet ihr (aus Sicherheitsgründen) nur dann nutzen, wenn ihr Konfigurationsanpassungen vornehmt, neue Nutzer anlegt oder Updates einspielt. Nachfolgend legen wir daher einen neuen Nutzer an:
https://IP-NextCloudPi
Klickt oben rechts auf das N-Symbol
(ncp-Nutzer) und wählt aus dem Menü den Eintrag Benutzer
:
Ihr könnt dann folgende Werte festlegen:
- Benutzername: Mit diesem Benutzernamen meldet ihr euch an Nextcloud an bzw. authentifiziert euch
- Passwort: Selbsterklärend – wählt ein sicheres Passwort
- Anzeigename: Der Name, der in der Nextcloud erscheint
- E-Mail: Eure E-Mail-Adresse. Gebt hier eine existente E-Mail-Adresse an, die ihr auch abruft. An diese Adresse sendet Nextcloud diverse Hinweise etc.
- Gruppen: Im Auslieferungszustand gibt es nur eine Gruppe, die der Admins. Ihr müsst euren neuen Nutzer keiner Gruppe zuordnen. Das könnt ihr auch später noch nachholen, sofern Bedarf besteht.
- Kontingent: Ihr könnt für jeden Benutzer festlegen, wie groß sein Speicherkontingent sein darf – also wie viel Festplattenplatz jemand verbrauchen darf.
Ist dieser Nutzer einmal angelegt, solltet ihr diesen nun für den alltäglichen Gebrauch verwenden und das Admin-Konto ncp
lediglich für Konfigurationsanpassungen etc.
5.5 TLS-Zertifikat
Im Auslieferungszustand wird NextCloudPi mit einem selbst signierten TLS-Zertifikat ausgeliefert, das von keiner (dem Browser bekannten) Zertifizierungsstelle (CA) signiert wurde. Beim Aufruf kommt es daher zur Fehlermeldung/Sicherheitswarnung, wie bereits unter Ziffer 3.5 Zugriff auf das Webinterface
beschrieben.
Grundsätzlich schmälert ein selbst signiertes TLS-Zertifikat nicht die Sicherheit der verschlüsselten Verbindung. Dennoch sollte die Fehlermeldung/Sicherheitswarnung ernst genommen werden – insbesondere bei Zielen bzw. Servern, die über das öffentliche Netzwerk (Internet) erreichbar sind. Tritt solch eine Meldung auf, ist das TLS-Zertifikat der aufgerufenen Website womöglich abgelaufen oder jemand versucht euch ein manipuliertes TLS-Zertifikat unterzuschieben, um die verschlüsselte Verbindung aufzubrechen (und den Datenverkehr einzusehen).
Für das NextCloud-Setup gibt es nun mehrere Möglichkeiten:
- Offiziell signiertes TLS-Zertifikat: NextCloudPi bietet die Option, über Let’s Encrypt ein valides bzw. signiertes TLS-Zertifikat zu erhalten. Da diese Zertifizierungsstelle (CA) in eurem Browser/System hinterlegt ist, wird es nach der Ausstellung zu keiner Fehlermeldung mehr kommen. Die Voraussetzung ist allerdings der Besitz einer eigenen Domain – viele Anwender werden diese nicht erfüllen. Über
NETWORKING -> letsencrypt
kann der Vorgang angestoßen werden. - Selbst signiertes TLS-Zertifikat: Im Auslieferungszustand wird NextCloudPi mit einem selbst signierten TLS-Zertifikat ausgeliefert. Für unsere Zwecke ist dies ausreichend, da die Nextcloud lediglich aus dem internen (Heim-)Netz erreichbar ist – und später dann auch via VPN. Das bedeutet aber auch, dass die Fehlermeldung/Sicherheitswarnung (einmalig) beim Aufruf über Browser/Client bestätigt werden muss.
- Einrichtung einer eigenen Zertifizierungsstelle (CA): Alternativ besteht auch die Möglichkeit eine eigene Zertifizierungsstelle (CA) zu erstellen, mit der anschließend selbst signierte Zertifikate erstellt werden. Wird diese CA dann auf eurem System/Browser/mobilen Endgerät ausgerollt bzw. bekannt gemacht, ist das vergleichbar mit einem offiziell signierten TLS-Zertifikat. Eine Fehlermeldung bleibt anschließend aus. Dieser Vorgang ist allerdings nicht Teil der Artikelserie und kann bspw. hier nachgelesen werden.
5.6 Fail2Ban und Co.
NextCloudPi bietet noch weitere Möglichkeiten, eure NextCloud-Installation abzusichern. So besteht bspw. die Möglichkeit, via Fail2Ban einen Brute-Force-Schutz zu aktivieren, der das Ausprobieren von Nutzername-Passwort-Kombinationen unterbindet. Fail2Ban wird nach einer gewissen Anzahl an Fehleingaben dafür sorgen, dass eine IP-Adresse für eine bestimmte Zeit blockiert wird bzw. die Nextcloud nicht erreichen kann. Dieser Schutz ist insbesondere dann sinnvoll, wenn eure Nextcloud aus dem öffentlichen Netzwerk (Internet) erreichbar ist. Über SECURITY -> fail2ban
könnt ihr den Schutz an eure Bedürfnisse anpassen. Für unser Setup werden wir Fail2Ban nicht aktivieren.
Weiteres Hardening
In der offiziellen Dokumentation der Nextcloud findet ihr weitere Tipps für das Hardening/die Absicherung der Installation. Wenn eure Nextcloud über das Internet erreichbar ist, solltet ihr euch die Maßnahmen anschauen und bei Bedarf umsetzen.6. Backups
Ein Datenverlust kann immer eintreten – die Gründe hierfür sind vielfältig: Hardwaredefekt, Fehlbedienung, Brand etc. Es ist daher essenziell ein Backup anzulegen, das im Ernstfall wieder hergestellt werden kann. NextCloudPi bietet die Möglichkeit ein solches Backup (automatisiert) zu erstellen.
Backupstrategien
NextCloudPi unterstützt unterschiedliche Backupstrategien. Es ist empfehlenswert, die offizielle Dokumentation zum Thema Backup einmal in Ruhe zu lesen. NextCloudPi unterstützt bspw. auch inkrementelle Backups (Snapshots) via BTRFS oder die Synchronisation/Speicherung via rsync. Nachfolgend wird eine einfache Variante bzw. Backupstrategie vorgestellt.Nach Abschluss der initialen Konfiguration wird das erste Backup angelegt. Dazu öffnen wir BACKUPS -> Sicherung erstellen
. Den Zielordner könnt ihr belassen oder bei Bedarf anpassen – bspw. dann, wenn die Backups auf einem anderen Medium oder Ordner abgelegt werden sollen. Nachfolgend wird ein sog. »Full-Backup« durchgeführt, dass nicht nur die NextCloudPi-Konfiguration umfasst, sondern ebenfalls die Datenbank und bei Bedarf auch (Include data
) alle Daten der Nutzer – also Dateien, Bilder, Videos, etc. Selbst wenn die Daten komprimiert werden (Compress
) ist der Platzbedarf, je nach Größe der abgelegten Daten auf der NextCloud, immens. Je nach Platzbedarf kann es erforderlich sein, eine weitere externe USB-Festplatte/USB-Stick anzuschließen, auf die/der dann ausschließlich die Backup-Daten abgelegt werden. Beachtet bitte, dass eure Nextcloud für den gesamten Vorgang nicht benutzbar ist und sich im sog. Maintenance-Mode befindet:
Diesen Vorgang werden wir anschließend über BACKUPS -> Automatische Sicherung
automatisieren. Setzt das Häkchen bei Active
und bei Bedarf auch bei Include data
bzw. Compress
. NextCloudPi wird dann im Abstand von sieben Tagen bzw. einer Woche jeweils ein Full-Backup anlegen. Nach 4 Wochen wird das Backup dann mit einem neuen überschrieben. Ihr könnt also bis zu vier Wochen in die Vergangenheit gehen. Bei Bedarf könnt ihr die Werte an eure Bedürfnisse anpassen. Mir persönlich genügt ein wöchentliches Backup – ich behalte allerdings lediglich zwei Wochen der Vergangenheit:
Backup einspielen/prüfen
Im Idealfall spielt ihr einmal ein Worst-Case-Szenario durch und spielt das Backup wieder ein. Nehmt dazu einfach andere Speichermedien und prüft, ob das Zurückspielen (BACKUPS -> Wiederherstellung
) des Backups funktioniert.7. Weitere Schritte
Eure NextCloudPi ist nun startklar. Zunächst solltet ihr euch mit dem Webinterface der Nextcloud vertraut machen. Anschließend könnt ihr folgende Schritte angehen:
- Desktop- und Mobil-Client: Auf die Nextcloud kann nicht nur über den Browser zugegriffen werden, sondern auch über Desktop-Clients bzw. Apps. Ihr könnt dann auf eure Dateien zugreifen oder wichtige Daten zwischen verschiedenen Systemen synchronisieren. Die Clients stehen für Windows, macOS, Linux und auch Android/iOS zur Verfügung. Installationshinweise und Tipps zur Nutzung findet ihr in der offiziellen Dokumentation.
- Apps / Erweiterungen: Bereits im Auslieferungszustand bietet Nextcloud viele Funktionen wie Kalender, Adressbücher, Fotogalerie, Musik- und Videowiedergabe, Aufgabenplaner, Feedreader, WYSIWYG-Editor für Textdateien etc. Über sog. Apps lässt sich der Funktionsumfang bei Bedarf erweitern – oder eben auch reduzieren. Über das NextCloud-Interface (als Admin) könnt ihr diese über das N-Symbol (
ncp-Nutzer
) und anschließend den EintragApps
erreichen. - Kalender und Adressbuch: Es besteht die Möglichkeit, Kalender in der Nextcloud anzulegen und diese ebenfalls über das CalDAV-Protokoll systemübergreifend zu synchronisieren. Ihr könnt den/die Kalender dann bspw. über Thunderbird (am Desktop) befüllen und auf Android über DAVx⁵ synchronisieren bzw. darauf zugreifen. Selbiges gilt auch für Adressbücher, die sich mittels dem CardDAV-Protokoll systemübergreifend synchronisieren lassen.
8. Fazit
Eure Nextcloud bzw. NextCloudPi ist einsatzbereit. Der Funktionsumfang und die Möglichkeiten der Nextcloud sind umfangreich und bedürfen einer gewissen Eingewöhnungszeit. Lasst euch davon nicht abschrecken – ihr habt nun die vollständige Kontrolle über eure Daten.
In einem weiteren Teil der Artikelserie werden wir den Zugang zum Heimnetz per Virtual Private Network (VPN) realisieren, damit der Zugriff auf die Nextcloud auch von unterwegs möglich ist. Geplant ist die Umsetzung mit WireGuard, einem zukunftssicheren VPN-Protokoll, das demnächst ebenfalls auf den weit verbreiteten Fritz!Boxen (bereits Teil der FRITZ!OS 7.39 Testversion) verfügbar sein wird. Wie genau die Umsetzung erfolgt bzw. in Kombination mit welcher Hardware, muss ich mir noch überlegen. Eventuell zeige ich die Umsetzung in Kombination mit einem OpenWrt-Router (siehe OpenWrt-Artikelserie) und einer Fritz!Box (sofern WireGuard verfügbar).
Wenn du über aktuelle Beiträge informiert werden möchtest, hast du verschiedene Möglichkeiten, dem Blog zu folgen:
13 Ergänzungen zu “Nextcloud auf dem Raspberry Pi – NextCloudPi Teil1”
Forum oder der Chat geeignete Anlaufstellen, um dein Anliegen zu diskutieren. Per E-Mail beantworte ich grundsätzlich keine (Support-)Anfragen – dazu fehlt mir einfach die Zeit. Kuketz-ForumAbschließender Hinweis
Blog-Beiträge erheben nicht den Anspruch auf ständige Aktualität und Richtigkeit wie Lexikoneinträge (z.B. Wikipedia), sondern beziehen sich wie Zeitungsartikel auf den Informationsstand zum Zeitpunkt des Redaktionsschlusses.Kritik, Anregungen oder Korrekturvorschläge zu den Beiträgen nehme ich gerne per E-Mail entgegen.
Moin und vielen Dank!
Dazu eine Frage: gibt es einen Grund, das Ganze nicht per WLAN anzuhängen und statt dessen auf Ethernet zu setzen?
Grüße
Thomas
Performance/Geschwindigkeit.
Für VPN einfach PiVPN auf dem Raspi installieren. Einfacher geht es nicht und ein ggf. bereits vorhandenes PiHole wird in dem Zuge gleich mit genutzt. https://www.pivpn.io/
Kann man machen. Es gibt dazu sogar ein älteres Tutorial: https://www.kuketz-blog.de/pivpn-raspberry-pi-mit-openvpn-raspberry-pi-teil3/
Ich rate aber aus zwei Gründen davon ab, PiVPN auf dem selben Pi wie NextCloudPi zu installieren:
– dann ist der RaspberryPi mit einem Beinchen direkt aus dem Internet erreichbar. Etwas, was das oben dargestellte Setup eigentlich vermeiden möchte.
– PiVPN und NextCloudPi sind zwei verschiedene Anwendungszwecke, die besser getrennt werden sollten.
Hat man aber noch einen weiteren Pi, ist der Tipp natürlich vollkommen in Ordnung.
Auch ohne eigene Domain geht es mit Let’s Enncrypt via Duck DNS und Tunnelbroker.
http://www.duckdns.org/
https://tunnelbroker.net/
DuckDNS würde ich nicht empfehlen, aus Datenschutzgründen. Besseres Beispiel: https://desec.io/
Die Lösung mit VPN hat aber einen gravierenden Nachteil: Ich kann keine Dateien für andere freigeben. Beispielsweise Fotos von einem Ausflug. Das kommt gar nicht mal so selten vor. Und wenn man dann nicht will, dass diese bei GAMAM landen, bleibt oft nur die eigene Nextcloud. Das gilt auch für den Fall, dass andere einem selbst Fotos schicken wollen. Mit Link, Name, Passwort ist das sehr einfach möglich und sie laden die Fotos einfach auf meine Nextcloud.
Dann vielleicht zwei Pi’s mit einer VPN-Installation für nur private / ausschließlich persönliche Zwecke und eine Installation für „Freunde“.
4 Lösungsmöglichkeiten:
1. Freunden (vertrauenswürdigen) eigene PiVPN Profile erstellen.
2. Managed Nextcloud.
3. Nextcloud auf einem Cloudhoster deiner Wahl hosten.
4. Anstelle von PiVPN einen Pi mit Loadbalancer auf einen VPS (mit z.B. Pihole + Unbound) via 443 forwarden (kann mittels eigener Domain und SSL Zertifikaten ergänzt werden).
Link zum Forum für Frage, Meinung, Wunsch, etc.:
https://forum.kuketz-blog.de/viewtopic.php?t=9330
Ich nutze NextcloudPI seit ca. 2 Jahren auf einem Standard Linux-Server unter Debian. Mit SSD für OS und Upload Cache und 8TB netto RAID5 Verbund braucht das System zwischen 17 und 35 Watt. Performance ist um einiges besser als auf dem PI4b.
Warum NextcloudPI? Der Server erfordert praktisch null Aufmerksamkeit. Updates (auch für Debian), Backups alles läuft vollautomatisch. Hier schöpfe ich das volle Potenzial von NextcloudPI aus.
Ich bin mit NC17 gestartet und wurde im laufe der Jahre automatisch bis auf die neuste Version hoch gezogen.
Das „PI“ macht den Unterschied. Danke für den tollen Beitrag.
Hallo Mike,
erst einmal vielen Dank für deinen tollen Beitrag!
Nachfolgend hätte ich noch ein paar Anregungen bzw. Fragen die ich mir als Leser zum Thema NextcloudPi stellen würde (die ich z.T. auch aus deinem Forum zum Thema aufgegriffen habe).
1. Welche Gründe sprechen für, bzw. gegen die Verwendung eines Raspis/x86?
Ganz klar sprechen die geringen Unterhaltskosten, die weite Verbreitung sowie die vielen Anleitungen im Netz für die Verwendung der Raspi-Plattform. Jedoch sollte man auch bedenken, dass je nach Nutzung der Raspberry Pi hardwarebedingt selbst beim Modell 4B schnell an seine Leistungsgrenze kommen kann. Wer seinen NextcloudPi nur für einfache Aufgaben so wie von Dir beschrieben nutzt, wird mit dieser Lösung prima zurecht kommen. Wer allerdings darüber nachdenkt, z.B.: Nextcloud-Talk, RAID 1 (Softwarelösung), Verschlüsselung oder mehrere Videostreams gleichzeitig vom Pi als Medienzuspieler für Kodi etc. zu nutzen wird mit der genannten Lösung schnell frustriert sein.
In dem Fall sollte man m.M.n. darüber nachdenken, als Grundlage ein x86 basierendes System für seine Nextcloud zu verwenden. Ganz klar muss man sich im Klaren sein, dass man mit einem x86 höhere Anschaffungskosten hat, sofern man über keine alten Geräte zum „upcyclen“ verfügt. Da aber Aufgrund der „Chipkrise“ der Raspi je nach Konfiguration aktuell nur schwer und teils zu Mondpreisen erhältlich ist, relativiert sich der Kostenvergleich etwas zugunsten eines x86 wieder. Außerdem sollte man natürlich auch bedenken, dass man bei dieser Lösung mit einem höheren Energiebedarf rechnen kann, der m.M.n. je nach Aufbau des Systems aber noch vertretbar ist. Selbst ein vermeintlich „schwacher“ Laptop, Mini-PC, Desktop etc. mit z.B. einem Celron als CPU oder ähnlichem lässt sich wunderbar für ein solches Projekt umfunktionieren und hat deutlich mehr Wums als ein Raspi.
2. Nextcloud vs. NAS brauche ich beides und macht das Sinn?
Beim stöbern im Forum bin ich immer wieder über beide Begriffe gestolpert und die damit vermutlich verbundenen Verständnisprobleme bei dem ein oder anderen Forumsteilnehmer, insbesondere die Abgrenzung zwischen einem NAS bzw. einer Nextcloud sowohl auf Hardware- als auch Softwareebene. Zum Bsp. wurde neben einer NAS Fertiglösung ein NextcloudPi aufgesetzt und
in dem Zusammenhang wurde gefragt, wie man aus den beiden Geräten eins macht.
Hierbei wurden m.M.n. unnötig Methoden von der Dockerisierung bis zur Nutzung von VVM’s empfohlen. Ja klar gibt es Anwendungsfälle wo ein zusätzliches NAS Sinn macht, allerdings muss man sich als Privatanwender fragen, ob man sich so etwas antun will.
Ich persönlich würde getreu dem KISS-Prinzip mit meiner Nextcloud ein zusätztliches NAS ersetzen, sofern ich beides betreiben würde. Insbesondere wenn das NAS nur als Medienzuspieler für Kodi (was sich auch wunderbar mit einer Nextcloud umsetzen lässt) usw. verwendet wird. Zusätzlich würde ich auf der Nextcloud ein RAID aufsetzten sofern ich die Vorteile von Datenredundanz nicht missen möchte. Wer darüber nachdenkt jetzt ein RAID (Software) z.B. mit zwei externen USB Festplatten am Raspberry Pi etc. anzuschließen wird vermutlich von der schlechten Performance enttäuscht sein, abhilfe könnte hier ein externes RAID Gehäuse bringen.
Noch eine verspätete Anmerkung zu PI vs. x86 und Hardware allgemein:
Die Sollbruchstelle beim normalen PI2/3/4 ist die SD-Karte.
Darum lieber ein CM4. Günstig für NC und Ähnliches ist das „kleine“ mit 1GBRAM/8GBEMMC/ohne Funk auf einem MiniBaseBoard. Kostet zusammen auch nur <60EUR und ist schneller und zuverlässiger.
Es kann sogar eine NVM-SSD direkt angesteckt werden. Wenn die Nextcloud nur Adressbuch/Kalender und sonstigen Kleinkram speichern soll, dann reicht das schon. Ansonsten wie üblich USB-HDD.