BackupPC – Serveur de Sauvegarde


Présentation

Nous allons, dans ce tutoriel, installer et configurer un outil centralisé de sauvegarde nommé BackupPC.
Derrière son interface web rudimentaire se cache de nombreuses fonctionnalités.

  • Fonctionnalités :
    • Sauvegardes incrémentielles
    • Versionnage des sauvegardes
    • Optimisation de l’espace disque grâce à une gestion des fichiers dupliqués
    • Planification des sauvegardes
    • Sauvegarde de machine Windows et Linux


1) Création d’un Dataset

1.1) Création

Pour des questions d’organisation, nous allons créer un dataset Backups dédié aux sauvegardes.
Ce dernier contiendra un dataset enfant pour chaque solution de sauvegarde (Ici : BackupPC).

1.2) Permissions UNIX et ACL

Pour des questions de sécurité, ce dataset ne doit pas être accessible à tout le monde.
Ci-dessous, quelques exemples à ajuster en fonction de votre contexte.

Exemple de permissions UNIX :
Exemple d’ACL :


2) Création d’une jail dédiée

2.1) Création

Création d’une jail backuppcjail dans laquelle sera hébergé BackupPC.
Cliquer sur Jails dans le panneau de gauche de FreeNAS puis cliquer sur ADD.
Cliquer sur Advanced Jail Creation.


Choisir un nom pour la jail (ici : backuppcjail).
Configurer l’adresse IP et le masque de sous-réseau.
Cocher Auto-start.

Cliquer sur Jail Properties et cocher l’option allow_raw_sockets.

Cliquer sur Save.

2.2) Configuration

Nous allons créer un point de montage afin que le répertoire de sauvegarde de BackupPC pointe sur le dataset créé à l’étape précédente.

Arrêt de la jail :
Ajout d’un point de montage :
  1. /mnt/NORMAL_500GB/iocage/jails/backuppcjail/root/ est la racine de la Jail depuis FreeNAS.
  2. /mnt/NORMAL_500GB/iocage/jails/backuppcjail/root/var/db/BackupPC/ est le chemin des Backups de la Jail depuis FreeNAS.
  3. /var/db/BackupPC/ est le chemin des Backups dans la Jail.
  4. /mnt/NORMAL_500GB/Backups/BackupPC/ est le chemin des Backups dans FreeNAS.
  5. Les chemins 2, 3 et 4 représentent donc le même répertoire

Cette manipulation est également possible depuis l’interface Web de FreeNAS.


3) Installation de BackupPC

3.1) Accès à la console de la Jail

3.2) Mise à jour du dépôt

Un message invitant à installer l’outil de gestion des paquets pourrait s’afficher.
Approuver avec « y ».

3.3) Mise à jour des paquets

3.4) Création d’un utilisateur « backuppc »

Création d’un utilisateur dans FreeBSD.
Renseigner les informations demandées.

3.5) Installation de backuppc et ses dépendances

3.6) Vérification répertoire de BackupPC

Dans la Jail :
Dans FreeNAS :

Important : Le contenu des répertoires doit être identique car il s’agit du même répertoire grâce au point de montage.


4) Configuration de BackupPC

Se connecter à la Jail si ce n’est pas déjà fait.

4.1) Configuration

Configuration du fichier /usr/local/etc/smb4.conf :

Contenu :

Vérification :
Lancement du script de configuration de BackupPC :

Les choix par défaut conviennent dans la plupart des cas.

Configuration du fichier /usr/local/etc/backuppc/config.pl :

Attention :
Il ne s’agit pas de l’utilisateur UNIX backuppc.
Mais d’un utilisateur stocké dans un fichier (une base de compte) spécifique pour Apache.

Définition de l’utilisateur et du groupe backuppc en tant que propriétaires des répertoires suivants :
Démarrage automatique pour les services backuppc et apache :
Création d’un fichier de mot de passe BackupPC :

Ce chemin est renseigné plus bas dans la configuration Apache du site.
Si vous le modifier,

Attention :
Il ne s’agit pas de l’utilisateur UNIX backuppc.
Mais d’un utilisateur stocké dans le fichier (la base de compte) htpasswd que nous renseignerons dans la configuration d’Apache.

Création d’un lien backuppc.pl pointant vers BackupPC_Admin :

4.2) Configuration du site BackupPC :

Contenu :

Redémarrage des services BackupPC et Apache :

4.3) Création clé publique SSH

Connexion en tant que backuppc :
Création d’une clé publique SSH :

Sélectionner les choix par défaut et ne pas définir de passphrase pour conserver l’automatisme.

Copie de la clé publique pour l’identifier et éviter les confusions :

Cette clé publique (contenue dans le fichier BackupPC_backuppc_id_rsa.pub) devra être importée sur les postes clients.
Vous pouvez la copier hors du serveur dans un lieu sûr pour la suite du tutoriel.
Important : La clé privée contenu dans le fichier id_rsa (sans .pub) ne doit en aucun cas être diffusée.


5) Interface Web

5.1) Configuration Principale

Se connecter à l’interface Web :

L’url de l’interface Web de BackupPC sera : http://AdresseIP/bpc/ (Exemple : http://192.168.1.101/bpc/)

Configuration de la langue :

Important : L’ensemble du tutoriel sera fait avec l’interface en Anglais.


6) Configuration d’un client Linux

6.1) Ajout d’un client

Cliquer sur Edit Hosts dans le panneau de gauche puis sur Add et renseigner les informations.

Cliquer sur Save pour enregistrer la configuration.

Important :
Le nom saisi doit pouvoir être résolu par le serveur BackupPC.
Exemple : ping linux-pc
Si ce n’est pas le cas, il faudra :
– Soit corriger la configuration DNS dans le fichier /etc/resolv.conf
– Soit ajouter une entrée dans le fichier /etc/hosts

6.2) Configuration d’un Client Linux (Méthode Rsync)

Sélectionner l’hôte dans la liste HOSTS puis cliquer sur Edit Config puis cliquer sur l’onglet Xfer.

  • XferMethod : Choisir la Méthode rsync (Rsync doit être installé sur le client si ce n’est pas déjà fait).
  • RsyncShareName : Renseigner le répertoire à sauvegarder sur le client.
  • RsyncClientPath : Localisation de rsync sur le client (Très important).
    Pour localiser rsync, taper la commande suivante sur le client : which rsync

Cliquer sur Save.

6.3) Configuration sur le client Linux

Le serveur BackupPC aura besoin de se connecter en SSH sans mot de passe et sans interaction utilisateur.
Pour cela, nous allons importer la clé publique du serveur BackupPC dans le profil de l’utilisateur root sur la machine à sauvegarder.

Opérations à effectuer sur le client (Machine à sauvegarder).

Configuration du fichier authorized_keys de root :

Copier la clé publique générée précédemment dans le fichier authorized_keys de root (sur une seule ligne).

Important : Il faudra installer rsync sur la machine à sauvegarder si ce n’est pas déjà fait.

Opérations à effectuer sur le serveur BackupPC.

Connexion en tant que BackupPC :
Connexion SSH :

Un message devrait apparaitre lors de la toute première connexion, il faudra l’accepter.
La connexion devrait se faire sans demande de mot de passe.


7) Configuration d’un client Windows

7.1) Ajout d’un client

Cliquer sur Edit Hosts dans le panneau de gauche puis sur Add et renseigner les informations.

Cliquer sur Save pour enregistrer la configuration.

Important :
Le nom saisi doit pouvoir être résolu par le serveur BackupPC.
Exemple : ping windows-pc
Si ce n’est pas le cas, il faudra :
– Soit corriger la configuration DNS dans le fichier /etc/resolv.conf
– Soit ajouter une entrée dans le fichier /etc/hosts

7.2) Configuration d’un Client Windows (Méthode SMB)

Sélectionner l’hôte dans la liste HOSTS puis cliquer sur Edit Config puis cliquer sur l’onglet Xfer.

  • XferMethod : Choisir la Méthode smb.
  • SmbShareName : Renseigner le répertoire partagé à sauvegarder sur le client.
  • SmbShareUserName : Nom d’utilisateur pour la connexion au répertoire partagé.
  • SmbShareUserPasswd : Mot de passe pour la connexion au répertoire partagé.

Cliquer sur Save.


Vous avez enfin installé et configuré BackupPC pour effectuer des sauvegardes de vos machines Windows et Linux.
Il ne reste plus qu’à :

  • Configurer vos propres machines
  • Utiliser la section commentaires pour me faire part de vos remarques ou problèmes rencontrés.
  • Visiter la page BackupPC Documentation pour aller plus loin dans l’utilisation de BackupPC

En savoir plus sur Jj World

Abonnez-vous pour recevoir les derniers articles par e-mail.

2 Comments Posted

    • Salut Mathisd,
      ça fait 2 ans que ça tourne et je l’ai utilisé plus d’une fois pour restaurer des fichiers suites à des erreurs humaines ou des MAJ d’application non concluantes.

Laisser un commentaire

En savoir plus sur Jj World

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continue reading