Nextcloud, ein Fork von ownCloud, ist ein File-Sharing-Server, mit dem Sie persönliche Inhalte wie Dokumente und Bilder an einem zentralen Ort speichern können, ähnlich wie bei Dropbox. Die Besonderheit von Nextcloud besteht darin, dass alle seine Funktionen Open-Source-basiert sind. Außerdem erhalten Sie die Kontrolle und Sicherheit Ihrer vertraulichen Daten zurück, wodurch die Nutzung des Cloud-Hosting-Services eines anderen Anbieters überflüssig wird.
In diesem Tutorial installieren und konfigurieren wir eine Nextcloud-Instanz auf einem Ubuntu 20.04-Server.
Um die Schritte in diesem Leitfaden durchführen zu können, benötigen Sie Folgendes:
sudo
-Berechtigungen erstellen und eine einfache Firewall einrichten, indem Sie der Anleitung zur Ersteinrichtung des Servers unter Ubuntu 20.04 folgen.Nachdem Sie die obigen Schritte abgeschlossen haben, erfahren Sie nun, wie Sie Nextcloud auf Ihrem Server einrichten.
Wir installieren Nextcloud mit dem Snap-Packsystem. Dieses Packsystem, das unter Ubuntu 20.04 standardmäßig verfügbar ist, ermöglicht Unternehmen das Ausliefern von Software mit allen zugehörigen Abhängigkeiten und Konfigurationen in einer in sich geschlossenen Einheit mit automatischen Updates. Das bedeutet, dass wir anstelle der Installation und Konfiguration eines Web- und Datenbankservers und der Konfiguration der Nextcloud-App zur Ausführung darauf das Snap
-Paket installieren können, das die zugrunde liegenden Systeme automatisch verwaltet.
Um das Nextcloud-Snap-Paket herunterzuladen und im System zu installieren, geben Sie Folgendes ein:
- sudo snap install nextcloud
Das Nextcloud-Paket wird heruntergeladen und auf Ihrem Server installiert. Sie können überprüfen, ob der Installationsprozess erfolgreich war, indem Sie die mit dem Snap verbundenen Änderungen auflisten:
- snap changes nextcloud
OutputID Status Spawn Ready Summary
4 Done today at 16:12 UTC today at 16:12 UTC Install "nextcloud" snap
Status und Zusammenfassung zeigen an, dass die Installation ohne Probleme abgeschlossen wurde.
Wenn Sie weitere Informationen über das Nextcloud Snap wünschen, können Sie verschiedene Befehle nutzen.
Der Befehl snap info
zeigt Ihnen die Beschreibung, die verfügbaren Nextcloud-Verwaltungsbefehle sowie die installierte Version und den verfolgten Snap-Kanal an:
- snap info nextcloud
Snaps können Verbindungen definieren, die sie unterstützen. Sie bestehen aus einem Slot und einem Plug, die bei Verknüpfung dem Snap Zugang zu bestimmten Funktionen oder Zugriffsebenen bieten. Beispielsweise müssen Snaps, die als Netzwerkclient fungieren sollen, über die Verbindung network
verfügen. Um zu sehen, welche connections
(Verbindungen) dieses Snap definiert, geben Sie Folgendes ein:
- snap connections nextcloud
OutputInterface Plug Slot Notes
network nextcloud:network :network -
network-bind nextcloud:network-bind :network-bind -
removable-media nextcloud:removable-media - -
Um mehr über die einzelnen Dienste und Apps zu erfahren, die dieses Snap bereitstellt, können Sie sich die Snap-Definitionsdatei ansehen, indem Sie Folgendes eingeben:
- cat /snap/nextcloud/current/meta/snap.yaml
Dadurch können Sie die einzelnen Komponenten sehen, die im Snap enthalten sind, wenn Sie Hilfe beim Debugging benötigen.
Es gibt verschiedene Möglichkeiten, um das Nextcloud Snap zu konfigurieren. In diesem Leitfaden werden wir den administrativen Benutzer nicht über die Weboberfläche, sondern über die Befehlszeile erstellen, um das kleine Zeitfenster zu verhindern, in dem die Seite zur Administratorregistrierung für alle zugänglich wäre, die die IP-Adresse oder den Domänennamen Ihres Servers aufrufen.
Um Nextcloud mit einem neuen Administratorkonto zu konfigurieren, verwenden Sie den Befehl nextcloud.manual-install
. Sie müssen einen Benutzernamen und ein Passwort als Argumente übergeben:
- sudo nextcloud.manual-install sammy password
Die folgende Meldung zeigt an, dass Nextcloud korrekt konfiguriert wurde:
OutputNextcloud was successfully installed
Nachdem wir Nextcloud installiert haben, müssen wir nun die vertrauenswürdigen Domänen anpassen, damit Nextcloud auf Anfragen mit dem Domänennamen oder der IP-Adresse des Servers reagiert.
Bei Installation über die Befehlszeile schränkt Nextcloud die Hostnamen ein, auf die die Instanz reagieren wird. Standardmäßig reagiert der Dienst nur auf Anfragen, die an den Hostnamen „localhost“ gestellt werden. Wir werden auf Nextcloud über den Domänennamen oder die IP-Adresse des Servers zugreifen. Daher müssen wir die Einstellung so anpassen, dass solche Anfragen akzeptiert werden.
Sie können die aktuellen Einstellungen anzeigen, indem Sie den Wert des trusted_domains
-Arrays abfragen:
- sudo nextcloud.occ config:system:get trusted_domains
Outputlocalhost
Derzeit ist nur localhost
als erster Wert im Array vorhanden. Wir können einen Eintrag für den Domänennamen oder die IP-Adresse unseres Servers hinzufügen, indem wir Folgendes eingeben:
- sudo nextcloud.occ config:system:set trusted_domains 1 --value=example.com
OutputSystem config value trusted_domains => 1 set to string example.com
Wenn wir die vertrauenswürdigen Domänen erneut abfragen, sehen wir, dass wir jetzt zwei Einträge haben:
- sudo nextcloud.occ config:system:get trusted_domains
Outputlocalhost
example.com
Wenn Sie weitere Möglichkeiten für Zugriff auf die Nextcloud-Instanz hinzufügen möchten, können Sie zusätzliche Domänen oder Adressen hinzufügen, indem Sie den Befehl config:system:set
mit einer inkrementierten Indexnummer (die „1“ im ersten Befehl) erneut ausführen und den --value
anpassen.
Bevor wir mit der Verwendung von Nextcloud beginnen, müssen wir die Weboberfläche sichern.
Wenn Ihr Nextcloud-Server mit einem Domänennamen verknüpft ist, kann Ihnen das Nextcloud Snap helfen, ein vertrauenswürdiges SSL-Zertifikat von Let’s Encrypt abzurufen und zu konfigurieren. Wenn Ihr Nextcloud-Server keinen Domänennamen hat, kann Nextcloud ein selbstsigniertes Zertifikat konfigurieren, das Ihren Webverkehr verschlüsselt, dem Ihr Webbrowser aber nicht automatisch vertraut.
Folgen Sie nun demjenigen Abschnitt unten, der Ihrem Szenario entspricht.
Wenn Ihr Nextcloud-Server mit einem Domänennamen verknüpft ist, besteht die beste Option zum Sichern Ihrer Weboberfläche darin, ein Let’s Encrypt-Zertifikat abzurufen.
Öffnen Sie zunächst die Ports in der Firewall, die Let’s Encrypt zur Validierung der Domäneneigentümerschaft verwendet. Dadurch wird Ihre Nextcloud-Anmeldeseite öffentlich zugänglich gemacht. Da wir jedoch bereits über ein Administratorkonto verfügen, kann die Installation von niemandem gekapert werden:
- sudo ufw allow 80,443/tcp
Als Nächstes fordern Sie ein Let’s Encrypt-Zertifikat an, indem Sie Folgendes eingeben:
- sudo nextcloud.enable-https lets-encrypt
Zuerst werden Sie gefragt, ob Ihr Server die Voraussetzungen zum Abrufen eines Zertifikats vom Let’s Encrypt erfüllt:
OutputIn order for Let's Encrypt to verify that you actually own the
domain(s) for which you're requesting a certificate, there are a
number of requirements of which you need to be aware:
1. In order to register with the Let's Encrypt ACME server, you must
agree to the currently-in-effect Subscriber Agreement located
here:
https://letsencrypt.org/repository/
By continuing to use this tool you agree to these terms. Please
cancel now if otherwise.
2. You must have the domain name(s) for which you want certificates
pointing at the external IP address of this machine.
3. Both ports 80 and 443 on the external IP address of this machine
must point to this machine (e.g. port forwarding might need to be
setup on your router).
Have you met these requirements? (y/n)
Geben Sie y
ein, um fortzufahren.
Als Nächstes werden Sie aufgefordert, eine E-Mail-Adresse für Widerherstellungen anzugeben:
OutputPlease enter an email address (for urgent notices or key recovery):
Geben Sie Ihre E-Mail ein und drücken Sie die Eingabetaste
, um fortzufahren.
Geben Sie abschließend den Domänenamen ein, der mit Ihrem Nextcloud-Server verknüpft ist:
OutputPlease enter your domain name(s) (space-separated): example.com
Ihr Let’s Encrypt-Zertifikat wird angefordert und wenn alles gut gegangen ist, wird die interne Instanz von Apache neu gestartet, um SSL unmittelbar zu implementieren:
OutputAttempting to obtain certificates... done
Restarting apache... done
Sie können nun mit dem nächsten Schritt fortfahren, um sich zum ersten Mal bei Nextcloud anzumelden.
Wenn Ihr Nextcloud-Server keinen Domänennamen hat, können Sie die Weboberfläche dennoch sichern, indem Sie ein selbstsigniertes SSL-Zertifikat generieren. Dieses Zertifikat ermöglicht Zugriff auf die Weboberfläche über eine verschlüsselte Verbindung, kann aber die Identität Ihres Servers nicht überprüfen. Daher zeigt Ihr Browser wahrscheinlich eine Warnung an.
Um ein selbstsigniertes Zertifikat zu generieren und Nextcloud für dessen Verwendung zu konfigurieren, geben Sie Folgendes ein:
- sudo nextcloud.enable-https self-signed
OutputGenerating key and self-signed certificate... done
Restarting apache... done
Die Ausgabe oben zeigt an, dass Nextcloud ein selbstsigniertes Zertifikat generiert und aktiviert hat.
Nachdem die Schnittstelle nun sicher ist, öffnen Sie die Webports in der Firewall, um Zugriff auf die Weboberfläche zuzulassen:
- sudo ufw allow 80,443/tcp
Sie können sich jetzt zum ersten Mal bei Nextcloud anmelden.
Nachdem Nextcloud konfiguriert ist, besuchen Sie nun den Domänenamen oder die IP-Adresse Ihres Servers im Webbrowser Ihres besuchen
https://example.com
Anmerkung: Wenn Sie ein selbstsigniertes SSL-Zertifikat einrichten, zeigt Ihr Browser möglicherweise eine Warnung an, dass die Verbindung unsicher ist, da das Zertifikat des Servers nicht von einer anerkannten Zertifizierungsstelle signiert wurde. Das ist bei selbstsignierten Zertifikaten zu erwarten. Sie können sich also durch die Warnung klicken, um zur Website zu gelangen.
Da Sie über die Befehlszeile bereits ein Administratorkonto konfiguriert haben, werden Sie auf die Nextcloud-Anmeldeseite geleitet. Geben Sie die Anmeldedaten ein, die Sie für den Administrator erstellt haben:
Klicken Sie auf die Schaltfläche Log in (Anmelden), um sich bei der Weboberfläche von Nextcloud anzumelden.
Bei der ersten Anmeldung wird ein Fenster mit Einführungstext und Links zu verschiedenen Nextcloud-Clients angezeigt, die für Zugriff auf Ihre Nextcloud-Instanz verwendet werden können:
Durch Klicken können Sie beliebige Clients herunterladen, die Sie interessieren, oder das Fenster beenden, indem Sie auf das X-Zeichen in der oberen rechten Ecke klicken. Sie gelangen nun zur Hauptoberfläche von Nextcloud, wo Sie Dateien hochladen und verwalten können:
Ihre Installation ist nun abgeschlossen und gesichert. Sie können sich die Oberfläche ansehen, um die Funktionen und Merkmale Ihres neuen Systems besser kennenzulernen.
Nextcloud kann die Funktionen von beliebten Cloud-Speicherdiensten anderer Anbieter replizieren. Inhalte können zwischen Benutzern oder über öffentliche URLs externfreigegeben werden. Der Vorteil von Nextcloud besteht darin, dass die Daten sicher an einem Ort gespeichert werden, den Sie kontrollieren können.
Weitere Funktionen finden Sie im Nextcloud App Store, wo Sie Plug-ins installieren können, um die Funktionen des Dienstes zu erweitern.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
You should mention that the data directory for the snap package per default is found under / (root). As for many installations the partition of the root mount point typically have between 10 and 40 GB. This is not really a suitable size for a nextcloud installation. You should add a chapter on how to change the data directory location to /mnt or /media and pointing out that this should be an independent partition in both tutorial nextcloud installation and Ubuntu xx.yy installation manual.