Zugriff über das Internet auf die Nextcloud
SSL Zertifikat erstellen
Für Benutzer mit einer dynamischen IP-Adresse ist die Verwendung eines DynDNS-Anbieters zu empfehlen. Dies ermöglicht den Ihnen, einen eindeutigen Hostnamen zu verwenden, um auf Ihre Nextcloud außerhalb Ihres Heimnetzwerks zugreifen zu können, unabhängig davon, wie oft sich ihre IP-Adresse ändert. Hierzu erstellen Sie einen Account bei einem DynDNS-Anbieter Ihrer Wahl.
Nachdem der Account erstellt wurde, muss DynDNS in Ihrem Router aktiviert werden. Hierfür werfen Sie gegebenenfalls einen Blick in die Bedienungsanleitung Ihres Routers. Zudem müssen Sie eine Portfreigabe für Port 80 (http) und Port 443 (https) einrichten, damit die Nextcloud über das Internet erreicht werden kann.
https bietet gegenüber http mehrere Vorteile, darunter:
- Sicherheit: https verschlüsselt die Übertragung von Daten zwischen dem Benutzer und dem Server, was es Angreifern schwer macht, die Daten abzufangen oder zu ändern.
- Vertrauenswürdigkeit: https bietet eine gewisse Garantie, dass der Benutzer tatsächlich mit der von ihm aufgerufenen Website kommuniziert, da es die Identität des Webservers über ein Zertifikat überprüft.
- Kompatibilität: Einige Browser blockieren Inhalte auf Websites ohne https.
Kurz gesagt, https bietet eine höhere Sicherheit, Integrität und Vertrauenswürdigkeit bei der Übertragung von Daten im Internet.
Das SSL-Zertifikat lassen wir von der Zertifizierungsstelle Let’s Encrypt ausstellen. Hierzu verwenden wir das empfohlene Tool Certbot. Dieses sorgt dafür, dass uns ein Zertifikat ausgestellt und dieses automatisch regelmäßig erneuert wird.
Um Certbot installieren zu können, müssen Sie zunächst den App Store Snapd installieren, über den Sie später Certbot herunterladen können:
apt install snapd
Anschließend muss ein Neustart des Raspberry Pi durchgeführt werden:
reboot
Installieren Sie danach den Kern-Snap, um die neueste Snap-Version zu erhalten. Hierfür benötigen Sie erneut Root-Rechte (sudo -s):
snap install core
snap refresh core
Nun können Sie Certbot auf Ihrem Raspberry Pi installieren:
snap install --classic certbot
Mit diesem Befehl stellen Sie sicher, dass der certbot-Befehl ausgeführt werden kann:
ln -s /snap/bin/certbot /usr/bin/certbot
Starten Sie Certbot, um ein Zertifikat zu erhalten und Ihre Apache-Konfiguration automatisch anzupassen, und folgen Sie den Anweisungen im Dialog. Sie werden nach folgenden Informationen gefragt:
- Ihre E-Mail-Adresse, damit Sie über ablaufende Zertifikate und Sicherheitshinweise informiert werden können.
- Ob Sie den Nutzungsbedingungen zustimmen.
- Ob Sie regelmäßige Informationen von der Electronic Frontier Foundation erhalten möchten. Sie können dies auch ablehnen.
- Für welche Domains das Zertifikat ausgestellt werden soll.
certbot --apache
Zugriff über eine nicht vertrauenswürdige Domain
Nachdem Sie ein SSL-Zertifikat für Ihre Domain erhalten haben, können Sie jedoch immer noch nicht auf die Nextcloud zugreifen. Weil alle Domains/IP-Adressen, die Ihre Nextcloud nicht kennt, automatisch blockiert werden. Damit Ihre von DynDNS erstellte Domain (meinecloud.meindyndnsanbieter.de) von der Nextcloud als vertrauenswürdig eingestuft wird, müssen Sie die Datei config.php bearbeiten. Dabei ist auf eine korrekte Schreibweise zu achten, da andernfalls der Zugriff auf die Nextcloud nicht mehr möglich ist:
nano /var/www/nextcloud/config/config.php
im Abschnitt:
array ( 0 => '192.168.178.42', ),
tragen Sie ihre DynDNS Adresse ein.
array ( 0 => 'meinecloud.meindyndnsanbieter.de', ),
Da die IP-Adresse des Raspberry Pi kein SSL-Zertifikat besitzt, wird empfohlen, diese aus der Liste der vertrauenswürdigen Adressen zu entfernen. Dadurch ist der Zugriff auf die Nextcloud ausschließlich über die gesicherte SSL-Verbindung möglich. Anschließend müssen Sie den Apache-Server neu starten.
systemctl reload apache2