Zurück zum Blog

Kritische Backup-Lücke geschlossen

Kritische Backup-Lücke geschlossen: Email-Daten jetzt sicher

1. Januar 2026 | 10 Min. Lesezeit | Infrastructure & Disaster Recovery

🚨 Der Schock: Alle Emails OHNE Backup!

Bei der Analyse unseres Backup-Systems entdeckten wir etwas Erschreckendes:

Kritisches Problem:

Mailcow, unser kompletter Email-Server mit Jahren an Kommunikation, wurde NICHT gesichert!

Von 58 produktiven Docker Volumes waren nur 13 gesichert (22%). Der Email-Server mit allen Mails, Konten und Verschlüsselungskeys hatte kein Backup.

💀 Was wäre bei einem Server-Ausfall passiert?

  • 💀 Alle Emails VERLOREN – Jahre an Geschäftskommunikation
  • 💀 Email-Konten VERLOREN – Accounts, Aliase, Filter
  • 💀 Verschlüsselungskeys VERLOREN – verschlüsselte Emails permanent unlesbar
  • 💀 Wiederaufbau: Wochen, Datenverlust: MASSIV
Disaster Recovery Risiko:

🔴 KRITISCH


⚡ Die schnelle Lösung: 5 Minuten zum Erfolg

Wir erweiterten unser automatisches Backup-System um die fehlenden Volumes:

✨ Hinzugefügt: 9 kritische Volumes

📧 Mailcow Email Server (6 Volumes)

  • mailcowdockerized_vmail-vol-1 – Email-Daten (8 GB Maildir)
  • mailcowdockerized_mysql-vol-1 – MariaDB Datenbank
  • mailcowdockerized_crypt-vol-1 – Verschlüsselungskeys
  • mailcowdockerized_redis-vol-1 – Cache & Sessions
  • mailcowdockerized_rspamd-vol-1 – Spam-Filter
  • mailcowdockerized_postfix-vol-1 – Email-Queue

📊 Monitoring Stack (3 Volumes)

  • prometheus_data – Metriken & TSDB (2 GB)
  • grafana_data – Dashboards & Konfiguration
  • alertmanager_data – Alert-Regeln

🚀 Deployment in 5 Minuten

# 1. Konfiguration hochladen
scp docker-compose-traefik.yml root@ssh2.matzka.cloud:/opt/docker/compose/

# 2. Backup Container neu starten
docker compose -f docker-compose-traefik.yml up -d backup

# 3. Test-Backup durchführen
docker exec backup backup
Ergebnis:

✅ Backup erfolgreich, Größe: 1.4 GB → 2.0 GB (+600 MB)


🔍 Verifikation: Email-Daten im Backup

# Backup-Inhalt prüfen
tar -tzf backup-20260101-094824.tar.gz | grep mailcow-vmail

Gefunden:

/backup/mailcow-vmail/matzka.cloud/alerts/Maildir/.Sent/
/backup/mailcow-vmail/matzka.cloud/admin/Maildir/cur/
/backup/mailcow-mysql/ibdata1
/backup/mailcow-crypt/ecprivkey.pem
  • ✅ Email-Accounts gefunden
  • ✅ Maildir-Struktur intakt
  • ✅ Datenbank gesichert
  • ✅ Verschlüsselungskeys gesichert

📊 Disaster Recovery: Vorher vs. Nachher

Kriterium ⚠️ VOR der Extension ✅ NACH der Extension
Status 🔴 KATASTROPHAL 🟢 WIEDERHERSTELLBAR
Emails ❌ VERLOREN (permanent) ✅ WIEDERHERSTELLBAR (max. 24h Verlust)
Verschlüsselte Mails ❌ PERMANENT VERLOREN ✅ LESBAR (Keys gesichert)
Wiederaufbau ⏱️ 2-3 Wochen ⏱️ 4-8 Stunden
Business Impact 💀 MASSIV ✅ Minimal
Recovery Time Wochen 8 Stunden
Datenverlust Permanent Max. 24h (letztes Backup)

📦 Backup-Coverage im Überblick

Jetzt gesichert: 21 Volumes

🗄️ PostgreSQL Datenbanken (4)

Nextcloud, Authentik, Directus, n8n

💾 Redis Caches (1)

Authentik Sessions

📁 Application Data (7)

Nextcloud Files, n8n Workflows, Qdrant AI, Directus Media

📧 Mailcow Email Server (6) NEU

Email-Daten, Database, Encryption Keys, Cache, Spam-Filter, Queue

📊 Monitoring Stack (3) NEU

Prometheus Metriken, Grafana Dashboards, Alert-Regeln


⏰ Automatischer Zeitplan

Tägliches Backup 03:00 UTC
Retention 30 Tage
Location /opt/docker/backups/
Kein Konflikt mit Updates:

Backup 03:00 → Update 04:00 (Sonntag) = 1 Stunde Abstand ✅


💡 Die wichtigsten Erkenntnisse

  • Regelmäßige Backup-Audits sind KRITISCH
    Einmal pro Quartal alle Volumes prüfen
  • Namenskonventionen beachten
    Mailcow nutzt mailcowdockerized_* statt Standard-Namen
  • Backup-Größe als Metrik
    Plötzlicher Anstieg = neue Daten gesichert
    Plötzlicher Abfall = Volumes fehlen
  • Test-Restores durchführen
    Quartalsweise automatisierte Restore-Tests

💰 Kosten

Monatliche Speichernutzung: 30 Backups × 2.0 GB = 60 GB

Hetzner Storage Box 100GB: €3.20/Monat

Total:

€3.20/Monat für vollständigen Disaster Recovery Schutz


🎯 Fazit

Die Entdeckung der kritischen Backup-Lücke war ein Weckruf. Ein Server-Ausfall hätte Jahre an Email-Kommunikation unwiederbringlich vernichtet.

Metrik Verbesserung
Disaster Recovery Risiko KRITISCH → MINIMAL 🟢
Recovery Time Wochen → Stunden ⚡
Datenverlust PERMANENT → Max. 24h 📉
Kosten €3.20/Monat 💰

Der wichtigste Punkt: Ein Backup ist wertlos, wenn nicht getestet. Wir führen jetzt quartalsweise Restore-Drills durch.


Code & Dokumentation

📂 github.com/reinmatz/matzka-cloud

Kontakt