18 KiB
Kapitel 8 – Duplicati – GUI-gestütztes Backup nach der 3-2-1-Regel
1. Einleitung
Backups gehören zu den wichtigsten Grundlagen im UCC.
Dieses Kapitel zeigt dir, wie du mit Duplicati ein sicheres und komfortables Backup-System einrichtest.
Duplicati ist eine Open-Source-Backup-Software mit Web-GUI, die für Einsteiger verständlich bleibt, aber genug Funktionen für große Datenmengen bietet.
Warum Duplicati?
- GUI-basiert: Die gesamte Einrichtung und Verwaltung erfolgt bequem im Browser.
- Verschlüsselung & Komprimierung: Schützt Daten und spart Speicherplatz.
- Inkrementelle Sicherung: Nach dem ersten Backup werden nur geänderte Teile übertragen.
- Breite Speicherziel-Unterstützung: Lokale Platten, NAS, externe USB-Disks und Cloud-Dienste – wichtig für die 3-2-1-Regel.
- Flexible Anpassung: Für große Archive wie VOD-Sammlungen können wir im Premium-Teil die Blockgröße anpassen und Workarounds zur Beschleunigung nutzen.
Die 3-2-1-Regel
Für ein wirklich belastbares Backup brauchst du:
- 3 Kopien der Daten
→ 1 × Original + 2 × Backup - auf 2 unterschiedlichen Speichermedien
→ z. B. interne HDD + NAS oder USB-HDD - davon 1 Kopie außer Haus
→ z. B. Cloud-Speicher oder extern gelagerte Festplatte
[!WARNING]
RAID ersetzt kein Backup.
Brand, Diebstahl oder Malware betreffen alle Laufwerke im selben Gerät – nur getrennte Speicherorte schützen.
Für wen dieses Kapitel gedacht ist
Wir bleiben bei der gewohnten Zielgruppe: Content-Creator und Privatanwender ohne tiefes Linux-Wissen.
Deshalb zeigen wir alle Schritte in der Web-GUI von Duplicati.
CLI-Befehle werden nur dann benötigt, wenn sie klare Vorteile bringen (z. B. optimierte Blockgröße).
Diese Sonderfälle behandeln wir im Premium-Kapitel und liefern sie als fertige Befehle, sodass du nichts selbst zusammensuchen musst.
[!TIP]
In Free lernst du die Basisinstallation und ein erstes komplettes Backup (z. B. Nextcloud).
Im Premium-Teil kommen Performance-Optimierungen, selektive Sicherung und Workarounds für große Archive dazu.
Schaubild – 3-2-1-Regel (Platzhalter)
[Schaubild: Quelle → lokales Backup → zweites Medium → außer Haus]
- Quelle: z. B. Nextcloud-Daten
- Backup 1: schnelles lokales Repository (z. B. interne HDD/SSD)
- Backup 2: zweites Medium (z. B. externe USB-HDD oder NAS)
- Außer Haus: Cloud-Ziel oder physisch ausgelagerte Festplatte
2. Voraussetzungen
Duplicati benötigt kein komplexes System und läuft stabil auf einer schlichten Linux-Umgebung.
Für saubere Trennung und Wartbarkeit setzen wir wie gewohnt auf einen eigenen LXC-Container mit Debian 12.
2.1 Minimale Systemressourcen des Containers
- Betriebssystem: Debian 12
- CPU: 2 Kerne
- RAM: 4 GB (empfphlen nicht weniger)
- Root-Speicher: 10 GB für Programm, Logs und Metadaten
- Netzwerk: DHCP mit Reservierung im Router (innerhalb des DHCP-Pools, siehe Kapitel 1)
- Backup-Speicherort:
- lokales Verzeichnis auf dem Proxmox-Host (z. B.
/mnt/backups/) oder - eingehängte externe HDD / NAS-Freigabe
- lokales Verzeichnis auf dem Proxmox-Host (z. B.
[!WARNING]
Plane für das Backup-Ziel mindestens 120 % der Datenmenge ein, die du sichern möchtest.
Für inkrementelle Versionen und wachsende VOD-Archive ist dieser Puffer wichtig.
2.2 Voraussetzungen im UCC-Netzwerk
- Ein laufender Proxmox-Host mit Internetzugang
- Zugriff auf den geplanten Backup-Speicherort (lokal oder im Netzwerk)
- Bereits eingerichteter Nginx Proxy Manager (Kapitel 3), falls die Duplicati-Web-GUI später unter einer Domain und per HTTPS erreichbar sein soll
2.3 Sicherheit
Duplicati verschlüsselt Backups optional mit AES-256.
Das Passwort für die Verschlüsselung darf nicht verloren gehen – ohne dieses ist keine Wiederherstellung möglich.
Wir empfehlen, das Passwort in Vaultwarden (Kapitel 5) zu speichern.
[!TIP] Wer von Anfang an die 3-2-1-Regel umsetzen will, plant gleich zwei Ziele ein:
- ein schnelles lokales Backup-Ziel (z. B. interne HDD oder NAS)
- ein zweites Medium oder Cloud-Speicher für die Kopie außer Haus
3. Installation von Duplicati (Debian 12)
Duplicati läuft in einem eigenen LXC-Container mit Debian 12.
Wir bereiten den Container vor und installieren anschließend das aktuelle .deb-Paket.
3.1 Container vorbereiten
-
Öffne das Proxmox-Webinterface, wähle links den Duplicati-Container und öffne die Konsole.
👉 Screenshot geeignet: Proxmox – Container auswählen und Konsole geöffnet -
Führe in der Konsole folgende Befehle aus, um das System zu aktualisieren und die benötigten Hilfspakete zu installieren:
apt update && apt upgrade -y
apt install -y wget ca-certificates
👉 Screenshot geeignet: Konsole nach erfolgreichem Update und Installation
3.2 Duplicati herunterladen und installieren
-
Öffne auf deinem PC-Browser die Seite
https://www.duplicati.com/download
👉 Screenshot geeignet: Duplicati-Downloadseite mit sichtbarem Bereich „Linux 64-bit (GUI)“ -
Kopiere beim Eintrag Linux 64-bit (GUI) den Link der aktuellen Stable-Version (z. B.
duplicati-2.1.x.x_linux-x64-gui.deb). -
Lade die Datei im Container in das Verzeichnis
/tmpherunter:
cd /tmp
wget <HIER_DEN_KOPIERTEN_LINK_EINFÜGEN>
👉 Screenshot geeignet: Konsole – Download mit wget erfolgreich abgeschlossen
- Installiere das Paket und ziehe bei Bedarf fehlende Abhängigkeiten nach:
dpkg -i <NAME_DER_DATEI>.deb
apt-get install -f -y
- Prüfe die Installation:
duplicati-server --version
👉 Screenshot geeignet: Konsole – Anzeige der installierten Duplicati-Version
[!WARNING]
Duplicati bietet kein statisches „latest“-Paket.
Immer den konkreten Link der aktuellen Stable-Version von der Downloadseite verwenden.
[!TIP]
Nach der Installation ist die Web-GUI unter
http://<Container-IP>:8200
erreichbar.
3.3 Duplicati in Nginx Proxy Manager einbinden
Öffne den Nginx Proxy Manager und lege einen neuen Proxy-Host für Duplicati an.
-
Anmelden im NPM-Dashboard
👉 Screenshot geeignet: NPM – Dashboard -
Klick auf Add Proxy Host
-
Trage folgende Werte ein:
| Feld | Wert / Auswahl |
|---|---|
| Domain Names | backup.deinedomain.tld |
| Scheme | http |
| Forward Hostname / IP | IP-Adresse des Duplicati-Containers |
| Forward Port | 8200 |
| Block Common Exploits | aktivieren |
| Websockets Support | aktivieren |
👉 Screenshot geeignet: Formular „Add Proxy Host“ mit eingetragener IP und Port 8200
- Wechsel zu SSL und setze:
| Feld | Einstellung |
|---|---|
| Request a new SSL Certificate | aktivieren |
| Force SSL | aktivieren |
| HTTP/2 Support | aktivieren |
👉 Screenshot geeignet: SSL-Tab mit aktivierter Option „Force SSL“
- Save klicken, um den Proxy-Host anzulegen.
Nach wenigen Sekunden ist Duplicati über die Subdomain erreichbar, z. B.:
https://backup.deinedomain.tld
[!TIP]
Falls der Zugriff auch von außen möglich sein soll, Port 443 im Router auf den NPM-Host weiterleiten.
3.4 Ersteinrichtung der Duplicati-Web-GUI
1) Aufruf der Web-Oberfläche
Öffne im Browser die zuvor eingerichtete Adresse:
https://backup.deinedomain.tld
Prüfe, ob das Schlosssymbol (HTTPS) angezeigt wird. Wenn die Seite nicht lädt, kontrolliere im NPM-Kapitel die Domain und das SSL-Zertifikat.
👉 Screenshot geeignet: Duplicati-Startseite mit sichtbarem HTTPS-Schloss
2) Backup-Assistent starten
Klicke auf Add backup → Configure a new backup → Next.
Damit startest du den geführten Assistenten und vermeidest, Einstellungen zu übersehen.
👉 Screenshot geeignet: Assistent „Configure a new backup“, Schritt 1 sichtbar
3) Name & Verschlüsselung setzen
- Name: Vergib einen klaren Namen, z. B.
Nextcloud_Full_Backup. - Encrypt backup: Aktivieren.
- Passphrase: Starkes, langes Passwort wählen (mind. 16 Zeichen, zufällig). In Vaultwarden ablegen (Kapitel 5).
[!WARNING] Ohne die Passphrase ist keine Wiederherstellung möglich. Die Passphrase wird nicht „zurücksetzbar“ gespeichert.
[!TIP] Nutze eine Passwort-Phrase (z. B. 5–6 zufällige Wörter) oder einen Generator in Vaultwarden. Teste die Eingabe sofort mit „Augen-Icon“ (Lesbarkeit), um Tippfehler auszuschließen.
👉 Screenshot geeignet: Formular „Name & Encryption“ mit aktivierter Verschlüsselung
4) Quelle & Ziel definieren
Quelle (Source data)
- Klicke auf Source data und wähle dein Datenverzeichnis, z. B.
/mnt/nextcloud_data - Achte darauf, dass gemountete Speicher bereits vorhanden sind.
Ziel (Destination)
- Destination type:
Local folder or drive - Path: z. B.
/mnt/backups/nextcloud - Erstelle den Ordner vorher, falls er noch nicht existiert (
mkdir -p /mnt/backups/nextcloud). - Klicke auf Test connection. Die Meldung muss OK sein.
[!TIP] Halte dich an die 3-2-1-Regel: Dieses Ziel ist deine lokale Kopie. Eine zweite Kopie auf anderem Medium (z. B. USB-HDD/NAS) und außer Haus (z. B. Cloud) ergänzen wir später.
[!WARNING] Wenn „Permission denied“ erscheint, fehlen Schreibrechte auf dem Zielpfad. Prüfe Mount, Besitzer und Rechte.
👉 Screenshot geeignet: Destination-Einstellungen mit Pfad und „Test connection: OK“
5) Zeitplan, Aufbewahrung, Start
Zeitplan (Schedule)
- Stelle täglich um 02:00 Uhr ein.
- Aktiviere Run missed schedule immediately, damit verpasste Läufe nachgeholt werden.
Aufbewahrung (Retention)
- Wähle Smart backup retention. Empfohlener Start:
- 7 Tage: täglich behalten
- 4 Wochen: wöchentlich behalten
- 3 Monate: monatlich behalten
[!NOTE] Diese Werte funktionieren für die meisten. Im Premium-Teil passen wir sie an Datenwachstum und Speicherplatz an.
Speichern & erster Lauf
- Klicke Save.
- Starte mit Run now den ersten Lauf. Das erste Backup dauert am längsten; Folge-Backups sind inkrementell und deutlich schneller.
- Beobachte den Fortschritt in der Übersicht (Status, Geschwindigkeit, geschriebene Daten).
👉 Screenshot geeignet: Übersichtsseite mit laufendem Job („Running…“ und Fortschrittsbalken)
3.5 Backup überwachen und testen
Regelmäßige Kontrolle und ein Test der Wiederherstellung sind entscheidend, um sicherzustellen, dass deine Sicherungen auch im Ernstfall funktionieren.
1) Backup-Status prüfen
Öffne die Duplicati-Web-GUI unter
https://backup.deinedomain.tld
Die Startseite zeigt alle eingerichteten Jobs mit diesen Spalten:
- Last successful backup: Datum und Uhrzeit des letzten erfolgreichen Laufs
- Next scheduled run: Zeitpunkt des nächsten geplanten Backups
- Last result: grüner Haken = erfolgreich, rotes Kreuz = Fehler
👉 Screenshot geeignet: Job-Übersicht mit grünem Haken bei „Last result“
[!TIP] Prüfe den Status mindestens einmal pro Woche.
2) Benachrichtigungen per E-Mail einrichten
Damit Fehler nicht unbemerkt bleiben, solltest du dir Berichte per E-Mail senden lassen.
- In der Web-GUI oben rechts auf Settings → Default options klicken.
- Unter send-mail-to die eigene E-Mail-Adresse eintragen.
- Unter send-mail-url den SMTP-Server deines Mail-Providers hinterlegen.
- Benutzername und Passwort für den Mailserver ergänzen.
- Mit Test prüfen, ob die Verbindung funktioniert.
👉 Screenshot geeignet: Einstellungen mit eingetragener E-Mail-Adresse und erfolgreichem Test
[!TIP] Falls du keinen eigenen Mailserver hast, kannst du den SMTP-Dienst deines Hosting-Anbieters oder deiner Domain verwenden.
3) Fehlerprotokolle einsehen
Falls ein Backup fehlschlägt:
- Auf den entsprechenden Job klicken.
- Show log → Remote log öffnen.
- Fehlerdetails überprüfen, z. B. fehlende Rechte oder nicht erreichbare Ziele.
👉 Screenshot geeignet: Fehlerprotokoll mit Beispiel-Fehlermeldung
4) Test-Wiederherstellung durchführen
Mindestens einmal nach der Einrichtung und dann regelmäßig (z. B. alle paar Monate) eine Wiederherstellung testen.
- In der Web-GUI auf den Job klicken.
- Restore files wählen.
- Einen kleinen Ordner oder einige Dateien auswählen.
- Zielordner für den Restore wählen (z. B. temporäres Testverzeichnis).
- Wiederherstellung starten und prüfen, ob die Dateien vollständig und fehlerfrei sind.
👉 Screenshot geeignet: Fenster der Wiederherstellung mit ausgewählten Test-Dateien
[!NOTE] Die Test-Wiederherstellung stellt sicher, dass sowohl die Backups als auch das gewählte Zielmedium korrekt funktionieren.
4. Troubleshooting & Tipps
Hier findest du die häufigsten Probleme und was du tun kannst, um sie schnell zu beheben.
Alle Schritte sind so beschrieben, dass sie auch ohne Vorkenntnisse leicht nachvollziehbar sind.
4.1 Die Web-Oberfläche öffnet sich nicht
Symptom:
Im Browser kommt keine Seite, wenn du https://backup.deinedomain.tld oder http://<Container-IP>:8200 aufrufst.
Lösung:
- Im Proxmox-Fenster prüfen, ob der Duplicati-Container gestartet ist.
- Teste im Browser die direkte Adresse:
http://<Container-IP>:8200
– funktioniert das, liegt das Problem am Proxy. - Melde dich im Nginx Proxy Manager an und kontrolliere beim Eintrag für Duplicati:
- Die IP-Adresse des Containers ist korrekt.
- Der Port 8200 ist richtig eingetragen.
- Force SSL ist aktiviert.
- Wenn du von außerhalb zugreifst: Stelle sicher, dass im Router die Ports 80 und 443 an den NPM-Server weitergeleitet sind.
👉 Screenshot geeignet: Proxy-Host-Einstellungen in NPM mit IP und Port 8200
4.2 Browser meldet „Verbindung nicht sicher“
Symptom:
Im Browser erscheint ein Warnsymbol oder die Meldung „unsichere Verbindung“.
Lösung:
- Im NPM den Eintrag für Duplicati öffnen → Tab SSL → auf „Request a new SSL Certificate“ klicken.
- Prüfen, ob im Router die Ports 80 und 443 freigegeben sind, damit das Zertifikat ausgestellt und erneuert werden kann.
- Seite nach der Erneuerung neu laden und ggf. Browser-Cache leeren.
4.3 Backup bricht ab mit „keine Berechtigung“
Symptom:
Der Job startet, bricht aber mit der Meldung „Permission denied“ ab.
Lösung:
- Prüfen, ob der Ordner, den du als Ziel gewählt hast (z. B.
/mnt/backups/nextcloud), existiert. - Sicherstellen, dass der Ordner nicht schreibgeschützt ist.
- Bei externen Laufwerken (z. B. USB-HDD) kontrollieren, ob das Laufwerk korrekt eingehängt ist und genügend freien Speicher hat.
👉 Screenshot geeignet: Fehlermeldung „Permission denied“ im Duplicati-Protokoll
4.4 Backup dauert ungewöhnlich lange
Symptom:
Das erste Backup braucht viele Stunden oder wirkt sehr langsam.
Lösung:
- Keine Sorge: Das erste Backup dauert immer am längsten, weil alle Dateien kopiert werden.
- Folge-Backups sichern nur die Änderungen und sind deutlich schneller.
- Bei sehr großen Datenmengen (mehr als 500 GB) kann die voreingestellte Blockgröße von 100 KB bremsen.
→ Im Premium-Kapitel zeigen wir, wie man die Blockgröße anpasst, um Zeit zu sparen. - Prüfen, ob der Container ausreichend Ressourcen hat (mindestens 4 GB RAM).
4.5 Wiederherstellung schlägt fehl
Symptom:
Beim Test-Restore fehlen Dateien oder es erscheint eine Fehlermeldung.
Lösung:
- Sicherstellen, dass die richtige Passphrase für die Entschlüsselung eingegeben wurde.
- Im Menü des Jobs auf Show log → Remote log klicken, um Fehlerdetails zu sehen.
- Prüfen, ob das Ziel-Laufwerk für die Wiederherstellung genügend freien Speicherplatz und Schreibrechte hat.
- Restore-Vorgang erneut ausführen, falls die Verbindung abgebrochen war.
👉 Screenshot geeignet: Fenster mit ausgewähltem Test-Restore und Fortschrittsanzeige
[!TIP]
Führe alle paar Monate eine kleine Test-Wiederherstellung durch, um sicherzugehen, dass deine Backups wirklich nutzbar sind.
5. Zusammenfassung
In diesem Kapitel hast du gelernt, wie du mit Duplicati zuverlässige Backups nach der 3-2-1-Regel einrichtest.
- Wir haben dafür einen eigenen LXC-Container mit Debian 12 erstellt und ihm 4 GB RAM gegeben.
- Duplicati wurde installiert und über den Nginx Proxy Manager per Subdomain und HTTPS erreichbar gemacht.
- Du hast gesehen, wie man mit dem Backup-Assistenten Schritt für Schritt einen Job anlegt:
Name vergeben, Verschlüsselung aktivieren, Quelle und Ziel auswählen, Zeitplan und Aufbewahrung einstellen. - Die Funktion Smart Retention sorgt automatisch für eine saubere Versionierung der Sicherungen.
- Du weißt jetzt, wie du den Status der Backups prüfst, E-Mail-Benachrichtigungen einrichtest und bei Bedarf eine Test-Wiederherstellung durchführst.
- Im Abschnitt Troubleshooting & Tipps findest du Lösungen für die häufigsten Probleme.
[!TIP]
Im Premium-Kapitel lernst du, wie du große Datenmengen optimierst und selektive Sicherungen für spezielle Daten wie VOD-Archive oder Datenbanken einrichtest.
Damit ist dein Backup-System einsatzbereit und du hast den wichtigsten Teil der 3-2-1-Regel umgesetzt:
eine lokale, verschlüsselte und automatisierte Sicherung deiner Daten.