Mit den Synology DiskStation wurde bewusst ein einfach zu installierendes Consumer-Product gewählt, welches von jedem mehr oder weniger versierten PC-Freak aufgesetzt werden kann. Es benötigt kein besonderes technisches Know-How.
Es gibt einige zentrale Dinge, die korrekt eingerichtet werden müssen:
Für das Backup müssen wir eine Verbindung auf Basis von rsync via ssh laufen lassen. Deshalb
Nun müssen wir noch dafür sorgen, dass die Server aufeinander zugreifen können, ohne sich anmelden zu müssen. Ebenso richten wir unseren eigenen ssh-Zugang so ein, dass wir uns mit Zertifikat anmelden.
sudo su - in den root-Modus gelangenssh-keygen -t rsa erstellen wir für den root-User ein Zertifikat im Unterverzeichnis ~/.sshauthorized_keys einfügen (erstellen, falls noch nicht vorhanden).ssh/id_rsa.pub kopieren - das ist der öffentliche Schlüssel des Serversssh -p 7247 admin@<IP-Nummer Gegenstelle> am anderen Server anmelden und mit sudo su - in den root-Modus wechselnssh-keygen -t rsa durchführen, falls das nicht schon längst gemacht wurdeauthorized_keys (erstellen, falls noch nicht vorhanden) den kopierten öffentlichen Schlüssel des Servers eintragen.ssh/id_rsa.pub hier auch kopierenexit und exit die Verbindung zur Gegenstelle wieder beenden
Die Verbindung kann getestet werden mit dem Befehl ssh -p 7247 <IP-Nummer Gegenstelle> - sie müsste sofort hergestellt werden. Ebenfalls die Gegenrichtung prüfen! Auch die Putty-Verbindung sollte - wenn man unter Auth den privaten Schlüssel hinterlegt, ohne Anmeldung direkt als root verbunden werden.
An sich ist nur eine Verbindung vom Backup-Server auf den Produktions-Server nötig für die Backup-Scripts.
Es heisst zwar, security by obscurity sei schlecht, aber sie ist nicht ganz wirkungslos. Nicht jeder soll wissen, welche Hardware wir einsetzen und wo deshalb unsere Schwachstellen liegen. Und das Administrator-Passwort möchten wir auch nicht im Klartext über das Netzwerk schicken. Deshalb:
Die DiskStation führt manchmal Überprüfungen durch und entdeckt Fehler. Damit wir diese rasch erkennen können, richten wir in den Benachrichtigungen ein:
operating@plan-bee.ch geschicktÜber den Paketmanager können wir verschiedene Zusatz-Programme installieren. Ganz sicher installieren wir:
MariaDB steht für MySQL. Genaueres zum Unterschied zwischen MariaDB und MySQL siehe den Wikipedia-Artikel. Ab und an wird in der Dokumentation von MySQL gesprochen; gemeint ist immer MariaDB. Diese Datenbank wird über den Paketmanager installiert. Wir passen die Startparameter etwas an, damit sie für uns besser läuft, und wir werden die SSL-Verschlüsselung nutzen.
MariaDB holt seine Konfiguration eigentlich aus /etc/mysql/my.cnf. Diese Datei anzupassen ist keine gute Idee, da Synology bei jedem Systemupdate (also praktisch jede Woche) die Datei überschreibt und damit unsere Konfigurationsänderung weg ist.
Die Synology-Installation von MariaDB bietet aber die Datei /var/packages/MariaDB/etc/my.cnf an, in der wir unsere Anpassungen reinschreiben können:
[mysqld] # max_allowed_packet ermöglicht es, BLOBs ab einer gewissen Grösse zu speichern max_allowed_packet = 64M innodb_buffer_pool_size = 1400M # ohne skip-name-resolve versucht MariaDB anhand der IP-Adresse des Clients einen Namen herauszufinden - eine # zeitraubende Sache... skip-name-resolve skip-host-cache # Dank lower_case_table_names können wir die Tabelle artikel auch als Artikel ansprechen - aufgrund der # historischen Benennung der Tabellen in der Access-Zeit eine wichtige Einstellung! lower_case_table_names=1 # Über den internen Event-Scheduler laufen in der KSCO-Datenbank einige Jobs... event-scheduler=on [mysqladmin] user=ping password=ping
Um die Verbindungen zwischen Clients und Server zu verschlüsseln setzen wir Zertifikate ein. Siehe dazu MariaDB zertifikatbasiertes Anmeldesystem.
Damit die Datenbank nächtlich ihre E-Mails rumschicken kann (Check-e-Mails etc.) muss der Mailserver installiert sein. Dazu das Package Mail-Server installieren und anschliessend SMTP aktivieren und einen Hostnamen (server06.kraemerschwab.com) eintragen.
siehe Monitoring-System
siehe Kurs-Schnittstellen
Dieser Benutzer wird durch die Synology-Distribution angelegt und mit ihm wird überprüft, ob der Server läuft oder nicht.
/usr/share/mysql/mysql.server restart