Zum Inhalt

Backup-Verwaltung

enconf erstellt inkrementelle, deduplizierte und verschlüsselte Backups — lokal, auf S3-kompatiblem Speicher oder per FTP. Backups können zeitgesteuert oder manuell ausgeführt und jederzeit wiederhergestellt werden. Laufende Jobs sind systemweit sichtbar und bleiben auch beim Seitenwechsel aktiv.


Übersicht

Die Backup-Verwaltung ist in drei Tabs unterteilt:

Tab Inhalt
Zeitpläne Konfigurierte Backup-Zeitpläne anlegen, bearbeiten, aktivieren
Verlauf Alle ausgeführten und laufenden Backup- und Wiederherstellungs-Jobs
Wiederherstellen Snapshots auswählen, durchsuchen, wiederherstellen — oder einen Snapshot manuell löschen (Danger-Bestätigung; entfernt gezielt einen Snapshot, unabhängig von der Aufbewahrung)

Laufende Aufgaben

Solange mindestens ein Backup- oder Wiederherstellungs-Job läuft, erscheint ein blauer Banner oberhalb der Tabs. Dieser ist auf allen Tabs sichtbar und wird alle 5 Sekunden aktualisiert.

Der Banner zeigt für jeden laufenden Job: - Typ (Backup / Wiederherstellung) - Zeitplanname und Umfang - Status (Läuft / Wartend) - Startzeit

Abgeschlossene Jobs werden automatisch im Tab Verlauf aktualisiert.


Server-weite vs. kundenspezifische Backups

Als Admin haben Sie zwei Modi zur Auswahl:

Modus Wann verwenden Repository-Pfad
Gesamter Server Standard-Empfehlung. Ein einziger Zeitplan sichert die Daten aller Kunden (Web-Roots, Datenbanken, Mail-Vhosts, SSL-Zertifikate) in ein gemeinsames Backup-Repository. Kein Kundenpicker. <bucket>/<pfad>/server
Einzelner Kunde Nur wenn ein bestimmter Kunde eigene Aufbewahrungszeiten, Ziele oder Credentials braucht. <bucket>/<pfad>/<customer_id>

Kunden sehen ausschließlich ihre eigenen kundenspezifischen Zeitpläne. Server-weite Zeitpläne bleiben auf den Admin-Bereich beschränkt.

Migration bestehender Zeitpläne

Bestehende kundenspezifische Zeitpläne laufen unverändert weiter. Es gibt keine automatische Umstellung. Wenn Sie auf den server-weiten Modus umsteigen möchten, legen Sie einen neuen server-weiten Zeitplan an und deaktivieren Sie die alten kundenspezifischen Zeitpläne.

Bekannte Einschränkung

Im Modus Gesamter Server wird der Scope config aktuell nicht angewendet, da der Agent dabei einen einzelnen Linux-User benötigt. Verwenden Sie für server-weite Sicherungen die Scopes full, web, db, mail oder ssl.


Zeitpläne

Zeitplan erstellen

  1. Klicken Sie auf Zeitplan anlegen
  2. Füllen Sie das Formular aus:
Feld Pflicht Beschreibung
Name Ja Bezeichnung des Zeitplans
Backup-Typ Ja (Admin) Kundendaten (Standard), Panel/System oder Node — siehe Hinweis unten
Backup-Umfang Ja (Admin) Gesamter Server (Standard) oder Einzelner Kunde
Kunde Bei Einzelner Kunde Zuordnung zu einem Kunden — wird nur eingeblendet wenn der Backup-Umfang auf Einzelner Kunde steht
Umfang Ja full, web, db, mail, ssl oder config
Häufigkeit Ja hourly, daily, weekly oder monthly
Uhrzeit Nein Stunde der Ausführung in UTC (0–23)
Wochentag Bei weekly Wochentag der Ausführung
Monatstag Bei monthly Tag des Monats (1–28)
Aufbewahrung Ja Anzahl der aufbewahrten Snapshots
Ziel Ja Lokal, S3 (empfohlen), SFTP oder FTP
S3 Endpoint Nein Eigener S3-Endpoint (leer = globale Einstellung)
S3 Access Key Nein Eigener Access Key (leer = globale Einstellung)
S3 Secret Key Nein Eigener Secret Key (leer = globale Einstellung)
  1. Klicken Sie auf Erstellen

Verschlüsselungskey sichern

Nach dem Erstellen eines Zeitplans wird ein individueller Verschlüsselungskey generiert. Klicken Sie auf das Schlüssel-Symbol in der Zeitplan-Tabelle, um den Key anzuzeigen. Speichern Sie diesen Key extern (Passwort-Manager, USB-Stick, Tresor) — ohne ihn können Backups nicht wiederhergestellt werden.

Nur ein lokales Ziel pro Kunde

Pro Kunde ist ein kundenspezifischer Zeitplan mit Ziel Lokal möglich — das lokale Backup-Repository liegt pro Kunde an einem festen Pfad und wird geteilt (jeder Zeitplan hat einen eigenen Verschlüsselungskey). Für einen zweiten Zeitplan desselben Kunden wählen Sie ein anderes Ziel (S3, SFTP oder FTP). Der Versuch, ein zweites lokales Ziel anzulegen, wird mit einer klaren Meldung abgelehnt.

Backup-Typen: Kundendaten, Panel/System, Node

  • Kundendaten sichert Web-Roots, Datenbanken, Mail und SSL der Kunden.
  • Panel/System sichert den Panel-Host inklusive der Panel-Datenbank (Kunden, Subscriptions, Site-Metadaten) und der Systemkonfiguration.
  • Node sichert die rollenspezifische Systemkonfiguration eines Remote-Servers (Web/DB/Mail/DNS) — ohne Panel-Datenbank — für die Disaster-Recovery im Mehrserver-Betrieb. Der Typ Node wird nur angeboten, wenn tatsächlich Remote-Nodes angebunden sind; auf einer Single-Server-Installation ist er ausgeblendet.

Verschlüsselungskey verwalten

Im Key-Dialog stehen vier Aktionen zur Verfügung:

Aktion Beschreibung
Kopieren Key in die Zwischenablage kopieren
Als Datei herunterladen Key als netcell-backup-key-<id>.txt speichern
Key ersetzen Einen extern gesicherten Key übernehmen — z. B. um ein bestehendes Backup-Repository aus einer anderen Panel-Installation weiterzunutzen
Schließen Dialog schließen

Achtung beim Ersetzen

Wenn Sie den Key ersetzen, sind alle bisherigen Backups dieses Zeitplans mit dem neuen Key nicht mehr lesbar. Nutzen Sie diese Funktion ausschließlich, um nach einer Neuinstallation des Panels den Zugriff auf ein bestehendes externes Repository (S3 oder FTP) wiederherzustellen.

Migration auf ein neues Panel:

  1. Im alten Panel: Schlüssel-Symbol → Als Datei herunterladen
  2. Im neuen Panel: Backup-Zeitplan mit identischem Ziel (S3/FTP, Bucket, Pfad) anlegen
  3. Schlüssel-Symbol → Key ersetzen → Inhalt der heruntergeladenen Datei einfügen
  4. Snapshots werden anschließend wieder gelistet und können wiederhergestellt werden

Eigener S3-Speicher

Kunden können eigene S3-kompatible Speicher hinterlegen (z. B. AWS S3, Wasabi, MinIO, Hetzner Object Storage). Dafür werden S3 Endpoint, Access Key und Secret Key direkt am Zeitplan konfiguriert.

Einstellung Beschreibung
S3 Endpoint URL des S3-kompatiblen Dienstes (z. B. https://s3.eu-central-1.amazonaws.com)
S3 Access Key Zugriffsschlüssel für den S3-Dienst
S3 Secret Key Geheimer Schlüssel (wird verschlüsselt gespeichert)
S3 Bucket Name des S3-Buckets
S3 Pfad Pfad innerhalb des Buckets

Wenn die Felder leer bleiben, werden die globalen S3-Einstellungen des Admins verwendet (konfiguriert unter Einstellungen → Backup).

Permission: Eigener Backup-Speicher

Die Möglichkeit eigene S3/FTP-Credentials zu hinterlegen kann pro Paket über die Permission Eigener Backup-Speicher (S3/FTP) eingeschränkt werden. Standardmäßig ist diese Permission deaktiviert.

Umfang

Wert Was wird gesichert
full Webdateien + Datenbanken + Mails + SSL + Konfiguration
web Nur Webdateien (Webspace)
db Nur Datenbanken (MariaDB)
mail Nur E-Mail-Postfächer (Maildir + Sieve)
ssl Nur SSL-Zertifikate
config Nginx- und PHP-FPM-Konfiguration

Speicherziele

Lokal (Server)

Backups werden im lokalen Backup-Repository des Servers gespeichert.

Lokale Backups

Lokale Backups schützen nicht vor Festplattenausfall. Kombinieren Sie lokale Backups mit einem externen Ziel.

S3 / S3-kompatibel — empfohlen

S3 ist das empfohlene Ziel

S3 (und S3-kompatible Dienste) schreiben Backups direkt vom Server, ohne lokalen Zwischenspeicher — das robusteste externe Ziel. Im Zeitplan-Dialog ist S3 als (empfohlen) markiert.

Feld Beschreibung
S3 Bucket Bucket-Name
S3 Pfad Unterverzeichnis im Bucket (optional)

Die S3-Zugangsdaten (Endpoint, Region, Access Key, Secret Key) werden unter Einstellungen → Backup konfiguriert.

SFTP (SSH)

SFTP nutzt das native SFTP-Backend von restic über SSH — es schreibt direkt auf das Ziel, ohne lokalen Zwischenspeicher, und authentifiziert sich schlüsselbasiert (kein Passwort).

Feld Beschreibung
SFTP-Host Server-Adresse
SFTP-Port Standard: 22
SFTP-Benutzer Benutzername
Zielpfad Zielverzeichnis auf dem SFTP-Server

Beim Auswählen von SFTP zeigt das Panel den öffentlichen Schlüssel des Agenten an (kopierbar). Tragen Sie diesen einmalig in die ~/.ssh/authorized_keys des SFTP-Ziel-Benutzers ein — danach läuft die Authentifizierung ohne Passwort. Eine Keepalive-Konfiguration erkennt tote Verbindungen und bricht zügig ab, statt hängen zu bleiben.

FTP

FTP wird lokal zwischengespeichert

FTP-Backups werden zuerst lokal auf dem Server erstellt und anschließend per lftp auf das FTP-Ziel gespiegelt. Dafür muss auf dem Server genug freier Speicher vorhanden sein — vor jedem Lauf wird das geprüft; reicht der Platz nicht, bricht das Backup ab und meldet es (Benachrichtigung an den Admin). S3 und SFTP schreiben direkt und sind zu bevorzugen.

Feld Beschreibung
FTP-Host Server-Adresse
FTP-Port Standard: 21
FTP-Benutzer Benutzername
FTP-Passwort Passwort
FTP-Pfad Zielverzeichnis auf dem FTP-Server
Verschlüsselung FTPS explizit (empfohlen) / implizit / unverschlüsselt

Das lokale Repository ist die Quelle der Wahrheit; das FTP-Ziel ist ein Spiegel davon. Bei der ersten Ausführung wird ein bereits vorhandenes FTP-Repository einmalig heruntergeladen und danach inkrementell fortgeführt — der Umstieg auf dieses Verfahren ist verlustfrei. Lässt sich ein vorhandenes FTP-Repository nicht lokal bereitstellen, bricht der Lauf ab, statt die vorhandenen Backups zu überschreiben.

Netzwerkspeicher (NFS/CIFS)

Alternativ kann der lokale Backup-Pfad auf eine NFS- oder CIFS/SMB-Freigabe gelegt werden (unter Einstellungen → Backup → Netzwerkspeicher). Sowohl lokale als auch FTP-zwischengespeicherte Backups landen dann auf dem Netzwerkspeicher. Der Mount wird als systemd-Unit persistiert und übersteht Neustarts; die nötigen Client-Pakete (nfs-common bzw. cifs-utils) installiert der Agent bei Bedarf automatisch, und der Schreibzugriff wird beim Einrichten geprüft.

Verbindungstest

Klicken Sie auf Verbindung testen, um die Erreichbarkeit des Speicherziels zu prüfen, bevor Sie den Zeitplan speichern:

Speicherziel Testmethode
S3 restic-Init gegen das Ziel — prüft Zugangsdaten, Bucket-Zugriff und Schreibberechtigung
SFTP restic-Init über SSH — prüft Schlüssel-Authentifizierung, Erreichbarkeit und Schreibrecht
FTP lftp-Login + Verzeichnis-Anlage — prüft Auth, TLS, Pfad und Schreibberechtigung
Lokal Erstellt ein Testverzeichnis — prüft Schreibberechtigung im angegebenen Pfad

Vor dem Speichern testen

Testen Sie die Verbindung immer vor dem Erstellen eines Zeitplans, um fehlgeschlagene Backups durch falsche Zugangsdaten zu vermeiden.

Aufbewahrung & Pruning

Die Aufbewahrung legt fest, wie viele Snapshots behalten werden. Diese Anzahl wird nach jedem Backup durchgesetzt — Snapshots über dem Limit verschwinden sofort aus der Liste.

Das Freigeben des Speicherplatzes dieser entfernten Snapshots (ein Prune) ist ein separater, deutlich aufwändigerer Vorgang. Damit Backups schnell bleiben, läuft er im Hintergrund und höchstens einmal pro Woche pro Repository — ein Backup ist also fertig, sobald sein Snapshot geschrieben ist, und wird nie durch das Pruning verzögert, selbst bei langsamem Speicher wie FTP. Ein abgebrochener Backup-Lauf kann einen Zeitplan nicht mehr blockieren: verwaiste Repository-Locks werden beim nächsten Lauf automatisch bereinigt.

Einzelnen Snapshot löschen geht sofort

Das Löschen eines Snapshots im Wiederherstellen-Tab entfernt ihn sofort aus der Liste; der Speicherplatz wird beim nächsten geplanten Prune frei. Es gibt keine minutenlange Wartezeit mehr beim Löschen.

Langsame FTP-Ziele — Prune begrenzen

Über FTP ist das Repacking der Packs netzwerkgebunden und kann langsam sein, daher wird es pro Lauf begrenzt und holt über die wöchentlichen Läufe auf (vollständig unreferenzierte Daten werden immer sofort komplett freigegeben). Das Limit ist für FTP-Ziele standardmäßig 64M und für S3/lokal unbegrenzt. Pro Installation anpassbar über BACKUP_PRUNE_MAX_REPACK in /etc/enconf/agent.env (z. B. BACKUP_PRUNE_MAX_REPACK=256M, oder unlimited zum Deaktivieren), danach den Agent neu starten.

Zeitplan aktivieren / deaktivieren

Deaktivierte Zeitpläne werden nicht automatisch ausgeführt, können aber manuell gestartet werden.

Zeitplan bearbeiten

  1. Klicken Sie auf das Bearbeiten-Symbol
  2. Passen Sie die Einstellungen an
  3. Klicken Sie auf Speichern

Zeitplan löschen

  1. Klicken Sie auf das Löschen-Symbol
  2. Bestätigen Sie die Löschung

Snapshots bleiben erhalten

Beim Löschen eines Zeitplans bleiben die am Speicherziel abgelegten Snapshots erhalten.


Manuelles Backup

Für jeden Zeitplan kann jederzeit ein sofortiges Backup ausgelöst werden:

  1. Klicken Sie auf den grünen Button Jetzt ausführen in der Aktionsspalte des gewünschten Zeitplans
  2. Der Backup-Job wird sofort gestartet und im Laufende-Aufgaben-Banner angezeigt

Alle starten: Klicken Sie auf Alle starten (oben rechts), um alle aktiven Zeitpläne gleichzeitig auszuführen.


Verlauf (Job-Tabelle)

Der Tab Verlauf zeigt alle ausgeführten und laufenden Backup- und Wiederherstellungs-Jobs.

Spalten

Spalte Beschreibung
Gestartet Startzeit (z. B. „Heute, 03:00 Uhr"), darunter Laufzeit und Datenmenge
Zeitplan Zeitplanname mit farbigem Umfang-Tag; bei Wiederherstellungen zusätzlich der Typ
Status Farbige Statusanzeige
Snapshot Kurzform der Snapshot-ID (nur bei Backups, nur auf großen Bildschirmen)
(Detailbutton) Öffnet die Detailansicht

Tipp: Eine Zeile anklicken öffnet ebenfalls die Detailansicht.

Status-Indikatoren

Status Farbe Bedeutung
Wartend Grau Job wartet auf Ausführung
Läuft Blau (animiert) Wird gerade ausgeführt
Erfolg Grün Erfolgreich abgeschlossen
Fehler Rot Fehlgeschlagen

Job-Typ

Symbol Farbe Bedeutung
↑ Wolke Blau Backup
↩ Pfeil Orange Wiederherstellung

Detailansicht

Klicken Sie auf eine Zeile oder den Info-Button, um die Detailansicht zu öffnen. Diese zeigt:

  • Typ und Status als farbige Tags
  • Zeitplan, Startzeit, Endzeit, Laufzeit, Datenmenge, Snapshot-ID
  • Ausführungslog — dunkles Terminal-Fenster mit detaillierten Statistiken:
  • Bei Backups: neue Dateien, geänderte Dateien, unveränderte Dateien, übertragene Datenmenge, Gesamtdauer
  • Bei Wiederherstellungen: wiederhergestellte Dateien, übersprungene Dateien, Bytes, Laufzeit
  • Fehlermeldung (bei fehlgeschlagenen Jobs)

Kein Log bei fehlgeschlagenem Backup

Das Ausführungslog wird nur bei erfolgreich abgeschlossenen Jobs angezeigt. Bei Fehlern erscheint stattdessen eine rote Fehlermeldung.

Alte Einträge löschen

Klicken Sie auf Alte Einträge löschen oberhalb der Tabelle, um abgeschlossene und fehlgeschlagene Jobs zu bereinigen, die älter als 30 Tage sind.

Automatische Bereinigung

Führen Sie die Bereinigung regelmäßig durch, um die Übersichtlichkeit des Verlaufs zu gewährleisten.


Snapshots und Wiederherstellung

Snapshots anzeigen

  1. Wechseln Sie zum Tab Wiederherstellen
  2. Wählen Sie einen Zeitplan aus der Dropdown-Liste
  3. Klicken Sie auf Snapshots laden
  4. Die verfügbaren Wiederherstellungspunkte werden angezeigt
Spalte Beschreibung
Erstellt am Erstellungszeitpunkt (z. B. „Heute, 14:23 Uhr")
Enthält Inhalts-Tags basierend auf dem Backup-Umfang
Aktionen Wiederherstellen, Dateien durchsuchen

Dateien durchsuchen

  1. Klicken Sie neben dem Snapshot auf Dateien durchsuchen
  2. Navigieren Sie durch die Verzeichnisstruktur des Snapshots
  3. Klicken Sie neben einer Datei auf Wiederherstellen, um diese Datei selektiv wiederherzustellen

Wiederherstellung starten

  1. Klicken Sie neben dem Snapshot auf Wiederherstellen
  2. Wählen Sie per Karten-Interface aus, was wiederhergestellt werden soll:
Option Beschreibung
Alles wiederherstellen Alle Daten aus dem Backup (nur bei full-Umfang)
Webseiten-Dateien Webdateien & Verzeichnisse
Datenbanken Alle Datenbanken & Tabellen
E-Mail-Daten E-Mails & Mailbox-Daten
SSL-Zertifikate SSL-Zertifikate & Schlüssel
Konfiguration Nginx, PHP-FPM Konfiguration
Einzelne Datei Gezielter Dateipfad

Die verfügbaren Optionen richten sich nach dem Umfang des Zeitplans.

  1. Bestätigen Sie die Wiederherstellung

Überschreibung

Eine Wiederherstellung überschreibt die aktuellen Daten. Erstellen Sie vorher ein manuelles Backup des aktuellen Stands.

Die Wiederherstellung läuft asynchron im Hintergrund. Der Fortschritt ist im Laufende-Aufgaben-Banner und nach Abschluss im Verlauf einsehbar.


Backup-Einstellungen

Die globalen Backup-Einstellungen werden unter Einstellungen → Backup konfiguriert:

Einstellung Beschreibung
S3-Endpoint URL des S3-Dienstes (z. B. https://s3.amazonaws.com)
S3-Region AWS-Region
S3-Access-Key Zugangschlüssel
S3-Secret-Key Geheimer Schlüssel
Backup aktiviert Globaler Ein-/Ausschalter
Standard-Aufbewahrung Standardmäßige Aufbewahrungsanzahl

Hier lassen sich außerdem globale SFTP- und FTP-Zugangsdaten hinterlegen, die Zeitpläne als Fallback nutzen, wenn sie kein eigenes Ziel angeben.

Netzwerkspeicher (NFS/CIFS)

Unter Einstellungen → Backup → Netzwerkspeicher kann der lokale Backup-Pfad auf eine Netzwerkfreigabe gelegt werden:

Feld Beschreibung
Typ Kein (lokale Festplatte), NFS oder CIFS/SMB
Server Adresse des NFS-/CIFS-Servers
Export-Pfad / Freigabename NFS-Export (z. B. /exports/backups) bzw. CIFS-Freigabe
Benutzer / Passwort Nur CIFS — Zugangsdaten (verschlüsselt gespeichert, in einer root-only Credentials-Datei abgelegt)
Zusätzliche Mount-Optionen Optional, komma-getrennt

Speichern & Mounten richtet den Mount ein, prüft den Schreibzugriff und persistiert ihn als systemd-Unit (übersteht Neustarts). Trennen hängt die Freigabe wieder aus. Der aktuelle Status wird angezeigt, sobald ein Netzwerkspeicher aktiv ist.

S3 bevorzugen

Netzwerkspeicher und FTP legen Backups zunächst lokal ab. Für ein direktes, ausfallsicheres externes Ziel ist S3 (oder SFTP) vorzuziehen.