Synology und vDSM im Docker

Heute habe ich mir mal das Paket „Docker“ auf meiner Synology etwas genauer angesehen.
Dieses Paket setzt einen Intel-Prozessor voraus und ist nur für ausgewählte Modelle erhältlich.
Eine Übersicht über die unterstützen Geräte finden sich hier.
Docker ist eine relativ schlanke Virtualisierungsanwendung. In der Standardkonfiguration ist eine Lizenz für vDSM enthalten. Weitere Lizenzen sind kostenpflichtig und können über divererse Anbieter bezogen werden. Übrige Container wie z.B. ownCloud, Nextcloud, WordPress, Apache usw unterliegen keiner Lizenzierung und können mehrfach betrieben werden. Unter anderem kann mit dem Paket auch ein vDSM (virtuell Disk Station Manager) DockerDSM erstellt werden. Damit wäre es zum Beispiel möglich den Mail,- Webserver der Synology auf eben diesen Docker auszulagern. Somit ist eine Trennung der Dienste möglich. Ob jetzt das System anfälliger (weil mehr Code) oder etwas sicherer (Trennung) wird, vermag ich als Laie und oberflächlich betrachtet nicht zu sagen. Ich denke es ist aber auch eine Glaubensfrage. Ich für meinen Teil bemesse die Trennung der Dienste als ausschlaggebendes Argument um mir das mal zu installieren.

start     

Bei der Erstellung eines Containers für vDSM ist zu beachten, daß dieses nur auf einem Volumen mit dem Dateisystem BTRFS funktioniert. Auf meiner DS415+ läuft Volumen1 mit ext4 und Volumen2 mit BTRFS. Somit kann ich in meinem Setup also nur Volumen2 angeben. Vor der Erstellungen werden auch Dinge wie z. B. die IP, Ressourcenbeschränkung, Quota und dergleichen abgefragt. Auch kann man hier wählen mit welcher CPU-Priorität der Container laufen soll. Zum Schluß bekommt man noch eine Übersicht welche Einstellungen man vergeben hat.

Weiterlesen

phpMyAdmin unter nginx sperren

Jeder der auf einem Hoster oder einer NAS MariaDB/MySQL installiert hat, ist mit Sicherheit auch schon über phpMyAdmin gestolpert. Es ermöglicht das anlegen, edititieren oder löschen von Datenbanken über eine grafische Oberfläche (GUI). 
phpmNun wird das Programm auf meiner Synology DS415+ per default in den Ordner /web installiert, welcher auch die Dateien beinhaltet, welche die Web Station (Webserver) ausliefert. Somit ist phpMyAdmin unter domain.de/phpMyAdmin (bzw. DynDNS/phpMyAdmin) zugänglich. Ein für mich unbefriedigender Zustand. Obwohl phpMyAdmin mit einem Passwortschutz versehen ist, muß man es nicht unbedingt öffentlich zugänglich machen. Ich sehe in meinem Anwendungsfall keinen Grund warum ich von unterwegs auf meine Datenbanken zugreifen sollte oder gar muß.
Der Zugriff auf Webseiten, einzelne Ordner oder Dateien ließ sich mit Apache2 als Webserver relativ leicht mit einer .htaccess eingrenzen, bzw. auch sperren..

Da phpMyAdmin aber nicht über den Apache2 sondern mit nginx ausgeliefert wird greifen hier keine Regeln welche über eine .htaccess festgelegt worden sind.

phpMyAdmin erstellt während der Installation aber eine Konfigurationsdatei, in welcher wir den Zugriff ebenfalls einschränken können. Die Datei findet sich unter /var/packages/phpMyAdmin/target/synology_added, und heißt www.phpMyAdmin.enable.conf. In meinem Setup wird der Zugriff auf phpMyAdmin generell verboten, mit zwei Ausnahmen für lokale Netze. 

location ~ ^/phpMyAdmin/(.*)/\. {
deny all;
}
location ~* ^/phpMyAdmin/(.*)\.(jpg|jpeg|png|gif|css|js|ico)$ {
allow 192.168.178.0/24;
allow 192.168.179.0/24;
deny all;
root /var/services/web/;
expires max;
log_not_found off;
}
location ~ ^/phpMyAdmin/(.*)\.php$ {
allow 192.168.178.0/24;
allow 192.168.179.0/24;
deny all;
root /var/services/web/;
include fastcgi.conf;
fastcgi_pass unix:/run/php-fpm/php56-fpm.sock;
}
location ~ ^/phpMyAdmin {
allow 192.168.178.0/24;
allow 192.168.179.0/24;
deny all;
root /var/services/web/;
try_files $uri $uri/ /phpMyAdmin/index.php$is_args$args;

Damit die blau hinterlegten Änderungen auch geschrieben werden, muß nur noch der Webserver der NAS mittels synoservicectl –restart nginx neu gestartet werden.
Mit diesen Änderungen ist es nur noch möglich, phpMyAdmin aus den lokalen Netzen 192.168.178.x und 192.168.179.x aufzurufen, andere IPs werden abgewiesen.

504

Mein perfekter Webmailer

Nach langem suchen und probieren diverser Webmailer (u. a. Horde, Roundcube, afterlogic) habe ich nun die für mich nahezu perfekte Anwendung gefunden: RainLoop

Wenn ich von unterwegs auf meine Mails Zugriff brauche, dient mir das Handy als Mailclient. Die Installation eines Webmailers ist in meinem Setup mehr oder weniger nicht zwingend erforderlich oder nötig. Trotzdem ist es gut zu wissen das ich von jedem vernetzten Rechner Zugriff auf meine Mails haben könnte 🙂
Es gibt vier unterschiedliche Pakete welche sich nur marginal differenzieren. So ist beispielweise bei der Standard-Version kein eigenes Branding (z. B. Logo) möglich und beschränkt sich nur auf den privaten Einsatz.
rainloop Ich habe mich für die Standard entschieden, weil hierbei -im Gegensatz zur Community- es relativ einfach ist ein zur Verfügung stehendes Update zu machen.
Die Installation (von der kann man aber nicht wirklich sprechen) auf meiner Synology DS415+ hat auf Anhieb und völlig problemlos funktioniert.
Gewünschte Version runterladen, lokal entpacken, in das DocumentRoot (/web) kopieren und evtl. Rechte vergeben. Mehr ist nicht nötig.

Die Konfiguration erfolgt über das Adminpanel welches unter domain.de/rainloop/?admin zu finden ist.
Die erste Anmeldung erfolgt mit dem User „admin“ und dem Passwort „12345“ welches unmittelbar danach natürlich sofort geändert werden muß. Den passenden Hinweis erhalten wir ohnehin nach erfolgtem ersten Login.
rainloop1Unter dem Menüpunkt „Domains“ ist die betreffende Domain welche für SMTP berechtigt ist einzutragen. Es sind auch mehrere Domains möglich. So könnte man z. B. auch ein Mailkonto von GMail abrufen sofern man die Domain zulässt.

rainloop2
Die übrigen Punkte sollten selbsterklärend sein. Auch die Integration von CardDAV ist möglich. Hiermit können Kontakte importiert oder -und so habe ich das gelöst- ein externes Adressbuch abgeglichen werden. So werden meine Kontakte aus dem Synology-Eigenen Paket „CardDAV-Server“ mit RainLoop synchronisiert. Hier kann man auch auswählen ob die Kontakte in einer SQLight (Standard) oder einer MySQL-Datenbank abgelegt werden. Es sind auch mehrere Identitäten oder Konten möglich. So kann ich von einem zum anderen Konto wechseln ohne daß ich mich ab,- und neu anmelden muß.  Auch eine Integration in ownCloud ist möglich. Ob man mit diesem Plugin das ganze auch in Nextcloud integrieren kann habe ich noch nicht versucht.

Abgerundet wird das ganze mit schön animierten Themes mit tollen Farbverläufen, einer deutschen Benutzerführung und übersichtlichen Menüs. Insgesamt eine runde Lösung welche mich persönlich begeistert.

Updateorgie im der heimischen IT

Die letzten Tage habe ich einen Rundumschlag in der heimischen IT durchgeführt.
Wie bereits in dem letzten Beitrag angedeutet, wurde meine DS415+ im Zuge einer Neuinstallation mit Brtfs und DSM 6.1-15047 ausgestattet. Hier und da gab es ein paar kleinere Probleme – u. a. mit CardDAV und dem Mailserver. Waren aber selbstverschuldete Probleme. Ich hatte kein gültiges Zertifikat für diese Dienste konfiguriert. Na ja, nach etwa 11 Stunden kann das mal passieren. 😉 
Ausführliche Informationen über das doch recht große Update gibts wie immer im Changelog.

Auf meinem Raspberry Pi 2 wurde LibreELEC 8.0.0 installiert. Die Installation welche über die GUI angestoßen wurde, verlief problemlos. Im Zuge der Migration wurde auch eine neue MariaDB-Datenbank auf der NAS angelegt. Die Einträge der vorherigen Datenbank wurden selbstständig durch das System in die neue überführt.

Zu guter letzt wurde auch Nextcloud auf Version 11.0.2 gehoben. Das Update – ebenfalls über die GUI – lief nach einem Fehler von nginx erst im zweiten Anlauf komplett durch. Im Anschluß erfolgte die notwendige Aktualisierung der Datenbank und natülich wurde die Addons für Kalender und Kontakte
– wie bei jedem Update – deaktiviert. Eine manuelle Aktivierung im Bereich „Apps“ war problemlos möglich. Auch hier liefert das Changelog genauere Informationen über dieses Update.

DSM 6.1-15047

Das nächste große Release von DSM (Disk Station Manager), das Betriebssystem der Geräte von Synology ist gestern veröffentlich worden. Es hört auf den Namen DSM 6.1-15047 und bringt einige interessante Neuerungen mit. Unter anderem File Self-Healing, Service Modularization, Flexible Update Options und Account Protection.
Meine DS415+ meldet seit heute das mögliche Update.

Im dazugehörigen Thread über das Thema liest man vereinzelt von Problemen mit dem Paket init_3rdparty.
Ok, es handelt sich hierbei nicht um eine „offizielle“ Erweiterung von Synology. Da aber das von mir eingesetzte Ultimate Backup dieses Paket als Abhängigkeit benötigt, werde ich die Sache aufmerksam verfolgen.

Auch die weiteren von mir verwendeten Pakete sind seitens Synology aktualisiert worden. 

Die Installation werde ich voraussichtlich am Wochenende machen. Im Zuge dessen erfolgt eine komplette Neuinstallation mit dem Filesystem „Btrfs„. Hier reizen mich insbesondere Funktionen wie z. B. Snapshots oder auch Copy-On-Write (COW). Dazu ist es eben notwendig die bestehenden Volumes (bisher ext4) zu löschen und neu mit Btrfs zu formatieren. Eine Umstellung im laufenden Betrieb gibt es nicht. Dank unterschiedlicher Backupversionen auf unterschiedlichen Speichern kann ich das relativ entspannt angehen. Leider bietet Synology keine Möglichkeit ein komplettes Backup inkl. aller Einstellungen der diversen Pakete machen zu können. Auch manuelle Änderungen in Konfigurationsdateien müssen wieder per Hand nachgepflegt werden.