Installation d'un serveur BackupPc
publié par pampryl, le mardi 19 août 2008 à 09:52, dans la catégorie Tutoriels.
Présentation
BackupPC est une solution de sauvegarde assez complète qui peut être utilisée en environnement hétérogène (postes Linux, Windows et MacOs) en se basant sur divers protocoles: smb, rsync, tar, rsyncd...Le logiciel propose une interface web qui permet de configurer les paramètres les plus courants de la sauvegarde d'un poste: heure, dossiers, utilisateurs à prévenir, méthode de sauvegarde, durée de conservation, limites etc... Mais il est aussi possible de l'utiliser sans interface web au travers des fichiers de configuration.
Cette solution est utilisé dans des entreprises où plusieurs milliers de postes sont sauvegardés quotidiennement ce qui représente une certaine garantie de qualité et permet d'envisager de s'en servi sans soucis dans mon cas:
le serveur de sauvegarde serveur devant s'auto-sauvergarder (en partie). Voila à quoi ressemble mon réseau:
- obelix: le serveur principal de sauvegare (accessible sur le VPN)
- abraracourcix: un serveur dédié distant mais sur le même VPN
- idefix: un poste portable sur le même VPN
Installation du serveur
Sur ma distribution préférée, Debian, backuppc est fourni dans les principaux dépôts. Cela facilite grandement l'installation puisqu'un simple apt-get suffi à lancer l'installation:Ensuite, il faut suivre les étapes en adaptant à la configuration à l'environnement (apache, smb, chemin) et l'écran final invite l'utilisateur à noter le mot de passe attribué à l'utilisateur "backuppc" pour l'interface web.
# apt-get install backuppc
Normalement, l'installation aura créée un utilisateur "backuppc". Il est toutefois nécessaire de lui créer un répertoire personnel et de lui associer une clef ssh:
Ainsi nous avons un utilisateur "backuppc" possédant une paire de clef (privée/publique) à utiliser dans le cas de connexion ssh.
# mkdir -p /home/backuppc/.ssh
# passwd backuppc #(donner un mot de passe à cet utilisateur - optionnel)
# su backuppc
$ cd ~/.ssh
$ ssh-keygen -t rsa #(ne pas donner de passphrase)
Par défaut les sauvegardes sont placées dans un répertoire dépendant de "/var" ce qui n'est pas forcément adapté aux souhaits de tout le monde. Il suffit de modifier le fichier de configuration générale:
Et remplacer le contenu de la varible:
# vi /etc/backuppc/config.pl
$Conf{TopDir} = '/path/vers/les/backups';Relancer ensuite le serveur backuppc:
L'accès à l'interface web (cgi) est normalement accessible à l'adresse: http://nomduserveur/backuppc (Le mot de passe a été fourni à l'installation avec le login "backupc")
# /etc/init.d/backuppc restart
Ajouter un client
Dans le cas ci-dessous, nous allons ajouter le client abraracourcix au système de sauvegardes.La première étape peut être réalisée par l'interface web. Il s'agit de "créer" ce client dans la solution de sauvegarde ainsi que les premiers paramétrages:

Ensuite vous pouvez configurer le client en le sélectionnant dans la liste déroulante et en cliquant sur "Modifier la configuration". Comme il s'agit d'un poste Linux, j'ai choisi la méthode "rsync" pour sauvegarder les dossiers précisés dans "RsyncShareName":
Il est possible de configurer d'avantage d'options à travers les différents onglets de l'interface, mais je ne reviendrais pas dessus dans ce tutoriel.L'étape suivante peut être réalisée sur le pc client (je ne détaillerais que le cas d'un pc Linux n'ayant pas de machine sous un autre OS pour le moment):
Enfin, très important si vous ne voulez pas chercher des heures une erreur toute bête, connectez vous depuis le serveur (en tant que backuppc) vers le nouveau client afin d'accepter sa clef ssh:
# scp nomduserveur:/home/backuppc/.ssh/id_rsa.pub ~/.ssh/authorized_keys # (authoriser à l'aide de la clef ssh publique l'accès sans mot de passe à ce pc avec ce nom d'utilisateur)
# chmod 600 ~/.ssh/authorized_keys
Dans le cas de postes Windows et MacOs, je lie un PDF qui récapitule les étapes de base de la configuration.
# su backuppc
$ ssh root@client.domain #( et yes pour accepter la clef. Normalement, aucun mot de passe n'est demandé ensuite)
Voila, c'est fait. Lançons à présent notre première sauvegarde de façon manuelle.
Première sauvegarde
Pour vérifier le fonctionnement de notre solution, il est possible de lancer une sauvegarde manuelle depuis l'interface web. Pour cela il faut choisir un hôte sur lequel l'effectuer, et cliquer sur le bouton: "Démarrer la sauvegarde complète":
En cas d'erreurs, les fichiers journaux (affichables dans l'interface) pourront venir en aide lors de la recherche du problème.Une fois la sauvegarde effectuée, il est possible d'explorer le contenu et même de le restaurer (directement ou en extrayant une archive) toute ou partie de la sauvegarde.