PBS: Sichere PVE-Verbindung über API und Verschlüsselung
Einführung
In diesem Tutorial erfahren Sie, wie Sie Proxmox VE mit dem Proxmox Backup Server über Proxmox-API-Tokens, auf Namespaces beschränkte Berechtigungen und clientseitige Verschlüsselung verbinden. Dieser Ansatz erhöht die Sicherheit von Proxmox VE, da Proxmox VE kein vollständiges PBS-Benutzerpasswort benötigt und der Backup-Server keinen Zugriff auf unverschlüsselte VM-Backup-Daten hat.
Sie konfigurieren eine sichere Authentifizierung per API-Token, binden den Proxmox-Backup-Server-Storage in Proxmox VE ein, aktivieren die clientseitige Backup-Verschlüsselung und richten Prune- und Garbage-Collection-Zeitpläne ein, damit der Datastore nicht den gesamten verfügbaren Speicherplatz belegt.
Voraussetzungen
Zielgruppe: Systemadministratoren mit mittleren Kenntnissen.
Geschätzte Dauer: 45 bis 60 Minuten.
Ziel: Am Ende dieses Tutorials ist ein sicheres Proxmox-Backup-Repository mit Proxmox VE verbunden – mit eingeschränktem API-Token-Zugriff, verschlüsselten VM-Backups und Aufbewahrungseinstellungen, die zu Ihrer Speicherkapazität passen.
Erforderliche Umgebung:
- Proxmox VE 8.x oder neuer.
- Proxmox Backup Server 3.x oder neuer.
- Administrativer Zugriff auf die Weboberfläche oder die Shell von Proxmox VE.
- Administrativer Zugriff auf die Weboberfläche oder die Shell des Proxmox Backup Servers.
- Ein vorhandener PBS-Datastore.
- Netzwerkverbindung von Proxmox VE zu PBS über TCP-Port 8007.
- Ausreichende Datastore-Kapazität für den geplanten Aufbewahrungszeitraum der Backups.
In diesem Tutorial verwendete Beispielwerte:
| Platzhalter | Beispielwert | Beschreibung |
|---|---|---|
<PBS_HOST> |
pbs.example.com |
Hostname oder IP-Adresse des PBS |
<PBS_PORT> |
8007 |
Standard-API-Port des PBS |
<DATASTORE> |
backup-store |
Name des PBS-Datastores |
<NAMESPACE> |
pve-prod |
Namespace für diese Proxmox-VE-Quelle |
<PBS_USER> |
pve-backup@pbs |
Für Proxmox VE angelegter PBS-Benutzer |
<TOKEN_NAME> |
pve-token |
Name des API-Tokens |
<TOKEN_ID> |
pve-backup@pbs!pve-token |
Vollständige PBS-API-Token-ID |
<PVE_STORAGE_ID> |
pbs-secure |
In Proxmox VE angezeigte Storage-ID |
<PBS_FINGERPRINT> |
AA:BB:CC:... |
Fingerprint des PBS-Zertifikats |
API-Tokens des Proxmox Backup Servers bestehen aus einer Token-ID und einem Secret. Das Secret wird nur einmal bei der Erstellung des Tokens angezeigt. Speichern Sie es daher sofort in einem Passwortmanager. Laut Proxmox-Dokumentation lassen sich API-Tokens leicht widerrufen und ermöglichen es, Berechtigungen pro Client einzuschränken.
Schritt 1: Das sichere Proxmox-Backup-Konzept planen
Legen Sie vor jeder Konfigurationsänderung fest, wie Proxmox VE auf PBS zugreifen soll.
Verwenden Sie folgendes Konzept:
| Komponente | Empfohlene Einstellung |
|---|---|
| Authentifizierung | API-Token statt Benutzerpasswort |
| Zugriffsbereich | Datastore-Namespace statt des gesamten Datastores |
| PBS-Rolle | DatastoreBackup sowie DatastoreReader, falls Wiederherstellungen durchsucht werden sollen |
| Verschlüsselung | Clientseitige Verschlüsselung in Proxmox VE aktiviert |
| Aufbewahrung (Retention) | PBS-Prune-Job oder Retention-Richtlinie des Datastores |
| Speicherbereinigung | Geplante Garbage Collection nach dem Pruning |
| Reaktion bei Kompromittierung | Token widerrufen und durch ein neues ersetzen |
Dieses Konzept folgt dem Prinzip der minimalen Rechtevergabe (Least Privilege). Der Proxmox Backup Server verwendet rollen- und pfadbasierte Berechtigungen. Zugriff kann für einen bestimmten Datastore oder einen Namespace-Pfad vergeben werden, zum Beispiel /datastore/<DATASTORE>/<NAMESPACE>.
Schritt 2: Einen dedizierten PBS-Benutzer erstellen
Melden Sie sich als root oder als anderer Administrator an der PBS-Shell an.
Erstellen Sie einen dedizierten Benutzer im PBS-Realm für Proxmox VE:
proxmox-backup-manager user create <PBS_USER> \ --comment "Proxmox VE backup user"
Erwartetes Ergebnis: leere Ausgabe oder Meldung
User '<PBS_USER>' created.
Prüfen Sie, ob der Benutzer existiert:
proxmox-backup-manager user list
Erwartetes Ergebnis:
userid enable expire comment <PBS_USER> 1 Proxmox VE backup user root@pam 1 Superuser
Ein neu angelegter PBS-Benutzer oder API-Token hat standardmäßig keine Berechtigungen. Sie müssen ausdrücklich Zugriff zuweisen, bevor Proxmox VE ihn verwenden kann.
Schritt 3: Einen Namespace für Proxmox-VE-Backups erstellen
Mit einem Namespace trennen Sie einen Proxmox-VE-Host oder -Cluster innerhalb desselben Datastores von anderen Backup-Quellen. Das ist für eine sichere Authentifizierung bei Proxmox-Backups nützlich, da Berechtigungen auf genau diesen Namespace beschränkt werden können.
Sie können den Namespace über die PBS-Weboberfläche erstellen:
- Öffnen Sie die PBS-Weboberfläche.
- Gehen Sie zu Datastore.
- Wählen Sie
<DATASTORE>aus. - Öffnen Sie Content.
- Klicken Sie auf Add Namespace.
- Geben Sie
<NAMESPACE>ein. - Klicken Sie auf Create.

Erwartetes Ergebnis: PBS erstellt den Namespace unter dem ausgewählten Datastore.
Wenn Sie die Befehlszeile bevorzugen, verwenden Sie den Namespace-Befehl des PBS-Clients:
proxmox-backup-client namespace create <NAMESPACE> \ --repository root@pam@localhost:<DATASTORE>
Beim Erstellen eines Namespace müssen Sie das Passwort eingeben. Für automatisierte Skripte setzen Sie die Umgebungsvariablen PBS_PASSWORD und PBS_FINGERPRINT.
Erwartetes Ergebnis: leere Ausgabe oder Meldung
Namespace '<NAMESPACE>' created.
Schritt 4: Einen API-Token erzeugen
Erstellen Sie einen API-Token für den PBS-Benutzer in der Weboberfläche über Configuration → Access Control → API Token → Add:

Alternativ erzeugen Sie den API-Token für den PBS-Benutzer über die CLI:
proxmox-backup-manager user generate-token <PBS_USER> <TOKEN_NAME>
Erwartete Ausgabe:
{ "tokenid": "<TOKEN_ID>", "value": "<TOKEN_SECRET>" }
Speichern Sie <TOKEN_SECRET> sofort. Es kann nach der Erstellung nicht erneut angezeigt werden.
Fügen Sie das Token-Secret nicht in Chat-Systeme, Dokumentationen, die Shell-History, Ticketsysteme oder Screenshots ein. Bewahren Sie es in einem Passwortmanager oder einem anderen freigegebenen Secret-Store auf.
Schritt 5: Minimale Berechtigungen zuweisen
Die Berechtigungen eines API-Tokens in PBS ergeben sich aus der ACL des Tokens und werden anschließend mit den Berechtigungen des übergeordneten Benutzers geschnitten. In der Praxis benötigen also sowohl der Benutzer als auch der Token passende Zugriffsrechte, und der Token kann nie mehr als sein übergeordneter Benutzer.
Erteilen Sie dem übergeordneten Benutzer Backup-Zugriff ausschließlich auf den gewünschten Namespace:
proxmox-backup-manager acl update \ /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup \ --auth-id <PBS_USER>
Erteilen Sie dem Token dieselbe Backup-Rolle:
proxmox-backup-manager acl update \ /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup \ --auth-id <TOKEN_ID>
Wenn Proxmox VE vorhandene, eigene Backups aus demselben Namespace durchsuchen und wiederherstellen soll, fügen Sie zusätzlich DatastoreReader hinzu:
proxmox-backup-manager acl update \ /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader \ --auth-id <PBS_USER> proxmox-backup-manager acl update \ /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader \ --auth-id <TOKEN_ID>
Prüfen Sie die ACLs:
proxmox-backup-manager acl list
Erwartete Ausgabe:
ugid path roleid <PBS_USER> /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup <TOKEN_ID> /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup <PBS_USER> /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader <TOKEN_ID> /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader
Schritt 6: Den Zertifikats-Fingerprint des PBS notieren
Wenn PBS ein selbstsigniertes Zertifikat verwendet, muss Proxmox VE den Fingerprint des PBS als vertrauenswürdig einstufen.
Führen Sie auf dem PBS-Server Folgendes aus:
proxmox-backup-manager cert info | grep Fingerprint
Erwartete Ausgabe:
Fingerprint (sha256): <PBS_FINGERPRINT>
Speichern Sie den Fingerprint für den nächsten Schritt.
Die Proxmox-Dokumentation beschreibt den Fingerprint-Ablauf für selbstsignierte PBS-Zertifikate beim Hinzufügen von PBS-Storage zu Proxmox VE.
Schritt 7: PBS-Storage zu Proxmox VE hinzufügen
Melden Sie sich als root an der Proxmox-VE-Shell an.
Fügen Sie den PBS-Storage hinzu und verwenden Sie dabei die API-Token-ID als Benutzernamen. Geben Sie das Token-Secret ein, wenn Sie dazu aufgefordert werden:
pvesm add pbs <PVE_STORAGE_ID> \ --server <PBS_HOST> \ --port <PBS_PORT> \ --datastore <DATASTORE> \ --namespace <NAMESPACE> \ --username <TOKEN_ID> \ --fingerprint <PBS_FINGERPRINT> \ --password
Fügen Sie bei der Eingabeaufforderung das API-Token-Secret ein:
Enter Password: <TOKEN_SECRET>
Erwartetes Ergebnis: Proxmox VE fügt die PBS-Storage-Konfiguration hinzu.
Prüfen Sie den Storage:
pvesm status --storage <PVE_STORAGE_ID>
Erwartete Ausgabe:
Name Type Status Total Used Available % <PVE_STORAGE_ID> pbs active ...
Bei einem auf einen Namespace beschränkten API-Token können die Werte Total, Used und Available als 0 angezeigt werden, auch wenn der Status active lautet. Dieses Verhalten ist normal.
Sie können dies auch über die Proxmox-VE-Weboberfläche konfigurieren:
- Öffnen Sie Datacenter.
- Gehen Sie zu Storage.
- Klicken Sie auf Add.
- Wählen Sie Proxmox Backup Server aus.
- Setzen Sie ID auf
<PVE_STORAGE_ID>. - Setzen Sie Server auf
<PBS_HOST>. - Setzen Sie Datastore auf
<DATASTORE>. - Setzen Sie Namespace auf
<NAMESPACE>. - Setzen Sie Username auf
<TOKEN_ID>. - Setzen Sie Password auf das Secret des API-Tokens.
- Setzen Sie Fingerprint bei Bedarf auf
<PBS_FINGERPRINT>. - Klicken Sie auf Add.

Erwartetes Ergebnis: Der Storage erscheint unter dem Proxmox-VE-Storage und wird als aktiv gemeldet.
Schritt 8: Clientseitige Verschlüsselung aktivieren
Die clientseitige Verschlüsselung schützt die Backup-Daten, bevor sie Proxmox VE verlassen. PBS speichert verschlüsselte VM-Backups, der Schlüssel verbleibt jedoch auf der Proxmox-VE-Seite. Das erhöht die Sicherheit der Proxmox-VE-Backups, da ein kompromittierter PBS-Datastore allein die Inhalte der VM-Datenträger nicht preisgibt.
In der Proxmox-VE-Weboberfläche:
- Öffnen Sie Datacenter.
- Gehen Sie zu Storage.
- Wählen Sie
<PVE_STORAGE_ID>aus. - Klicken Sie auf Edit.
- Wechseln Sie zur Registerkarte Encryption und wählen Sie Auto-generate a client encryption key.
- Erzeugen Sie einen neuen Schlüssel, wenn es sich um ein neues, sicheres Backup-Repository handelt.
- Speichern Sie eine Kopie des Verschlüsselungsschlüssels in einem Passwortmanager oder einem Offline-Tresor für Secrets.
- Klicken Sie auf OK.

Erwartetes Ergebnis: Neue Backups in diesem PBS-Storage werden clientseitig verschlüsselt.
Der Verlust des Verschlüsselungsschlüssels kann verschlüsselte Backups unwiederbringlich machen. Bewahren Sie den Schlüssel getrennt vom Proxmox-VE-Host auf und testen Sie die Wiederherstellung, bevor Sie sich auf den Backup-Satz verlassen.
Empfohlener Umgang mit dem Schlüssel:
| Maßnahme | Begründung |
|---|---|
| Schlüssel außerhalb des Proxmox-VE-Clusters aufbewahren | Schützt vor dem Verlust des Clusters |
| Dateiberechtigungen einschränken | Verringert die lokale Angriffsfläche |
| Schlüssel offline sichern | Ermöglicht die Notfallwiederherstellung (Disaster Recovery) |
| Schlüssel nicht ausschließlich auf dem PBS speichern | Ausfall oder Kompromittierung des PBS darf die Wiederherstellung nicht blockieren |
| Wiederherstellung mit dem Schlüssel testen | Bestätigt vor einem Ernstfall, dass die Wiederherstellung funktioniert |
Schritt 9: Einen Proxmox-VE-Backup-Job erstellen
Erstellen Sie einen Backup-Job, der auf den verschlüsselten PBS-Storage schreibt.
In der Proxmox-VE-Weboberfläche:
- Öffnen Sie Datacenter.
- Gehen Sie zu Backup.
- Klicken Sie auf Add.
- Wählen Sie die zu schützenden Nodes, VMs oder Container aus.
- Setzen Sie Storage auf
<PVE_STORAGE_ID>. - Wählen Sie einen Zeitplan, zum Beispiel täglich um 02:00 Uhr.
- Stellen Sie den Modus passend zu Ihrer Workload ein.
- Lassen Sie die Retention leer, wenn PBS das Pruning übernimmt.
- Klicken Sie auf Create.

Erwartetes Ergebnis: Proxmox VE erstellt einen geplanten Backup-Job, der verschlüsselte Backups auf PBS schreibt.
Schritt 10: Prune-Einstellungen konfigurieren
Das Pruning legt fest, welche Backup-Snapshots sichtbar und wiederherstellbar bleiben. Es entfernt nicht sofort alle nicht mehr referenzierten Chunks vom Datenträger. PBS-Prune-Jobs können über die Registerkarte Prune & GC oder mit proxmox-backup-manager prune-job konfiguriert werden. Laut Proxmox-Dokumentation wird die Prune-Job-Konfiguration in /etc/proxmox-backup/prune.cfg gespeichert.
Eine gängige Retention-Richtlinie für tägliche VM-Backups lautet:
| Einstellung | Wert | Bedeutung |
|---|---|---|
keep-daily |
7 | Ein Backup pro Tag für die letzten 7 Tage behalten |
keep-weekly |
4 | Ein Backup pro Woche für die letzten 4 Wochen behalten |
keep-monthly |
6 | Ein Backup pro Monat für die letzten 6 Monate behalten |
Konfigurieren Sie diese Richtlinie für den Datastore:
proxmox-backup-manager prune-job create <JOB_ID> \ --store <DATASTORE> \ --ns <NAMESPACE> \ --keep-daily 7 \ --keep-weekly 4 \ --keep-monthly 6 \ --prune-schedule "03:00"
Erwartetes Ergebnis: PBS wendet die Retention an und führt das Pruning täglich um 03:00 Uhr aus.
Für einen kleineren Datastore verwenden Sie eine kürzere Richtlinie:
proxmox-backup-manager prune-job create <JOB_ID> \ --store <DATASTORE> \ --ns <NAMESPACE> \ --keep-daily 3 \ --keep-weekly 2 \ --keep-monthly 1 \ --prune-schedule "03:00"
Erwartetes Ergebnis: PBS behält weniger Wiederherstellungspunkte und belegt weniger Speicherplatz.
Setzen Sie keine großen Werte wie keep-daily 90, keep-weekly 52 und keep-monthly 36, ohne die erforderliche Kapazität berechnet zu haben. Die Deduplizierung von Backups hilft, macht den Speicherplatz aber nicht unbegrenzt.
Schritt 11: Den Speicherbedarf der Backups abschätzen
PBS dedupliziert Chunks, daher ergibt sich der Speicherverbrauch nicht einfach aus der vollen VM-Größe multipliziert mit der Anzahl der Backups. Dennoch benötigen Sie eine konservative Schätzung.
Verwenden Sie diese Formel:
Estimated required capacity = initial full protected data + changed data per backup * retained backup points + safety margin
Beispiel 1: Kleine Umgebung
| Wert | Menge |
|---|---|
| Geschützte VM-Daten | 600 GiB |
| Durchschnittliche tägliche Änderungsrate | 3 Prozent |
| Geänderte Daten pro Tag | 18 GiB |
| Aufbewahrung (Retention) | 7 täglich, 4 wöchentlich, 6 monatlich |
| Ungefähre Anzahl der behaltenen Wiederherstellungspunkte | 17 |
| Geschätzte geänderte Datenmenge | 306 GiB |
| Sicherheitsreserve | 30 Prozent |
Berechnung:
600 GiB + (18 GiB * 17) = 906 GiB 906 GiB * 1.30 = 1177.8 GiB
Empfohlene Datastore-Kapazität: mindestens 1,2 TiB, besser 1,5 TiB oder mehr.
Beispiel 2: Größere Produktionsumgebung
| Wert | Menge |
|---|---|
| Geschützte VM-Daten | 4 TiB |
| Durchschnittliche tägliche Änderungsrate | 5 Prozent |
| Geänderte Daten pro Backup | 204.8 GiB |
| Aufbewahrung (Retention) | 14 täglich, 8 wöchentlich, 12 monatlich |
| Ungefähre Anzahl der behaltenen Wiederherstellungspunkte | 34 |
| Geschätzte geänderte Datenmenge | 6.8 TiB |
| Sicherheitsreserve | 30 Prozent |
Berechnung:
4 TiB + (204.8 GiB * 34) = 10.8 TiB 10.8 TiB * 1.30 = 14.04 TiB
Empfohlene Datastore-Kapazität: mindestens 14 TiB, besser 16 TiB oder mehr.
Diese Beispiele sind bewusst konservativ gewählt. Der tatsächliche Verbrauch hängt von der VM-Änderungsrate, dem Verhalten des Gastdateisystems, der Komprimierung, der Deduplizierung, der Backup-Häufigkeit und davon ab, wie oft große Dateien innerhalb der Gastsysteme neu geschrieben werden.
Schritt 12: Garbage Collection konfigurieren
Die Garbage Collection (GC) ist der Vorgang, der nicht mehr referenzierte Chunks tatsächlich aus dem Datastore entfernt. Das Pruning entfernt Backup-Snapshots gemäß den Retention-Regeln, Chunks können jedoch auf dem Datenträger verbleiben, wenn andere Snapshots sie noch referenzieren oder sie sich noch innerhalb des Sicherheitsfensters befinden.
Die Garbage Collection von PBS besteht aus zwei Phasen:
| Phase | Was passiert |
|---|---|
| Mark | PBS liest die Indexdateien und aktualisiert die Zugriffszeit der referenzierten Chunks |
| Sweep | PBS durchsucht die Chunks und entfernt Chunks, die älter als der Stichtag sind, sofern kein Snapshot sie referenziert |
PBS verwendet einen Stichtag, der sich am ältesten laufenden Backup-Writer oder an 24 Stunden und 5 Minuten vor dem Start der GC orientiert. Chunks innerhalb dieser Karenzzeit werden als ausstehende Entfernungen protokolliert, statt sofort gelöscht zu werden. Das schützt laufende Backups und berücksichtigt das relatime-Verhalten des Dateisystems.
Planen Sie die GC nach dem Pruning:
proxmox-backup-manager datastore update <DATASTORE> \ --gc-schedule "04:30"
Erwartetes Ergebnis: PBS führt die Garbage Collection täglich um 04:30 Uhr aus.
Empfohlener Zeitplan bei einem täglichen Backup um 02:00 Uhr:
| Aufgabe | Beispielzeit | Zweck |
|---|---|---|
| Proxmox-VE-Backup | 02:00 | Verschlüsselte VM-Backups erstellen |
| PBS-Prune | 03:00 | Retention-Richtlinie anwenden |
| PBS-Garbage-Collection | 04:30 | Nicht referenzierte Chunks freigeben, sobald dies sicher ist |
Eine GC unmittelbar nach dem Prune garantiert keine sofortige Freigabe von Speicherplatz. Einige Chunks bleiben absichtlich als ausstehende Entfernungen bestehen, bis sie alt genug sind, um sicher gelöscht zu werden.
GC-Status prüfen:
proxmox-backup-manager garbage-collection status <DATASTORE>
GC bei Bedarf manuell starten:
proxmox-backup-manager garbage-collection start <DATASTORE>
Erwartetes Ergebnis: PBS startet einen Garbage-Collection-Task auf Datastore-Ebene. Die offizielle PBS-Dokumentation beschreibt diese Befehle ebenfalls, ebenso die Option in der Weboberfläche auf der Registerkarte Prune & GC des Datastores.
Schritt 13: Ein Test-Backup ausführen
Führen Sie den Backup-Job manuell in Proxmox VE aus:
- Öffnen Sie Datacenter.
- Gehen Sie zu Backup.
- Wählen Sie den Backup-Job aus.
- Klicken Sie auf Run now.
- Bestätigen Sie die Aktion.
Erwartetes Ergebnis: Der Backup-Task wird erfolgreich abgeschlossen.
Sie können dies auch in der Proxmox-VE-Shell prüfen:
pvesm status --storage <PVE_STORAGE_ID>
Erwartete Ausgabe:
Name Type Status <PVE_STORAGE_ID> pbs active
Öffnen Sie auf PBS:
- Datastore.
<DATASTORE>.- Content.
<NAMESPACE>.
Erwartetes Ergebnis: Das neue VM- oder Container-Backup erscheint im Namespace.
Überprüfung
Prüfen Sie die Token-Berechtigungen auf PBS:
proxmox-backup-manager user permissions <TOKEN_ID> \ --path /datastore/<DATASTORE>/<NAMESPACE>
Erwartetes Ergebnis: Der Token zeigt Datastore-Berechtigungen ausschließlich für den Ziel-Namespace.
Prüfen Sie den Storage-Zugriff von Proxmox VE aus:
pvesm status --storage <PVE_STORAGE_ID>
Erwartetes Ergebnis:
<PVE_STORAGE_ID> pbs active
Prüfen Sie, ob die Backups verschlüsselt sind:
- Öffnen Sie Proxmox VE.
- Wählen Sie das VM-Backup im PBS-Storage aus.
- Vergewissern Sie sich, dass Wiederherstellungen von Proxmox VE aus möglich sind.
- Vergewissern Sie sich, dass der Schlüssel außerhalb des Clusters gesichert ist.
Prüfen Sie die Prune- und GC-Konfiguration:
proxmox-backup-manager datastore show <DATASTORE>
Erwartetes Ergebnis: Die Datastore-Konfiguration zeigt die Zeitpläne für Prune und Garbage Collection.
Vorgehen bei Kompromittierung des API-Tokens
Wenn das Token-Secret offengelegt wurde, widerrufen Sie es sofort.
Löschen Sie den Token auf PBS:
proxmox-backup-manager user delete-token <PBS_USER> <TOKEN_NAME>
Erwartetes Ergebnis: PBS entfernt den Token.
Erstellen Sie anschließend einen Ersatz-Token:
proxmox-backup-manager user generate-token <PBS_USER> <NEW_TOKEN_NAME> proxmox-backup-manager acl update /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup --auth-id '<PBS_USER>!<NEW_TOKEN_NAME>' proxmox-backup-manager acl update /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader --auth-id '<PBS_USER>!<NEW_TOKEN_NAME>'
Aktualisieren Sie das Storage-Passwort in Proxmox VE:
pvesm set <PVE_STORAGE_ID> --username '<PBS_USER>!<NEW_TOKEN_NAME>' pvesm set <PVE_STORAGE_ID> --password
Fügen Sie bei der Eingabeaufforderung das neue Token-Secret ein.
Erwartetes Ergebnis: Proxmox VE verwendet den neuen Token für die sichere Authentifizierung per API-Token.
API-Tokens sind für ein einfaches Widerrufen ausgelegt, falls ein Client kompromittiert wird. Das ist einer der wichtigsten Gründe, Tokens zu verwenden, anstatt ein Benutzerpasswort in Proxmox VE zu speichern.
Änderungen rückgängig machen
Sichern Sie vor dem Löschen des Storage eine Kopie des Verschlüsselungsschlüssels außerhalb des Clusters.
Entfernen Sie den Proxmox-VE-Storage-Eintrag:
pvesm remove <PVE_STORAGE_ID>
Erwartetes Ergebnis: Proxmox VE entfernt die PBS-Storage-Konfiguration. Vorhandene Backups auf PBS bleiben im Datastore erhalten.
Löschen Sie den API-Token:
proxmox-backup-manager user delete-token <PBS_USER> <TOKEN_NAME>
Erwartetes Ergebnis: PBS widerruft den API-Token.
Entfernen Sie die ACL-Einträge:
proxmox-backup-manager acl update /datastore/<DATASTORE>/<NAMESPACE> DatastoreReader \ --auth-id <ID> --delete 1 proxmox-backup-manager acl update /datastore/<DATASTORE>/<NAMESPACE> DatastoreBackup \ --auth-id <ID> --delete 1
Erwartetes Ergebnis: PBS entfernt die Namespace-Berechtigungen.
Entfernen Sie den dedizierten Benutzer, wenn er nicht mehr benötigt wird:
proxmox-backup-manager user remove <PBS_USER>
Erwartetes Ergebnis: PBS entfernt den Benutzer.
Löschen Sie den Namespace oder den Datastore nur, wenn Sie die Backup-Daten bewusst entfernen möchten. Das Entfernen der Zugriffskonfiguration ist nicht dasselbe wie das Löschen von Backups.
Fehlerbehebung
Proxmox VE zeigt den PBS-Storage als inaktiv an
Prüfen Sie den Netzwerkzugriff:
nc -vz <PBS_HOST> 8007
Erwartete Ausgabe:
Connection to <PBS_HOST> 8007 port [tcp/*] succeeded!
Prüfen Sie den Fingerprint des PBS:
proxmox-backup-manager cert info | grep Fingerprint
Wenn sich der Fingerprint geändert hat, aktualisieren Sie ihn in Proxmox VE:
pvesm set <PVE_STORAGE_ID> --fingerprint <PBS_FINGERPRINT>
Authentifizierung mit dem API-Token schlägt fehl
Vergewissern Sie sich, dass der Benutzername die vollständige Token-ID ist:
<PBS_USER>!<TOKEN_NAME>
Beispiel:
pve-backup@pbs!pve-token
Vergewissern Sie sich, dass das Passwortfeld das Token-Secret enthält und nicht das Passwort des PBS-Benutzers.
Prüfen Sie die Berechtigungen:
proxmox-backup-manager acl list
Der Token muss ACL-Einträge auf dem Namespace-Pfad haben, und der übergeordnete Benutzer muss ebenfalls kompatible Berechtigungen besitzen.
Backup schlägt mit Berechtigungsfehlern fehl
Prüfen Sie den Namespace-Pfad:
/datastore/<DATASTORE>/<NAMESPACE>
Verwenden Sie beim Zuweisen von ACLs nicht den Dateisystempfad des Datastores, etwa /mnt/datastore/<DATASTORE>. PBS-ACL-Pfade verwenden das Format /datastore/<DATASTORE>.
Der Datastore wächst nach dem Pruning weiter
Das ist in der Regel zu erwarten, wenn die GC noch nicht gelaufen ist oder sich Chunks noch innerhalb des Sicherheitsfensters befinden. PBS löscht Chunks nicht sofort nach dem Prune, da sie möglicherweise noch von anderen Snapshots referenziert oder durch das GC-Stichtagsfenster geschützt sind.
GC-Status prüfen:
proxmox-backup-manager garbage-collection status <DATASTORE>
Falls die GC nicht geplant ist, konfigurieren Sie sie:
proxmox-backup-manager datastore update <DATASTORE> \ --gc-schedule "04:30"
Verschlüsselte Backups lassen sich nicht wiederherstellen
Vergewissern Sie sich, dass der Proxmox-VE-Storage weiterhin Zugriff auf den Verschlüsselungsschlüssel hat.
Prüfen Sie Ihr internes Inventar der Backup-Schlüssel. Wenn der ursprüngliche Proxmox-VE-Cluster verloren gegangen ist, benötigt die Wiederherstellung den gesicherten Verschlüsselungsschlüssel. Ohne ihn kann die clientseitige Backup-Verschlüsselung die Wiederherstellung verhindern.
Fazit
Sie haben eine sichere Verbindung von Proxmox VE zum Proxmox Backup Server eingerichtet – mit einem dedizierten PBS-Benutzer, Proxmox-API-Tokens, auf Namespaces beschränkten Berechtigungen und clientseitiger Verschlüsselung. Außerdem haben Sie Prune- und Garbage-Collection-Zeitpläne konfiguriert, damit die Backup-Verschlüsselung in Proxmox auch bei wachsender Backup-Historie tragfähig bleibt.
Diese Konfiguration verbessert die Authentifizierung der Proxmox-VE-Backups, schützt verschlüsselte VM-Backups vor serverseitiger Offenlegung und bietet ein praxistaugliches, sicheres Backup-Repository für die langfristige Konfiguration des Proxmox Backup Servers.
Empfohlene nächste Schritte:
- Testen Sie eine vollständige VM-Wiederherstellung.
- Testen Sie eine Wiederherstellung auf Dateiebene.
- Speichern Sie den Verschlüsselungsschlüssel an mindestens zwei sicheren Orten.
- Überwachen Sie das Datastore-Wachstum nach jedem Prune- und GC-Zyklus.
- Fügen Sie PBS-Verify-Jobs hinzu, um stille Backup-Beschädigungen zu erkennen.
- Dokumentieren Sie den Prozess zum Widerruf von Tokens in Ihrem Incident-Response-Plan.
Dokumentversion: 1.0
Zuletzt aktualisiert: Juni 2026
Verantwortlich: Team für technische Dokumentation