Niemand möchte, dass der kostenlose Cloud-Speicherplatz knapp wird. Wenn Sie die Benachrichtigung von Google Photos oder iCloud sehen, dass der Speicherplatz voll ist, kann das Ihre exotische Faultier-Reise nach Südamerika trüben. Für uns Heimwerker und Homelabber gibt es jedoch eine Lösung, wenn Sie bereit sind, selbst Hand anzulegen.
Einführung in Nextcloud
Nextcloud ist eine kostenlose und quelloffene Cloud-Speicherplattform, die Ihnen die Leistung und Flexibilität der Cloud bietet. Sie unterstützt mehrere beliebte Linux-Distributionen, wie Red Hat Enterprise Linux 9 und Ubuntu 24.04 LTS. In diesem Artikel verwenden wir Ubuntu Server 24.04.1 und Nextcloud Hub 9 (30.0.0), um einen leistungsstarken, vollständig anpassbaren Cloud-Speicherserver zu erstellen. Einige der hier gezeigten Schritte erfordern möglicherweise Hintergrundwissen zur Linux-Serveradministration und der Befehlszeilenschnittstelle. Denken Sie also daran und machen Sie sich bereit für die technischen Details!
Einrichten des Servers
Um einen Nextcloud-Server einzurichten, benötigen Sie eine Neuinstallation von Ubuntu Server auf einem System Ihrer Wahl. Eine virtuelle Maschine auf Ihrem Hauptrechner oder ein vorhandenes Gerät mit entsprechender Hardware ist dafür bestens geeignet. Wir empfehlen einen Computer mit mindestens 2–4 CPU-Kernen, 8 GB RAM und 500 GB Speicherplatz. Sobald Ihr System bereit ist, können Sie Ubuntu Server über folgenden Link herunterladen: https://ubuntu.com/download/server.
Falls Sie Ubuntu Server noch nie installiert haben, lesen Sie bitte vorab die Anleitung: https://ubuntu.com/tutorials/install-ubuntu-server . Achten Sie darauf, auf der Seite mit den empfohlenen Softwareempfehlungen nicht die Option zur Vorinstallation von Nextcloud auszuwählen, da wir dies für Sie übernehmen.
Nachdem Ihr Server im Netzwerk ist, Sie ihm einen Hostnamen zugewiesen und sich mit dem Benutzernamen und Passwort angemeldet haben, die Sie bei der Ersteinrichtung erstellt haben, laden Sie die neuesten Software-Updates für Ubuntu Server herunter, indem Sie in der Konsole „sudo apt update && sudo apt upgrade -y“ eingeben und die Eingabetaste drücken. Starten Sie den Server nach Abschluss der Updates mit „sudo reboot“ neu.
Hinweis: Möglicherweise müssen Sie Ihr Kennwort erneut eingeben, um Sudo-Befehle auszuführen.
Installieren der Software
Als nächstes müssen wir uns einige der erforderlichen Software besorgen, von der unsere Nextcloud-Instanz abhängt. Geben Sie die folgenden Befehle in Ihre Befehlszeilenschnittstelle ein (oder kopieren und fügen Sie sie besser ein), um den Apache-Webserver und einige Pakete herunterzuladen und zu installieren, die Sie später für erweiterte Nextcloud-Setups benötigen:
sudo apt installiere Apache2 MariaDB-Server PHP Libapache2-Mod-PHP Redis-Server Libmagickcore-6.q16-7-extra
sudo apt installiere php-apcu php-bcmath php-bz2 php-cli php-common php-curl php-gd php-gmp php-imagick php-intl php-ldap php-mbstring php-memcached php-mysql php-redis php-smbclient php-zip php-xml


Konfigurieren des Apache-Webservers – Teil 1
Bevor wir mit Apache herumspielen, müssen wir zunächst sicherstellen, dass wir eine ordnungsgemäße Verbindung zum Server herstellen können. Um Webbrowser-Verbindungen (HTTP und HTTPS) zur Nextcloud-Instanz zuzulassen, verwenden Sie die folgenden Befehle:
sudo ufw allow in „Apache Full“
sudo ufw aktivieren


Konfigurieren von MariaDB
Unser Nextcloud-Server benötigt eine permanent verfügbare Datenbank, um Serverkonfiguration und Benutzerprofile zu speichern. Um MariaDB so zu konfigurieren, dass es nach einem Systemneustart automatisch weiterläuft, geben Sie „sudo systemctl enable mariadb“ ein und drücken Sie die Eingabetaste. Jetzt können wir die Datenbank für unsere Nextcloud-Installation vorbereiten!

- Geben Sie das aktuelle Passwort für root ein (Eingabe für keine): Klicken Sie auf die Eingabetaste
- Wechseln Sie zur Unix_Socket-Authentifizierung [J/n] n
- Das Root-Passwort ändern? n
- Anonyme Benutzer entfernen? [J / n] y
- Stammanmeldung nicht remote zulassen? [J / n] y
- Testdatenbank entfernen und darauf zugreifen? [J / n] y

Geben Sie „sudo mysql -u root“ ein und geben Sie diese Befehle ein, sobald die MySQL-Befehlszeilenschnittstelle erscheint (und vergessen Sie nicht, am Ende jeder Zeile ein Semikolon („;“) zu verwenden!):
ERSTELLEN SIE BENUTZER ‚nextcloud‘@‚localhost‘ IDENTIFIZIERT DURCH ‚P@$$w0rd‘;
Hinweis: Ersetzen Sie „nextcloud“ und „P@$$w0rd“ durch einen Benutzernamen und ein Passwort Ihrer Wahl.
Datenbank erstellen, falls nicht vorhanden, nextcloud-Zeichensatz utf8mb4, sortieren, utf8mb4_general_ci;
Gewähren Sie alle Privilegien auf Nextcloud.* an „nextcloud“@„localhost“;
Hinweis: Ersetzen Sie auch hier das „nextcloud“ vor dem @-Symbol durch Ihren zuvor verwendeten Benutzernamen.
FLUSH PRIVILEGES;
Verlassen;

Aktivieren der PHP-Erweiterungen und Verbessern der PHP-Leistung
Erinnern Sie sich an all die PHP-Erweiterungen, die wir installiert haben? Wir müssen sie aktivieren, um sicherzustellen, dass Nextcloud sie richtig verwenden kann. Verwenden Sie diesen Befehl, um die erforderlichen PHP-Erweiterungen zu aktivieren:
sudo phpenmod apcu bcmath bz2 curl gd gmp imagick intl ldap mbstring memcached mysql redis smbclient zip xml


memory_limit = 512M
- Kann optional erhöht werden, um PHP bei Bedarf mehr Speicher zur Verfügung zu stellen (1024 M, 2048 M usw.)
post_max_size = 100 G
upload_max_filesize = 100 GB
- Dieser Wert und der vorherige Wert stellen die maximale Dateigröße dar, die Sie auf Ihren Nextcloud-Server hochladen können. Ändern Sie sie in die gewünschte maximale Dateigröße. (1G = 1 Gigabyte, 10G = 10 Gigabyte, 100G = 100 Gigabyte usw.) Achten Sie darauf, nur Größen in K (Kilobyte), M (Megabyte) und G (Gigabyte) einzugeben.
Datum.Zeitzone = Amerika/New_York
- Entfernen Sie das „;“ vor der Zeile und verwenden Sie diese Anleitung, um Ihre richtige Zeitzone zu bestimmen: https://www.php.net/manual/en/timezones.php
opcache.enable=1
- Entfernen Sie „;“ vor der Zeile.
opcache.memory_consumption = 128
- Entfernen Sie das „;“ vor der Zeile. Dieser Wert in Megabyte kann an die Speichermenge angepasst werden, die Sie auf Ihrem Nextcloud-Server haben (128 = 128 Megabyte, 1024 = 1024 Megabyte/1 Gigabyte, 2048 = 2048 Megabyte/2 Gigabyte).
opcache.interned_stringers_buffer=16
- Entfernen Sie „;“ vor der Zeile. Stellt die für internierte Zeichenfolgen zugewiesene Speichermenge in Megabyte dar. Der empfohlene Wert ist 16.
opcache.max_accelerated_files = 10000
- Entfernen Sie das „;“ vor der Zeile. Dieser Wert kann auf eine beliebige Zahl zwischen 200 und 1000000 angepasst werden, um den Cache- und Speicherkapazitäten Ihres Systems zu entsprechen.
opcache.revalidate_freq=1
- Entfernen Sie „;“ vor der Zeile und ändern Sie es in 1.
opcache.save_comments=1
- Entfernen Sie das „;“ vor der Zeile und überprüfen Sie, ob der Wert auf 1 gesetzt ist.
Nachdem Sie alle erforderlichen Änderungen an der Datei php.ini vorgenommen haben, speichern Sie die Datei, indem Sie die Strg-Taste gedrückt halten und die Taste „O“ drücken. Drücken Sie zur Bestätigung die Eingabetaste und halten Sie die Strg-Taste erneut gedrückt und tippen Sie auf die Taste „X“, um Nano zu beenden.

Konfigurieren des Apache-Webservers – Teil 2
Obwohl wir Nextcloud heruntergeladen und viele der erforderlichen Softwarekomponenten installiert haben, müssen wir die Standard-Apache-Webseite noch durch Nextcloud ersetzen. Geben Sie in der Konsole „cd ~“ ein und drücken Sie die Eingabetaste, um in Ihr Benutzerverzeichnis zurückzukehren. Dort befindet sich die Nextcloud-ZIP-Datei. Geben Sie nun „unzip latest.zip“ ein , drücken Sie die Eingabetaste und beobachten Sie, wie das Entpacken von Dateien startet!

Bevor der Ordner verschoben werden kann, muss sichergestellt werden, dass der integrierte Benutzer „www-data“ Eigentümer des neuen Verzeichnisses ist. Dies ist äußerst wichtig, da der Benutzer „www-data“ alle Webserver-Operationen des Apache-Webservers und von Nextcloud selbst steuert. Geben Sie in der Konsole „sudo chown -R www-data:www-data ./nextcloud“ ein und drücken Sie die Eingabetaste.


Dokumentstammverzeichnis /var/www/html/nextcloud/ Servername nextcloud-demo.moose.local Alle gewährten Berechtigungen anfordern AllowOverride Alle Optionen FollowSymLinks MultiViews Dav aus

Wenn Sie keine Domain besitzen, können Sie eine bei einem Registrar wie Cloudflare unter https://www.cloudflare.com/products/registrar/ erwerben oder einen kostenlosen, öffentlich verfügbaren Hostnamen von Websites wie https://www.noip.com/ verwenden . Falls Sie weder eine Domain kaufen noch einen kostenlosen Hostnamen nutzen möchten, können Sie in diesem Feld einen fiktiven FQDN angeben. Beachten Sie jedoch, dass Sie für die Verbindung zur Nextcloud-Instanz ausschließlich die IP-Adresse des Servers (öffentlich und privat) verwenden können.
Hinweis: Um den FQDN des Servers für den lokalen Zugriff auf Ihre Nextcloud-Instanz zu verwenden, muss in Ihrem Heimnetzwerk ein ordnungsgemäß konfigurierter DNS-Server ausgeführt werden. Andernfalls müssen Sie die lokale IP-Adresse des Servers verwenden, wenn Sie von Ihrem Heimnetzwerk aus darauf zugreifen.
Nachdem Sie die Virtual-Host-Datei erstellt und den Beispiel-FQDN durch den FQDN Ihres Servers (gültig oder ungültig) ersetzt haben, können Sie die Nextcloud-Site aktivieren, indem Sie „sudo a2ensite nextcloud.conf“ ausführen und den Webserver mit „sudo systemctl restart apache2“ neu starten. Rufen Sie Ihre Nextcloud-Instanz anschließend über einen Webbrowser auf einem anderen Computer im selben Netzwerk auf, entweder über den FQDN des Servers oder über dessen lokale IP-Adresse.
Ersteinrichtung von Nextcloud
Wenn Sie die vorherigen Schritte korrekt ausgeführt haben, werden Sie mit einer Seite begrüßt, auf der Sie aufgefordert werden, einen Administratorbenutzer für die Site zu erstellen und einige Details zu Ihrem Nextcloud-Server einzugeben. Geben Sie dem Administratorbenutzer Ihren gewünschten Namen, z. B. Administrator oder Superadmin, und ein sicheres Passwort.

Die Site wird kurz geladen und bietet Ihnen dann die Möglichkeit, mehrere empfohlene Apps für Ihren Nextcloud-Server zu installieren. Beachten Sie, dass das Hinzufügen weiterer Apps zu Ihrer Nextcloud-Instanz die Verarbeitungslast, den Speicherverbrauch und die Gesamtfestplattennutzung des Servers erhöht. Wählen Sie, ob Sie die empfohlenen Apps installieren möchten, oder überspringen Sie diesen Schritt optional.


Erstellen eines Cron-Jobs
Ein Cronjob ist ein Befehl, der regelmäßig ohne Benutzereingriff ausgeführt wird. Unser Nextcloud-Server benötigt einen Cronjob, der das Server -Skript „cron.php“ alle 5 Minuten aufruft, um optimale Leistung und Funktionalität zu gewährleisten.
Um diesen Cronjob einzurichten, geben Sie den Befehl „sudo crontab -u www-data -e“ in der Serverkonsole ein.

*/5 * * * * php -f /var/www/nextcloud/cron.php

Herzlichen Glückwunsch! Sie haben jetzt einen funktionierenden Nextcloud-Server in Ihrem lokalen Netzwerk! Sie können jetzt mit dem Hoch- und Herunterladen von Dateien auf Ihren Nextcloud-Server in Ihrem Heimnetzwerk beginnen. Um ihn jedoch optimal zu nutzen, müssen wir seine Sicherheit verbessern, einige beliebte Homelab-Apps hinzufügen, ein blitzschnelles Speicher-Caching-System einrichten und ihn vom öffentlichen Internet aus zugänglich machen.
Verbessern Sie die Sicherheit Ihres Nextcloud-Servers
Eine der besten Möglichkeiten, die Sicherheit Ihres Webservers zu verbessern, ist die Umstellung auf HTTPS von unverschlüsseltem und unsicherem HTTP. Wenn diese Option aktiviert ist, werden Anfragen über TLS 1.3, den neuesten und sichersten Verschlüsselungsstandard für Webverbindungen, bedient. Dies ist ein notwendiger Schritt, wenn Sie eine Website im öffentlichen Internet zugänglich machen möchten, und ein hervorragender erster Schritt zum Schutz vertraulicher Informationen.
Wenn Sie sich entschieden haben, Ihren Nextcloud-Datenverkehr zu verschlüsseln, stehen Ihnen zwei Optionen zum Einrichten von HTTPS zur Auswahl: die Verwendung eines selbstsignierten Zertifikats oder die Verwendung eines Zertifikats einer gültigen Zertifizierungsstelle. Wenn Sie derzeit keine Domain besitzen oder keine für eine temporäre Nextcloud-Instanz einrichten möchten, empfehlen wir die Verwendung eines selbstsignierten Zertifikats oder eines Zertifikats eines Hostnamenanbieters. Wenn Sie eine dauerhaftere Nextcloud-Einrichtung planen, empfehlen wir dringend, ein öffentlich vertrauenswürdiges Zertifikat von einer Zertifizierungsstelle wie Let’s Encrypt zu erhalten.
HTTPS mit einem selbstsignierten Zertifikat
Um ein selbstsigniertes Zertifikat zu aktivieren und zu erstellen, müssen Sie einige einfache Befehle eingeben:
sudo a2enmod ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nextcloud-selfsigned.key -out /etc/ssl/certs/nextcloud-selfsigned.crt


Dokumentstammverzeichnis /var/www/html/nextcloud/ Servername nextcloud-demo.moose.local SSLEngine ein SSLZertifikatsdatei /etc/ssl/certs/nextcloud-selfsigned.crt SSLZertifikatsschlüsseldatei /etc/ssl/private/nextcloud-selfsigned.key Alle gewährten Berechtigungen anfordern AllowOverride Alle Optionen FollowSymLinks MultiViews Dav aus


HTTPS mit einem vertrauenswürdigen Zertifikat
Um ein vertrauenswürdiges Zertifikat für Nextcloud zu verwenden, benötigen Sie entweder eine eigene Domain oder ein signiertes Zertifikat eines Hostnamen-Anbieters. Falls Sie zuvor ein selbstsigniertes Zertifikat verwendet und die Schritte im vorherigen Abschnitt zur Aktivierung von HTTPS befolgt haben, entfernen Sie den am Ende der Datei hinzugefügten Textabschnitt und führen Sie die Befehle „sudo a2dismod ssl“ und „sudo systemctl restart apache2“ aus . Speichern und beenden Sie die Datei anschließend mit Strg + „O“ und Strg + „X“.

HTTPS-Setup für Domänenbesitzer (über Certbot)
Nachdem die virtuelle Hostdatei nun wieder eine Standard-HTTP-Konfiguration aufweist, können wir mit den Vorbereitungen beginnen, um ein vertrauenswürdiges Zertifikat einer Zertifizierungsstelle zu verwenden. Wenn Sie eine Domäne besitzen, befolgen Sie diese Schritte, um ein Zertifikat zu erwerben und zu implementieren. Wenn nicht, fahren Sie mit dem nächsten Abschnitt fort, in dem die Verwendung eines von einem Hostnamenanbieter erworbenen Zertifikats beschrieben wird. Um ein Zertifikat zu erwerben, das mit Ihrer eigenen Domäne verwendet werden kann, verwenden wir Certbot von Let's Encrypt, einer gemeinnützigen Organisation, die kostenlose Zertifikate für die Verwendung in Webservern bereitstellt.
Um Certbot herunterzuladen, installieren und aktualisieren Sie zunächst Snap mit „sudo snap install core && sudo snap refresh core“ . Geben Sie anschließend „sudo snap install --classic certbot“ (zwei Bindestriche vor „classic“) ein, um das Paket zu installieren.


Nachdem Certbot die Installation abgeschlossen hat, öffnen Sie die Virtual-Host-Datei erneut, indem Sie „sudo nano /etc/apache2/sites-available/nextcloud.conf“ eingeben und die Eingabetaste drücken. Fügen Sie die folgenden Zeilen direkt über dem Header </VirtualHost> ein, um HTTP-URLs in HTTPS umzuschreiben, und ersetzen Sie „nextcloud-demo.moose.local“ durch den vollqualifizierten Domainnamen Ihres Servers:
RewriteEngine auf RewriteCond %{SERVER_NAME} = nextcloud-demo.moose.local RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
Die fertige virtuelle Hostdatei sollte im Endeffekt folgendermaßen aussehen:

HTTPS-Setup mithilfe eines Zertifikats von einem Hostname-Provider
Die Schritte zur Verwendung eines Zertifikats eines Hostname-Providers zum Aktivieren von HTTPS auf Ihrem Nextcloud-Server sind identisch mit denen im Abschnitt „HTTPS mit einem selbstsignierten Zertifikat“ in diesem Artikel. Die einzige Ausnahme besteht darin, dass Sie den Pfad zu den selbstsignierten Schlüsseln durch einen Pfad zu den Schlüsseln Ihres Hostname-Providers ersetzen müssen. Befehle wie „wget“ und „mv“ kann verwendet werden, um die Zertifikatsdateien herunterzuladen und in die richtigen Verzeichnisse zu verschieben (/etc/ssl/certs für die Zertifikatsdatei und /etc/ssl/private für die Schlüsseldatei). Stellen Sie sicher, dass Sie das Apache SSL-Modul mit dem „sudo a2enmod ssl“ befehlen und verwenden „sudo systemctl restart apache2“ wenn Sie fertig sind, wenden Sie Ihre Änderungen an. Die fertige virtuelle Hostdatei zur Verwendung von Zertifikatsdateien sollte ungefähr so aussehen (wobei die Felder SSLCertificateFile und SSLCertificateKeyFile durch Pfade zu Ihren benutzerdefinierten Zertifikats- und Schlüsseldateien ersetzt werden):
Installieren der App „Antivirus für Dateien“
Auch wenn Nextcloud Daten sicher über HTTPS übertragen kann, bedeutet das nicht, dass alles, was Sie oder Ihre Benutzer hochladen, sicher ist. Ob absichtlich oder unabsichtlich, Malware-Infektionen auf Webservern können massiven Schaden anrichten und sich wie ein Lauffeuer auf andere Systeme ausbreiten, wenn sie nicht schnell behoben werden. Als zusätzliche Schutzebene gegen böswillige Akteure im Internet ist ein Antivirenprogramm für Server, auf die über das Internet zugegriffen werden kann, ein Muss.
ClamAV ist eine kostenlose und quelloffene Antivirensuite, die in Nextcloud integriert werden kann, um von Benutzern hochgeladene Dateien auf Malware zu prüfen. Der Nextcloud App Store bietet eine App namens „Antivirus for files“, die ClamAV als Backend verwendet, um Benutzerdateien zu prüfen und Ihren Server zu schützen. Diese App kann heruntergeladen werden, indem Sie zur Registerkarte „Apps“ navigieren, auf das Profilbild Ihres Administratorkontos klicken und die Kategorie „Sicherheit“ auswählen.



- Konfigurationsdatei automatisch verarbeiten? Ja
- Steckdosentyp: UNIX
- Der lokale (UNIX) Socket clamd lauscht auf: /var/run/clamav/clamd.ctl
- Gruppenbesitzer des lokalen (UNIX) Clamd-Sockets: clamav
- Erstellungsmodus für lokalen Clamd-Socket (UNIX): 666
- Übrig gebliebene UNIX-Socket-Dateien elegant verarbeiten? Ja
- Möchten Sie das Scannen von E-Mails aktivieren? Nein
- Möchten Sie die Archivüberprüfung aktivieren? Nein
- Sie können für diese Eingabeaufforderung „Ja“ auswählen, aber in diesem Fall ist eine zusätzliche Konfiguration erforderlich. Weitere Informationen finden Sie in der ClamAV-Dokumentation: https://docs.clamav.net/manual/Installing/Packages.html#the-packages
- Maximal zulässige Verzeichnistiefe: 15
- Möchten Sie, dass der Daemon regulären symbolischen Dateilinks folgt? Ja
- Timeout zum Stoppen des Thread-Scanners (Sekunden): 180
- Anzahl der Threads für den Daemon: 2
- Subtrahieren Sie 2 von der Anzahl der Kerne/vCPUs Ihres Nextcloud-Servers und geben Sie diese Zahl in dieses Feld ein.
- Anzahl der zulässigen ausstehenden Verbindungen: 15
- Möchten Sie den Systemlogger verwenden? Nein
- Protokolldatei für Clamav-Daemon (zum Deaktivieren „none“ eingeben): /var/log/clamav.log
- Möchten Sie mit jeder Nachricht Zeitinformationen protokollieren? Nein
- Wenn eine hohe Anzahl von Laufwerkschreibvorgängen nicht schädlich für Ihr System ist, wählen Sie stattdessen „Ja“.
- Möchten Sie die Protokollrotation aktivieren? Ja
- Verzögerung in Sekunden zwischen den Selbstprüfungen des Daemons: 3600
- Benutzer, der clamav-daemon ausführt als: clamav
- Gruppen für Clamav-Daemon (durch Leerzeichen getrennt): www-Daten
- Möchten Sie Bytecode aus der Datenbank laden? Ja
- Auf den Bytecode anzuwendende Sicherheitsstufe: TrustSigned
- Timeout der Bytecode-Ausführung in Millisekunden: 60000
Puh! Das war ganz schön viel Konfiguration! Zum Glück müssen wir das nur einmal machen. Mit „systemctl enable clamav-freshclam“ und „systemctl enable clamav-daemon“ kann ClamAV nach dem Systemstart automatisch gestartet werden. Anschließend können wir die Nextcloud-App „Antivirus für Dateien“ konfigurieren.
Melden Sie sich mit einem Webbrowser auf einem anderen Computer, der mit demselben Netzwerk und Subnetz wie Ihr Nextcloud-Server verbunden ist, bei Nextcloud an und klicken Sie auf das Profilbild Ihres Administratorbenutzers. Klicken Sie im Dropdown-Menü auf die Option „Verwaltungseinstellungen“ und wählen Sie nach dem Laden der Seite den Abschnitt „Sicherheit“ aus.

Nextcloud-Integrationen und allgemeine Verbesserungen
Nachdem wir nun einen funktionsfähigen und sicheren Cloud-Server zum Speichern von Daten erstellt haben, können wir seine Fähigkeiten erweitern und neue Funktionen hinzufügen. Beginnen wir mit den einfachsten Aufgaben: Verbinden Sie Nextcloud mit einem E-Mail-Server und legen Sie die Standardtelefonregion fest.
Einen E-Mail-Server verbinden
Um E-Mail-Benachrichtigungen, Aktivitätswarnungen und Links zum Zurücksetzen des Passworts (für Nicht-LDAP-Benutzer) zu senden, muss Nextcloud mit einem funktionierenden E-Mail-Server verbunden sein. Wenn Sie Ihren E-Mail-Server selbst hosten, ist die Einrichtung so einfach wie die Eingabe der richtigen Serveradress- und Authentifizierungsinformationen. Sie können auch einen E-Mail-Server eines Drittanbieters mit einer E-Mail-Adresse verwenden, die Sie bereits haben, beispielsweise den SMTP-Server von Gmail.
Navigieren Sie mit einem Webbrowser auf einem Computer im selben Netzwerk und Subnetz wie Ihr Server zum vollqualifizierten Domänennamen oder zur IP-Adresse Ihres Nextcloud-Servers. Klicken Sie auf das Profilbild Ihres Administratorbenutzers und wählen Sie „Administrationseinstellungen“ aus dem Dropdown-Menü.


Um den SMTP-Server von Gmail mit einem bestehenden Google-Konto zu verwenden, rufen Sie zunächst https://myaccount.google.com/apppasswords auf und erstellen Sie ein App-Passwort gemäß den Anweisungen auf der Website. Geben Sie Ihrem App-Passwort einen Namen, der mit Ihrem Nextcloud-Server zusammenhängt, und bewahren Sie es an einem sicheren Ort auf. Beachten Sie, dass das Passwort zwar mit Leerzeichen alle vier Zeichen angezeigt wird, diese aber tatsächlich nicht enthält. App-Passwörter bestehen aus sechzehn aufeinanderfolgenden Buchstaben.
Füllen Sie die folgenden E-Mail-Serverfelder wie unten aufgeführt aus:
- Sendemodus: SMTP
- Verschlüsselung: Keine/STARTTLS
- Absenderadresse: johndoe @ storagereview.com
- Geben Sie hier die Adresse Ihres Gmail-Kontos ein.
- Serveradresse: smtp.gmail.com: 587
- Authentifizierung: Ja (Kontrollkästchen)
- Anmeldeinformationen: johndoe@storagereview.com App-Passwort hier
- Geben Sie hier Ihre Gmail-Kontoadresse und das von Ihnen erstellte App-Passwort ein.
Wenn Sie fertig sind, klicken Sie auf die Schaltfläche „Speichern“ und bestätigen Sie mit der Schaltfläche „E-Mail senden“, dass Ihre Konfiguration gültig ist.
Wenn Sie für das von Ihnen verwendete Administrator-Benutzerkonto noch keine E-Mail-Adresse festgelegt haben, erhalten Sie eine Warnung mit der Aufforderung, dies zu tun. Dies lässt sich ganz einfach beheben, indem Sie auf das Profilbild Ihres Administrator-Benutzers klicken, im Dropdown-Menü „Persönliche Einstellungen“ auswählen und Ihre E-Mail-Adresse in das Feld „E-Mail“ eingeben. Wenn Sie fertig sind, kehren Sie zum Modul „E-Mail-Server“ unter „Grundeinstellungen“ auf der Seite „Verwaltungseinstellungen“ zurück und geben Sie die Konfiguration bei Bedarf erneut ein.
Festlegen der Standardtelefonregion
Eine sehr schnelle, aber recht hilfreiche Änderung, die wir vornehmen können, damit Nextcloud Telefonnummern besser handhaben kann, ist das Festlegen einer Standardtelefonregion für die Instanz. Wenn Benutzer ihr Profil in den „Persönliche Informationen“-Einstellungen unter „Persönliche Einstellungen“ ausfüllen, werden sie aufgefordert, optional eine Telefonnummer für Kontaktzwecke anzugeben. Ohne eine Standardtelefonregion zwingt Nextcloud die Benutzer, eine Landesvorwahl mit dieser Nummer einzugeben. Durch das Festlegen der Standardtelefonregion können Benutzer diese Vorwahl ausschließen.
Verwenden Sie in der Nextcloud-Serverkonsole „sudo nano /var/www/html/nextcloud/config/config.php“ , um die PHP-Konfigurationsdatei der Nextcloud-Website zu bearbeiten.

'default_phone_region' => 'USA',
-
- Den für dieses Feld verwendeten eindeutigen ISO 3166-1-Code Ihres Landes finden Sie auf der folgenden Wikipedia-Seite: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
Aus Sicherheitsgründen sollten Sie den Inhalt der Datei „config.php“ Ihrer Nextcloud-Instanz niemandem zeigen . Sie enthält sensible Informationen wie Passwörter und Systemgeheimnisse, die nur Ihnen oder Ihren Systemadministratoren bekannt sein sollten. Nachdem Sie die Standard-Telefonregionszeile zu Ihrer Konfigurationsdatei hinzugefügt haben, speichern Sie die Änderungen, indem Sie die Strg-Taste gedrückt halten und auf „O“ tippen. Halten Sie anschließend die Strg-Taste gedrückt und tippen Sie auf „X“, um das Fenster zu schließen. Um die Änderungen anzuwenden, geben Sie „sudo systemctl restart apache2“ in die Konsole ein und drücken Sie die Eingabetaste.
Einrichten eines Wartungsfensters
Eine weitere kleine Verbesserung, die wir an der PHP-Konfigurationsdatei der Nextcloud-Site vornehmen können, ist das Festlegen eines Wartungsfensters für den Server, um intensivere und möglicherweise benutzerbeeinflussende Aufgaben auszuführen. Das Fenster wird in UTC-Zeit festgelegt, daher müssen Sie die gewünschte Startzeit des Wartungsfensters in eine entsprechende UTC-Zeit (ausgedrückt als Ganzzahl zwischen 1 und 24) umrechnen. Das Wartungsfenster dauert vier Stunden, sodass ein Wartungsfenster, das um 3:00 Uhr UTC beginnt, um 7:00 Uhr UTC endet.
Verwenden Sie „sudo nano /var/www/html/nextcloud/config/config.php“ , um die PHP-Konfigurationsdatei erneut zu bearbeiten, und fügen Sie diese Zeile vor der schließenden Klammer „;“ ein, wobei Sie die für die bereits vorhandenen Zeilen in der Datei geltenden Abstandsregeln beachten:
'maintenance_window_start' => 1,
-
- Denken Sie daran, „1“ durch die gewünschte Startzeit Ihres Wartungsfensters, übersetzt in UTC-Zeit, zu ersetzen.

LDAP/Active Directory-Serverintegration
Wenn Sie mehreren Benutzern Zugriff auf Ihre Nextcloud-Instanz gewähren möchten, ist eine der leistungsstärksten Funktionen, die Sie Nextcloud hinzufügen können, die Möglichkeit, eine Verbindung zu einem LDAP- oder Active Directory-Server herzustellen und diesen zu authentifizieren. Viele Organisationen und Homelabber verwenden Active Directory oder LDAP, um den Benutzerzugriff auf Netzwerkressourcen zentral zu organisieren und zu steuern, und Nextcloud bildet hier keine Ausnahme. Mit der App „LDAP-Benutzer- und -Gruppen-Backend“ können Benutzer aus Ihrer Active Directory-Domäne oder Ihrem LDAP-Server in Ihren Nextcloud-Server importiert werden und sich mit ihrem Benutzernamen oder ihrer E-Mail-Adresse und ihrem Passwort anmelden. Diese Funktion wird noch leistungsfähiger, wenn sie mit externem Speicher (wie einer SMB-Freigabe auf einem NAS) kombiniert wird, der individuelle „Home“-Ordner für Benutzer mit benutzerspezifischen Berechtigungen bereitstellt.
Um die App „LDAP-Benutzer- und -Gruppen-Backend“ zu installieren, klicken Sie zunächst auf das Profilbild, wenn Sie mit Ihrem Administrator-Benutzerkonto auf der Nextcloud-Webseite angemeldet sind. Wählen Sie „Apps“ aus dem angezeigten Dropdown-Menü und klicken Sie auf das Modul „Ausgewählte Apps“. Scrollen Sie nach unten, bis Sie die App „LDAP-Benutzer- und -Gruppen-Backend“ finden, und klicken Sie auf die Schaltfläche „Aktivieren“.

Navigieren Sie erneut zur Seite „Administrationseinstellungen“, indem Sie auf das Profilbild Ihres Administratorbenutzers klicken und es aus dem Dropdown-Menü auswählen. Klicken Sie auf das Modul „LDAP/AD-Integration“, um zu beginnen.

- Host: 192.168.1.102
- Ersetzen Sie es durch die IP-Adresse/den Hostnamen Ihres LDAP-Servers oder Active Directory-Domänencontrollers.
- Hafen: 389
- Wenn Sie Active Directory verwenden, verwenden Sie Port 389. Wenn Sie einen anderen LDAP-Servertyp verwenden oder den Port angepasst haben, auf dem Ihr AD-Server auf LDAP-Anfragen wartet, geben Sie hier die spezifische Nummer ein.
- Benutzer-DN: CN=Administrator,CN=Benutzer,DC=Elch,DC=lokal
- Geben Sie den Distinguished Name für das Konto ein, das zum Verbinden von Nextcloud mit Ihrem LDAP/AD-Server verwendet wird. Wenn Sie Active Directory verwenden, können Sie diesen einfach finden, indem Sie diesen Befehl in einem CMD-Fenster ausführen, wobei Sie „Administrator“ durch den Benutzernamen des Kontos ersetzen, das Sie für die Verbindung verwenden:
- dsquery-Benutzername „Administrator“
- Klicken Sie nach dem Ausfüllen dieses Felds auf die Schaltfläche „Anmeldeinformationen speichern“.
- Geben Sie den Distinguished Name für das Konto ein, das zum Verbinden von Nextcloud mit Ihrem LDAP/AD-Server verwendet wird. Wenn Sie Active Directory verwenden, können Sie diesen einfach finden, indem Sie diesen Befehl in einem CMD-Fenster ausführen, wobei Sie „Administrator“ durch den Benutzernamen des Kontos ersetzen, das Sie für die Verbindung verwenden:
- Eine Basis-DN pro Zeile: DC=Elch,DC=lokal
- Klicken Sie nach dem Speichern der vorherigen Anmeldeinformationen auf die Schaltfläche „Basis-DN ermitteln“, um den Basis-DN für den LDAP/AD-Server automatisch zu ermitteln.
- Klicken Sie optional auf die Schaltfläche „Basis-DN testen“, um zu überprüfen, ob die bisherige Konfiguration gültig ist.





Integration externer Speicher
Eine weitere leistungsstarke Ergänzung Ihres Nextcloud-Servers ist die Möglichkeit, eine Verbindung zu externen Speicherpools herzustellen und diese zu verwenden. Das direkte Platzieren von Benutzerdateien auf dem Server selbst kann zu Problemen bei der Verwaltung des Serverspeichers führen und dazu, dass die Kapazität ständig erhöht werden muss, um die Benutzernachfrage zu erfüllen. Wenn Sie nicht ständig darauf achten, Kontingente durchzusetzen und unnötige, von Benutzern erstellte Daten zu entfernen, kann dies zu Frustration und unerwarteten Ausfallzeiten führen. Die Trennung der Webserver- und Speicherkomponenten eines Nextcloud-Setups ist dringend zu empfehlen und entscheidend, wenn Sie ein skalierbares Cloud-Speichersystem und ein angenehmes Benutzererlebnis schaffen möchten.
Mit der App „Externer Speicher-Support“ für Nextcloud können Sie Ordner der folgenden Speichertypen mounten:
- Amazon S3
- fTP
- Nächste Wolke
- Ja, das stimmt, Sie können eine Verbindung zu anderen Nextcloud-Servern herstellen und den auf ihnen verfügbaren Speicher nutzen!
- OpenStack-Objektspeicher
- SFTP
- SMB / CIFS
- WebDAV
Wie Sie sehen, gibt es verschiedene Möglichkeiten, Nextcloud mit externen Speicher-Arrays, Clouds und anderen Systemen zu verbinden. Als Beispiel verbinden wir eine Nextcloud-Instanz mit einer SMB-Freigabe, die den Zugriff auf verschiedene Ordner mithilfe von Berechtigungen steuert, die Benutzern gewährt werden, die aus der Active Directory-Domäne importiert wurden, mit der wir zuvor verbunden waren.
Um die App „Unterstützung für externen Speicher“ zu aktivieren, klicken Sie nach der Anmeldung auf das Profilbild Ihres Administratorbenutzers und wählen Sie „Apps“. Navigieren Sie erneut zu „Ausgewählte Apps“ und suchen Sie das Modul mit der Bezeichnung „Unterstützung für externen Speicher“. Klicken Sie auf die Schaltfläche „Aktivieren“, um die Anwendung verfügbar zu machen.


- Authentifizierung: Manuell eingegeben, in Datenbank speichern
- Wählen Sie diese Option, damit Benutzer zur Authentifizierung manuell ihren eigenen Benutzernamen und ihr eigenes Passwort eingeben. Wählen Sie „Anmelden und Passwort“, um Benutzern mithilfe eines Satzes statischer Anmeldeinformationen Zugriff auf eine SMB-Freigabe zu gewähren. Wählen Sie andernfalls aus dem Dropdown-Menü die Option aus, die Ihren Anforderungen am besten entspricht.
- Ordnername: Familie
- Dieser Name kann beliebig gewählt werden, um den Speicher zu beschreiben, den Sie mounten. Beispiele: „SMB“ oder der Name der Freigabe, die Sie mounten.
- Host: 192.168.1.140
- Ersetzen Sie diesen Wert durch die IP-Adresse oder den FQDN des Servers, auf dem die SMB-Freigabe gehostet wird, mit der Sie eine Verbindung herstellen möchten.
- Teilen auf: Familie
- Ersetzen Sie diesen Wert durch den Namen der Freigabe, die Sie mounten möchten und die auf dem Server vorhanden ist und im Feld „Host“ eingegeben wurde.
- Remote-Unterordner: \
- Um den obersten Ordner der Freigabe (den freigegebenen Ordner selbst) zu mounten, verwenden Sie „\“. Andernfalls geben Sie den Pfad zu einem Unterordner innerhalb der gewünschten Freigabe folgendermaßen ein:
- \Unterordner\ein weiterer Unterordner\noch ein weiterer Unterordner
- Um den obersten Ordner der Freigabe (den freigegebenen Ordner selbst) zu mounten, verwenden Sie „\“. Andernfalls geben Sie den Pfad zu einem Unterordner innerhalb der gewünschten Freigabe folgendermaßen ein:
- المجال: ELCH
- Ersetzen Sie diesen Wert durch den NetBIOS-Namen für eine Domäne, wenn der Zugriff auf die Freigabe über LDAP oder Active Directory gesteuert wird. Dieses Feld ist nicht erforderlich, wenn die Freigabe nicht über einen LDAP/AD-Server gesteuert wird.
- Versteckte Dateien anzeigen: Einblick in das
- Aktivieren Sie dieses Kontrollkästchen, wenn Benutzer versteckte Dateien (die mit dem Zeichen „.“ beginnen) anzeigen können sollen.
- Dateisystem mit Groß-/Kleinschreibung: Einblick in das
- Überprüfen Sie den ACL-Zugriff beim Auflisten von Dateien: Einblick in das
- Diese Option ist äußerst wichtig, damit die Zugriffskontrolle richtig funktioniert. Andernfalls können zwei Benutzer, die dieselbe Freigabe aktiviert haben und Ordner so konfiguriert haben, dass der andere keinen Zugriff hat, trotzdem die Dateien des anderen sehen.
- Alle Leute: Einblick in das
- Aktivieren Sie diese Option, wenn alle Nextcloud-Benutzer Anmeldeinformationen eingeben und eine Verbindung zur SMB-Freigabe herstellen können sollen. Andernfalls wählen Sie über das Feld unten eine lokale Gruppe auf der Nextcloud-Instanz aus, für die die Freigabe verfügbar gemacht werden soll.
- Leider ist es zum Zeitpunkt des Schreibens nicht möglich, eine LDAP-/Active Directory-Gruppe mithilfe des Felds unter dieser Option auszuwählen, wenn diese nicht ausgewählt ist.
- Aktivieren Sie diese Option, wenn alle Nextcloud-Benutzer Anmeldeinformationen eingeben und eine Verbindung zur SMB-Freigabe herstellen können sollen. Andernfalls wählen Sie über das Feld unten eine lokale Gruppe auf der Nextcloud-Instanz aus, für die die Freigabe verfügbar gemacht werden soll.
Nachdem Sie die für Ihr Setup spezifischen SMB-Freigabekonfigurationsdetails eingegeben haben, klicken Sie auf die Schaltfläche mit dem Häkchen, um sie zu speichern und den Benutzern zur Verfügung zu stellen.

Um die Einrichtung der SMB-Freigabe abzuschließen, müssen Nutzer nach einem Klick auf ihr Profilbild und der anschließenden Auswahl aus dem Drop-down-Menü zum Modul „Externer Speicher“ unter „Persönliche Einstellungen“ navigieren.


Nextcloud in einen echten Webserver umwandeln
Jetzt ist Ihre funktionsreiche Nextcloud-Instanz fast bereit, ein öffentlich verfügbarer und leistungsstarker Webserver zu werden! Bevor wir die Schleusen öffnen, müssen wir sicherstellen, dass der Server intensive Anfragen von mehreren Benutzern verarbeiten kann, die auf Dateien zugreifen. Wir haben die Leistung bereits durch mehrere wichtige Änderungen an der PHP-Konfiguration des Systems gesteigert, und die Unterstützung für die Zwischenspeicherung des Speichers kann dies noch weiter verstärken.
Einrichten des Speichercaches – APCu
ACPu ist ein PHP-Cache, der dabei hilft, die Zugriffszeiten häufig verwendeter Objekte zu beschleunigen. Wir werden ihn als ersten Cache für unsere Nextcloud-Instanz verwenden. Bevor wir den APCu-Cache aktivieren, müssen wir einige Änderungen an der Datei „php.ini“ unseres Systems vornehmen.
Verwenden Sie „sudo nano /etc/php/8.3/apache2/php.ini“ , um die Datei zu bearbeiten. Scrollen Sie zum Ende der Datei, indem Sie die Pfeiltaste nach unten länger gedrückt halten. Fügen Sie in einer neuen Zeile am Ende der Datei die folgenden Zeilen hinzu:
apc.enable_cli=1
apc.shm_size=128 M

Um den APCu-Cache vollständig zu aktivieren, öffnen Sie die Datei „apcu.ini“ mit dem Befehl „sudo nano /etc/php/8.3/mods-available/apcu.ini“ und fügen Sie am Ende der Konfigurationsdatei „apc.enable_cli=1“ hinzu, wie Sie es bereits für die Datei „php.ini“ getan haben . Speichern und schließen Sie die Konfigurationsdatei anschließend mit Strg + O und Strg + X.

Geben Sie in der Konsole „sudo nano /var/www/html/nextcloud/config/config.php“ ein und drücken Sie die Eingabetaste. In der Nextcloud-PHP-Konfigurationsdatei fügen wir eine Zeile hinzu, damit Nextcloud APCu für das lokale Speicher-Caching verwendet:
'memcache.local' => '\OC\Memcache\APCu',
Setzen Sie diese Zeile vor die abschließende Klammer „);“ und befolgen Sie dabei die Abstandskonventionen der vorherigen Zeilen in der Konfigurationsdatei. Halten Sie erneut die Strg-Taste gedrückt und drücken Sie „O“ und dann Strg-Taste und „X“, um zu speichern und zu beenden.


Einrichten des Speichercaches – Redis
Sie fragen sich vielleicht: „Warum braucht mein Webserver zwei verschiedene Speichercaches? Reicht einer nicht aus?“ Die Antwort auf diese Frage ist eigentlich ganz einfach. So wie jedes Werkzeug in einem Geschäft seinen eigenen Nutzen hat, gilt das auch für APCu und Redis. APCu ist ein ausgezeichneter lokaler Speichercache und übertrifft letzteren in dieser Kategorie deutlich, während Redis bei verteiltem Caching und transaktionaler Dateisperre glänzt.
Um mit Redis zu beginnen, bearbeiten wir die Redis-Konfigurationsdatei des Systems, indem wir Folgendes eingeben:
„sudo nano /etc/redis/redis.conf“ in die Konsole und drücken Sie die Eingabetaste. Standardmäßig überwacht der Redis-Dienst einen TCP-Port für das Caching und Sperren von Transaktionsdateien, aber für eine Einzelserverkonfiguration ist ein Unix-Socket die bevorzugte Kommunikationsmethode. Die Verwendung eines TCP-Ports wäre sinnvoll, wenn wir den Redis-Dienst über ein Netzwerk bereitstellen, aber ein Unix-Socket ist für die Kommunikation zwischen den Redis- und Nextcloud-Webserverprozessen weitaus effizienter.
Sobald Sie nano gestartet haben, halten Sie die Strg-Taste gedrückt und drücken Sie „W“, um die Suchfunktion von nano zu aktivieren. Geben Sie „unixsocket“ in die Suchleiste ein und drücken Sie die Eingabetaste. nano springt nun zum Abschnitt „Unix-Socket“ der Konfigurationsdatei. Entfernen Sie dort die „#“- Zeichen und die Leerzeichen vor „unixsocket /run/redis/redis-server.sock“ und „unixsocketperm 700“ . Ändern Sie „700“ in „770“ und scrollen Sie nach oben, bis Sie die Zeile „port 6379“ finden . Ändern Sie diesen Wert auf „0“ , um dem Redis-Server mitzuteilen, dass er nicht an diesem TCP-Port auf Verbindungen warten soll. Überprüfen Sie Ihre Konfigurationsdatei anhand der folgenden Abbildungen, bevor Sie sie mit Strg + „O“ und Strg + „X“ speichern und beenden.
Mit diesen Änderungen an der Redis-Systemkonfigurationsdatei können wir nun in der Nextcloud-PHP-Konfigurationsdatei festlegen, dass wir Redis für verteiltes Caching und transaktionale Dateisperrung verwenden möchten. Öffnen Sie diese Datei mit dem Befehl „sudo nano /var/www/html/nextcloud/config/config.php“ in nano.

'memcache.distributed' => '\OC\Memcache\Redis', 'memcache.locking' => '\OC\Memcache\Redis', 'redis' => [ 'Host' => '/run/redis/redis-server.sock', 'Port' => 0, ],
Wenn Sie die Zeilen richtig eingegeben haben, sollte der Abschnitt zum Speicher-Caching Ihrer PHP-Konfigurationsdatei wie dieser Ausschnitt aussehen:


Nextcloud dem Internet zugänglich machen
Wir sind fast fertig! Der letzte Schritt zur Bereitstellung Ihres Nextcloud-Servers ist die Erreichbarkeit über das öffentliche Internet. Dazu müssen Sie die Portweiterleitung auf Ihrem Router konfigurieren. Möglicherweise ist dafür etwas Recherche erforderlich. Nutzen Sie die Anleitungen zur Portweiterleitung unter https://portforward.com/router.htm, um den Hersteller Ihres Routers zu finden und die dort beschriebene Lösung durchzulesen. Falls Ihr Routerhersteller nicht in der Liste aufgeführt ist oder Sie einen Unternehmens- oder Eigenbau-Router verwenden, müssen Sie im Internet recherchieren, bis Sie die passende Methode gefunden haben.
Bei der Konfiguration der Portweiterleitung leiten Sie die Ports 80 und 443 von der privaten IP-Adresse Ihres Nextcloud-Servers (die Sie mit dem Befehl „hostname -I“ ermitteln können ) an die öffentliche IP-Adresse Ihres Routers weiter. Falls Ihr Internetanbieter Ihnen keine öffentliche IP-Adresse zur Verfügung stellt, müssen Sie einen Dienst wie Cloudflare Tunnels nutzen. Dieser ermöglicht es Ihnen, einen sicheren Tunnel zwischen Ihrem Webserver und den Servern von Cloudflare einzurichten, über den der Datenverkehr Ihrer Website-Besucher an Sie zurückgeleitet wird.
Wenn Sie eine Domain besitzen oder einen Hostnamen von einem Hostnamenanbieter verwenden, stellen Sie sicher, dass Ihre DNS-Einträge so eingestellt sind, dass sie auf die öffentliche IP-Adresse Ihres Servers verweisen. Optional bieten einige Dienstanbieter die Möglichkeit, Ihre IP-Adresse vor Website-Besuchern vollständig zu verschleiern und diese Daten sicher von ihren Servern auf Ihre zu übertragen.
Wartung und Aktualisierung von Nextcloud
Damit Ihr Cloud-Speicher schnell und sicher bleibt, müssen Sie sicherstellen, dass Ihr Nextcloud-Server über die neuesten Updates und Sicherheitspatches verfügt. Bevor wir fertig sind, gehen wir noch ein paar Möglichkeiten durch, damit Ihr Server wie neu läuft!
Befehle nach der Bereitstellung
Nach der Bereitstellung Ihres Nextcloud-Servers sind Ihnen möglicherweise Warnungen auf der Übersichtsseite aufgefallen, die nach dem Klicken auf „Administrationseinstellungen“ im Profilbildmenü angezeigt werden. Manchmal enthalten diese Warnungen auch Befehle, mit denen Sie das jeweilige Problem sofort beheben können. In der Regel müssen die Befehle als Benutzer „www-data“ im Verzeichnis „/var/www/html/nextcloud“ ausgeführt werden . Geben Sie „cd /var/www/html/nextcloud“ ein und drücken Sie die Eingabetaste, um in das entsprechende Verzeichnis zu wechseln. Fügen Sie anschließend vor jedem Befehl „sudo -u www-data“ ein.
Wir können jetzt einige dieser Befehle ausführen, um diese Warnungen zu beheben, bevor sie zu Problemen werden:
sudo -u www-data php occ db:fehlende-Spalten hinzufügen
sudo -u www-data php occ db:fehlende-indizes-hinzufügen
sudo -u www-data php occ db:fehlende-Primärschlüssel-hinzufügen
Diese Befehle stellen sicher, dass die Datenbank richtig eingerichtet ist und keine wichtigen Informationen fehlen. Viel Spaß mit der Datenbank und viel Spaß! Oder nicht?
Ubuntu-Server auf dem neuesten Stand halten
Damit Ihr Server sicher und schnell bleibt, müssen Sie das Betriebssystem und die Softwarepakete regelmäßig aktualisieren. Suchen Sie alle ein bis zwei Wochen einen Zeitraum, in dem Ihr Server wenig genutzt wird, und führen Sie die folgenden Befehle aus:
sudo apt update && sudo apt upgrade -y
Sudo Neustart
Diese Befehle aktualisieren das Betriebssystem und die Softwarepakete des Servers und starten den Server neu, sodass die Änderungen beim erneuten Start übernommen werden.
Upgrade von Nextcloud
Da Nextcloud nicht über einen Paketmanager installiert wurde, wird Nextcloud durch ein Update der Server-Softwarepakete mit „apt“ nicht automatisch auf die nächste Version aktualisiert. Um Ihren Nextcloud-Server zu aktualisieren, klicken Sie auf das Profilbild des Administrators oben rechts auf der Webseite und wählen Sie im Dropdown-Menü „Administrationseinstellungen“. Auf der Seite „Übersicht“ sehen Sie, dass ein Upgrade verfügbar ist – in diesem Fall Version 30.0.1. Sollte auf der Seite „Übersicht“ keine Update-Option angezeigt werden, keine Sorge, Sie haben bereits die neueste Version! Schauen Sie regelmäßig hier vorbei, um zu sehen, wann eine neue Version verfügbar ist.
Wenn Sie festgestellt haben, dass ein Update verfügbar ist und Sie ein geeignetes Upgrade-Fenster erreicht haben, wechseln Sie zurück zur Konsole des Servers und geben Sie diesen Befehl ein:
sudo chown -R www-Daten: www-Daten / var / www
Dieser Befehl legt rekursiv den Benutzer „www-data“ als Eigentümer des Verzeichnisses „www“ sowie aller Unterverzeichnisse und Dateien fest und stellt so sicher, dass der Aktualisierungsprozess auf alle benötigten Dateien zugreifen und diese ändern kann.
Sobald dieser Befehl abgeschlossen ist, gehen Sie zurück zur Seite „Übersicht“ im Menü „Verwaltungseinstellungen“ und klicken Sie auf die Schaltfläche „Updater öffnen“. Dadurch gelangen Sie zum Menü „Updater“.
Von hier aus können Sie auf die Schaltfläche „Update starten“ klicken, um die Update-Überprüfung und den Download-Prozess von Nextcloud zu starten. Wenn alles richtig funktioniert, sollten Sie neben jedem Schritt grüne Häkchen sehen, bevor Sie auf „Mit webbasiertem Updater fortfahren“ klicken.
Hinweis: Wenn der Aktualisierungsvorgang beim Schritt „Herunterladen“ fehlschlägt, wiederholen Sie den Download, bis er funktioniert. Dies kann mehrere Versuche erfordern.
Sobald im Menü „Updater“ alle grünen Häkchen erscheinen, klicken Sie auf die Schaltfläche „Wartungsmodus deaktivieren und im webbasierten Updater fortfahren“. Klicken Sie auf dem daraufhin angezeigten Bildschirm auf „Update starten“, um den Update-Vorgang abzuschließen und mit der Anwendung zu beginnen.
Alternativ können Sie, wie auf der Seite für größere oder langsamere Server vorgeschlagen, zum Verzeichnis „nextcloud“ navigieren und das Upgrade dort manuell mit den folgenden Befehlen ausführen:
cd /var/www/html/nextcloud
sudo -u www-data php occ upgrade
Sobald das Upgrade abgeschlossen ist, werden Sie auf die Seite „Dashboard“ auf der Website Ihres Nextcloud-Servers weitergeleitet. Auf Ihrem Server läuft jetzt die neueste und beste Version von Nextcloud!
Glückwunsch! Du hast es geschafft!
Sie sind nun stolzer Besitzer und Betreiber eines voll funktionsfähigen, robusten und leistungsstarken Nextcloud-Servers. Sie können nun Familienmitglieder oder Freunde einladen, Ihren Server als Cloud-Speicher zu verwenden, wenn Sie dies wünschen. Denken Sie daran, dass Nextcloud eine hochmodulare Plattform ist. Scheuen Sie sich also nicht, neue Apps auszuprobieren oder Ihre Konfiguration Ihren Bedürfnissen entsprechend zu ändern! Richten Sie so bald wie möglich regelmäßige Backups des Servers ein und behalten Sie alles im Auge, um sicherzustellen, dass alles ordnungsgemäß funktioniert.
Eine Tour durch das Nextcloud-Setup des Autors
Wow, Sie haben das alles geschafft und möchten immer noch mehr lesen? Wir sind beeindruckt! Hier ist eine kurze Tour und einige Bilder des Nextcloud-Setups des Autors, falls Sie ein wenig Inspiration suchen:
- Hardware:
- Virtualisierungsserver:
- Betriebssystem: Proxmox-Virtualisierungsumgebung
- Gehäuse: Supermicro SC216 mit optionalem redundantem Boot-Laufwerkskäfig auf der Rückseite
- Zentralprozessor: Intel Xeon E5-2683
- Arbeitsspeicher: 4 x 32 GB DDR4 2400 MHz ECC RDIMMs
- Hauptplatine: Gigabyte MU70-SU0 (LGA 2011-3)
- HBA: Broadcom SAS 9305-24i
- NIC: Intel X520-DA2 2-Port 10 GbE SFP+ Adapter
- Grafikkarte: NVIDIA Quadro K1200
- Startlaufwerke: 2x Samsung 850 EVO 120 GB SATA SSDs
- Datenlaufwerke: 24x Samsung 860 EVO 250 GB SATA SSDs
- NAS:
- Betriebssystem: TrueNAS SCALE
- Gehäuse: HPE ProLiant MicroServer Gen10 Plus
- Zentralprozessor: Intel Xeon E-2224
- Arbeitsspeicher: 2x 16 GB DDR4 2666 MHz ECC UDIMMs
- HBA: Integrierter HPE Smart Array E208i-p SR Gen10 Controller
- NIC: HPE Ethernet 560SFP+ 2-Port 10 GbE SFP+ Adapter
- Startlaufwerk: Micron M600 256 GB SATA SSD (über USB angeschlossen)
- Cache-Laufwerke: 2x Samsung 860 EVO 250 GB SATA SSDs (über USB angeschlossen)
- Datenlaufwerke: 4x WD Red Plus 4 TB 5400 RPM HDDs
- Sicherungslaufwerk: WD Red Pro 14 TB 7200 RPM HDD (über USB angeschlossen)
- Modem:
- Netgear CM1200
- DOCSIS 3.1
- 4x 1 GbE RJ45 WAN-Ports (2-Port-Link-Aggregation-kompatibel)
- Router:
- Betriebssystem: pfSense
- Gehäuse: Dell OptiPlex 7040 SFF
- CPU: Intel Core i5 6500
- RAM: GB 8 DDR4
- NIC: Intel E1G44ET 4-Port 1 GbE RJ45-Adapter
- Startlaufwerke: 2x Samsung 860 EVO 250 GB SATA SSDs
- Kernschalter:
- Dell Netzwerk N4032F
- 24x 10 GbE SFP+-Ports
- 2x 40 GbE QSFP+-Ports
- 1 GbE-Verwaltungsport
- Zugangsschalter:
- Dell Netzwerk X1052
- 48x 1 GbE RJ45-Anschlüsse
- 4x 10 GbE SFP+-Ports
- Zugangspunkte:
- Betriebssystem: OpenWRT
- Linksys EA8300 Max Stream
- AC2200
- MU-MIMO
- Wi-Fi 5 (802.11ac)
- 1x 1 GbE RJ45 LAN-Anschluss
- 4x 1 GbE RJ45 LAN-Ports
- UPS:
- CyberPower CP1500AVRLCD3
- 1500VA
- 900W
- Virtualisierungsserver:
- Virtuelle Maschinen:
- Proxmox-Virtualisierungsumgebung:
- 2x Windows Server 2022 Datacenter-Domänencontroller
- Ubuntu Server 24.04.1 Nextcloud-Webserver
- Windows Server 2022-Spieleserver
- TrueNAS-SKALA:
- Backup-Ziel des Proxmox Backup Servers
- Proxmox-Virtualisierungsumgebung:
Andrew nutzt seinen Nextcloud-Server, um Datenspeicherdienste für seine Lieben zu hosten. Durch die Kombination einer Active Directory-Domäne mit redundanten Domänencontrollern, einem NAS zur Speicherung aller Benutzerdaten und einem Virtualisierungsserver hat Andrew sein Setup optimiert, um sowohl zu Hause als auch überall dort, wo eine Internetverbindung besteht, leistungsstarke Speicherdienste bereitzustellen.
Das Rückgrat seines Setups ist das Dell Networking N4032F, das 10 Gigabit pro Sekunde-Verbindungen zwischen seinem Proxmox VE-Server und dem TrueNAS SCALE-Speicherarray bereitstellt. Daten-, Verwaltungs- und Speicherverkehr wurden in drei VLANs aufgeteilt, die im Falle eines Verstoßes zusätzliche Sicherheit bieten. Sein Access Switch bietet standardmäßige 1 Gigabit pro Sekunde-Verbindungen zu seinem Gaming-PC, seinen Access Points und anderen verschiedenen Geräten. Alle Server und virtuellen Maschinen werden von einem Raspberry Pi Model 3B+ überwacht, auf dem Ubuntu Server und eine Uptime Kuma-Instanz laufen. Sobald ein Server/eine VM ausfällt, wird Andrew per E-Mail benachrichtigt, und im Falle eines Stromausfalls werden die Server ordnungsgemäß heruntergefahren, sobald die USV einen niedrigen Ladestand meldet.
Andrew hat seinen Virtualisierungsserver auch selbst gebaut, indem er ein Supermicro 24-Bay 2U-Gehäuse und Teile von eBay und anderen „zweifelhaften“ Quellen verwendet hat. In einer ZFS RAIDZ2-Anordnung kann dieses 24-SSD-Array aus reinen Consumer-Laufwerken einen Durchsatz von ungefähr 8.2 Gigabyte pro Sekunde für Lesevorgänge und 2.7 Gigabyte pro Sekunde für Schreibvorgänge auf virtuellen Maschinen bereitstellen, wie hier auf einer Windows Server 2022-VM gemessen:


Fazit
Wir hoffen, dass Ihnen diese ausführliche, aber detaillierte Nextcloud-Einrichtungsanleitung hilfreich war. Manchmal lohnt es sich, Dinge auf die harte Tour zu lernen, und mehr über die Funktionsweise Ihres Cloud-Speichers zu wissen, ist immer gut. Abonnieren Sie den StorageReview-Newsletter , um weitere Artikel zu Servern, Speichersystemen und Heimnetzwerken zu erhalten, und folgen Sie uns auf YouTube, TikTok, X (ehemals Twitter) oder Instagram!
Referenzen/Quellen:
- https://www.linode.com/docs/guides/how-to-install-nextcloud-on-ubuntu-22-04/
- https://docs.nextcloud.com/server/latest/admin_manual/installation/example_ubuntu.html
- https://docs.nextcloud.com/server/latest/admin_manual/contents.html
- Verschiedene Seiten
- https://www.php.net/manual/en/ini.core.php
- https://nextcloud.com/
- https://ubuntu.com/download/server
- https://www.digitalocean.com/community/tutorials/how-to-create-a-self-signed-ssl-certificate-for-apache-in-ubuntu-16-04
- https://snapcraft.io/install/core/ubuntu
- https://docs.clamav.net/manual/Usage
- Verschiedene Seiten
- https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/user_auth_ldap.html
- https://docs.nextcloud.com/server/30/admin_manual/configuration_files/external_storage/smb.html
- https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html
- https://www.php.net/manual/en/intro.apcu.php
- https://www.php.net/manual/en/apcu.configuration.php
- https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/














Fazit

Amazon