Open Source im professionellen Einsatz
Linux-Magazin 08/2013
© Maksim Kabakou, 123RF.com

© Maksim Kabakou, 123RF.com

Verschlüsselte Cloudbackups mit Duplicity

Datensafe

Wer wertvolle Daten archiviert oder sichert, sollte sich eine Strategie zurechtlegen, die auch deren Sicherheit berücksichtigt. Die Backupsoftware Duplicity erlaubt das Archivieren verschlüsselter Daten auf unsicherem Terrain.

714

Duplicity ist das Kommandozeilentool der Wahl, wenn es darum geht, Backups in potenziell unsicheren Umgebungen abzulegen, denn es verschlüsselt Daten standardmäßig. Chiffriert dürfen Backups zur Not auch Dritten in die Hände fallen und sie lassen sich sowohl auf FTP- und SSH-Servern als auch in den Cloudspeicher von Amazon (S3) oder Ubuntu (U1) lagern. Das bringt nicht nur zusätzlich Redundanz ins Backup, sondern macht es zugleich weltweit verfügbar.

Duplicity erzeugt nach dem ersten Start ein vollständiges Backup und speichert spätere Veränderungen inkrementell in Form so genannter Volumes. Platzsparende Hardlinks verweisen dann auf jene Dateien, die bereits im Vollbackup stecken, während die inkrementellen Backups nur noch aus den veränderten Daten (Deltas) bestehen.

Im Prinzip genügt es also, ein Vollbackup zu erstellen und von da an alle Änderungen nur noch inkrementell zu sichern. Doch davor warnen die Duplicity-Entwickler: Nicht nur kann ein Fehler in einem inkrementellen Teil womöglich die komplette Sicherung ruinieren [1], sondern das Wiederherstellen von Dateien nimmt auch recht viel Zeit in Anspruch, wenn sich die Software durch alle inkrementellen Backups wühlt.

Für erklärte Mausschubser gibt es mit Déjà Dup übrigens eine grafische Oberfläche für Duplicity, die sich sehr einfach bedienen lässt und viele wesentliche Funktionen abbildet. Sie ist Teil von Gnome, steckt zum Beispiel in Distributionen wie Ubuntu und Fedora, lässt sich aber auf Systemen ohne grafische Oberfläche nicht einsetzen. Daneben gibt es noch zahlreiche Kommandozeilentools wie Duply, Backupninja und Dupinanny, die den Umgang mit Duplicity vereinfachen wollen [2].

Schlüsselfertig

Verfügt der Admin noch nicht über einen eigenen GPG-Schlüssel oder möchte er für die Sicherung einen eigenen anlegen, erzeugt er ihn über »gpg --gen-key« (Abbildung 1). Im Kommentar hinterlässt er – falls gewünscht – den Zweck des Schlüssels, die Passphrase benötigt er später beim Anlegen und Entschlüsseln eines chiffrierten Backups. Wer will, kann seine Archive zusätzlich signieren und dazu über »gpg --sign-key Schlüssel-ID« eine digitale Signatur erstellen.

Die Passphrase schützt den Schlüssel, falls er in fremde Hände gerät. Ihn sollte der Admin ohnehin gut sichern, sonst kommt er später nicht mehr an seine Daten. Mitunter hilft es, den öffentlichen und den geheimen Schlüssel auf einem externen Medium zu sichern, etwa einem USB-Stick. Die Befehle »gpg -k« beziehungsweise »gpg -K« zeigen den öffentlichen respektive geheimen Key an. Über

$ gpg --output /media/user/USB-Stick/backup key_pub.gpg --armor --export Schlüssel-ID$gpg --output /media/user/USB-Stick/backupkey_sec.gpg --armor --export-secret-keys Schlüssel-ID

lassen sich die beiden Schlüssel exportieren. Über »gpg --import« spielt der Schlüsselmeister die Keys auf einem anderen System wieder ein.

Abbildung 1: Ein Schlüssel für das Backup lässt sich mit gpg --gen-key recht schnell und einfach erzeugen.

Vier Ziele

Das Skript aus Listing 2 erzeugt nun verschlüsselte Backups aller Homeverzeichnisse für vier verschiedene Ziele: ein lokales Verzeichnis, einen SSH-Server (über das Paramiko-Backend), Ubuntu One sowie Amazons S3 (Abbildung 2).

Hierbei gibt es einiges zu beachten. So erwartet Duplicity bei lokalen Backups absolute Pfade. Ist das Backupziel hingegen ein SSH-Server, folgt nach dem Hostnamen ein relativer Pfad zum Homeverzeichnis des angemeldeten Benutzers – in Listing 2 landet das Backup daher unter »/home/user/backup« .

Abbildung 2: Wer in Amazons Cloudstorage S3 ein Bucket anlegt, kann dort mit Duplicity verschlüsselte Backups lagern.

Listing 2

backup.sh

01 #!/bin/bash
02 # Passphrase für den GPG-Key
03 export PASSPHRASE=Passphrase
04
05 # Schlüssel-ID des GPG-Key
06 export GPG_KEY=Schlüssel-ID
07
08 # Amazons Zugangsdaten
09 export AWS_ACCESS_KEY_ID=Schlüssel-ID
10 export AWS_SECRET_ACCESS_KEY=Geheimer Schlüssel
11
12 # Backup-Quelle
13 QUELLE=/home
14
15 # Backup-Ziele
16 # Lokales Backup
17 LOKAL_BACKUP=file:///home/user/backup
18 # Backup über SSH
19 SSH_BACKUP=sftp://user@remote/backup
20 # Backup in Ubuntu One
21 UBUNTU_ONE=u1+http://Zielordner
22 # Amazon S3
23 AMAZON_S3=s3+http://Bucket-Name
24
25 # Duplicity-Kommandos
26 # Lokal
27 duplicity --encrypt-key ${GPG_KEY} ${QUELLE} ${LOKAL_BACKUP}
28 # SSH
29 export FTP_PASSWORD=SSH-Passwort
30 duplicity --encrypt-key ${GPG_KEY} ${QUELLE} ${SSH_BACKUP}
31 unset FTP_PASSWORD
32 # Ubuntu One
33 duplicity --encrypt-key ${GPG_KEY} ${QUELLE} ${UBUNTU_ONE}
34 # Amazon S3
35 duplicity --encrypt-key ${GPG_KEY} --s3-use-new-style --s3-european-buckets ${QUELLE} ${AMAZON_S3}
36
37 # Passwörter zurücksetzen
38 unset AWS_ACCESS_KEY_ID
39 unset AWS_SECRET_ACCESS_KEY
40 unset PASSPHRASE

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Tooltipps

    Im Kurztest: Tiny Applications 20130215, Certmgr 0.2.49, Difftree 0.5.8, Scriptform 1.0, Duply 1.11.1, Xplico 1.1.1

  • Duplicity 0.6.22 mit Dropbox-Optimierungen und Mega-Support

    Das Kommandozeilentool Duplicity legt verschlüsselte Backups an. Die aktuelle Version optimiert die Backends für Boto und Paramiko, fügt ein Backend für die Mega-Cloud hinzu und unterstützt Dropbox besser.

  • Einführung

    Linux-Magazin-Kolumnist Charly Kühnast ist begeisterter Amateurfotograf. In letzter Zeit macht er sich Sorgen, dass seiner rasch wachsenden Fotosammlung etwas zustößt. Liegt die Lösung in der Cloud?

  • AWS S3

    Daten auf AWS S3 sitzen dort nicht zwangsläufig fest. Wer sie wiederhaben will, kann sie mit ein bisschen Python-Schmiermittel auf einen Rutsch abpumpen.

  • Bitparade

    Backupstrategien sind in der IT ebenso unverzichtbar wie planungsintensiv. Im privaten Bereich gibt es simplere Lösungen, doch auch die haben ihre Tücken. Die Bitparade schaut hin.

comments powered by Disqus

Ausgabe 09/2017

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.