From 4abcbc9e5e79cc452bcd3156732b48abe02a671b Mon Sep 17 00:00:00 2001 From: Thomas Dannenberg Date: Mon, 6 Oct 2025 17:00:20 +0000 Subject: [PATCH] Kapitel 8/Free Rohtext.md aktualisiert --- Kapitel 8/Free Rohtext.md | 307 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 307 insertions(+) diff --git a/Kapitel 8/Free Rohtext.md b/Kapitel 8/Free Rohtext.md index 76bf50b..6a85eb5 100644 --- a/Kapitel 8/Free Rohtext.md +++ b/Kapitel 8/Free Rohtext.md @@ -85,3 +85,310 @@ Wer von Anfang an die **3-2-1-Regel** umsetzen will, plant gleich zwei Ziele ein --- +## 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 + +1) Öffne das **Proxmox-Webinterface**, wähle links den **Duplicati-Container** und öffne die **Konsole**. +👉 Screenshot geeignet: Proxmox – Container auswählen und Konsole geöffnet + +2) Führe in der Konsole folgende Befehle aus, um das System zu aktualisieren und die benötigten Hilfspakete zu installieren: + +```bash +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 + +1) Öffne auf deinem **PC-Browser** die Seite + [https://www.duplicati.com/download](https://www.duplicati.com/download) +👉 Screenshot geeignet: Duplicati-Downloadseite mit sichtbarem Bereich „Linux 64-bit (GUI)“ + +2) Kopiere beim Eintrag **Linux 64-bit (GUI)** den Link der aktuellen Stable-Version (z. B. `duplicati-2.1.x.x_linux-x64-gui.deb`). + +3) Lade die Datei im Container in das Verzeichnis `/tmp` herunter: + +```bash +cd /tmp +wget +``` +👉 Screenshot geeignet: Konsole – Download mit `wget` erfolgreich abgeschlossen + +4) Installiere das Paket und ziehe bei Bedarf fehlende Abhängigkeiten nach: + +```bash +dpkg -i .deb +apt-get install -f -y +``` + +5) Prüfe die Installation: + +```bash +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://: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. + +1) **Anmelden** im NPM-Dashboard +👉 Screenshot geeignet: NPM – Dashboard + +2) Klick auf **Add Proxy Host** + +3) 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 + +4) 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“ + +5) **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. + +1) In der Web-GUI oben rechts auf **Settings → Default options** klicken. +2) Unter **send-mail-to** die eigene E-Mail-Adresse eintragen. +3) Unter **send-mail-url** den SMTP-Server deines Mail-Providers hinterlegen. +4) Benutzername und Passwort für den Mailserver ergänzen. +5) 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: +1) Auf den entsprechenden Job klicken. +2) **Show log → Remote log** öffnen. +3) 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. + +1) In der Web-GUI auf den Job klicken. +2) **Restore files** wählen. +3) Einen kleinen Ordner oder einige Dateien auswählen. +4) Zielordner für den Restore wählen (z. B. temporäres Testverzeichnis). +5) 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://:8200` aufrufst. + +**Lösung:** +1) Im **Proxmox-Fenster** prüfen, ob der Duplicati-Container gestartet ist. +2) Teste im Browser die direkte Adresse: `http://:8200` + – funktioniert das, liegt das Problem am Proxy. +3) 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. +4) 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. \ No newline at end of file