Backup-Lösungen · 19 min read · Dec 05, 2025

Wirtschaftliche Append-Only Offsite-Backups mit Restic und Wasabi auf Debian 10

Dieser Leitfaden zeigt, wie man die kostenlose Backup-Software restic auf Debian Buster installiert und konfiguriert, um Offsite-Backups beim Cloud-Speicheranbieter Wasabi zu speichern. Der Hauptvorteil dieses Leitfadens ist, dass er obligatorische Append-Only-Backups bereitstellt. Das bedeutet, dass einmal erstellte Backups sicher sind, da sie nicht überschrieben oder vom System, von dem das Backup erstellt wurde, gelöscht werden können. Dies bedeutet, dass die Backup-Archive sowohl vor Naturkatastrophen am Ursprungsserver (zum Beispiel Feuer) als auch vor menschlichen Fehlern (wie einem Fehler an der Root-Shell-Eingabeaufforderung) geschützt sind. Die Backups sind auch geschützt, da sie verschlüsselt gespeichert werden, was bedeutet, dass nur die Person oder das System, das das Passwort für das Backup hat, darauf zugreifen kann.

Bitte beachten Sie, dass dieser Leitfaden wie er ist, ohne jegliche Gewährleistung bereitgestellt wird. Die Backup-Software Restic hat noch nicht die Version 1.0 erreicht, und Sie sollten sie daher niemals als Ihre einzige Backup-Lösung verwenden. Um für eventuelle Missgeschicke geschützt zu sein, stellen Sie bitte sicher, dass Sie ein Backup des Systems, das Sie für diesen Leitfaden verwenden möchten, erstellen, bevor Sie beginnen. Stellen Sie auch sicher, dass Sie testen, ob das Backup, das Sie erstellt haben, wirklich funktioniert, indem Sie eine Testwiederherstellung durchführen.

Der Leitfaden basiert auf und wurde auf Debian Buster (Debian 10) getestet. Ältere Debian-Versionen fallen nicht in den Geltungsbereich dieses Leitfadens, aber wenn Sie selbst experimentieren möchten, sollte es möglich sein, das Debian Buster apt-Paket-Repository hinzuzufügen, um auch auf Debian Jessie oder Stretch aktuelle Versionen von Restic, Tinyproxy und Rclone zu installieren.

Dieser Leitfaden ist in fünf Teile gegliedert:

Im ersten Teil werden wir ein Konto beim Wasabi Cloud-Speicher vorbereiten, wo wir später die Backups speichern werden. Wasabi bietet eine kostenlose 30-tägige Testversion zu Testzwecken an.

Zweitens werden wir rclone installieren und konfigurieren, das einerseits Zugriff auf den Speicher bei Wasabi bietet und andererseits eine Zugriffsoberfläche für Restic zum Speicher bereitstellt.

Drittens wird tinyproxy - ein einfacher Proxy-Server - vorbereitet, da er als Zwischenstation benötigt wird, um den Speicher zusammen mit Restic in einer Append-Only-Art und Weise zu betreiben.

Viertens werden wir das Backup-Programm restic einrichten.

Als letzten Schritt werden wir sowohl ein Backup erstellen als auch eine partielle Wiederherstellung testen.

1 Bereiten Sie ein Konto beim Wasabi Cloud-Speicher vor

1.1 Starten Sie ein Wasabi-Konto

Wasabi hat eine 30-tägige kostenlose Testversion, die Sie hier finden können:

https://wasabi.com/sign-up/

Nachdem Sie das Formular auf der oben genannten Webseite ausgefüllt haben, erhalten Sie Ihre Zugangsdaten für die Weboberfläche von Wasabi. Verwenden Sie Ihre Zugangsdaten, um sich auf dieser Seite anzumelden:

https://console.wasabisys.com/

1.2 Erstellen Sie einen Bucket für Daten und einen weiteren für das Sperren

Wir werden nun zwei sogenannte „Buckets“ erstellen. Ein Bucket ist ein Speicherkontainer, in dem Sie Daten speichern.

Erstellen Sie den ersten Bucket, indem Sie auf das rote Symbol mit der Bezeichnung Bucket erstellen klicken, das Sie oben rechts auf der Webseite finden. Der erste Bucket wird der Ort sein, an dem alle Backup-Daten gespeichert werden, den wir später als DATABUCKET bezeichnen werden. Sie müssen jetzt einen Bucket-Namen wählen. Zum Beispiel können Sie das folgende Format als Vorlage für den Bucket-Namen verwenden:

*yourdomain.com*-restic-data

Bitte ersetzen Sie yourdomain.com in der obigen Vorlagenbezeichnung durch den Domainnamen des Computers, den Sie sichern möchten. Nachdem Sie den Namen des DATABUCKET festgelegt haben, notieren Sie ihn bitte. Sie werden ihn später benötigen, um den Platzhaltertext DATABUCKET in den Vorlagen, die später in diesem Leitfaden folgen, zu ersetzen.

Wählen Sie dann die Region aus, in der sich der Bucket befinden soll. Für optimale Leistung ist es gut, die Region/Kontinent des Servers zu wählen, den Sie sichern möchten. Falls Ihr Server also in Europa ist, könnten Sie wählen:

eu-central-1

Drücken Sie dann Weiter.

Auf der nächsten Seite werden zwei Auswahlmöglichkeiten angezeigt: für Bucket-Versionierung und Bucket-Protokollierung. Sie können diese Auswahlmöglichkeiten auf ihren Standardwerten belassen, d.h. Versionierung aussetzen und Protokollierung aussetzen. Klicken Sie dann auf Weiter und klicken Sie auf Bucket erstellen.

Wiederholen Sie nun das gleiche Verfahren und erstellen Sie einen weiteren Bucket. Dieser zweite Bucket wird nur verwendet, um die Sperrinformationen von Restic zu speichern. Wir werden ihn später als LOCKBUCKET bezeichnen. Klicken Sie erneut auf die Schaltfläche Bucket erstellen und wählen Sie jetzt einen Namen für diesen zweiten Bucket, zum Beispiel mit diesem Format:

*yourdomain.com*-restic-locks

Bitte ersetzen Sie yourdomain.com in der obigen Vorlage durch den Domainnamen des Computers, der gesichert werden soll. Nachdem Sie den Namen des LOCKBUCKET festgelegt haben, notieren Sie ihn bitte. Sie werden ihn später benötigen, um LOCKBUCKET in den Vorlagen, die später in diesem Leitfaden folgen, zu ersetzen.

(Restic verwendet Sperren, um sicherzustellen, dass nur ein Client gleichzeitig Backups oder Wiederherstellungen durchführt. Der Grund, warum wir einen separaten Bucket für die Sperrinformationen benötigen, ist, dass Restic in der Lage sein muss, sowohl Sperren hinzuzufügen als auch zu löschen, und daher benötigen wir einen Bucket, der Löschvorgänge erlaubt.)

1.3 Erstellen Sie einen Benutzer

Klicken Sie auf das IAM-Symbol in der obersten Symbolreihe. Sie haben nun das Identitäts- und Zugriffsmanagement betreten. Klicken Sie in der linken Spalte auf Benutzer. Klicken Sie dann auf das rote Symbol mit der Bezeichnung + Benutzer erstellen und wählen Sie einen logischen Benutzernamen, wie den Domainnamen des Servers, den Sie sichern möchten. Zum Beispiel könnte der Benutzername system1.example.com sein. Nachdem Sie den Benutzernamen festgelegt haben, notieren Sie ihn bitte, damit Sie später USERNAME in den Vorlagen, die in diesem Leitfaden folgen, durch Ihren Wert ersetzen können.

Im Abschnitt Zugriff im Dialogfeld aktivieren Sie das Kontrollkästchen mit der Bezeichnung Programmgesteuert (API-Schlüssel erstellen). Klicken Sie dann auf Weiter. Erstellen Sie eine Gruppe für den Benutzer. Wenn sich alle Ihre Server unter einer Hauptdomain befinden, könnte diese Hauptdomain ein geeigneter Gruppenname sein. Klicken Sie nun auf Weiter. Klicken Sie auf der folgenden Seite (Richtlinienerstellung) einfach auf Weiter. Klicken Sie schließlich auf die Schaltfläche Benutzer erstellen.

Rechts neben dem Text Geheimer Schlüssel am unteren Rand des Dialogfensters finden Sie einen kleinen Link mit der Bezeichnung Anzeigen, auf den Sie klicken sollten. Speichern Sie sowohl den ACCESS KEY als auch den SECRET KEY in einer Textdatei. Sie benötigen diese Informationen später, wenn wir den Zugriff auf Wasabi vom Client-Computer, den Sie sichern möchten, konfigurieren.

1.4 Erstellen Sie eine Richtlinie

Damit der Benutzer, den wir erstellt haben, Zugriff auf die beiden Buckets hat, müssen wir eine Zugriffsrichtlinie erstellen.

Klicken Sie in der linken Spalte der Wasabi-Weboberfläche auf Richtlinien. Klicken Sie dann auf die rote Schaltfläche Richtlinie erstellen. Sie können den Domainnamen des Computers, den Sie sichern möchten, für den Richtliniennamen wählen, zum Beispiel system1.example.com. Schreiben Sie den Richtliniennamen in das obere linke Feld.

Unten finden Sie eine Vorlage, die Sie als Grundlage für die tatsächliche Richtlinie verwenden werden. Kopieren Sie die Vorlage in einen Texteditor und ersetzen Sie dann die beiden Vorkommen von DATABUCKET in der Textdatei durch den Namen, den Sie dem ersten Bucket gegeben haben, und die beiden Vorkommen von LOCKBUCKET durch den Namen, den Sie für den zweiten Bucket gewählt haben.

{  
 "Version": "2012-10-17",  
 "Statement": [  
 {  
 "Effect": "Allow",  
 "Action": "s3:ListAllMyBuckets",  
 "Resource": "arn:aws:s3:::*"  
 },  
 {  
 "Effect": "Allow",  
 "Action": "s3:*",  
 "Resource": [  
 "arn:aws:s3:::*DATABUCKET*",  
 "arn:aws:s3:::*DATABUCKET*/*",  
 "arn:aws:s3:::*LOCKBUCKET*",  
 "arn:aws:s3:::*LOCKBUCKET*/*"  
 ]  
 }  
 ]  
}

Kopieren Sie die Richtlinie, die Sie aus Ihrem Texteditor erstellt haben, und fügen Sie sie in das große, Hauptfeld des Dialogfensters der Wasabi-Webseite ein. Klicken Sie dann auf Speichern.

1.5 Wenden Sie die Richtlinie an

Die Richtlinie muss nun auf den Benutzer angewendet werden. Klicken Sie links auf Benutzer und klicken Sie dann auf den Benutzer, den Sie erstellt haben. Klicken Sie nun auf die Registerkarte Berechtigungen (rechts im grauen horizontalen Menü). Beginnen Sie dann, die ersten Buchstaben des Richtliniennamens einzugeben, den Sie gewählt haben, als Sie die Richtlinie im Textfeld unter Beginnen Sie mit der Eingabe, um Richtlinien für den Benutzer zu finden erstellt haben. Klicken Sie auf den Namen Ihrer Richtlinie. Jetzt haben Sie die Richtlinie auf den Benutzer angewendet.

1.6 Setzen Sie den Daten-Bucket auf unveränderlich (Append-Only)

Aus Sicherheitsgründen möchten wir, dass es unmöglich ist, bereits erstellte Backups vom Client (dem Computer, von dem die Backups erstellt werden) zu überschreiben. Um dies zu erreichen, verwenden wir die unveränderliche Funktion von Wasabi. Klicken Sie in der Weboberfläche von Wasabi auf Speicher (in der oberen Leiste). Klicken Sie dann auf den DATABUCKET (wahrscheinlich den, der mit restic-data endet). Klicken Sie auf das weiße Zahnrad für Einstellungen (oben rechts). Klicken Sie dann auf Compliance in der weißen oberen Leiste. Klicken Sie auf den Schalter rechts neben dem Compliance-Modus, um diesen Modus zu aktivieren. Wenn Sie möchten, können Sie Löschen nach Aufbewahrung aktivieren, aber Sie müssen sicherstellen, dass Sie einen großen Wert für die Aufbewahrungszeit eingeben, dies ist die Mindestzeit, die jede Datei bleibt, nachdem der Client versucht, sie zu löschen. Zum Beispiel, geben Sie hier 100 Jahre ein. (Es scheint, dass Sie dieses Feld nicht leer lassen können für eine unbegrenzte Aufbewahrungszeit.) Das bedeutet, dass Daten für 100 Jahre sicher sind, während dieser Zeitraum nicht gelöscht oder geändert werden kann. Drücken Sie Speichern, um Ihre Einstellungen zu speichern.

1.7 Erstellen Sie den Sperrordner

Klicken Sie in der Weboberfläche von Wasabi auf Speicher (in der oberen Leiste). Klicken Sie dann auf den LOCKBUCKET (den, der mit restic-locks endet).

Drücken Sie nun die grüne Schaltfläche mit der Bezeichnung Ordner erstellen. Benennen Sie den Ordner locks, damit er später für die Restic-Sperrdateien verwendet werden kann.

Wir sind nun mit der Konfiguration in der Wasabi-Weboberfläche fertig. Im nächsten Abschnitt werden wir beginnen, am Terminal des Computers zu arbeiten, den wir sichern möchten.

2 Installieren und konfigurieren Sie rclone

2.1 Zuerst ein Backup über Ihr bestehendes System erstellen

Jetzt ist es an der Zeit, auf den Computer zuzugreifen, von dem die Backups erstellt werden sollen.

Bitte denken Sie daran, ein Backup dieses Computers mit einem bestehenden System zu erstellen! Bitte testen Sie auch, ob das Backup durch eine Testwiederherstellung funktioniert, bevor Sie fortfahren. Falls etwas nicht wie erwartet funktioniert, ist es entscheidend, zu einem funktionierenden Zustand zurückkehren zu können.

2.2 Installieren Sie rclone

Alle unten gezeigten Zeilen sollten in das Terminal eingegeben werden, gefolgt von Enter.

Verbinden Sie sich mit dem Terminal des Computers, von dem Sie Backups erstellen möchten, zum Beispiel über SSH. Geben Sie dann diesen Befehl ein, um Root zu werden:

su -

gefolgt von Enter und dem Root-Passwort. Root-Zugriff ist erforderlich, da wir neue Programme aus dem Debian-Repository installieren werden.

Jetzt installieren Sie rclone:

apt install rclone

2.3 Konfigurieren Sie rclone, um sich mit Wasabi zu verbinden

Um rclone zu konfigurieren, geben Sie diesen Befehl ein:

rclone config

Geben Sie dann ein:

n

Jetzt ist es an der Zeit, einen Namen für die Konfiguration zu wählen. Bitte beachten Sie, dass (Punkt) im Namen nicht erlaubt ist, aber andererseits - (Bindestrich) erlaubt ist. Um Ihre rclone-Konfiguration zu benennen, verwenden Sie diese Vorlage, ersetzen Sie jedoch zuerst yourdomain-com durch Ihren eigenen Domainnamen, indem Sie (Punkte) im Domainnamen durch - (Bindestriche) ersetzen:

wasabi-yourdomain-com-restic

Speichern Sie den Namen, den Sie der rclone-Konfiguration geben, da Sie später den Platzhalter RCLONECONFIG durch den Namen ersetzen werden.

Geben Sie dann 4 für Amazon S3-kompatible Speicheranbieter ein und drücken Sie Enter.

Geben Sie dann 7 für Wasabi Object Storage ein und drücken Sie Enter.

Geben Sie dann 1 für Geben Sie AWS-Anmeldeinformationen im nächsten Schritt ein ein und drücken Sie Enter.

Kopieren Sie den ACCESS KEY, den Sie zuvor in einer Datei gespeichert haben, und fügen Sie ihn ein, und drücken Sie dann Enter.

Kopieren Sie dann den SECRET KEY, den Sie ebenfalls zuvor in derselben Datei gespeichert haben, und drücken Sie Enter.

Geben Sie die Region ein, die Sie für Ihre Buckets gewählt haben. Sie können die Region finden, wenn Sie auf Speicher in der oberen Zeile der Wasabi-Weboberfläche klicken. Geben Sie zum Beispiel diese Region für Europa ein und drücken Sie Enter:

eu-central-1

Für Endpoint für die S3-API geben Sie dies ein, wenn der Bucket in der EU-Region ist, gefolgt von Enter:

s3.eu-central-1.wasabisys.com

Wenn sich Ihr Bucket in den USA befindet, finden Sie den Namen Ihres Endpunkts in diesem Dokument:

https://wasabi-support.zendesk.com/hc/en-us/articles/360015106031-What-are-the-service-URLs-for-Wasabi-s-different-regions-

Lassen Sie Standortbeschränkung leer und drücken Sie Enter.

Drücken Sie 1 für Besitzer erhält VOLLE_KONTROLLE und dann Enter.

Drücken Sie y für Erweiterte Konfiguration bearbeiten und dann Enter.

Drücken Sie Enter für den Standardwert für Chunk-Größe.

Drücken Sie Enter für den Standardwert für Checksumme deaktivieren.

Drücken Sie Enter für den Standardwert für Sitzungstoken.

Geben Sie 16 für Upload-Konkurrenz ein und drücken Sie dann Enter.

Drücken Sie Enter für den Standardwert für force_path_style.

Drücken Sie Enter für den Standardwert für v2_auth gefolgt von Enter.

Drücken Sie y für Ja, das ist in Ordnung und Enter.

Drücken Sie q, um die Konfiguration zu beenden.

Jetzt ist die Konfiguration für rclone abgeschlossen.

2.4 Testen Sie, dass rclone mit Wasabi funktioniert

Erstellen Sie jetzt eine Testdatei mit diesem Befehl:

echo test >> /tmp/test.txt

Übertragen Sie die Testdatei mit dem folgenden Befehl. Sie müssen jedoch zuerst RCLONECONFIG durch Ihren Wert und auch DATABUCKET durch Ihren Wert für diesen Parameter ersetzen. Alles ist in einer Zeile:

rclone -v sync /tmp/test.txt RCLONECONFIG:DATABUCKET/

Wenn alles funktioniert, sollten Sie jetzt die test.txt-Datei in der Wasabi-Weboberfläche für den DATABUCKET sehen. Bitte beachten Sie, dass es manchmal bis zu ca. 1 Minute dauern kann, bis die Datei angezeigt wird. Testen Sie auch eine Übertragung mit dem anderen Bucket, dem, der mit restic-locks endet:

rclone -v sync /tmp/test.txt RCLONECONFIG:LOCKBUCKET/

Überprüfen Sie jetzt erneut die Wasabi-Weboberfläche auf die Textdatei, die sich im LOCKBUCKET befinden sollte.

2.5 Richten Sie rclone ein, um Restic über systemd bereitzustellen

Rclone hat eine integrierte Funktion, um einen Cloud-Speicherplatz (Wasabi in unserem Fall) zu verwenden und ihn Restic auf eine kompatible Weise bereitzustellen. Diese Art der Ausführung von rclone erfolgt über den Befehl rclone serve restic, der als Serverprozess fungiert. Wir benötigen zwei dieser Serverprozesse: einen Hauptprozess für fast alles und einen zweiten, der sich nur mit den Restic-Sperrdateien befasst.

Zuerst erstellen Sie einen Restic-Benutzer:

adduser restic

Kopieren Sie die rclone-Konfiguration vom Root-Benutzer zum Restic-Benutzer:

su restic  
mkdir -p /home/restic/.config/rclone  
exit  
cp -a /root/.config/rclone/rclone.conf /home/restic/.config/rclone/  
chown restic.restic /home/restic/.config/rclone/rclone.conf

Erstellen Sie eine systemd-Steuerdatei, zum Beispiel über den Nano-Editor:

nano /etc/systemd/system/restic-data.service

Die Datei sollte die folgenden Daten enthalten. Bitte beachten Sie, dass Sie wie zuvor den RCLONECONFIG-Wert sowie den DATABUCKET-Wert auf Ihre Einstellungen ändern müssen.

[Unit]         
Description=Rclone serve restic data on wasabi  
After=network.target   
   
[Service]   
Type=simple   
User=restic       
Group=restic      
ExecStart=/usr/bin/rclone serve restic *RCLONECONFIG*:*DATABUCKET* --addr=127.0.0.1:8001 --append-only --retries 10 --transfers 20 --s3-upload-concurrency 8 --s3-chunk-size 16M  
Restart=always   
RestartSec=5   
StartLimitInterval=0   
   
[Install]   
WantedBy=multi-user.target 

Speichern Sie die Datei. Der Zweck davon ist, dass rclone eine Restic-Schnittstelle zum Wasabi-Cloud-Speicher-Bucket bereitstellt. Der systemd-Dienst, den wir gerade erstellt haben, wird beim nächsten Booten automatisch gestartet, aber zuerst müssen wir ihn mit diesen Befehlen aktivieren:

systemctl daemon-reload  
systemctl enable restic-data  
systemctl start restic-data

Dann überprüfen wir, ob der Dienst gestartet wurde:

systemctl status restic-data

Sie sollten jetzt Active: active (running) sehen, wenn alles korrekt funktioniert. Drücken Sie q, um die Statusanzeige zu beenden.

Jetzt haben wir den rclone serve restic-Dienst auf Port 8001 installiert, der mit einem Bucket verbunden ist, der Append-Only ist und die Backups speichert.

Als nächstes benötigen wir einen weiteren Dienst auf Port 8002 für das Restic-Sperrsystem, das mit dem zweiten Bucket verbunden ist, der Lese- und Schreibzugriff hat. Daher werden wir die Schritte, die wir gerade gemacht haben, mit geringfügigen Änderungen wiederholen.

Erstellen Sie eine systemd-Steuerdatei:

nano /etc/systemd/system/restic-locks.service

Die Datei sollte die folgenden Daten enthalten. Die Zeile, die mit ExecStart= beginnt, ist eine einzige, lange Zeile, die unten in drei Zeilen aufgeteilt ist. Bitte ändern Sie den RCLONECONFIG-Wert sowie den LOCKBUCKET-Wert auf Ihre Einstellungen.

[Unit]         
Description=Rclone serve restic locks on wasabi  
After=network.target   
   
[Service]   
Type=simple   
User=restic       
Group=restic      
ExecStart=/usr/bin/rclone serve restic *RCLONECONFIG*:*LOCKBUCKET* --addr=127.0.0.1:8002   
Restart=always   
RestartSec=5   
StartLimitInterval=0   
  
[Install]   
WantedBy=multi-user.target   

Speichern Sie die Datei und aktivieren Sie sie mit:

systemctl daemon-reload  
systemctl enable restic-locks  
systemctl start restic-locks

Überprüfen Sie, ob der Dienst gestartet wurde:

systemctl status restic-locks

Sie sollten jetzt Active: active (running) sehen.

Drücken Sie q, um zu beenden.

Jetzt haben wir beide rclone serve restic systemd-Dienste erstellt, zuerst auf Port 8001 für den Hauptdienst im Append-Only-Modus und dann auf Port 8002 für den Sperrdienst im Lese- und Schreibmodus.

3 Bereiten Sie tinyproxy vor

Tinyproxy wird die beiden Dienste zu einer einheitlichen Front zusammenführen, die Restic präsentiert wird. Es wird in einem Root-Terminal des Computers installiert, den Sie sichern möchten:

apt install tinyproxy

Erstellen Sie dann ein Backup der tinyproxy-Konfigurationsdatei:

cp -a /etc/tinyproxy/tinyproxy.conf /etc/tinyproxy/tinyproxy.conf.bak

Wenn die Datei hier nicht gefunden werden kann, kann sie oft unter /etc/tinyproxy.conf gefunden werden.

Jetzt bearbeiten Sie die Konfigurationsdatei:

nano /etc/tinyproxy/tinyproxy.conf

Sie sollten eine Reihe von Änderungen an den Dateien vornehmen, die jetzt detailliert beschrieben werden. Zuerst kommentieren Sie die voreingestellte Portnummer aus und setzen eine neue Portnummer:

#Port 8888  
Port 8000

Zweitens ist es wichtig, nur Verbindungen von localhost zuzulassen, fügen Sie daher eine Listenzeile hinzu:

#Listen 192.168.0.1  
Listen 127.0.0.1

Drittens ändern Sie den Timeout-Wert auf eine Stunde:

#Timeout 600  
Timeout 3600

Viertens verbinden Sie tinyproxy mit den beiden rclone serve restic systemd-Diensten. Sie müssen in der unten gezeigten Reihenfolge geschrieben werden: die allgemeine Regel zuerst und die spezifische Regel zuletzt, da die letzte Regel in tinyproxy immer gewinnt, falls es zu Konflikten kommt.

ReversePath "/" "http://127.0.0.1:8001/"  
ReversePath "/locks" "http://127.0.0.1:8002/locks"

Schließlich lassen Sie tinyproxy ausschließlich im Reverse-Only-Modus arbeiten:

#ReverseOnly Yes  
ReverseOnly Yes

Jetzt wurden alle notwendigen Änderungen vorgenommen. Bitte speichern Sie die Konfigurationsdatei, in nano tun Sie dies, indem Sie Ctrl+O drücken, und verlassen Sie dann nano mit Ctrl+X, um zum Terminal zurückzukehren.

Um tinyproxy zu aktivieren, werden wir es jetzt neu starten:

systemctl stop tinyproxy  
systemctl start tinyproxy

Überprüfen Sie schließlich, ob tinyproxy korrekt läuft:

systemctl status tinyproxy

Drücken Sie q, um zu beenden. Jetzt ist tinyproxy für die Verwendung durch Restic konfiguriert. Im nächsten Abschnitt werden wir Restic selbst einrichten.

4 Richten Sie das Restic-Backup-Programm ein

Schließlich werden wir den letzten Schritt der Konfiguration durchführen, nämlich das Restic-Backup-Programm einrichten. Zuerst installieren Sie Restic:

apt install restic

Dann müssen wir die Umgebungsvariablen für Restic initialisieren. Zuerst geben wir den Speicherort des Restic-Repositorys an, indem wir dies in ein Terminal eingeben:

export RESTIC_REPOSITORY='rest:http://127.0.0.1:8000/'

Bitte entscheiden Sie sich jetzt für eine starke Passphrase für Ihre Backups. Es ist wichtig, dass Sie die Passphrase an einem sicheren Ort aufbewahren. Die Passphrase ist erforderlich, um auf die Backups zugreifen zu können, da diese vollständig verschlüsselt sind. Ersetzen Sie PASSPHRASE unten durch das Passwort, das Sie gewählt haben, und geben Sie dann den Befehl im Terminal ein:

export RESTIC_PASSWORD='PASSPHRASE'  
 

Jetzt lassen Sie uns das Restic-Repository erstellen:

restic init

Lassen Sie uns testen, ob Restic wie es sollte funktioniert. Wir haben das Passwort bereits in der Umgebungsvariablen RESTIC_PASSWORD gespeichert, sodass wir auf das Repository zugreifen können, um Snapshots aufzulisten:

restic snapshots

Wenn alles wie es sollte funktioniert, sollten wir jetzt eine leere Liste erhalten (da wir noch kein Backup erstellt haben) und den Text 0 Snapshots.

Wir haben jetzt alles für die Speicherung der Backups vorbereitet und können zu den letzten Schritten übergehen, um Backups und Wiederherstellungen durchzuführen.

5 Testen Sie sowohl das Backup als auch eine partielle Wiederherstellung

Im letzten Schritt dieses Tutorials werden wir ein vollständiges Backup des Systems durchführen und dann eine partielle Wiederherstellung testen. Zu diesem Zweck werden zwei Shell-Skripte erstellt (eines für das Backup und ein anderes für die Wiederherstellung).

5.1 Bereiten Sie ein Backup-Skript vor

Zuerst benötigen Sie ein Backup-Skript, das über Cron in einem geeigneten Intervall ausgeführt werden kann, zum Beispiel einmal pro Tag. Das Backup-Skript kann beispielsweise als Datei erstellt werden, auf die nur Root Zugriff hat, und dann mit nano bearbeitet werden:

touch /usr/local/bin/backup-restic.sh   
chown root.root /usr/local/bin/backup-restic.sh   
chmod 700 /usr/local/bin/backup-restic.sh   
nano /usr/local/bin/backup-restic.sh

Unten finden Sie ein Beispiel für den Inhalt des Backup-Skripts, in dem Sie PASSPHRASE in die Passphrase ändern müssen, die Sie zuvor gewählt haben.

#!/bin/sh  
export RESTIC_REPOSITORY='rest:http://127.0.0.1:8000/'  
export RESTIC_PASSWORD='*PASSPHRASE*'        
restic backup / --exclude=/dev --exclude=/proc --exclude=/sys --exclude=/run --exclude=/tmp --exclude=/mnt --exclude=/root/.cache

Bitte beachten Sie die oben vorgenommenen Ausschlüsse – Sie möchten möglicherweise die Verzeichnisse ändern, die vom Backup ausgeschlossen sind.

5.2 Führen Sie das Backup-Skript aus

Speichern Sie die Datei und führen Sie sie über das Terminal aus:

/usr/local/bin/backup-restic.sh

Nach einigen Sekunden sollten Sie sehen, wie Restic Ihre Dateien durchläuft und auch einen geschätzten Prozentsatz, wie viel des Backups abgeschlossen ist. ETA ist eine grobe Schätzung, wie viel Zeit in Minuten und Sekunden bis zur Fertigstellung verbleibt. Das erste Backup dauert ziemlich lange, aber die folgenden Backups sind schnell, da nur Dateien übertragen werden müssen, die sich seit dem letzten Backup geändert oder erstellt wurden.

Damit das Backup regelmäßig ausgeführt wird, fügen Sie eine Zeile zur Crontab hinzu. Bearbeiten Sie zuerst /etc/crontab mit:

nano /etc/crontab

Fügen Sie dann die Planung für das Backup hinzu. Wenn das Backup beispielsweise jeden Tag um 02:00 Uhr in der frühen Morgenstunden ausgeführt werden soll, fügen Sie diese Zeile zu /etc/crontab hinzu:

00 02           * * *   root    /usr/local/bin/backup-restic.sh

(Bitte beachten Sie, dass Cron im Format mm:hh arbeitet – das sind Minuten vor Stunden.)

5.3 Testen Sie, dass die Wiederherstellung funktioniert

Ein Backup-System ist nie vollständig, bis man getestet hat, dass die Wiederherstellungen gut funktionieren. Wir werden die Fuse-Montage von Restic verwenden, um durch das letzte Backup zu blättern. Geben Sie dies im Terminal ein, wobei Sie PASSPHRASE durch die Restic-Passphrase ersetzen, die Sie zuvor gewählt haben:

mkdir /mnt/restic  
export RESTIC_REPOSITORY='rest:http://127.0.0.1:8000/'  
export RESTIC_PASSWORD='PASSPHRASE'  
restic mount /mnt/restic &  
cd /mnt/restic  
cd snapshots  
cd latest  
ls

Jetzt können Sie den letzten Snapshot (das letzte Backup) sehen. Sie können mit diff vergleichen, dass eine Datei korrekt gesichert wurde, zum Beispiel für /etc/fstab:

diff /mnt/restic/snapshots/latest/etc/fstab /etc/fstab

Wenn Sie keine Ausgabe von diff erhalten, sind die beiden Dateien identisch und das Backup hat für diese Datei funktioniert. Wenn Sie hingegen die Datei seit dem letzten Backup geändert haben, sehen Sie, welche Zeilen in den Dateien unterschiedlich sind.

Schließlich werden wir die Restic-Fuse-Montage aushängen:

cd ~  
umount /mnt/restic/

5.4 Schlussbemerkungen

Herzlichen Glückwunsch, wenn alles gut gelaufen ist, haben Sie jetzt die Einrichtung eines sekundären Backup-Systems abgeschlossen, das mehrere robuste Funktionen aufweist:

Das Backup-System ist offsite, was bedeutet, dass es Daten vor Unfällen schützt, die dem Computer, von dem die Backups erstellt werden, passieren könnten.

Es ist auch append-only, was bedeutet, dass kein Virus oder Unfall auf dem Computer, von dem die Backups erstellt werden, jemals ein bereits früher erstelltes Backup überschreiben kann. Der einzige Weg, Backups zu löschen, besteht darin, sich über die Wasabi-Weboberfläche anzumelden, und daher sollten Sie Ihre Anmeldedaten für die Wasabi-Weboberfläche schützen. Idealerweise können Sie 2FA (Zwei-Faktor-Authentifizierung) für höhere Sicherheit aktivieren.

Wenn Sie den Cron-Job aktivieren, ist das Backup-System auch automatisch. Denken Sie jedoch immer daran, regelmäßig Wiederherstellungen zu testen, damit Sie überprüfen können, ob das Backup funktioniert.

Im Vergleich zu vielen anderen Online-Cloud-Speicherdiensten hat die Verwendung von Wasabi den Vorteil von schnellen Übertragungen zu einem wettbewerbsfähigen Preis.

Dieses System eignet sich gut für sekundäre Backups, als zusätzliche Versicherung für den Fall, dass das erste Backup-System aus irgendeinem Grund ausfällt. Schließlich ist ein wichtiger Vorteil, dass es in jede benötigte Größe skalierbar ist - Sie zahlen einfach pro GB Speicher (obwohl Sie immer für mindestens 1 TB zahlen müssen) und haben praktisch keine Schwelle für den maximalen Speicherplatz.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.