Login
Newsletter
Werbung

So, 8. Februar 2009, 00:00

Das Backup-Programm BoxBackup

Platzsparendes netzwerkweites Backup

Konfiguration des Servers

Beginnen wir mit der Konfiguration des Servers. Der Server ist ein Daemon namens bbstored. Er benötigt zwei Konfigurationsdateien: bbstored.conf und raidfile.conf. Beide werden von den Debian-Paketen ins Verzeichnis /etc/boxbackup gelegt. Der erste Schritt ist die Einrichtung des Verzeichnisses, das für die Backup-Daten verwendet wird. Dieses kann, wie wir oben bereits erfahren haben, optional ein Software-RAID1 sein, das im Userspace implementiert ist. Da hierbei die Daten in zwei oder mehr separate Verzeichnisse redundant geschrieben werden, ist eine höhere Ausfallsicherheit gegeben - natürlich müssen die Verzeichnisse auf verschiedenen Festplatten liegen! Will man eine solche Konfiguration verwenden, dann gibt man einen Befehl wie diesen ein:

raidfile-config /etc/boxbackup 4096 /raid/0.0 /raid/0.1

Dies legt die Datei /etc/boxbackup/raidfile.conf an, die nicht weiter geändert werden muss. Hierbei ist 4096 die Blockgröße des Dateisystems (1024 sollte genauso möglich sein, andere Werte sind unter Linux wenig gebräuchlich), und /raid/0.0 und /raid/0.1 sind die Einhängepunkte der beiden (am besten gleich großen) Dateisysteme, die die Daten aufnehmen.

Ich hatte mir aber im Vorfeld bereits ein 80 GB großes Software-RAID1 mit dem md-Treiber angelegt und darauf eine LVM-Partition eingerichtet. Diese formatierte ich mit XFS und band sie als /mnt/backup ein. Für mich reduzierte sich somit der Aufruf von raidfile-config zu

raidfile-config /etc/boxbackup 4096 /mnt/backup

Da der Daemon bbstored nicht als Root läuft, sondern als Benutzer und Gruppe bbstored, muss man ihm Zugriffsrechte auf die Partition(en) geben, in meinem Fall mit

chown -R bbstored:bbstored /mnt/backup

Wir sind nun nur noch zwei Schritte davon entfernt, bbstored in Betrieb zu nehmen. Der erste ist die Generierung der Konfigurationsdatei /etc/boxbackup/bbstored.conf, die wir dem Programm bbstored-config überlassen:

bbstored-config /etc/boxbackup bserver bbstored

Hierbei ist bserver der Name des Rechners und bbstored der Benutzername, unter dem bbstored läuft.

Der letzte Schritt ist die Generierung der Server-Schlüssel. Wer bereits eine eigene CA (Certification Authority, im Wesentlichen eine angepasste Konfigurationsdatei für OpenSSL) besitzt, kann diese verwenden, um Server- und Client-Zertifikate zu erzeugen. Welche Dateien benötigt werden, kann man den Konfigurationsdateien von bbstored und bbackupd entnehmen. Wer keine eigene CA besitzt, kann jetzt die von BoxBackup mitgelieferte in Betrieb nehmen. Dazu wird das Kommando bbstored-certs verwendet:

bbstored-certs ca init

Das legt im aktuellen Verzeichnis ein Unterverzeichnis ca an. Wer aus Sicherheitsgründen dieses Verzeichnis auf einem anderen Rechner halten will, installiert boxbackup-utils bzw. in neueren Versionen der Debian-Pakete boxbackup-server auf dem anderen Rechner und führt das Initialisierungskommando dort aus.

Das Kommando bbstored-config hat bereits einen Certificate Request (CSR) angelegt, der in der Datei /etc/boxbackup/bbstored/boxbackup-server-csr.pem (für BoxBackup nach Version 0.10; bis 0.10 lautete der Dateiname noch /etc/boxbackup/bbstored/boxbackup-server-cert-req.pem) zu finden ist. Dieser lässt sich nun signieren:

bbstored-certs ca sign-server \
 /etc/boxbackup/bbstored/boxbackup-server-csr.pem

Das ergibt zwei Dateien, die wir an ihre vorgegebene Position kopieren (nicht verschieben):

cp -a ca/servers/bserver-cert.pem \
 /etc/boxbackup/bbstored/boxbackup-server-cert.pem
cp -a ca/roots/clientCA.pem \
 /etc/boxbackup/bbstored/boxbackup-client-ca-cert.pem

Nun sollte sich bbstored starten lassen. Das Debian-Paket hat dafür bereits ein Init-Skript angelegt, das aber verwirrenderweise boxbackup-server heißt:

/etc/init.d/boxbackup-server start

Nun sollte bbstored laufen und auch in einer Logdatei in /var/log (oft /var/log/messages, aber abhängig von der eigenen Konfiguration) seine Spuren hinterlassen haben. Sollte er nicht angelaufen sein, sollte man in der Logdatei einen brauchbaren Hinweis finden. Gerade am Anfang ist es oft eine Datei, die nicht den Namen hat, den bbstored erwartet. Diese Namen werden alle in der Konfigurationsdatei festgelegt. Man passt also entweder die Konfigurationsdatei oder die Namen der benötigten Dateien an, bis bbstored klaglos anläuft.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung