Nextcloud 14 auf Ubuntu 18.04 LTS Server installieren – Schritt für Schritt

24 September 2018 5 Kommentare Autor: Jürgen (jdo)

Ein Bekannter hätte gerne für seinen kleinen Betrieb mit mehreren Außenstellen eine Cloud-Lösung. Also habe ich ihm meine Nextcloud gezeigt und eben demonstriert, was sich damit anstellen lässt. Das hat ihm sehr gut gefallen und er hat sich für so eine Nextcloud-Installation entschieden. Sie liegt wie meine auf einem VPS von Contabo. Da ich die Gelegenheit hatte, die Installation von Grund auf durchzuführen, kann ich Schritt für Schritt beschreiben, wie sich Nextcloud 14 auf Ubuntu 18.04 Server installieren lässt. Eine Einrichtung unter Debian oder einem Raspberry Pi sollte relativ ähnlich funktionieren.

Als Webserver habe ich ich für Apache entschieden. Das hat den einfachen Grund, dass ich mich damit besser auskenne als mit Nginx und soll das Konkurrenzprodukt keinesfalls schmälern. Da es aber eine produktive Nextcloud wird, will ich die Komponenten einsetzen, mit denen ich die meiste Erfahrung habe. Außerdem führen viele Wege nach Rom und ich beschreibe einfach, wie ich das System zum Laufen gebracht habe. Findest Du eine effizientere Methode, ist das schön. Aber die Schritt-für-Schritt-Anleitung, wie Du Nextcloud 14 auf Ubuntu Server 18.04 LTS Server installierst, möchte ich so verständlich wie möglich halten. So, nun ist das auch geklärt.

Ich gehe davon aus, dass bereits eine Domain oder Subdomain existiert, die auf den VPS von Contabo zeigt. In meinem Beispiel hier benutze ich die Beispiel-Domain: nextcloud.example.org steht stellvertretend für die eigentliche Domain. Ersetze sie mit der Domain oder Subdomain, mit der Du Deine Nextcloud erreichen willst!

Folgst Du meiner Anleitung Schritt für Schritt, hast Du am Ende eine dezent getunte Nextcloud 14 auf Deinem eigenen Ubuntu 18.04 LTS Server. Die private Cloud ist via HTTPS erreichbar und das Zertifikat erneuert sich mittels Let’s Encrypt selbst. Die VPS bei Contabo fangen übrigens bei 3,99 pro Monat an und da hast Du schon 300 GByte Platz.

root oder sudo

Die meisten hier beschriebenen Befehle musst Du mit sudo ausführen, wenn Du als administrativer Benutzer angemeldet bist. Für die Einrichtung habe ich mir die Tipperei gespart, mich selbst via

sudo su

zu root gemacht und konnte die Befehle ohne sudo ausführen. Ich arbeite eigentlich auch lieber mit sudo, aber wenn es so viel ist …

Nebenbei bemerkt: Das Upgrade von 13 auf Nextcloud 14.0.1 hat bei mir auch tadellos funktioniert.

Den Server bei Contabo absichern

Der Server wurde mit Ubuntu 18.04 LTS Bionic Beaver Server vorbestellt. Der erste Schritt war natürlich, den Server abzusichern. Es wurden im Grunde genommen die gleichen Schritt wie bei meinem eigenen Server durchgeführt, die in diesem Beitrag beschrieben sind. Damit darf sich root nicht mehr via SSH anmelden und fail2ban läuft auch. Das hat nicht zwingend etwas mit der Installation von Nextcloud 14 auf Ubuntu 18.04 Server etwas zu tun, aber es gehört eben auch dazu.

Für Nextcloud notwendige Pakete installieren

Ubuntu 18.04 LTS Server bei Contabo ist mehr oder weniger blank und das ist auch in Ordnung so. Lieber Pakete nachinstallieren, als einen Tag lang ausmisten müssen. Allerdings brauchen wir diverse Pakete, damit die Nextcloud 14 läuft. Das sind Datenbank, Webserver und diverse PHP-Pakete. Installieren wir zunächst die grundlegenden Pakete (wir brauchen später noch einige andere Pakete, aber der Reihe nach):

apt install apache2 mariadb-server libapache2-mod-php php-gd php-json php-mysql php-curl php-mbstring php-intl php-imagick php-xml php-zip

Hinweis: Folgst Du anderen Anleitungen für zum Beispiel Ubuntu 16.04, dann wird die Installation des Pakets php-mcrypt empfohlen. Das Paket wurde in PHP 7.2 entfernt und wir brauchen es auch nicht mehr.

Das System löst die Abhängigkeiten auf und es wird erst einmal eine fröhliche Installations-Orgie gestartet. Die Geschichte dauert ein paar Minuten.

Grundpakete installieren: Webserver Apache, Datenbank MariaDB und PHP-Pakete

Grundpakete installieren: Webserver Apache, Datenbank MariaDB und PHP-Pakete

Ist die Installation abgeschlossen, kannst Du testen, ob Apache funktioniert. Gibst Du in Deinem Browser nextcloud.example.org ein, erscheint die Standardseite von Apache.

Apache funkktioniert schon mal

Apache funktioniert schon mal

Mod_rewrite brauchen wir auf jeden Fall und deswegen aktivieren wir es gleich:

a2enmod rewrite

Im Anschluss starten wir Apache neu:

systemctl restart apache2

Tipp: Willst Du aus welchen Gründen auch immer eine CIFS/SMB-Freigabe als externes Storage einbinden, muss das Paket smbclient auf dem Server installiert sein!

Verzeichnis für Nextcloud anlegen

Für die Nextcloud lege ich ein Verzeichnis unter /var/www mit dem kreativen Namen nextcloud an:

mkdir /var/www/nextcloud

Die Rechte geben wir im Anschluss gleich dem Benutzer des Webservers, damit wir das nicht vergessen und es zu komischen Fehlern kommt

chown -R www-data.www-data /var/www/nextcloud/

Virtuellen Host anlegen

Nun konfigurieren wir einen virtuellen Host für Apache, der nextcloud.example.org auf das Verzeichnis /var/www/nextcloud verweist. Erstelle die Datei /etc/apache2/sites-available/nextcloud.conf und kopiere folgenden Inhalt hinein:

<VirtualHost *:80>
    ServerAdmin admin@example.org
    ServerName nextcloud.example.org
    DocumentRoot /var/www/nextcloud/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
        <Directory /var/www/nextcloud>
          Options Indexes FollowSymLinks MultiViews
          AllowOverride All
          Require all granted
        </Directory>
</VirtualHost>

Den virtuellen Host aktivieren wir nun:

a2ensite nextcloud

und laden im Anschluss die Konfiguration neu:

systemctl reload apache2

Ab sofort ist Deine Domain erreichbar und serviert alles, was sich im Verzeichnis /var/www/nextcloud befindet. Probiere es aus und lege eine einfache index.html an.

HTTPS via Let’s Encrypt aktivieren

Nun wird es spannend. Derzeit ist unsere nextcloud.example.org nur unverschlüsselt via HTTP erreichbar. Wir wollen aber das verschlüsselte HTTPS benutzen und verwenden dazu das kostenlose Let’s Encrypt. Dafür setzen wir einen aktuellen certbot ein, der aus einem PPA kommt. bevor wir das PPA aber bequem hinzufügen können, müssen wir das Paket software-properties-common installieren.

apt install software-properties-common

Danach folgt:

add-apt-repository ppa:certbot/certbot

Im Anschluss installieren wir den certbot.

apt update
apt install python-certbot-apache

Du musst bestätigen, dass das System einige Pakete installiert.

certbot aus dem PPA installieren

certbot aus dem PPA installieren

certbot benutzen

Ist die Installation abgeschlossen, lassen wir uns ein SSL-Zertifikat für unsere Domain ausstellen:

certbot --apache -d nextcloud.example.org

Du wirst nach einer E-Mail-Adresse gefragt, an die wichtige Benachrichtigungen geschickt werden. Danach musst Du die allgemeinen Geschäftsbedingungen mit A akzeptieren. Danach kannst Du Dich noch entscheiden, ob Dir die EFF (Electronic frontier Foundation) Informationen an die gerade eben hinterlegte E-Mail-Adresse schicken darf. Interessiert Dich Datenschutz rund um das Web und so technischer Schnickschnack, ist das auf jeden Fall einer der besseren Newsletter.

Sind alle Fragen beantwortet, wird ein Zertifikat beantragt und ausgestellt. Das dauert ein paar Sekunden und Du musst nichts weiter machen. Pass bei der nächsten Frage aber gut auf!

Zertifikat wird beantragt und ausgestellt

Zertifikat wird beantragt und ausgestellt

Sobald das Zertifikat ausgestellt ist, wirst Du gefragt, ob Du

  1. Keine Umleitung wünscht und die Webserver-Konfiguration wird nicht angepasst
  2. Umleiten möchtest und alle Anfragen werden sofort auf HTTPS umgeleitet

Du kannst das natürlich später manuell auch selbst machen, aber ich habe mich gleich für 2 entschieden – das spart Arbeit.

Ich überlasse certobo die Konfiguration der Umleitung auf HTTPS

Ich überlasse certobo die Konfiguration der Umleitung auf HTTPS

Öffnest Du nun nextcloud.example.org in Deinem Browser, wirst Du sofort auf https://nextcloud.example.org umgeleitet und bekommst das schöne grüne Schloss.

Die Umleitung auf HTTPS funktioniert

Die Umleitung auf HTTPS funktioniert

Das gerade eben installierte Zertifikat ist 90 Tage lang gültig und wird automatisch erneuert. Der von uns installierte certbot hat für die Erneuerung der Zertifikate selbst einen Cronjob im Verzeichnis /etc/cron.d/ mit Namen certbot angelegt – falls es Dich interessiert.

Datenbank uns DB-User anlegen

Bevor wir uns um die Nextcloud an sich kümmern, konfigurieren wir noch die Datenbank. Öffnen wir zunächst die Eingabeaufforderung von MariaDB:

mysql

Das sollte dann in etwa so aussehen:

MariaDB - Eingabeaufforderung

MariaDB – Eingabeaufforderung

Aus Sicherheitsgründen könntest Du der Datenbank einen kryptischen Namen geben. Betreibst Du mehr Datenbanken auf dem Server, sind sprechende Namen übersichtlicher. Für das Beispiel nenne ich sie einfach nextcloud.

CREATE DATABASE nextcloud;

Danach legen wir einen Anwender an, weil sich eine Verbindung mit root nicht schickt:

CREATE USER 'DEIN-DB-USER' IDENTIFIED BY 'DEIN-PASSWORT';

Verwende ruhig einen etwas kryptischen Namen für DEIN-DB-USER und DEIN-PASSWORT sollte natürlich eher stark sein.

Wichtig: Hast Du beim MySQL-Passwort ein Sonderzeichen verwendet, kannst Du Deine Nextcloud möglicherweise nicht einrichten. Danke an den Kommentator für den Hinweis. Einfach im Hinterkopf behalten, dass hier eine mögliche Fehlerquelle ist!

Danach gestattest Du Deinem Anwender Zugriff auf die Datenbanken. Das @localhost sorgt dafür, dass er Anwender nur vom lokalen Server aus zugreifen darf. Das reicht auch und ist am sichersten.

GRANT ALL PRIVILEGES ON *.* TO 'DEIN-DB-USER'@localhost IDENTIFIED BY 'DEIN-PASSWORT';

Zum Schluss machst Du die Änderungen noch wirksam:

FLUSH PRIVILEGES;

Nun darfst Du die Eingabeaufforderung von MariaDB verlassen:

exit

Das sollte es für die Datenbank gewesen sein.

was ist mit phpMyAdmin?

Ja, ich hätte phpMyAdmin installieren können. Allerdings ist das eine potenzielle Security-Lücke. Wenn Du das tust, rate ich Dir, phpMyAdmin bei Bedarr zu aktivieren und wenn Du es nicht mehr brauchst, deaktiviere es wieder. Der Workflow würde wie folgt aussehen:

a2enconf phpmyadmin.conf
systemctl restart apache2

phpMyAdmin benutzen – per Standard ist das keine HTTPS-Verbindung und wieder deaktivieren. Also bitte gut aufpassen oder erst gar nicht benutzen.

a2disconf phpmyadmin.conf
systemctl restart apache2

Nextcloud 14 auf Ubuntu 18.04 LTS Server installieren

Nun kommt der Moment, auf den Du schon sehnlichst gewartet hast. Wie installieren nun die Nextcloud 14 auf Ubuntu 18.04 LTS Server. Begieb Dich in das Verzeichnis /var/www:

cd /var/www

und schnappe Dir die aktuelle Version der Nextcloud, in meinem Fall 14.0.0 (Du findest den richtigen Link im Download-Bereich der Projektseite):

wget -c https://download.nextcloud.com/server/releases/nextcloud-14.0.0.tar.bz2

Danach entpackst Du das Archiv. Unser Verzeichnis /var/www/nextcloud/ wird mit dem nachfolgenden Befehl überschrieben! Stelle am besten sicher, dass es leer ist!

tar xjvf nextcloud-14.0.0.tar.bz2

Nun setzen wir die Berechtigungen noch einmal, wie wir das weiter oben schon getan haben:

chown -R www-data.www-data /var/www/nextcloud/

So muss das im Anschluss aussehen:

Die Dateien dem Webserver überschreiben

Die Dateien dem Webserver überschreiben

Nextcloud 14 unter Ubuntu 18.04 LTS Server einrichten

Nun darfst Du endlich Deine Nextcloud 14 einrichten. Rufst Du Deine Domain nextcloud.example.org auf, sollte Dich der Konfigurations-Assistent begrüßen. Gehen wir die Felder einzeln durch:

  • In das erste Feld kommt der Name des Nextcloud-Administrators. Den darfst Du selbst bestimmen und vielleicht nennst Du in nicht Admin. Sei der Security zuliebe etwas kreativ.
  • Darunter vergibst Du ein Passwort und ein möglichst starkes. Ich benutze für alle Konten unterschiedliche Passwörter und verwalte sie mit KeePassXC.
  • Den Pfad für die Daten kannst Du so lassen.
  • Die Konfiguration für die Datenbank weißt Du bereits. Das sind: DEIN-DB-USER, DEIN-PASSWORT, nextcloud (Name der Datenbank) und localhost.
Schließe die Konfiguration der Nextcloud 14 unter Ubuntu 18.04 LTS Server ab

Schließe die Konfiguration der Nextcloud 14 unter Ubuntu 18.04 LTS Server ab

Klicke jetzt auf Installation abschließen. Die Einrichtung kann ein paar Sekunden dauern. Ist sie erfolgreich, wirst Du von der Nextcloud 14 freundlich begrüßt.

So grüßt Dich die Nextcloud 14

Nextcloud 14 begrüßt Dich freundlich

Erste administrative Schritte mit der Nextcloud 14

Die Nextcloud 14 läuft nun auf Ubuntu 18.04 LTS Server, aber wir sind noch lange nicht fertig. Wenn wir schon einen eigenen Server haben, nutzen wir ihn auch bestmöglich aus. Öffne die Einstellungen und klicke dann in der linken Spalte auf Übersicht.

Einstellungen öffnen

Einstellungen öffnen

Hier springen uns allerlei Sicherheits- und Einrichtungswarnungen entgegen, die wir nun Stück für Stück ausmerzen. Keine Panik, das ist alles halb so wild.

Sicherheits- und Einrichtungswarnungen

Sicherheits- und Einrichtungswarnungen

Die Verwendung des eingebauten PHP-Mailers wird nicht länger unterstützt. Bitte aktualisiere die E-Mail-Server-Einstellungen

Die erste Warnung lässt sich sehr einfach beheben. Klicke einfach auf Grundeinstellungen und dort kannst Du den E-Mail-Server konfigurieren. Im Endeffekt ist das äquivalent zum Postausgangsserver via SMTP, den Du vielleicht auch bei Thunderbird benutzt.

Der E-Mail-Server ist schnell konfiguriert

Der E-Mail-Server ist schnell konfiguriert

Hast Du beim Admin in den persönlichen Einstellungen schon eine E-Mail-Adresse hinterlegt, kannst Du Dir nun ein Test-E-Mail schicken. Das funktioniert wunderbar.

Das Test-E-Mail ist angekommen

Das Test-E-Mail ist angekommen

Damit haben wir bereits eine Warnung weniger.

Tipp: Diese Daten hinterlegt die Nextcloud auch in der Konfigurationsdatei config.php, falls Du den E-Mail-Server auch relativ via Kommandozeile anpassen.

Der „Strict-Transport-Security“ HTTP-Header ist nicht auf mindestens „15552000“ Sekunden eingestellt. Für mehr Sicherheit wird das Aktivieren von HSTS empfohlen, wie es in den Sicherheitshinweisen erläutert ist.

Um diese Warnung auszubessern, müssen wir zurück auf die Konsole. Zunächst einmal müssen wir mod_headers für Apache aktivieren und den Webserver im Anschluss neu starten.

a2enmod headers

Im Anschluss fügen wir in unserer Konfigurationsdatei für den virtuellen Host, die von Let’s Encrypt erstellt wurde, ein paar Zeilen ein. Bearbeite:

/etc/apache2/sites-available/nextcloud-le-ssl.conf

und füge unter ServerName nextcloud.example.org diese Zeilen ein.

<IfModule mod_headers.c>
  Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>

Das sieht dann so aus:

HTTP Strict Transport Security aktivieren

HTTP Strict Transport Security aktivieren

Nun startest Du Apache neu:

systemctl restart apache2

Ab diesem Zeitpunkt sind die orangen und kritischeren Warnung aus der Welt geschafft. Herzlichen Glückwunsch!

Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen finden Sie in der Dokumentation.

Das Caching musst Du nicht konfigurieren und ich weiß ehrlich gesagt nicht, ob es bei einer relativ kleinen Installation einen großen Unterschied macht. Auf jeden Fall lässt sich damit die Performance des Servers beschleunigen, weil häufig benutzte Objekte im Cache vorgehalten werden.

Wie viel es bringt, ist aber egal. Wir haben die Ressourcen auf dem Server und werden es auch aktivieren – weil wir können!

Für kleine Unternehmen oder Organisationen und Einzelserver empfehlen die Entwickler in der Dokumentation APCu für das lokale Caching und Redis für das Sperren der Dateien. Genau das machen wir auch und installieren zunächst ein paar Pakete:

apt install php-memcached memcached php-apcu redis-server php-redis

Im Anschluss starten wir Apache neu und prüfen, ob memcached auch läuft.

systemctl restart apache2
ps ax | grep memcached

Du solltest eine Ausgabe in der Art bekommen:

memcached läuft

memcached läuft

Das Gleiche kannst Du auch noch mal mit redis statt memcached ausführen.

Nun spendierst Du der Konfigurationsdatei von Nextcloud 14 (/var/www/nextcloud/config/config.php) ein paar zusätzliche Parameter.

'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
  'host' => 'localhost',
  'port' => 6379,
),
'memcache.distributed' => '\\OC\\Memcache\\Memcached',
'memcached_servers' =>
array (
  0 =>
  array (
    0 => 'localhost',
    1 => 11211,
  ),
),

Hier nochmal als Grafik:

Damit ist die Caching-Warnung erledigt

Damit ist die Caching-Warnung erledigt

Tipp: Bei mir hat Redis schon mal durchgedreht und hat Sperren nicht mehr freigegeben. In meinem Fall hat nur eine Rosskur auf der Kommandozeile geholfen. Mit

redis-cli flushdb

entfernst Du Daten aus der momentanen Datenbank der Verbindung

redis-cli flushall

Entfernt Daten aus allen Datenbanken. Hat bei mir damals geholfen, kann man sich merken.

Der PHP-OPcache ist nicht richtig konfiguriert. Für eine bessere Leistung empfiehlt es sich folgende Einstellungen in der php.ini vorzunehmen

Diese Warnung bekommen wir in den Griff, indem wir die Datei /etc/php/7.2/apache2/php.ini modifizieren. Suche hier nach dem Eintrag [opcache] und darunter fügst Du folgende Zeilen ein:

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Wieder die entsprechende Grafik dazu:

opcache in der Datei php.ini

opcache in der Datei php.ini

Damit die Änderungen wirksam werden, ist wieder ein Neustart von Apache notwendig:

systemctl restart apache2

Der „Referrer-Policy“ HTTP-Header ist nicht gesetzt auf „no-referrer“, „no-referrer-when-downgrade“, „strict-origin“ oder „strict-origin-when-cross-origin“. Dadurch können Verweis-Informationen preisgegeben werden. Siehe die W3C-Empfehlung

Der Fehler lässt sich sehr einfach beseitigen. Öffne wiederum die Datei

/etc/apache2/sites-available/nextcloud-le-ssl.conf

und in der Sektion mit IfModule mod_headers.c fügst Du die nachfolgende Zeile ein:

Header set Referrer-Policy "no-referrer-when-downgrade"

Danach sieht die Datei so aus:

Referrer Policy konfigurieren

Referrer Policy konfigurieren

und ein Neustart von Apache schließt die konfiguration ab:

systemctl restart apache2

Rufst Du nun Deine Übersicht in der nextcloud 14 unter Ubuntu 18.04 LTS Server abermals auf, passiert etwas Wunderbares. Es gibt überhaupt keine Warnungen mehr, wir haben sie alle vertrieben!

Nextcloud 14 und alle Warnungen sind weg!

Nextcloud 14 und alle Warnungen sind weg!

Ein bisschen Performance Tuning

Alle Warnung sind weg! Das ist toll, aber ganz fertig sind wir immer noch nicht. Keine Panik, es ist nicht mehr viel und Deine Nextcloud 14 wird unter Ubuntu 18.04 LTS Server schnurren wie ein zufriedenes Kätzchen hinterm Kachelofen im Winter.

Cronjob anlegen

Die Nextcloud führt gewisse Hintergrundaufgaben durch. Per Standard geschieht das bei jedem Seitenaufruf via AJAX. Das ist allerdings nicht notwendig und lässt sich besser lösen, vor allen Dingen wenn Du die Hoheitsrechte über den Server hast.

Hintergrundaufgaben per Standard via AJAX

Hintergrundaufgaben per Standard via AJAX

Ein Webcron wäre schon die bessere Lösung, dazu müsstest Du aber einen externen Dienst anweisen, die URL https://nexctloud.example.org/cron.php alle 15 Minuten aufzurufen. Das ginge mit unserem Server und einem Tool wie curl auch, aber noch besser ist die dritte Option.

Da wir einen Linux Server, in diesem Fall Ubuntu 18.04 LTS, für unsere Nextcloud 14 haben, nutzen wir den Cron des Systems. Du könntest systemd für die Aufgabe nehmen, aber in dem Fall bin ich wirklich altmodisch. Beachte aber, dass der Nutzer www-data den Cronjob ausführen muss. Öffne zunächst die Crontab von www-data:

crontab -u www-data -e

Hier fügst Du diese Zeile ein:

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

Ober die Hintergrundaufgaben laufen oder nicht kannst Du überprüfen, indem Du das Kleingedruckte neben Hintergrund-Aufgaben liest. Dort steht, wann der Cronjob das letzte Mal ausgeführt, beziehungsweise cron.php aufgerufen wurde.

Nun kümmert sich der Cron-daemon des Systems um die Hintergrund-Aufgaben und die einzelnen Aufrufe der Seite werden nicht mehr länger damit belästigt.

Viele Bilder und Vorschau via Cronjob erstellen lassen

Dieser Performance-Tipp ist eigentlich nur dann relevant, wenn Du mit vielen Bildern hantierst. Die App Gallery ist per Standard installiert und auch aktiviert. Das System erstellt Vorschaubilder immer dann, wenn sie verlangt werden. Das kann sehr zäh sein und belastet das System außerdem.

In den Apps findest Du ein Programm, das sich Preview Generator nennt. Damit kannst Du die Vorschaubilder via Cronjob erzeugen lassen. Sollte eine Vorschau noch nicht erstellt sein, wird sie On-the-Fly generiert. Lade die App Preview Generator herunter und aktiviere sie.

Preview Generator - Vorschaubilder per Cronjob erzeugen

Preview Generator – Vorschaubilder per Cronjob erzeugen

Öffne wieder die Crontab von www-data:

crontab -u www-data -e

und dann fügst Du diesen Cronjob ein):

*/15 * * * * php /var/www/nextcloud/occ preview:pre-generate

Ich lasse ihn auch all 15 Minuten laufen, vielleicht musst Du ein bisschen mit den Zeiten spielen.

Sicherheitsscanner

Wir können zum Spaß unsere Nextcloud 14 unter Ubuntu 18.04 LTS Server durch den Sicherheitsscanner der Nextcloud schicken. Natürlich ist die Prüfung relativ einfach, aber so ein A+ tut trotzdem ganz gut – das entspricht nämlich einem 1 mit Sternchen!

Ein A+ im Sicherheitsscanner

Ein A+ im Sicherheitsscanner

Folgst Du meiner Anleitung, hast Du eine Installation von Nextcloud 14 auf Ubuntu 18.04 LTS Server, die auch ganz gut optimiert ist. Natürlich hat jede Firma eigene Anforderungen aber ich denke, dass Du auf dieser Grundlage gut aufbauen kannst.

Warum fiel die Entscheidung auf die Nextcloud?

Natürlich weil ich es empfohlen habe! 🙂 Spaß beiseite. Bisher gab es ein NAS, das an der Internetleitung im Hauptbüro hing. Auch die Außendienstmitarbeiter haben via OpenVPN auf die Daten zugegriffen. Das hat eigentlich ganz gut geklappt, aber das NAS kommt in die Jahre. Eine Neuanschaffung steht ins Haus und die kostet auch alle paar Jahre etwas. Hinzu kommt noch: hat die Internetleitung Husten, sind davon alle Zweigstellen betroffen.

Da die vor allen Dingen die Downstreams überall relativ schnell sind, liegt es nahe, das Storage in ein Data Center zu legen. Nun gibt es einige Optionen. Dropbox scheidet für mich völlig aus. Eine Online-Festplatte ginge, aber nachdem ich die Nextcloud demonstrierte, gab es gleich noch ein paar Funktionen, die in Zukunft möglicherweise nützlich sind. Gemeinsame Kalender und Kontakte, Versionierung und so weiter. Nur die End-to-End-Verschlüsselung können wir noch nicht nutzen, weil sie einfach noch nicht reif für die große Bühne ist und außerdem die Versionierung abschießt.

Open Source und freie Software haben übrigens auch zur Entscheidung beigetragen. Gibt man Leuten die Wahl, dann gefällt Ihnen der Gedanke schon, nicht in einem Goldenen Käfig sitzen zu müssen. So eine private Cloud hat schon seinen Reiz, auch wenn sie auf einem Fremdrechner installiert ist.

Auf jeden Fall fangen wir mit einer produktiven Nextcloud 14 an und ich habe dem Chef noch eine Test-Instanz einer Nextcloud aufgesetzt, für die er Administrationsrechte hat. Auf diese Weise kann er Apps aktivieren und deaktivieren, Dinge ausprobieren und so weiter. Sollte ihm eine Funktion gefallen, dann sehen wir zu, dass wir sie in die produktive Nextcloud übernehmen. Das ist ein ganz guter Kompromiss.

Das Backup läuft ähnlich wie bei meinem Contabo Server. Was wir mit der Security machen, müssen wir noch ausprobieren. Möglicherweise aktivieren wir neben der Erkennung für die Ransomware auch einen Virenscanner.

Nette Pi-Konstellation

Du kannst gerne Deinen Senf zu diesem Beitrag geben: Hier geht es zu den Kommentaren




Schreiben macht durstig! Eine kleine Erfrischung kann daher nie schaden. Wem dieser freie Artikel gefallen hat, der darf mir gerne einen frisch gezapften Hopfen-Tee ausgeben (Paypal - der Spenden-Knopf
)
oder

Bitcoin-Adresse: 17F1hqc9LgsAC19DPv5PaRbqsEhuE8AmAA

Ethereum-Adresse: 0x9cc684575721dc07b629ad5d81b43ab4b992e76e

Verge-Adresse: DJaJtZeW494xhnRJJt19Lnt2R5pz7zRp5A

Ich freue mich über jede noch so kleine Spende. Vielen Dank und Prost!

 
 Alle Kommentare als Feed abonnieren

5 Kommentare zu “Nextcloud 14 auf Ubuntu 18.04 LTS Server installieren – Schritt für Schritt”

  1. Jürgen sagt:

    Herzlichen Dank für diese sehr ausführliche Anleitung.
    Nur als Tipp: Keine Sonderzeichen beim mysql-Passwort, sonst kommt man über die Login-Seite von Nextcloud nicht hinaus.
    Sonst alles perfekt erklärt.
    VG Jürgen

    • jdo sagt:

      Könntest Du das näher erklären? Sonderzeichen sind in MySQL-Passwörtern eigentlich schon erlaubt. Mich würde interessieren, was da schief gelaufen ist. Danke!

  2. Jürgen sagt:

    Ja, in MySQL selbst ist das kein Problem.
    Ich hatte ein '#' im Passwort und bekam eine Fehlermeldung bei der ersten Anmeldung wo man den Admin + Passwort und die MySQL Datenbankdaten eingibt. Erst als ich die Datenbank neu ohne Sonderzeichen im Passwort angelegt hatte ging es weiter. Ich hatte die Fehlermeldung in Google eingegeben, schon der erste Eintrag wies auf das Sonderzeichen hin.

  3. Benny sagt:

    Super Anleitung... Erspart tatsächlich eine Menge Zeit bei der Installation...
    Muchas Gracias! TOP!

Antworten