Debian, PHP 7.3 und Nextcloud 16

Am 25.04 wurde das langersehnte Release von Nextcloud 16 veröffentlicht.
Da ich kein Update machen wollte, entschloß ich mich zu einer frischen Neuinstallation. Als Grundlage dient mir eine VM auf der QNAP TS-253B. Die Maschine hat 1 Kern, 1024MB RAM sowie 100GB Festplatte zugewiesen bekommen. Als OS kommt das bei mir beliebte Debian in Version 9.8 Stretch mit PHP 7.3 zum Einsatz.

Zuerst sollten wir die VM auf den neuesten Stand bringen. Zusätzlich den Webserver Apache2 sowie MariaDB für die Datenbank installieren und die Paketquellen für PHP 7.3 aufnehmen:

  • apt update && apt dist-upgrade
  • apt install ca-certificates apt-transport-https
  • wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add –
  • echo “deb https://packages.sury.org/php/ stretch main” | tee /etc/apt/sources.list.d/php.list
  • apt install apache2 mariadb-server
  • apt update && apt dist-upgrade

Benötigte Dienste aktivieren, einschalten, elementare Pakete und deren Abhängigkeiten installieren:

  • systemctl start apache2
  • systemctl enable apache2
  • systemctl start mysql
  • systemctl enable mariadb
  • apt-get install php7.3 libapache2-mod-php php7.3-cgi php7.3-gd php7.3-zip wget unzip php7.3-cli php7.3-common php7.3-curl php7.3-mbstring php7.3-mysql php7.3-xml php-intl php7.3-apcu -y

Nach der ganzen Vorarbeit können wir uns nun Nextcloud zuwenden. Wir laden dazu Nextcloud herunter, entpacken es, verschieben die Dateien in das Verzeichnis des Webservers, und vergeben Rechte dafür.

  • mysql -u root -p
  • create database nextcloud;
  • create user ‘nextcloud’@’localhost’ identified by ‘mypassword’;
  • grant all privileges on nextcloud.* to ‘nextcloud’@’localhost’;
  • flush privileges;
  • \q

Eine Datenbank im Internet bietet immer eine Angriffsfläche, die – soweit es möglich ist – minimiert werden sollte. Dazu gehören eine ordentliche Konfiguration, starke Passwörter sowie regelmässige Updates. Für eine erste Grundkonfiguration liefert MySQL den Befehl mysql_secure_installation welcher leider in den wenigsten Anleitungen erwähnt wird. Die Anwendung ist einfach und sorgt dafür dass unnötige Testzugänge und zu lockere Rechte abgestellt werden. Diesen Befehl ausführen und im Idealfalle alles mit “y” beantworten. Als nächstes müssen wir eine Datenbank anlegen. Dazu melden wir uns an MySQL an, erstellen eine DB für Nextcloud und gewähren die notwendigen Rechte dafür.   

  • wget https://download.nextcloud.com/server/releases/nextcloud-16.0.0.zip
  • unzip nextcloud-16.0.0.zip
  • mv nextcloud /var/www/html/
  • chown -R www-data:www-data /var/www/html/nextcloud

Zum Abschluß noch eine Konfigurationdatei erstellen, die Default-Seite deaktiveren, Webserver neu starten und fertig.

  • nano /etc/apache2/sites-available/nextcloud.conf

In die Datei kommt der Inhalt:

 
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot "/var/www/html/nextcloud"
ServerName 10.1.1.41
<Directory "/var/www/html/nextcloud/">
Options MultiViews FollowSymlinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
TransferLog /var/log/apache2/nextcloud_access.log
ErrorLog /var/log/apache2/nextcloud_error.log
</VirtualHost>
  • a2dissite 000-default
  • a2ensite nextcloud
  • systemctl restart apache2

Die IP der VM im Browser aufrufen, Anmeldedaten festlegen, Datenbankuser sowie Passwort eintippen.

Das Thema Bereinigen der Einrichtungswarnungen hat Karsten in seinem Blog bereits behandelt. Siehe http://www.kussaw.de/2019/04/nextcloud-16-gelandet/ und http://www.kussaw.de/2019/04/nextcloud-15-0-7-und-fehlermeldungen/. Auch ich habe bereits darüber geschrieben. Siehe Artikel https://gander.in/update-zu-nextcloud/

Update zu Nextcloud

Wie in meinen letzten Beitrag (der auch schon etwas zurück liegt) erwähnt, hatte ich noch Probleme mit meiner Installation von Nextcloud. Heute habe ich mir das nochmal angesehen. Ab und an wurmt mich das ganze doch.

Die fehlende Konvertierung kann man recht einfach loswerden. Hierzu muß aber Nextcloud in den Wartungsmodus versetzt werden. Das geht am einfachsten über die config.php. Bei mir unter var/www/html/nextcloud/config Dort die Zeile “maintenance” => false, nach “maintenance” => true, ändern und anschließend mit service apache2 restart den Webserver neu starten.

Nun als www-data (User unter dem der Webserver läuft) am System anmelden: su -s /bin/bash www-data und ins Verzeichnis von Nextcloud wechseln. Dann noch php occ db:convert-filecache-bigint, Maintenance wieder abschalten, Apache2 erneut neu starten und fertig.

Das Update von PHP schiebe ich noch ein wenig vor mir her.
Auch die Fehlermeldungen


Dein Web-Server ist nicht richtig eingerichtet um “/.well-known/caldav” aufzulösen.
Dein Web-Server ist nicht richtig eingerichtet um “/.well-known/carddav” aufzulösen.

habe ich noch nicht abschließend lösen können. Ich vermute hier als Fehlerursache den rProxy von Synology. Wenn ich die VM über die lokale IP anspreche, sind diese Fehler nämlich verschwunden. Für eine sauber laufende Instanz von Nextcloud ohne Einrichtungswarnungen muß man mittlerweile auch immer mehr Zeit investieren.

Nextcloud 15

Ich habe die am 10.12.2018 veröffentlichte Version zum Anlaß einer Neuinstallation genommen. Als Grundlage dient mir ein Minimal-Debian (meine bevorzugte Distribution für Serveranwendungen) als VM auf der TS-253B. Die Maschine hat einen Kern, 512MB RAM und 50GB HDD zugewiesen bekommen. Für die Installation von Nextcloud habe ich mich grob an an einem Tutorial orientiert. Nach der erfolgreichen Grundinstallation werdet ihr von einer ganzen Reihe Einrichtungswarnungen samt Rechtschreibfehlern begrüßt. 🙂

Die ersten beiden Warnungen kann man beseitigen, indem man das Rewrite-Modul für Apache2 aktiviert. Das macht man am besten über die Konsole. a2enmod rewrite

Für die Warnung bezüglich des PHP-Cache müssen wir das passende Paket noch installieren. Das geschieht mit apt-get install php7.0-apcu.
Um das Paket nun auch noch zu aktivieren, müsst ihr in die config.php von Nextcloud (meist unter /var/www/html/nextcloud/config) ‘memcache.local’ => ‘\OC\Memcache\APCu’, hinzufügen. Um die Veränderungen einzulesen und zu übernehmen noch den Apache2-Dienst mit systemctl restart apache2 neu starten.

Um die Warnung des fehlenden PHP-OPcache zu eliminieren reicht es in die  /etc/php/7.0/apache2/php.ini

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

am Ende der Datei zu hinterlegen.

Für den Fehler des fehlenden PHP-Moduls “imagick” reicht es dieses mit  apt-get install php-imagick nachzuinstallieren und den Apache2 neu zu starten.

Mit den bisherigen Schritten werden die Warnungen/Fehlermeldungen schon weniger. Mit den restlichen Bemängelungen habe ich mich noch nicht näher beschäftigt. Eventuell weiß ja der ein oder andere Besucher mehr. Der Zugriff über HTTPS ist in meinem Umfeld weniger von Bedeutung, da schon andere Maßnahmen getroffen wurden. Das Changelog hält wie immer ausführliche und detaillierte Information bereit. 


QTS 4.3.5.0713

Für meine QNAP TS-253B ist ein neues Major-Release veröffentlicht worden.
Es hört auf den Namen 4.3.5 und ist gestern zum Download bereitgestellt worden. 
Dem Release gingen 3 Betas voraus (4.3.5.0684 Public Beta, 4.3.5.0691 Public Beta 2 und 4.3.5.0699 Public Beta 3) die ich aber allesamt ausgelassen habe. Erfreulicherweise hat mich mein NAS drauf hingewiesen, daß man das Update besser nach einem Neustart machen sollte.

Die reine Installation der neuen Firmware war in knapp 2 Minuten erledigt. Nach dem erforderlichen Reboot stand noch eine Dateisystemprüfung an. Diese dauerte bei meinen 2 Volumen etwa 10 Minuten.

Erste große und sichtbaren Neuerungen sind bei dem virtuellen Switch sowie dem Notification Center zu sehen.

 

Der virtuelle Switch zeigt nun welche VMs über welchen Switch gehen. So eine Art Topographie der Netzwerkumgebung. Und über das Notification lassen siche eigenständige Regeln der Benachrichtigung über Ereignisse definieren.

Insgesamt ein rundum gelungenes Update ohne Komplikationen oder Fehler.  

Ausführliche und detaillierte Informationen über Neuerungen, Änderungen und Fixes liefert das Changelog.
Im hiesigen Forum der QNAP-ianer gibt auch einen Thread der sich ganz der neuen Version widmet.

MailPlus Server

Vor längere Zeit habe ich hier im Blog bereits aufgeführt wie ich den Mailserver auf der DS415+ installiert hatte.
Seitdem tut er klaglos ohne Fehler seinen Dienst und ich freue mich eigentlich jeden Tag aufs neue welche Möglichkeiten man mit einer NAS hat. Ich bin insbesondere auch von der Langlebigkeit der Systeme angetan.
Die Geräte werden über einen langen Zeitraum mit Aktualisierungen versehen (im Schnitt zwischen 5-7 Jahre).
Es gibt aber auch Fälle in welchem ein neues Paket (vorerst) der x86-Architektur vorbehalten ist und Geräte mit ARM-Prozessoren nicht oder erst später damit ausgestattet werden. 
Nun, meine DS415+ besitzt einen Intel Atom 64-bit – Prozessor und für diese Geräte wurde bereits vor längerer Zeit ein neues Paket zur Verfügung gestellt. Der “MailPlus Server“. Dieser ist im Grunde nur die etwas aufgebohrte Version des “alten” Mailservers, aber ich denke Synology wird zukünftig dieses Paket zu einer vollständigen Groupware ausbauen. 

Das war für mich Grund genug mir dieses besagte Paket direkt aus dem Paketzentrum zu installieren.

paketBesonders angetan war ich hier von der Möglichkeit eine Migration vom “alten” zum “neuen” Mailserver durchführen zu lassen, wobei alle Einstellungen und Mails übernommen werden. Trotzdem ist es natürlich ratsam ein aktuelles Backup zu haben und sich nicht blind darauf verlassen, daß schon nichts passieren wird. Zusatzlich und zu meiner eigenen Sicherheit habe ich vor der Migration meine Mails aus dem betreffenden Konto in Thunderbird in einen lokalen Ordner kopiert.

migrationmigration2

 

migration_ausfuehrungmigration_uebersicht

 

 

 

 

 

 

 

 

 

 

 

 Die Migration hat in etwa 2min gedauert, und meine Mails waren alle -auf den ersten Blick- noch da.
Die nächsten Tage wird das neue System natürlich besonders getestet und im Auge behalten. 
Von Synology bin ich aber durchaus vernünftige Software gewohnt, so daß ich dem Ganzen positiv entgegensehe.