Installieren und Konfigurieren von Nextcloud unter Ubuntu 18.04

Einführung

Nextcloud, ein Zweig von ownCloud, ist ein Dateifreigabeserver, mit dem Sie Ihre persönlichen Inhalte wie Dokumente und Bilder an einem zentralen Ort speichern können, ähnlich wie bei Dropbox. Der Unterschied zu Nextcloud besteht darin, dass alle Funktionen Open Source sind. Es gibt Ihnen auch die Kontrolle und Sicherheit Ihrer sensiblen Daten zurück und macht die Verwendung eines Cloud-Hosting-Dienstes eines Drittanbieters überflüssig.

In diesem Tutorial installieren und konfigurieren wir eine Nextcloud-Instanz auf einem Ubuntu 18.04-Server.

Voraussetzungen

Um die Schritte in diesem Handbuch ausführen zu können, benötigen Sie Folgendes:

  • A sudo user and firewall configured on your server: Sie können einen Benutzer mitsudo Berechtigungen erstellen und eine grundlegende Firewall einrichten, indem Sie denUbuntu 18.04 initial server setup guide folgen.

  • (Optional) A domain name pointed to your server: Wir werden Verbindungen zur Nextcloud-Installation mit TLS / SSL sichern. Nextcloud kann ein kostenloses, vertrauenswürdiges SSL-Zertifikat vonLet’s Encrypt einrichten und verwalten, wenn Ihr Server einen Domänennamen hat. Andernfalls kann Nextcloud ein selbstsigniertes SSL-Zertifikat einrichten, das Verbindungen verschlüsseln kann, in Webbrowsern jedoch standardmäßig nicht als vertrauenswürdig eingestuft wird. Wenn Sie DigitalOcean verwenden, können Sie unserem Leitfaden zuhow to set up a domain name for your server folgen, wenn Sie Let's Encrypt verwenden möchten.

Nachdem Sie die obigen Schritte ausgeführt haben, erfahren Sie, wie Sie Nextcloud auf Ihrem Server einrichten.

[[Schritt-1 -–- Installation-nextcloud]] == Schritt 1 - Installation von Nextcloud

Wir werden Nextcloud mit dem Verpackungssystemsnappyinstallieren. Dieses Paketsystem, das standardmäßig unter Ubuntu 18.04 verfügbar ist, ermöglicht es Unternehmen, Software mit allen zugehörigen Abhängigkeiten und Konfigurationen in einer eigenständigen Einheit mit automatischen Updates zu liefern. Dies bedeutet, dass wir anstelle der Installation und Konfiguration eines Web- und Datenbankservers und der anschließenden Konfiguration der Nextcloud-App für die Ausführung das Paketsnapinstallieren können, das die zugrunde liegenden Systeme automatisch verarbeitet.

Geben Sie Folgendes ein, um das Paket Nextcloudsnapherunterzuladen und auf dem System zu installieren:

sudo snap install nextcloud

Das Nextcloud-Paket wird heruntergeladen und auf Ihrem Server installiert. Sie können bestätigen, dass der Installationsvorgang erfolgreich war, indem Sie die mitsnapverbundenen Änderungen auflisten:

snap changes nextcloud
OutputID   Status  Spawn               Ready               Summary
2    Done    today at 16:12 UTC  today at 16:12 UTC  Install "nextcloud" snap

Der Status und die Zusammenfassung zeigen an, dass die Installation ohne Probleme abgeschlossen wurde.

Zusätzliche Informationen zum Nextcloud-Snap erhalten

Wenn Sie weitere Informationen zu Nextcloudsnapwünschen, gibt es einige Befehle, die hilfreich sein können.

Der Befehlsnap info kann Ihnen die Beschreibung, die verfügbaren Nextcloud-Verwaltungsbefehle sowie die installierte Version und den zu verfolgenden Fangkanal anzeigen:

snap info nextcloud

Snaps können von ihnen unterstützte Schnittstellen definieren, die aus einem Steckplatz und einem Stecker bestehen, die, wenn sie miteinander verbunden sind, dem Snap Zugriff auf bestimmte Funktionen oder Zugriffsebenen gewähren. Beispielsweise müssen Snaps, die als Netzwerkclient fungieren müssen, über die Schnittstellenetworkverfügen. Geben Sie Folgendes ein, um zu sehen, welche Snap-Schnittstellen dieser Snap definiert:

snap interfaces nextcloud
OutputSlot           Plug
:network       nextcloud
:network-bind  nextcloud
-              nextcloud:removable-media

Um mehr über alle von diesem Snap bereitgestellten Dienste und Apps zu erfahren, können Sie die Snap-Definitionsdatei durch Eingabe von:

cat /snap/nextcloud/current/meta/snap.yaml

Auf diese Weise können Sie die einzelnen im Snap enthaltenen Komponenten anzeigen, wenn Sie beim Debuggen Hilfe benötigen.

Administratorkonto konfigurieren

Es gibt verschiedene Möglichkeiten, den Nextcloud-Snap zu konfigurieren. In diesem Handbuch erstellen wir einen Administratorbenutzer nicht über die Weboberfläche, sondern über die Befehlszeile, um ein kleines Fenster zu vermeiden, in dem die Administratorregistrierungsseite für jeden zugänglich ist, der die IP-Adresse oder den Domänennamen Ihres Servers besucht.

Verwenden Sie den Befehlnextcloud.manual-install, um Nextcloud mit einem neuen Administratorkonto zu konfigurieren. 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 is not installed - only a limited number of commands are available
Nextcloud was successfully installed

Nachdem Nextcloud installiert ist, müssen wir die vertrauenswürdigen Domänen so anpassen, dass Nextcloud auf Anforderungen mit dem Domänennamen oder der IP-Adresse des Servers reagiert.

Anpassen der vertrauenswürdigen Domänen

Bei der Installation über die Befehlszeile schränkt Nextcloud die Hostnamen ein, auf die die Instanz reagiert. Standardmäßig antwortet der Dienst nur auf Anforderungen, die an den Hostnamen "localhost" gesendet wurden. Wir werden über den Domainnamen oder die IP-Adresse des Servers auf Nextcloud zugreifen. Daher müssen wir diese Einstellung anpassen, um diese Art von Anforderungen zu akzeptieren.

Sie können die aktuellen Einstellungen anzeigen, indem Sie den Wert des Arraystrusted_domainsabfragen:

sudo nextcloud.occ config:system:get trusted_domains
Outputlocalhost

Derzeit ist nurlocalhost als erster Wert im Array vorhanden. Wir können einen Eintrag für den Domainnamen oder die IP-Adresse unseres Servers hinzufügen, indem Sie 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 eine andere Möglichkeit für den Zugriff auf die Nextcloud-Instanz hinzufügen müssen, können Sie zusätzliche Domänen oder Adressen hinzufügen, indem Sie den Befehlconfig:system:set mit einer inkrementierten Indexnummer (die „1“ im ersten Befehl) erneut ausführen und--valueanpassen ) s.

Sichern des Nextcloud-Webinterface mit SSL

Bevor wir Nextcloud verwenden, müssen wir das Webinterface sichern.

Wenn Ihrem Nextcloud-Server ein Domänenname zugeordnet ist, können Sie mit dem Nextcloud-Snap ein vertrauenswürdiges SSL-Zertifikat vonLet’s Encrypt erhalten und konfigurieren. Wenn Ihr Nextcloud-Serverdoes noteinen Domänennamen hat, kann Nextcloud ein selbstsigniertes Zertifikat konfigurieren, das Ihren Webdatenverkehr verschlüsselt, die Identität Ihres Servers jedoch nicht überprüfen kann.

Befolgen Sie in diesem Sinne den nachstehenden Abschnitt, der Ihrem Szenario entspricht.

Option 1: Einrichten von SSL mit Let's Encrypt

Wenn Ihrem Nextcloud-Server ein Domänenname zugeordnet ist, können Sie Ihr Webinterface am besten mit einem Let's Encrypt SSL-Zertifikat sichern.

Öffnen Sie zunächst die Ports in der Firewall, die Let's Encrypt zur Überprüfung des Domainbesitzes verwendet. Dadurch wird Ihre Nextcloud-Anmeldeseite öffentlich zugänglich. Da wir jedoch bereits ein Administratorkonto konfiguriert haben, kann niemand die Installation hijacken:

sudo ufw allow 80,443/tcp

Fordern Sie als Nächstes 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 erfüllt, um ein Zertifikat vom Let's Encrypt-Dienst anzufordern:

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 Siey ein, um fortzufahren.

Als Nächstes werden Sie aufgefordert, eine E-Mail-Adresse anzugeben, die für Wiederherstellungsvorgänge verwendet werden soll:

OutputPlease enter an email address (for urgent notices or key recovery): [email protected]

Geben Sie zum Schluss den Domainnamen ein, der Ihrem Nextcloud-Server zugeordnet ist:

OutputPlease enter your domain name(s) (space-separated): example.com

Das Let’s Encrypt-Zertifikat wird angefordert und die interne Apache-Instanz wird neu gestartet, um SSL sofort zu implementieren:

OutputAttempting to obtain certificates... done
Restarting apache... done

Sie können jetzt mitsign into Nextcloud for the first time fortfahren.

Option 2: Einrichten von SSL mit einem selbstsignierten Zertifikat

Wenn Ihr Nextcloud-Serverdoes noteinen Domänennamen hat, können Sie die Weboberfläche weiterhin sichern, indem Sie ein selbstsigniertes SSL-Zertifikat generieren. Dieses Zertifikat ermöglicht den Zugriff auf die Webschnittstelle über eine verschlüsselte Verbindung, kann jedoch die Identität Ihres Servers nicht überprüfen, sodass in Ihrem Browser wahrscheinlich eine Warnung angezeigt wird.

Geben Sie Folgendes ein, um ein selbstsigniertes Zertifikat zu generieren und Nextcloud für die Verwendung zu konfigurieren:

sudo nextcloud.enable-https self-signed
OutputGenerating key and self-signed certificate... done
Restarting apache... done

Die obige Ausgabe zeigt an, dass Nextcloud ein selbstsigniertes Zertifikat generiert und aktiviert hat.

Nachdem die Schnittstelle sicher ist, öffnen Sie die Webports in der Firewall, um den Zugriff auf die Webschnittstelle zu ermöglichen:

sudo ufw allow 80,443/tcp

Sie können sich jetzt zum ersten Mal bei Nextcloud anmelden.

Anmelden am Nextcloud-Webinterface

Besuchen Sie nach der Konfiguration von Nextcloud den Domänennamen oder die IP-Adresse Ihres Servers in Ihrem Webbrowser:

https://example.com

[.note] #Note: Wenn Sie ein selbstsigniertes SSL-Zertifikat einrichten, zeigt Ihr Browser möglicherweise eine Warnung an, dass die Verbindung unsicher ist, da das Serverzertifikat nicht von einer anerkannten Zertifizierungsstelle signiert ist. Dies wird für selbstsignierte Zertifikate erwartet. Klicken Sie sich also durch die Warnung, um zur Site zu gelangen.
#

Da Sie bereits ein Administratorkonto über die Befehlszeile konfiguriert haben, werden Sie zur Nextcloud-Anmeldeseite weitergeleitet. Geben Sie die Anmeldeinformationen ein, die Sie für den Administrator erstellt haben:

Nextcloud login page

Klicken Sie auf die SchaltflächeLog in, um sich bei der Nextcloud-Weboberfläche anzumelden.

Beim ersten Aufrufen wird ein Fenster mit Links zu verschiedenen Nextcloud-Clients angezeigt, über die Sie mit Ihrer Nextcloud-Instanz interagieren und sie verwalten können:

Nextcloud client modal

Klicken Sie sich durch, um alle Clients herunterzuladen, an denen Sie interessiert sind, oder verlassen Sie das Fenster, indem Sie aufX in der oberen rechten Ecke klicken. Sie werden zur Nextcloud-Hauptoberfläche weitergeleitet, wo Sie mit dem Hochladen und Verwalten von Dateien beginnen können:

Nextcloud main page

Ihre Installation ist jetzt abgeschlossen und gesichert. Sie können die Benutzeroberfläche erkunden, um sich mit den Merkmalen und Funktionen Ihres neuen Systems vertraut zu machen.

Fazit

Nextcloud kann die Funktionen beliebter Cloud-Speicherdienste von Drittanbietern replizieren. Inhalte können zwischen Benutzern oder extern mit öffentlichen URLs geteilt werden. Der Vorteil von Nextcloud ist, dass die Informationen sicher an einem Ort gespeichert werden, den Sie kontrollieren.

Erkunden Sie die Benutzeroberfläche und installieren Sie Plugins mitNextcloud’s app store, um zusätzliche Funktionen zu erhalten.