Backup und Replikation trojanersicher für Proxmox VE mit Miyagi Workflow

Trojanersichere Backups und Replikationen mit Proxmox Backup Server, ZFS und Miyagi

Ziel ist eine Datensicherung mit drei Kopien der Daten, mindestens zwei Standorten und zwei unterschiedlichen Sicherungsmethoden. Zusätzlich muss die Kontrolle der Backups und Replikationen zuverlässig, automatisch und ohne Fehlerquote funktionieren.

Unsere Lösung kombiniert Proxmox Backup Server, ZFS-Replikation, Snapshots, Monitoring mit Checkmk und den Miyagi-Workflow. Dadurch entstehen sowohl klassische Backups mit langer Historie als auch startfähige ZFS-Replikate für schnelle Wiederherstellung im Notfall.

Backups bieten ein Wiederherstellungsversprechen.

ZFS-Replikate bieten eine sehr schnelle Wiederherstellungsmöglichkeit, weil replizierte Systeme auf geeigneter Hardware direkt gestartet werden können.

Was wir erreichen wollen

Als Ergebnis entsteht eine Backuphistorie über mehrere Monate bis Jahre sowie ein ZFS-Replikat mit typischer Aufbewahrung von ca. 14 Tagen bis drei Monaten.

Backup- und Replikationsübersicht mit Proxmox Backup Server und ZFS

Beispiel auf dem Zielserver

# Auf dem Zielserver sollte das dann so aussehen

# Proxmox Backups mit Snapshot-Schutz gegen Kompromittierung
zfs list
rpool/pbsstore                    4.9T  30.4T  4.62T  /rpool/pbsstore 

# PVE mit LXC Container
rpool/repl/lwpve2/rpool/data/subvol-100-disk-0    168G  34.8G   165G  /rpool/repl/lwpve2/rpool/data/subvol-100-disk-0
rpool/repl/lwpve2/rpool/data/subvol-102-disk-0    918M  31.1G   872M  /rpool/repl/lwpve2/rpool/data/subvol-102-disk-0

# PVE mit KVM
rpool/repl/lwpve3/rpool3/data/vm-301-disk-0       267K  41.0T   169K  -
rpool/repl/lwpve3/rpool3/data/vm-301-disk-1      40.6G  41.0T  26.7G  -
rpool/repl/lwpve3/rpool3/data/vm-301-disk-2       277G  41.0T   214G  -

# ZVOLs finden sich unter /dev/zvol/rpool...

Backups benötigen für eine Wiederherstellung den richtigen Zeitpunkt, genügend freien Platz und Zeit. ZFS-Replikate können dagegen auf ausreichend leistungsfähiger Hardware sehr schnell produktiv gestartet werden.

Die Aufbewahrungszeiten für Backups und Replikate können selbst festgelegt werden.


Überlegungen zu Proxmox VE, ZFS und Ceph

Proxmox VE ist eine leistungsfähige Virtualisierungsplattform auf Basis von KVM und LXC. Viele ältere VMware- und Hyper-V-Umgebungen können auf Proxmox VE migriert werden.

Der eigentliche Nutzen von Proxmox entsteht aber nicht nur durch die Weboberfläche, sondern durch die Kombination mit ZFS, Ceph, SDN, Snapshots, Replikation und dem Proxmox Backup Server.

Nutzt man Proxmox VE nur mit Hardware-RAID oder klassischem SAN, verliert man viele Vorteile, die Proxmox in Verbindung mit ZFS oder Ceph eigentlich bietet.

ZFS eignet sich besonders für kleinere und mittlere Installationen mit einem bis drei Proxmox-Servern. Hier können Systeme performant betrieben, regelmäßig snapshotiert und auf weitere Systeme repliziert werden.

Ceph kommt vor allem dann ins Spiel, wenn im Fehlerfall möglichst kein Datenverlust entstehen darf und ausreichend Budget, Netzwerkleistung und Know-how vorhanden sind. In der Praxis bedeutet Ceph häufig einen deutlich höheren Hardware- und Betriebsaufwand.

Mit ZFS erreicht man realistisch eine Sicherungslücke von unter fünf Minuten oder besser, wenn es notwendig ist. Nur weil bei einem Server das Licht ausgeht, sind die Daten noch lange nicht verloren.

Empfehlung für kleinere Umgebungen


Snapshots gegen Bedienfehler, Fahrlässigkeit und Ransomware

Vor Umstellungen, Updates oder riskanten Maßnahmen erstellt ein Administrator üblicherweise einen Snapshot. Bei VMware oder Hyper-V können zu viele oder zu lange bestehende Snapshots schnell zum Problem werden.

Hier spielt ZFS seine Stärke aus. ZFS-Snapshots sind sehr effizient und können regelmäßig erstellt werden, ohne den Betrieb in gleicher Weise zu belasten.

Durch die Arbeitsweise von ZFS sind permanente Snapshots im produktiven Betrieb ein großer Vorteil.

Empfohlene Snapshot-Strategie

Für automatische Snapshots eignen sich beispielsweise zfs-auto-snapshot oder CV4PVE als Web-GUI für Proxmox VE.

Für Aufbewahrungszeiten über drei Monate hinaus eignet sich zusätzlich die tägliche Sicherung mit dem Proxmox Backup Server.

Wichtig: Das System sollte nicht dauerhaft über 80 % belegt werden. Bei zu hoher Belegung müssen Aufbewahrungszeiten reduziert werden.


Proxmox Backup Server: Segen und Risiko

Der Proxmox Backup Server ist ein hervorragendes Sicherungswerkzeug für virtuelle Maschinen und Linux-Container auf Proxmox VE. Er bietet inkrementelle Backups, Deduplizierung, Verifizierung und effiziente Wiederherstellung.

Das Standarddesign sieht allerdings vor, dass Proxmox VE seine Sicherungen zum Proxmox Backup Server schiebt. Dadurch entsteht im Ernstfall Angriffsfläche, wenn Zugangsdaten oder Berechtigungen zu weit gefasst sind.

Der Backup-Benutzer sollte ausschließlich Sicherungs- und Wiederherstellungsrechte besitzen.

2FA, ein API-Token mit minimalen Rechten und deaktivierter SSH-Passwortlogin sind Pflicht.

Typische Probleme im Standardbetrieb


Der Miyagi-Workflow

Der Miyagi-Workflow kombiniert Proxmox Backup Server, ZFS-Replikation, Wartung, Updates, Verifizierung und Monitoring in einem Ablauf.

Das Ziel ist ein Backupserver an einem anderen Standort, der nur für den Sicherungslauf aktiv ist, die Sicherungen kontrolliert, Replikate erstellt und anschließend wieder herunterfährt.

Voraussetzungen

Bashclub Postinstaller:

https://github.com/bashclub/proxmox-zfs-postinstall

Proxmox Backup Server vorbereiten

SSH-Zugriff vorbereiten

Wichtige Hinweise zur PBS-Konfiguration

Kein NFS als Datastore für Proxmox Backup Server verwenden.

Optional kann beim Booten ein iSCSI-LUN von Synology oder einem anderen System eingebunden werden, wenn keine lokalen Platten genutzt werden.

@reboot iscsiadm --mode node --targetname "iqn.2xxxx" --portal "10.ipsyn...:3260" --login && zpool import -f iscsi

ZFS-Pool und Dataset für PBS erstellen

Bei direkter Nutzung von Festplatten:

zpool create -f iscsi /dev/sdx -o autoexpand=on
zfs create iscsi/pbsstore -o recordsize=1M -o com.sun:auto-snapshot=false

Bei nativ installiertem PBS:

zfs create rpool/pbsstore -o recordsize=1M -o com.sun:auto-snapshot=false

Die Festplatten sollten idealerweise über /dev/disk/by-id eingebunden werden.

Datastore im Proxmox Backup Server anlegen

Datastore in Proxmox VE einrichten

In Proxmox VE wird ein neuer Datastore vom Typ Proxmox Backup Server eingerichtet.

Proxmox Backup Server Datastore in Proxmox VE einrichten

Danach sollte direkt aus einer VM oder einem LXC ein Testbackup ausgeführt werden.

Achtung: Proxmox VE setzt den Store local standardmäßig teilweise auf Typ Backup. Das sollte dringend deaktiviert werden.


Miyagi installieren

Die Installation erfolgt auf dem Proxmox Backup Server.

apt install git open-iscsi
git clone -b dev https://github.com/bashclub/miyagi-pbs-zfs.git
cd miyagi-pbs-zfs
cp config.example ipdeinespve.conf
nano ipdeinespve.conf

Das Miyagi-Script sichert einen Proxmox VE Host mit maximal zwei ZFS-Pools auf ein Ziel. Für weitere Hosts oder Pools werden einfach mehrere Konfigurationsdateien verwendet.

Beispielkonfiguration

SSHPORT='22'

BACKUPSERVER=yes
MAINTDAY=6
SHUTDOWN=yes
UPDATES=yes

SOURCEHOST='dein-pve-ip'

# ZFS-Replikation
ZFSROOT='rpool/data'
ZFSSECOND='rpool-hdd/data'
ZFSTRGT='rpool/repl'

ZPOOLSRC=rpool
ZPOOLDST=rpool

# ZSYNC für ZFS-Replikation
ZPUSHTAG=bashclub:zsync
ZPUSHMINKEEP=3
ZPUSHKEEP=14
ZPUSHLABEL=zsync
ZPUSHFILTER="daily,weekly,monthly"

# Backup
PBSHOST='ip-des-pbs'
BACKUPSTORE=backup
BACKUPSTOREPBS=backup
BACKUPEXCLUDE='99999'

Wichtige Parameter


Testlauf durchführen

/root/miyagi-pbs-zfs/pbs-zfs-daily.sh -c /root/miyagi-pbs-zfs/192.x.x.x.conf

Die Ausgabe sollte zuerst die ZFS-Replikation und anschließend das Proxmox-Backup anzeigen. Danach fährt der Server bei entsprechender Konfiguration herunter.

Kontrolle des Testlaufs

Proxmox Backup Server

ZFS-Replikation auf dem PBS prüfen

checkzfs --sourceonly

Alternativ:

checkzfs --source ippve --filter rpool/data --threshold 1500,2000 --columns +message

ZFS-Replikation auf dem PVE prüfen

cat /var/lib/check_mk_agent/spool/*

Monitoring mit Checkmk

Ein zentraler Bestandteil des Workflows ist das Monitoring ohne Fehlerquote. Backups und Replikationen sollen nicht nur laufen, sondern zuverlässig überwacht werden.

Service Discovery auf Proxmox VE

Checkmk Service Discovery für Proxmox Backup Status

Dieser Dienst zeigt den Status des letzten Backups.

Checkmk Kontrolle von ZFS Replikationen

Dieser Dienst zeigt alle Quelldatasets und Volumes. Wenn innerhalb eines Tages keine neuen Daten kommen, geht der Status auf Unknown.

Ausgeschalteten Miyagi-Server überwachen

Da der Sicherungsserver nach Abschluss herunterfahren kann, wird in Checkmk ein eigener Host angelegt.

Checkmk Host für ausgeschalteten Miyagi Backupserver

Nach der Service Discovery erscheint der entsprechende Status.

Checkmk Miyagi Backup Monitoring

Damit bleibt auch ein ausgeschalteter Backupserver kontrollierbar. Wenn innerhalb eines Tages keine neuen Daten eintreffen, geht der Status auf Unknown.


Warum dieser Ansatz trojanersicherer ist

Der zentrale Vorteil liegt in der Kombination mehrerer Schutzebenen:

Fazit

Mit Proxmox VE, ZFS, Proxmox Backup Server, Miyagi und Checkmk entsteht ein sehr robuster Backup- und Replikationsworkflow für kleine und mittlere Unternehmen.

Die Lösung kombiniert eine lange Backuphistorie mit schnell startfähigen Replikaten und einer zentralen Überwachung. Damit lassen sich Ausfälle, Bedienfehler und Ransomware-Schäden deutlich besser beherrschen.

Passende Schulungen

Wenn Sie diesen Workflow im Detail verstehen oder gemeinsam aufbauen möchten, passen besonders diese Kurse auf cloudistboese.de:


Version #14
Erstellt: 2025-05-14 10:02:55 UTC von Christian Zengel (sysops GmbH)
Zuletzt aktualisiert: 2026-07-09 20:44:36 UTC von Christian Zengel (sysops GmbH)