← Retour au portail

Module V8 – Proxmox Backup Server 4.2 (PBS)

📘 Fiche de cours ⏱️ 3h 🎯 Bloc 4 – Virtualisation
Objectifs : installer, configurer et administrer Proxmox Backup Server 4.2, comprendre les datastores, la déduplication, le chiffrement, les sauvegardes incrémentielles, la rétention, le fingerprint et l'intégration avec Proxmox VE.

📖 Introduction

Proxmox Backup Server (PBS) est une solution de sauvegarde open-source de niveau entreprise, spécialement conçue pour les environnements virtualisés (Proxmox VE) mais capable de sauvegarder également des hôtes physiques et des conteneurs. Développé en Rust, il offre des performances élevées avec une faible consommation de ressources.

📌 Version 4.2 : Basée sur Debian 13.4 "Trixie" avec le noyau Linux 7.0 et ZFS 2.4, cette version apporte des améliorations majeures.
🎯

À l'issue de ce module, vous serez capable de :

  • Installer Proxmox Backup Server 4.2 via l'ISO bootable.
  • Configurer des datastores depuis l'interface graphique.
  • Réaliser des sauvegardes avec le client proxmox-backup-client.
  • Restaurer des fichiers, des VMs et des conteneurs.
  • Comprendre et configurer les politiques de rétention.
  • Ajouter un stockage PBS dans Proxmox VE via l'interface graphique.
  • Utiliser et vérifier le fingerprint du serveur PBS.

📚 Analogie : PBS comme une bibliothèque sécurisée

Imaginez que vos données sont des livres dans une bibliothèque.

  • Datastore : la bibliothèque elle-même, avec ses rayonnages organisés.
  • Déduplication : si deux livres ont les mêmes pages, on ne garde qu'un seul exemplaire.
  • Chiffrement : les livres sont enfermés dans un coffre-fort avant d'être envoyés.
  • Sauvegarde incrémentielle : on ne recopie que les pages qui ont changé depuis la dernière visite.
  • Snapshot : une photo de l'état des rayonnages à un instant T.
  • Rétention : on décide combien de temps on garde les photos anciennes avant de les jeter.
  • Fingerprint : une carte d'identité numérique du serveur PBS pour vérifier qu'on se connecte au bon serveur.

✨ Principales fonctionnalités de PBS 4.2

🔄 Déduplication
Élimine les données redondantes pour réduire l'espace de stockage.
📈 Sauvegardes incrémentielles
Seules les modifications sont sauvegardées, réduisant le temps et la bande passante.
🔐 Chiffrement authentifié
Chiffrement côté client avant l'envoi des données.
☁️ Stockage S3
Support officiel des objets stores S3 comme backend de sauvegarde.
🔄 Sync jobs parallèles
Plusieurs groupes traités en parallèle pour améliorer le débit.
🔑 Chiffrement côté serveur
Chiffrement/déchiffrement des sync jobs côté serveur.
📦 Déplacement de groupes
Déplacement des groupes et namespaces au sein d'un datastore.
🛡️ Protection anti-ransomware
Snapshots immuables et retention policies.
Politiques de rétention
Gestion automatique de l'ancienneté des sauvegardes (quotidien, hebdomadaire, mensuel, annuel).

🏗️ Architecture

Proxmox Backup Server repose sur une architecture client-serveur.

ComposantRôle
Serveur PBSStocke les données, expose une API REST, gère les datastores et les utilisateurs.
Client proxmox-backup-clientOutil en ligne de commande pour créer et restaurer des sauvegardes.
Interface WebInterface graphique pour l'administration et la surveillance.
DatastoreRépertoire ou volume contenant les données de sauvegarde.
API RESTUtilise HTTP/2 pour les sauvegardes et restaurations.
💡 À retenir : Le protocole de sauvegarde utilise HTTP/2 et une API REST, avec des commandes spécifiques pour les blobs, les chunks et les index.

⚙️ Installation de Proxmox Backup Server 4.2

La méthode d'installation recommandée est l'utilisation de l'ISO officielle créée sur une clé USB bootable. Cette méthode garantit une installation propre et optimisée.

Prérequis matériels

ComposantMinimum (évaluation)Recommandé (production)
CPU64-bit, 2+ cœurs4+ cœurs modernes
RAM2 Go4 Go + 1 Go par To de stockage
Stockage OS8 Go32 Go+ (SSD recommandé)
Stockage sauvegarde-SSD enterprise ou ZFS avec cache
Réseau-NIC redondantes multi-Gbit/s

Étapes d'installation

Étape 1 – Télécharger l'ISO
Télécharger l'ISO de Proxmox Backup Server 4.2 depuis le site officiel :
https://www.proxmox.com/en/downloads
Taille du fichier : environ 1,48 Go (version 4.2-1).
Étape 2 – Créer une clé USB bootable
Outil recommandé : Rufus (Windows) ou dd (Linux) ou balenaEtcher (multi-plateforme).
Assurez-vous que la clé USB fait au moins 2 Go.
Étape 3 – Démarrer le serveur sur la clé USB
Insérer la clé USB, démarrer le serveur et accéder au BIOS/UEFI pour définir la clé USB comme premier périphérique de boot.
Sauvegarder et redémarrer.
Étape 4 – Suivre l'assistant d'installation graphique
L'ISO démarre sur un environnement graphique d'installation. Suivre les étapes :
  • Accepter la licence (GNU GPL).
  • Choisir la langue et le fuseau horaire.
  • Configurer le réseau : adresse IP, masque, passerelle, DNS.
  • Définir le mot de passe de l'utilisateur root.
  • Choisir le disque d'installation (attention : toutes les données seront effacées).
  • Lancer l'installation et attendre la fin (quelques minutes).
Étape 5 – Redémarrer et se connecter
Une fois l'installation terminée, retirer la clé USB et redémarrer le serveur.
Se connecter avec l'utilisateur root et le mot de passe défini.
L'interface web est accessible sur https://IP_DU_SERVEUR:8007.

💾 Configuration des Datastores

Un datastore est l'emplacement où les sauvegardes sont stockées. La configuration se fait uniquement via l'interface web de Proxmox Backup Server.

📌 À savoir : L'interface web de PBS est accessible sur le port 8007 (ex: https://192.168.1.100:8007).

Étapes pour créer un datastore

Étape 1 – Se connecter à l'interface web
Ouvrir un navigateur et accéder à https://IP_DU_SERVEUR:8007.
Se connecter avec l'utilisateur root et le mot de passe défini lors de l'installation.
Étape 2 – Accéder à la gestion des disques
Dans le menu de gauche, cliquer sur Administration → Disks.
La liste des disques disponibles s'affiche.
Étape 3 – Initialiser un disque
  • Sélectionner le disque à utiliser pour les sauvegardes (ex: sdb).
  • Cliquer sur Initialize (cela crée une table de partition GPT).
  • Confirmer l'initialisation.
⚠️ Attention : cette opération efface toutes les données présentes sur le disque.
Étape 4 – Créer le système de fichiers
  • Cliquer sur le disque initialisé, puis sur Create Filesystem.
  • Choisir le type de système de fichiers :
    • ext4 : simple et efficace.
    • xfs : performant pour les grands volumes.
    • zfs : recommandé pour ses fonctionnalités avancées (snapshots, compression, redondance).
  • Définir un nom pour le datastore (ex: backup-store).
  • Cocher l'option "Create Datastore" pour créer automatiquement le datastore.
  • Cliquer sur Create.
Étape 5 – Vérifier la création du datastore
Dans le menu de gauche, cliquer sur Administration → Datastores.
Le nouveau datastore apparaît dans la liste avec les informations de capacité et d'utilisation.

✅ Le datastore est maintenant prêt à être utilisé pour les sauvegardes !


🛡️ Sauvegarde avec proxmox-backup-client

Le client en ligne de commande proxmox-backup-client permet de sauvegarder des fichiers, des répertoires, des VMs et des conteneurs.

Sauvegarde d'un répertoire

proxmox-backup-client backup /etc/ --repository root@pam@192.168.1.100:datastore1 --backup-id etc-backup --backup-time "$(date +%s)"
  • --repository : spécifie le serveur PBS, l'utilisateur et le datastore.
  • --backup-id : identifiant unique de la sauvegarde.
  • --backup-time : timestamp de la sauvegarde.

Sauvegarde d'un fichier avec chiffrement

proxmox-backup-client backup /data/ --repository root@pam@192.168.1.100:datastore1 --backup-id data-backup --key-file /path/to/encryption-key

Le chiffrement est effectué côté client avant l'envoi.


🔄 Restauration

Restauration d'un fichier depuis une sauvegarde

proxmox-backup-client restore root@pam@192.168.1.100:datastore1 etc-backup /etc/hosts ./hosts-restored
  • Le format de la source : <repository> <backup-id> <path-dans-la-sauvegarde> <destination>.
  • Il est possible de restaurer un seul fichier sans restaurer toute la sauvegarde.

Restauration d'une VM dans Proxmox VE

Depuis l'interface web de Proxmox VE :

  1. Se connecter à l'interface web de Proxmox VE.
  2. Naviguer vers Storage → sélectionner le datastore PBS.
  3. Cliquer sur l'onglet Backup.
  4. Sélectionner la sauvegarde et cliquer sur Restore.
  5. Choisir l'ID de la VM et lancer la restauration.

⏳ Politiques de rétention des sauvegardes

Les politiques de rétention permettent de gérer automatiquement l'ancienneté des sauvegardes. Elles définissent combien de temps conserver les snapshots en fonction de leur âge et de leur type (quotidien, hebdomadaire, mensuel, annuel).

📌 Pourquoi la rétention est-elle importante ?
  • Économie d'espace : les sauvegardes anciennes sont supprimées automatiquement.
  • Conformité : respect des obligations légales (ex: RGPD, conservation des logs).
  • Protection anti-ransomware : des snapshots anciens et immuables permettent de restaurer avant l'attaque.
  • Optimisation : les ressources de stockage sont utilisées efficacement.

Paramètres de rétention disponibles

ParamètreDescriptionExemple
keep-lastNombre de snapshots récents à conserver.--keep-last 7 (7 derniers)
keep-dailyNombre de snapshots quotidiens à conserver.--keep-daily 30 (30 jours)
keep-weeklyNombre de snapshots hebdomadaires à conserver.--keep-weekly 52 (1 an)
keep-monthlyNombre de snapshots mensuels à conserver.--keep-monthly 36 (3 ans)
keep-yearlyNombre de snapshots annuels à conserver.--keep-yearly 5 (5 ans)

Exemple de configuration de rétention

Définir une politique de rétention sur un datastore :

proxmox-backup-manager datastore update store1 --keep-last 7 --keep-daily 30 --keep-weekly 52 --keep-monthly 36
  • Conserve les 7 derniers snapshots.
  • Conserve 30 snapshots quotidiens (environ 1 mois).
  • Conserve 52 snapshots hebdomadaires (environ 1 an).
  • Conserve 36 snapshots mensuels (environ 3 ans).
  • Les snapshots plus anciens sont automatiquement supprimés.
⚠️

Attention aux snapshots immuables

Les snapshots immuables (verrouillés) ne sont pas supprimés par les politiques de rétention. Ils doivent être déverrouillés manuellement avant leur suppression.


🔗 Ajout du stockage PBS dans Proxmox VE (interface graphique)

Pour que Proxmox VE puisse utiliser un serveur PBS comme stockage de sauvegarde, il faut l'ajouter via l'interface web. Voici les étapes détaillées.

Étapes

  1. Se connecter à l'interface web de Proxmox VE
    Ouvrir un navigateur et accéder à https://IP_PROXMOX:8006.
  2. Accéder à la gestion du stockage
    Dans le menu de gauche, sélectionner le nœud Proxmox, puis Datacenter → Storage.
  3. Ajouter un nouveau stockage
    Cliquer sur le bouton Ajouter et choisir Proxmox Backup Server.
  4. Saisir les informations du serveur PBS
    • ID : un nom pour identifier ce stockage (ex: pbs-backup).
    • Serveur : l'adresse IP ou le nom DNS du serveur PBS.
    • Nom d'utilisateur : root@pam ou un utilisateur dédié.
    • Mot de passe : le mot de passe de l'utilisateur.
    • Datastore : le nom du datastore sur le serveur PBS.
    • Fingerprint : l'empreinte du serveur PBS (voir section suivante).
  5. Configurer les options avancées
    • Max backups : nombre maximal de sauvegardes à conserver (défaut: 0 = illimité).
    • Encryption key : (optionnel) clé de chiffrement pour les sauvegardes.
  6. Valider et ajouter
    Cliquer sur Ajouter pour valider. Proxmox VE testera la connexion et ajoutera le stockage.
💡 Une fois ajouté : Le stockage PBS apparaîtra dans la liste des stockages. Vous pourrez alors l'utiliser pour les sauvegardes de VMs, de conteneurs et même pour stocker des templates.

🔑 Le Fingerprint dans Proxmox Backup Server

Le fingerprint (ou empreinte numérique) est un identifiant unique du serveur PBS, basé sur le certificat TLS du serveur. Il permet de vérifier l'identité du serveur lors de la première connexion, évitant les attaques de type Man-in-the-Middle.

🔑 Le fingerprint est un sha256 du certificat du serveur, représenté en hexadécimal.

Pourquoi utiliser le fingerprint ?

  • Sécurité : garantit que vous vous connectez bien au serveur PBS attendu.
  • Protection contre l'usurpation : empêche un attaquant de se faire passer pour le serveur PBS.
  • Confiance : lors de la première connexion, PBS vous demande de vérifier le fingerprint pour ajouter la confiance.
  • Audit : permet de tracer les connexions et de vérifier l'intégrité du serveur.

Comment récupérer le fingerprint du serveur PBS ?

Méthode 1 – Depuis l'interface web de PBS (recommandée)

  1. Se connecter à l'interface web de PBS (https://IP_PBS:8007).
  2. Cliquer sur l'icône 👤 (Administration) en haut à droite.
  3. Dans le menu, choisir "Show Fingerprint".
  4. Le fingerprint s'affiche sous forme d'une chaîne hexadécimale.

Méthode 2 – Depuis la ligne de commande

proxmox-backup-manager cert info | grep Fingerprint

La commande affiche :

Fingerprint: 12:34:56:78:9a:bc:de:f0:12:34:56:78:9a:bc:de:f0:12:34:56:78:9a:bc:de:f0:12:34:56:78:9a:bc:de:f0
  • Le fingerprint est une chaîne de 64 caractères hexadécimaux, parfois formatée avec des deux-points.
  • Il est basé sur le certificat TLS situé dans /etc/proxmox-backup/proxy.pem.
  • Le certificat est renouvelé automatiquement, mais le fingerprint doit être vérifié lors de chaque nouvelle connexion.
🔐

Bonnes pratiques avec le fingerprint

  • Vérifier le fingerprint à chaque nouvelle connexion.
  • Comparer le fingerprint affiché par le client avec celui du serveur (via une communication hors bande, ex: SMS, email).
  • Ne pas ignorer les avertissements de fingerprint incorrect : cela peut indiquer une attaque MITM.
  • Conserver le fingerprint dans un endroit sûr pour les connexions automatisées.

🚀 Autres fonctionnalités avancées de PBS 4.2

1. Synchronisation (Sync Jobs)

Créer un sync job pour répliquer un datastore distant :

proxmox-backup-manager sync-job create remote-sync --remote user@remote-pbs:datastore1 --local-datastore local-store
  • Les sync jobs peuvent être parallélisés avec la propriété worker-threads.
  • Le chiffrement côté serveur est disponible pour les sync jobs.

2. Déplacement de groupes et namespaces

Déplacer un groupe dans un datastore :

proxmox-backup-manager datastore move-group local-store host/100

Permet de réorganiser les sauvegardes existantes sans perte de données.


📝 Exercices d'application

Exercice 1 – Installation

Quelle est la méthode d'installation recommandée pour Proxmox Backup Server ?

L'installation via ISO avec une clé USB bootable est la méthode recommandée.

Exercice 2 – Datastore

Par quel moyen crée-t-on un datastore dans Proxmox Backup Server ?

Un datastore se crée uniquement via l'interface graphique de PBS (Administration → Disks → Initialize → Create Filesystem).

Exercice 3 – Sauvegarde

Écrivez la commande pour sauvegarder le répertoire /var/log sur le datastore backup-store du serveur 192.168.1.200 avec l'identifiant logs-backup.

proxmox-backup-client backup /var/log/ --repository root@pam@192.168.1.200:backup-store --backup-id logs-backup

Exercice 4 – Rétention

Vous souhaitez conserver les 7 derniers snapshots, les 30 derniers quotidiens, les 52 derniers hebdomadaires et les 36 derniers mensuels. Quelle commande devez-vous utiliser ?

proxmox-backup-manager datastore update store1 --keep-last 7 --keep-daily 30 --keep-weekly 52 --keep-monthly 36

Exercice 5 – Fingerprint

Quelle commande permet d'afficher le fingerprint du serveur PBS depuis la ligne de commande ?

proxmox-backup-manager cert info | grep Fingerprint

🎯 Quiz d'auto‑évaluation

1. Proxmox Backup Server 4.2 est basé sur Debian 13 "Trixie".

2. Le fingerprint permet de vérifier l'identité du serveur PBS.

3. La rétention --keep-daily 30 conserve 30 snapshots quotidiens.

4. La création d'un datastore se fait uniquement en ligne de commande.

5. Dans Proxmox VE, le stockage PBS s'ajoute depuis Datacenter → Storage.

6. Le fingerprint est basé sur le certificat TLS du serveur PBS.


📚 Ressources