Nextcloud mit dem Storage Server verbinden: Platz, Quoten und Freigaben

Veröffentlicht am 6 Min. Lesezeit

Nextcloud bringt Benutzer, Quoten und Freigaben mit, der Storage Server bringt den Platz. Zusammen ergibt das eine eigene Cloud, bei der ein kleiner Server genügt und die Terabyte woanders liegen.

Nextcloud kann alles, was ein Storage Server nicht kann: Benutzer verwalten, jedem ein eigenes Kontingent zuteilen, Ordner freigeben, Links mit Passwort und Ablaufdatum erzeugen und Dateien über HTTPS an Browser ausliefern. Was Nextcloud dagegen teuer macht, ist der Platz, denn er liegt auf der NVMe-SSD des Servers.

Beides zusammen ergibt den Aufbau, der sich in der Praxis durchgesetzt hat: ein kleiner Server für Nextcloud, die Dateien auf einem Storage Server. Dieser Artikel zeigt beide Einrichtungswege, erklärt, welcher wann besser ist, und nennt die Fallen, die dabei zuverlässig auftauchen.

Warum diese Kombination so gut passt

Nextcloud liefertDer Storage Server liefert
Benutzerkonten mit Passwort und Zwei-FaktorPlatz, 1 bis 20 TB
Quoten je BenutzerSnapshots als zweite Sicherungsebene
Freigabelinks mit Passwort und Ablaufgetrennten Standort vom Server
Auslieferung über HTTPS mit Anmeldungeinen Bruchteil der Kosten je Terabyte
Versionierung und Papierkorb100 Unterkonten für getrennte Zwecke

Der entscheidende Punkt für viele Projekte: Der Storage Server kennt keine Quote je Unterkonto. Ein Unterkonto bleibt zwar in seinem Verzeichnis, kann dort aber den ganzen Tarif füllen. Nextcloud löst genau das, denn dort bekommt jeder Benutzer ein hartes Kontingent.

Zwei Wege, und welcher der bessere ist

Weg A: Nextcloud spricht den Speicher selbst an, über seinen eingebauten SMB- oder SFTP-Treiber. Kein Eingriff im Betriebssystem nötig.

Weg B: Du bindest den Speicher im Betriebssystem als Verzeichnis ein und richtest in Nextcloud einen externen Speicher vom Typ „Lokal" auf dieses Verzeichnis ein.

Nimm Weg B, wenn du Root-Rechte hast. Der Umweg über das Dateisystem ist spürbar schneller als der SFTP-Treiber von Nextcloud, vor allem bei vielen kleinen Dateien, und er überlebt Netzstörungen besser. Weg A ist die Lösung, wenn du am Betriebssystem nichts ändern kannst oder willst.

Vorbereitung: ein eigenes Unterkonto

Lege im Kundenbereich ein Unterkonto nur für Nextcloud an, mit eigenem Startverzeichnis, zum Beispiel /nextcloud. Gib ihm nur das Protokoll frei, das du wirklich benutzt. Prüfe außerdem unter „Zugriffseinstellungen", dass Externe Erreichbarkeit eingeschaltet ist, sonst kommt der Server nicht an den Speicher.

Die Beispiele verwenden diese Werte, ersetze sie durch deine eigenen:

AngabeBeispielwert
Hostnameu123456.storage.kernelhost.net
Unterkontou123456-sub1
Freigabe (SMB)backup
Port SMB445
Port SFTP23

Weg B: einbinden und als lokalen Speicher nutzen

Zuerst das Einbinden. Unter Debian und Ubuntu:

apt install -y cifs-utils
mkdir -p /mnt/storage
printf 'username=u123456-sub1\npassword=DEIN_PASSWORT\n' > /etc/samba/storage.cred
chmod 600 /etc/samba/storage.cred

Dann der Eintrag in /etc/fstab, damit er einen Neustart überlebt:

//u123456.storage.kernelhost.net/backup /mnt/storage cifs credentials=/etc/samba/storage.cred,uid=www-data,gid=www-data,file_mode=0660,dir_mode=0770,seal,_netdev,nofail 0 0

Die drei wichtigen Optionen: uid=www-data sorgt dafür, dass der Webserver schreiben darf, seal verschlüsselt die Übertragung mit SMB 3, und _netdev plus nofail verhindern, dass der Server beim Starten hängen bleibt, falls der Speicher gerade nicht antwortet.

mount -a
sudo -u www-data touch /mnt/storage/test && echo "Schreibzugriff in Ordnung"

Danach in Nextcloud die App „External storage support" aktivieren und den Speicher eintragen, entweder in der Oberfläche unter Verwaltung, Externer Speicher, oder auf der Kommandozeile:

sudo -u www-data php occ app:enable files_external
sudo -u www-data php occ files_external:create Daten local null::null -c datadir=/mnt/storage
sudo -u www-data php occ files_external:list

Der Ordner „Daten" erscheint jetzt bei den Benutzern, für die du ihn freigibst. Die Freigabe steuerst du je Benutzer oder je Gruppe, sodass nicht jeder alles sieht.

Weg A: externer Speicher direkt in Nextcloud

Ohne Root-Rechte geht es auch ohne Einbinden. Für SMB brauchst du die passende PHP-Erweiterung:

apt install -y smbclient php-smbclient
systemctl restart php8.3-fpm

Dann unter Verwaltung, Externer Speicher einen Eintrag anlegen:

FeldWert
OrdnernameDaten
Externer SpeicherSMB / CIFS
Hostu123456.storage.kernelhost.net
Freigabebackup
Entfernter Unterordnernextcloud
Benutzernameu123456-sub1
Passwortdas Passwort des Unterkontos

Für SFTP wählst du stattdessen den Typ „SFTP", trägst als Host u123456.storage.kernelhost.net ein und als Port 23. Das ist die häufigste Fehlerquelle bei diesem Weg: Nextcloud schlägt 22 vor, unser Speicher hört auf 23.

Quoten je Benutzer vergeben

Jetzt kommt der Teil, der den ganzen Aufbau rechtfertigt. Unter Verwaltung, Benutzer trägst du je Konto ein Kontingent ein, zum Beispiel 50 GB. Oder auf der Kommandozeile:

sudo -u www-data php occ user:setting fotograf1 files quota "50 GB"

Nextcloud rechnet dabei Versionen und Papierkorb mit ein. Das ist richtig so, überrascht aber gerne: Wer 50 GB bekommt und 50 GB hochlädt, hat durch alte Versionen schnell mehr belegt als gedacht. Für Konten, die viel ersetzen statt hinzufügen, lohnt es sich, die Aufbewahrung von Versionen zu begrenzen.

Für Nextcloud ist der externe Speicher ein Ordner wie jeder andere, Freigaben funktionieren also unverändert. Ein Link mit Passwort und Ablaufdatum ist in drei Klicks erzeugt, und die Datei wird dabei über Nextcloud ausgeliefert, nicht direkt vom Speicher. Deine Zugangsdaten zum Speicher verlassen den Server also nie.

Das ist genau der Baustein, der auf einem Storage Server allein fehlt. Wer eine Website mit Downloadbereich betreibt, bekommt hier Benutzerverwaltung, Berechtigungen und Auslieferung in einem, ohne selbst etwas zu programmieren. Wie die Alternative ohne Nextcloud aussieht, steht in Storage Server für die eigene Website nutzen.

Vier Fallen, die zuverlässig auftauchen

  • Das Datenverzeichnis gehört nicht auf den Speicher. Technisch möglich, praktisch heikel: Nextcloud legt dort auch Sperrdateien und Zwischenstände ab, und eine kurze Netzstörung legt die ganze Instanz lahm. Als externer Speicher trifft eine Störung nur den einen Ordner.
  • Die Datenbank bleibt lokal. Immer. Auf den Speicher gehören Dateien, nichts anderes.
  • Redis einrichten. Ohne Zwischenspeicher für Dateisperren wird Nextcloud mit externem Speicher spürbar langsam, weil jede Sperre über die Datenbank läuft.
  • Port 23 statt 22. Bei SFTP schlägt Nextcloud 22 vor. Unser Speicher hört auf 23, und die Fehlermeldung dazu ist wenig hilfreich.

Welcher Server und welcher Tarif

Für Nextcloud selbst genügt eine kleine Maschine. Die Dateien liegen ja woanders, der Server verwaltet nur: Für eine Handvoll bis einige Dutzend aktive Nutzer reichen 4 bis 8 GB RAM, sofern Redis läuft und der Hintergrundlauf eingerichtet ist. Eine Anleitung dazu steht in Nextcloud auf dem eigenen Server installieren.

Beim Speicher richtet sich die Wahl nach dem Platz:

TarifPlatzSnapshotsPreis
Storage-11 TB10 plus 10 automatisch9,99 EUR
Storage-25 TB20 plus 20 automatisch29,99 EUR
Storage-310 TB30 plus 30 automatisch39,99 EUR
Storage-420 TB40 plus 40 automatisch69,99 EUR

Alle Storage Server stehen in Deutschland, sprechen SMB, SFTP, WebDAV und mehr, erlauben bis zu 100 Unterkonten und bringen Snapshots mit. Keine Einrichtungsgebühr, PrePaid, keine Mindestlaufzeit. Wächst dein Platzbedarf, wechselst du in den größeren Tarif, ohne die Daten anzufassen.

Häufige Fragen

Warum nicht einfach einen großen Server mit viel Platte nehmen?
Weil Plattenplatz auf einem Server mit NVMe-SSD ein Vielfaches kostet. Nextcloud selbst braucht wenig Platz und wenig Leistung, die Masse liegt in den Dateien. Ein kleiner Server plus Storage ist deshalb in der Regel deutlich günstiger als ein großer Server mit viel Platte.
Soll ich SMB oder SFTP nehmen?
Wenn du Root-Rechte auf dem Nextcloud-Server hast, binde den Speicher per SMB ins Dateisystem ein und richte in Nextcloud einen lokalen externen Speicher auf dieses Verzeichnis ein. Das ist schneller und stabiler als der SFTP-Treiber von Nextcloud, der bei vielen kleinen Dateien spürbar bremst.
Kann ich jedem Benutzer eine eigene Größe zuteilen?
Ja, und genau das ist der Grund für diesen Aufbau. Der Storage Server selbst kennt keine Quote je Unterkonto, Nextcloud dagegen schon. In der Benutzerverwaltung vergibst du je Konto ein Kontingent, und Nextcloud setzt es durch.
Kann ich die Daten direkt auf den Speicher legen statt als externen Speicher?
Technisch ja, indem das Datenverzeichnis von Nextcloud auf dem eingebundenen Speicher liegt. Empfehlenswert ist es nicht: Nextcloud legt dort auch Sperrdateien, Vorschauen und Zwischenstände ab, und bei einer kurzen Netzstörung steht die ganze Instanz. Als externer Speicher trifft eine Störung nur den betroffenen Ordner.
Funktionieren Freigabelinks auch für Dateien auf dem Storage?
Ja, für Nextcloud ist externer Speicher ein Ordner wie jeder andere. Freigaben mit Passwort und Ablaufdatum funktionieren genauso, und die Datei wird dabei über Nextcloud ausgeliefert, nicht direkt vom Speicher.
Wie schnell ist das?
Für große Dateien begrenzt die Anbindung deines Servers, nicht der Speicher. Bei vielen kleinen Dateien kommt je Zugriff die Netzlaufzeit dazu, deshalb gehören Vorschaubilder in den lokalen Zwischenspeicher von Nextcloud und nicht auf den externen Speicher.
Was passiert, wenn der Speicher kurz nicht erreichbar ist?
Als externer Speicher eingebunden meldet Nextcloud den Ordner als nicht verfügbar, der Rest läuft weiter. Liegt dagegen das ganze Datenverzeichnis dort, steht die Instanz. Das ist der wichtigste Grund für die Variante mit externem Speicher.
Brauche ich eine Datenbank auf dem Storage?
Nein, auf keinen Fall. Die Datenbank bleibt auf dem Server, auf schnellem lokalem Speicher. Auf den Storage gehören nur die Dateien.
Wie viele Benutzer schafft ein kleiner Server?
Für eine Handvoll bis einige Dutzend aktive Nutzer genügt ein Server mit 4 bis 8 GB RAM problemlos, sofern Redis und ein regelmäßiger Hintergrundlauf eingerichtet sind. Die Dateien liegen ja ohnehin woanders, der Server verwaltet nur.
Was kostet die Kombination?
Ein kleiner Server für Nextcloud plus ein Storage Server ab 9,99 Euro im Monat für 1 TB. Storage-2 mit 5 TB kostet 29,99, Storage-3 mit 10 TB 39,99 und Storage-4 mit 20 TB 69,99. Alles ohne Einrichtungsgebühr, auf PrePaid-Basis und ohne Mindestlaufzeit.

Nextcloud Storage Server Externer Speicher SMB SFTP Quota Freigaben