< Überlegungen >    < zurück >
Der Raspberry Pi als Server - wie sichere ich sinnvoll seine Einstellungen und unsere Daten?
Das Problem
Einen wirksamen Schutz unserer Daten gegen Verlust oder Zerstörung in einem kleinen familiären Netzwerk mit einer Handvoll Anwender zu erreichen, deren Daten auf einem allen Anwendern zugänglichen zentralen Medium gespeichert sind.
Die angestrebte Lösung
Eine einfach zu bedienende und unaufwendige Datensicherung, die mit minimalem Arbeitseinsatz bei einem "Vorfall" trotzdem die Wiederherstellung unserer Daten sichert.
Die Zielsetzung dieses Artikels
Der Artikel richtet sich an Linux-Beginner und noch unerfahrene Heim-Netzwerk-Administratoren. Er beschreibt nicht nur ein Programm, sondern versucht einen komplexen Prozess zu erklären und darüber Anregungen zur Entwicklung eigener Lösungen zu geben, bei dem erst am Ende ein Programm steht. Hier geht es nicht um professionelle Anforderungen und Lösungen und nicht um den Einsatz professioneller Software und Hardware - was ich im privaten Einsatz allerdings auch nicht unbedingt als notwendig erachte. Der Schwerpunkt soll eine etwas umfassenderer Betrachtung von Hintergrundaspekten sein, die wiederum einem Einsteiger beim grundsätzlichen Bewerten und Einschätzen des Themas helfen kann. Artikel für Fachleute gibt's en masse, nur setzen diese halt allzu oft voraus, dass man selber bereits Fachmann ist. Man kann aber nicht "oben" einsteigen, man muss von "unten" beginnen zu verstehen. In diesem Teilbereich des Artikels geht es ausschließlich um das Programm ExtraBAK. Weitere Hintergrund-Informationen und etwas umfassendere und Erklärungen über das Was? Warum? Wie? können zusätzlich bei Interesse auf dieser zum Thema gehörenden <Konzeptseite> nachgelesen werden. Hier und auf dieser Seite soll's dann doch mehr zielgerichtet um den technischen Lösungsweg mit Hilfe des Programms gehen.
Das Anforderungsprofil
Mit der Zielsetzung auf Zuverlässigkeit und Aufwandsminimierung habe ich das Programm für folgende Aufgaben geschrieben:
- Weitestgehend automatisierte Sicherung von User-Daten und -Dateien, sowie von Konfigurationsdateien und Einstellungen der PCs
- Tägliches "Spiegeln" relevanter Verzeichnisse mit rsync auf ein zweites Speichermedium außerhalb des User-Zugriffs
- Erstellen von einfach zu handhabenden Backup-Archiven in überschaubarer Größe, mit übersichtlichem Inhalt und einfach verifizierbar
- Zyklisches Erstellen von partiellen oder selektiven Backups eines vorgegebenen Speichermediums mit tar auf ein zweites Speichermedium außerhalb des User-Zugriffs (in den Varianten rollierend oder überschreibend oder versionierend)
- Mit sicherer Verschlüsselung (AES256, RSA2048) bei Fremd-Speicherung eines Archivs das Archiv vor unberechtigtem Einblick zu schützen
- Übertragung einer verschlüsselten Archiv-Kopie als "Anti-Feuer-, Hochwasser- u. Blitzschlag-Backup" auf einen externen Speicher (Internet-Cloud, eigener Web-Space)
Die Sicherung von Multimedia-Dateien in der Größenordnung vieler Terrabyte ist nicht beachtet und dafür ist ExtraBAK auch nicht geeignet. Der Schwerpunkt des Programms liegt allein in der Bedeutung von "unsere Daten", zu denen ich fremd erstellte Multimedia-Dateien eindeutig nicht zähle - zumal diese auch jederzeit wiederbeschafft werden können. Für andere Anforderungen, wenn also auch große Datenmengen berücksichtigt werden sollen, gibt es andere Konzepte, bessere Lösungen.
Die Abhängigkeiten
ExtraBAK hat folgende Abhängigkeiten:
- Geschrieben und getestet für/auf Debian und Raspian
- tar und sync für die eigentlichen Backup-Prozesse
- md5sum, wenn Checksummen für die spätere Verifizierung eines Archivs berechnet werden sollen (z.B. nach Crypt,  Send, Receive, Decrypt)
- sendmail, wenn eine Info-Email gesendet werden soll (unterstützt werden postfix (MTA als Daemon) und msmtp (Non-Daemon, via Relayhost)
- gpg, wenn von einem erstellten Tarfile eine verschlüsselte Kopie erzeugt werden soll
- ftp , wenn die verschlüsselte Kopie via FTP-Client auf einen FTP-Server gesichert werden soll
Die Funktionen sendmail, gpg und ftp sind nicht unbedingt Bestandteil einer Standard-Installation mit Debian/Raspian und müssen ggf. manuell nachinstalliert werden. sendmail erfordert eine eigene Konfiguration, die mit einem klassischen MTA durchaus sehr anspruchsvoll sein kann. Siehe dazu auch <zusätzliche Hinweise> für eine einfachere alternative Konfiguration mit msmtp. ExtraBAK verwendet gpg entweder mit symmetrischer Verschlüsselung AES256 oder mit asymmetrischer Verschlüsselung RSA2048. Die Verschlüsselung mit RSA2048 erfordert die vorherige Anlegung eines Schlüsselpaares gemäß gnupg-Handbuch. Das Handling mit einem ftp-Client ist nach meinen Kenntnissen seit Jahren standardisiert und erfordert außer korrekten Zugangsdaten in den xtbak*.conf's keine besondere Konfiguration.
Die verwendeten Speichermedien
Das folgende Bild zeigt beispielhaft einen serverseitigen Hardware-Einsatz, aus dem abgeleitet werden kann, welche Daten und Dateien überhaupt gesichert werden sollen. Zum einen sind es alle Konfigurationsdateien des Server-Betriebssystems, dann die auf der SSD gespeicherten anwendereigenen bzw. durch Anwender angelegte persönlichen Dateien, und schließlich einige weitere explizit bestimmte Dateien/Verzeichnisse (z.B. unsere eigenen Fotos) auf der Harddisk1 im Verzeichnis MultiMedia.