Eigener Cloud Speicher mit Nextcloud

16.05.2020
In diesem Beitrag möchte ich euch zeigen, wir ihr unter Debian 10 'buster' euren eigenen Cloud Speicher mit NextCloud einrichten könnt. Der Vorteil gegenüber Angeboten wie Google Drive oder Dropbox liegt natürlich darin, dass ihr die volle Kontrolle über eure Dateien habt (Stichwort "Datenschutz").

Hinweis: Ihr benötigt für viele oder alle Schritte dieser Anleitung einen User mit sudo Rechten oder den root User. Ich nutze den root User, tut ihr dies nicht, müsst ihr bei den angegebenen Befehlen "sudo" voranstellen, z.B. "sudo apt update".

Sprungmarken: Voraussetzungen Installation Einrichtung

Server Update

Bevor ihr mit der eigentlichen Anleitung beginnt, solltet ihr vorab den Server updaten!

apt update && apt dist-upgrade && apt autoremove && apt clean

Mit dieser Befehls-Kombination aktualisiert ihr die Paketquellen, sucht nach Upgrades für installierte Pakete, entfernt überflüssige Abhängigkeiten und leert den Paket-Cache. "dist-upgrade" hat gegenüber "upgrade" den Vorteil, dass zusätzlich geprüft wird, ob durch geänderte Abhängigkeiten bestimmte Pakete deinstalliert bzw. neu installiert werden sollten.

Voraussetzungen

Ihr benötigt einen Server mit mindestens 128 MB Ram, empfohlen werden aber 512 MB Ram oder mehr. Zudem benötigt ihr für NextCloud einen eingerichteten Webserver mit PHP & MariaDB. Solltet ihr bisher noch keinen eingerichtet haben, könnt ihr euch gerne meinen Beitrag Webserver mit Nginx, PHP7 & MariaDB anschauen.

Nextcloud installieren

Als Erstes solltet ihr Nextcloud von der Herstellerwebseite herunterladen (Server Version, Archiv-Datei). Anschließend könnt ihr den Ordner "nextcloud" aus dem heruntergeladenen Archiv entpacken und dann alle Dateien aus dem entpackten Ordner "nextcloud" auf eurem Server hochladen, z.B. unter /cloud/websites/cloud.domain.tld.

Nun müsst ihr den Ordner in den ihr die Nextcloud Dateien hochgeladen habt nur noch in einer Seitenkonfiguration eures Webservers angeben. Wie das für Nginx funktioniert, erfahrt ihr im oben verlinkten Beitrag von mir. Dort wird auch erklärt, wie ihr ein kostenloses TLS Zertifikat bekommt, wozu ich dringend raten würde. Nachfolgend zeige ich euch ein Beispiel wie eine Seitenkonfiguration aussehen könnte, wenn ihr den Webserver wie in meiner Anleitung eingerichtet habt:

server {
  listen 80;
  server_name cloud.domain.tld;
  return 301 https://cloud.domain.tld$request_uri;
}
server {
  listen 443 ssl http2;
  server_name cloud.domain.tld;
  ssl_certificate /etc/nginx/sslcerts/cloud.domain.tld/fullchain.pem;
  ssl_certificate_key /etc/nginx/sslcerts/cloud.domain.tld/privkey.pem;
  root /cloud/websites/cloud.domain.tld;
  access_log /var/log/nginx/cloud.domain.tld_access.log;
  error_log /var/log/nginx/cloud.domain.tld_error.log error;
  include /etc/nginx/snippets/php_7-3.conf;
  include /etc/nginx/snippets/cache.conf;
}

Nun solltet ihr noch einige PHP Module installieren, die für Nextcloud benötigt sind und ggf. noch nicht installiert sind. Anschließend wird Nginx neugestartet.

apt -y install php7.3-zip php-dompdf php7.3-xml php7.3-gd php7.3-curl php7.3-intl php7.3-imagick
service nginx restart

Zudem empfiehlt es sich, das Speicher Limit von PHP auf mindestens 512MB anzuheben.

nano /etc/php/7.3/fpm/php.ini

In dieser Datei ändert ihr den Wert hinter "memory_limit =" auf mindestens "512M".

Damit ist Nextcloud fertig installiert und kann nun eingerichtet werden.

Nextcloud einrichten

Ruft über eure Domain (z.B. cloud.domain.tld) die Nextcloud Installation in einem Browser eurer Wahl auf. Dort begrüßt euch ein Setup, in dem ihr euren Admin Account anlegen, den Pfad zum Data Ordner ändern, die Datenbank Daten eintragen und über die Installation empfohlener Apps entscheiden könnt. Gebt nun zuerst einen Usernamen und ein sicheres Passwort ein. Den Pfad des Data Ordners könnt ihr ruhig so lassen wie er ist. Nun kommt ihr zu den Daten der Datenbank; habt ihr euren Webserver mit Hilfe meines Beitrags Webserver mit Nginx, PHP7 & MariaDB eingerichtet, könnt ihr einfach über PHPMyAdmin einen neuen User anlegen und dabei direkt eine Datenbank dazu erstellen. Natürlich könnt ihr das auch gerne über die Shell machen. Habt ihr eine Datenbank angelegt, gebt ihr die entsprechenden Daten dann im Setup an. Zum Schluss müsst ihr noch entscheiden, ob ihr die von Nextcloud empfohlenen Apps Kalender, Kontakte, Talk, Mail und OnlyOffice installieren möchtet. Ich persönlich nutze diese nicht, aber das ist natürlich Geschmackssache. Habt ihr alles wie gewünscht angegeben, könnt ihr auf den "Finish"-Button klicken, um das Setup abzuschließen. Es folgt eine kurze Ladezeit, in der Nextcloud eingerichtet wird. Habt ihr diese abgewartet, findet ihr euch auf der Nextcloud Startseite wieder. Wie ihr dort sofort sehen werdet, liefert Nextcloud einige Beispiel-Dateien mit aus. Die könnt ihr natürlich alle löschen. Ihr solltet euch dann als Erstes den Einstellungen widmen, welche ihr über das Zahnrad-Symbol oben rechts findet. Dort gibt es jede Menge Einstellungsmöglichkeiten, mit denen ihr Nextcloud nach euren Bedürfnissen anpassen könnt - klickt euch dort einfach in Ruhe durch. Ihr seid damit im Prinzip auch schon fertig und könnt eure Dateien ab sofort in eurem privaten Cloudspeicher verwalten.

Zuletzt bearbeitet: 16.05.2020