Zum Hauptinhalt springen

Ein gutes Backup-Konzept beantwortet nicht nur, was gesichert wird, sondern auch, wie schnell die Wiederherstellung gelingt. Ein Backup, dessen Wiederherstellung nie getestet wurde, ist eine Hoffnung, kein Backup. Gerade nach einem Hack oder Ransomware-Angriff zählt, ob ein sauberer Stand schnell zurückgespielt werden kann.

Die 3-2-1-Regel

  • 3 Kopien der Daten (Produktion + 2 Backups)
  • 2 verschiedene Speichermedien oder Anbieter
  • 1 Kopie ausserhalb des Servers bzw. Hosters (Offsite)

Erweitert zu 3-2-1-1-0: eine Kopie unveränderbar (immutable/Object Lock) oder offline, und 0 Fehler bei der Wiederherstellung (getestet).

Was gesichert werden muss

  • Datenbank (komplett, inkl. aller Tabellen von Plugins)
  • wp-content: Uploads, Themes, Plugins, MU-Plugins
  • wp-config.php und ggf. .htaccess, Server-Konfiguration
  • Bei Git-Deployments: Repository plus Datenbank und Uploads. Core und Composer-Pakete lassen sich neu installieren.

Frequenz und Aufbewahrung

Site-Typ Datenbank Dateien Aufbewahrung
Firmenwebsite täglich täglich/wöchentlich 30–90 Tage
Shop / Membership stündlich oder Echtzeit täglich 90 Tage +

Lange Aufbewahrung ist wichtig: Kompromittierungen werden oft erst nach Wochen entdeckt. Dann braucht es ein Backup von vor dem Einbruch.

Umsetzung

  • Hoster-Backups als erste Ebene (schneller Restore, aber nicht unabhängig).
  • Plugin-Backups (UpdraftPlus, BlogVault, BackWPup, Duplicator u. a.) mit externem Ziel, z. B. S3-kompatibler Speicher mit Object Lock (Infomaniak Swiss Backup, Exoscale, Backblaze B2, Wasabi).
  • Server-seitig per Skript: wp db export plus restic oder borg mit Verschlüsselung und Deduplizierung.
wp db export /backup/tmp/db.sql --quiet
restic -r s3:https://s3.example.ch/wp-backups backup /var/www/example/wp-content /backup/tmp/db.sql
restic forget --keep-daily 14 --keep-weekly 8 --keep-monthly 6 --prune

Sicherheitsaspekte

  • Backups enthalten Personendaten und Passwort-Hashes: verschlüsselt speichern, Zugriff begrenzen.
  • Nie im Webroot ablegen (/wp-content/backups/*.zip wird gezielt gescannt).
  • Backup-Zugangsdaten so gestalten, dass ein kompromittierter Server die Backups nicht löschen kann (Append-only, Object Lock, separates Konto).

Restore-Tests

Mindestens quartalsweise ein Backup auf einer leeren Umgebung wiederherstellen und prüfen: Startseite, Login, Formulare, Shop, Medien. Die benötigte Zeit dokumentieren. So ist klar, wie lange ein Ausfall realistischerweise dauert (RTO) und wie viele Daten verloren gehen können (RPO).

Weiterführende Artikel

Quellen und Dokumentation