Backup Strategien 321 Regel
Backup-Strategien: Datenverlust verhindern
Kein Backup, kein Mitleid. Dieser Guide erklärt bewährte Backup-Strategien, die vor Hardware-Ausfall, Ransomware und menschlichen Fehlern schützen.
Die 3-2-1-Regel
3 Kopien → Original + 2 Backups 2 Medien → Verschiedene Speichertypen (SSD + HDD, lokal + cloud) 1 Offsite → Mindestens ein Backup an anderem Standort
Beispiel
┌─────────────────┐
│ Original-Daten │ (Server)
└────────┬────────┘
│
┌────┴────┐
▼ ▼
┌───────┐ ┌───────┐
│Backup │ │Backup │
│ lokal │ │ Cloud │
│ (NAS) │ │ (S3) │
└───────┘ └───────┘
Medium 1 Medium 2
└── Offsite
Backup-Typen
| Typ | Beschreibung | Vor-/Nachteile |
|---|---|---|
| Voll | Alle Daten jedes Mal | Einfache Wiederherstellung, viel Speicher |
| Inkrementell | Nur Änderungen seit letztem Backup | Wenig Speicher, längere Wiederherstellung |
| Differentiell | Änderungen seit letztem Voll-Backup | Kompromiss zwischen beiden |
Typischer Backup-Plan
Montag: Inkrementell Dienstag: Inkrementell Mittwoch: Inkrementell Donnerstag: Inkrementell Freitag: Inkrementell Samstag: Inkrementell Sonntag: Vollbackup Aufbewahrung: - Täglich: 7 Tage - Wöchentlich: 4 Wochen - Monatlich: 12 Monate
Was sichern?
✅ Unbedingt sichern:
- Datenbanken (MySQL-Dumps, PostgreSQL)
- Konfigurationsdateien (/etc/)
- Web-Anwendungen und Uploads
- SSL-Zertifikate und Private Keys
- Cron-Jobs und Systemd-Services
- Dokumentation und Notizen
⚠️ Nicht vergessen:
- Backup der Backup-Konfiguration!
- Dokumentation wie Restore funktioniert
- Encryption Keys extern sichern
Backup-Tools
rsync (einfach)
# Lokales Backup rsync -avz --delete /var/www/ /backup/www/ # Remote Backup rsync -avz -e ssh /var/www/ user@backup-server:/backup/www/ # Mit Exclude rsync -avz --exclude='*.log' --exclude='cache/' /var/www/ /backup/
Borg Backup (dedupliziert, verschlüsselt)
# Repository initialisieren
borg init --encryption=repokey /backup/borg-repo
# Backup erstellen
borg create /backup/borg-repo::backup-{now} /var/www /etc
# Mit Kompression
borg create --compression zstd /backup/borg-repo::backup-{now} /data
# Alte Backups löschen (7 täglich, 4 wöchentlich, 6 monatlich)
borg prune --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /backup/borg-repo
MySQL Backup
# Einzelne Datenbank mysqldump -u root -p mydb > mydb_backup.sql # Alle Datenbanken mysqldump -u root -p --all-databases > all_databases.sql # Mit Kompression mysqldump -u root -p mydb | gzip > mydb_$(date +%Y%m%d).sql.gz # Wiederherstellen mysql -u root -p mydb < mydb_backup.sql
Backup-Script Beispiel
#!/bin/bash
# /usr/local/bin/backup.sh
DATE=$(date +%Y-%m-%d)
BACKUP_DIR="/backup/$DATE"
REMOTE="user@backup-server:/backups/$DATE"
mkdir -p $BACKUP_DIR
# Datenbank
mysqldump -u root --all-databases | gzip > $BACKUP_DIR/mysql.sql.gz
# Dateien
rsync -avz /var/www/ $BACKUP_DIR/www/
rsync -avz /etc/ $BACKUP_DIR/etc/
# Zu Remote kopieren
rsync -avz $BACKUP_DIR/ $REMOTE/
# Alte lokale Backups löschen (älter als 7 Tage)
find /backup -maxdepth 1 -type d -mtime +7 -exec rm -rf {} \;
# Verifizierung
if [ $? -eq 0 ]; then
echo "Backup erfolgreich: $DATE" | mail -s "Backup OK" admin@example.com
else
echo "Backup FEHLGESCHLAGEN: $DATE" | mail -s "BACKUP FEHLER!" admin@example.com
fi
Backup testen!
❌ Häufiger Fehler:
Ein Backup, das nie getestet wurde, ist kein Backup! Regelmäßig Restore-Tests durchführen.
# Testwiederherstellung # 1. Temporäre Umgebung aufsetzen # 2. Backup einspielen # 3. Verifizieren dass alles funktioniert # 4. Dokumentieren # Checksum verifizieren sha256sum $BACKUP_DIR/mysql.sql.gz > $BACKUP_DIR/checksums.txt
Cloud-Backup
# AWS S3 aws s3 sync /backup s3://mybucket/backup/ # Mit Verschlüsselung aws s3 sync /backup s3://mybucket/backup/ --sse AES256 # Rclone (multi-cloud) rclone sync /backup remote:backup --progress
Checkliste
- ☐ 3-2-1-Regel umgesetzt
- ☐ Automatisierte Backups (Cron)
- ☐ Verschlüsselung aktiviert
- ☐ Offsite-Kopie vorhanden
- ☐ Restore regelmäßig getestet
- ☐ Monitoring bei Fehlern
- ☐ Retention-Policy definiert
- ☐ Dokumentation vorhanden
💡 Tipp:
Überwachen Sie Ihre Backup-Jobs mit dem Enjyn Server Monitor und lassen Sie sich bei Fehlern benachrichtigen.