In meiner Anleitung zum Einrichten von Nextcloud auf dem Raspberry Pi 4 bin ich nicht darauf eingegangen, wie ihr auch außerhalb eures LAN auf Nextcloud zugreifen könnt. In diesem Beitrag erhaltet ihr eine Anleitung wie ihr das machen könnt.
Warum DynDNS?
Fangen wir erstmal damit an, warum wir nicht bereits auf den Raspberry Pi zugreifen können, obwohl dieser mit dem Router verbunden ist. Das liegt daran, dass die meisten Nutzer einen Internetanschluss mit einer dynamischen IP haben. Eure IP-Adresse wird aus diesem Grund regelmäßig verändert. Aus diesem Grund könnt ihr Nextcloud nicht andauernd mit der gleichen IP-Adresse aufrufen, weil diese möglicherweise alle 24h verändert wird. Damit ihr allerdings über eine feste Web-Adresse Nextcloud erreicht, braucht ihr einen DynDNS Dienst. Dieser bildet dauerhaft auf eure aktuelle IP-Adresse eine Web-Adresse wie zum Beispiel nextcloud.com ab.
DynDNS Anbieter
Im Internet gibt es zahlreiche DynDNS Anbieter. Da wir allerdings mit Nextcloud im Vergleich zu Dropbox Geld sparen möchten, stelle ich euch nur einen kostenlosen Dienst vor. Dieser hat in der Regel nur den Nachteil, dass ihr nur eine Subdomain zu dem jeweiligen Dienst bekommt. Ich kann euch den Provider Securepoint empfehlen. Securepoint ist ein Anbieter für IT-Security Produkte aus Deutschland und bietet fünf Hosts und 100 Domains an.
DynDNS Anleitung
Hinweis: Als Privatkunde könnt ihr euch bei spDyn seit dem 1.07.2020 nicht mehr registrieren. Weicht deswegen auf einen anderen DynDns-Anbieter aus! Diese Anleitung baut auf eine Installation mit snap auf.
Zu Beginn müsst ihr bei Securepoint (spDYN) einen Account erstellen. Im Anschluss könnt ihr auf dem Dashboard einen neuen IPv4 Host hinzufügen. Im Anschluss müsst ihr diese Domain auf eurem Router registrieren. In diesem Beispiel zeige ich dieses anhand einer Fritzbox. Aber auch auf anderen Routern sollte dieser Schritt kein Problem sein. Auf der Internetseite von Securepoint findet ihr alle Anleitungen für euren Router dazu.
Bei einem Fritzrouter müsst ihr die Benutzeroberfläche eures Routers öffnen indem ihr die folgende Seite aufruft: fritz.box und dort dann über Internet > Freigaben eure DynDNS Einstellungen aufruft. Dort müsst ihr die Angaben wie in der Tabelle ausfüllen und den Button DynDNS benutzen aktivieren.
DynDNS-Anbieter | Benutzerdefiniert |
Update-URL | https://update.spdyn.de/nic/update?hostname=<domain>&myip=<ipaddr> |
Domainname | Hostname |
Benutzername | Login für spDYN |
Kennwort | Kennwort für spDYN |
Im Anschluss müssen noch einige Ports auf dem Router geöffnet werden. Öffnet auf der Fritzbox das Menü mit dem Namen Portfreigaben. Das Menü befindet sich ebenfalls auf der Route Internt > Freigaben. In diesem Menü könnt ihr dann Gerät für Freigabe hinzufügen auswählen.
In der Geräteliste müsst ihr natürlich euren Raspberry Pi auswählen. Dieser sollte auch unter diesem Namen in der Liste erscheinen, wenn ihr das Gerät nicht umbenannt habt. Danach müssen für den Raspberry Pi neue Freigaben erstellt werden. Dafür findet ihr ebenfalls einen Button auf der Seite. Im Anschluss brauchen wir 2 Freigaben:
Freigabe | Anwendung | Port |
1. Portfreigabe | HTTP-Server | 80 |
2. Portfreigabe | HTTPS-Server | 443 |
Damit jetzt auch Nextcloud über die Domain aufgerufen werden kann, müsst ihr noch folgenden Befehle per SSH auf eurem Raspberry Pi ausführen, der ein Dokument mit dem Editor nano öffnet. Die Zeile, die in dem Editor erscheint, müsst ihr auskommentieren indem ihr vor der Zeile eine Raute (#) platziert. Speichern könnt ihr die Änderung über CTRL + o
und CTRL + x
.
sudo nanon /etc/ld.so.preload
Zum Schluss müsst ihr noch den folgenden Befehl eingeben, um mit eurer DynDNS-Adresse Nextcloud aufrufen zu können. Tauscht die Domain mit eurer eigenen Domain bitte aus.
sudo /snap/bin/nextcloud.occ config:system:set trusted_domains 2 --value=euredomain.tld
Damit die Änderungen auch übernommen werden empfehle ich euch danach den Webserver neu zu starten.
sudo snap restart nextcloud.apache
SSL Zertifikat hinzufügen
Damit die Daten auch verschlüsselt ausgetauscht werden können, empfehle ich euch noch eurer Domain mit Lets Encrypt kostenlos ein SSL-Zertifikat hinzuzufügen. Das könnt ihr mit folgenden Befehl machen:
sudo /snap/bin/nextcloud.enable-https lets-encrypt
Im Anschluss müsst ihr nur die Daten eintragen, die Lets Encrypt von euch benötigt und im Anschluss könnt ihr auch außerhalb eures Netzwerks über eure neue Domain, den Dienst aufrufen.