wikiroute

networking recipes

User Tools

Site Tools


backuppc

This is an old revision of the document!


Projet BackupPC

Lien pour syntaxe DokuWiki

Installation et configuration de BackupPC :

Coté serveur

Après avoir installé Ubuntu 14.04 LTS, il faut rafraîchir la liste des paquets disponibles '# aptitude update' puis installer BackupPC et toutes ses dépendances '# aptitude install backuppc'. Il faut répondre « Pas de configuration » quand l'installateur nous demande d'installer un serveur mail. Il est inutile de noter le mot de passe généré pour l'utilisateur « backuppc » car il sera changé après.

Pour changer ce mot de passe, exécutez '# htpasswd /etc/backuppc/htpasswd backuppc'. Choisissez votre mot de passe et confirmez-le.

Désormais l'interface de configuration de backuppc est accessible avec l'identifiant « backuppc » et le mot de passe défini précemment, à l'adresse « http://ip_serveur/backuppc ».

On pourra passer l'interface en Français dans le menu « Edit Config → CGI ».

Un disque différent de celui hébergeant le système sera utilisé pour stocker les données. Il faut monter ce disque sous « /backuppc ». Par défaut, BackupPC stocke les données sous « /var/lib/backuppc ». Pour des raisons de sécurité (si la configuration de BackupPC est écrasée), nous allons laisser ce répertoire de sauvegarde dans cette configuration mais déporter le stockage des données au moyen d'un lien symbolique :

* '# sudo rsync -va /var/lib/backuppc /backuppc'. Ici, on copie les données de BackupPC dans le nouveau dossier de stockage, en conservant les droits sur les fichiers et les dossiers ;

* On supprime « /var/lib/backuppc » : '# rm -rf /var/lib/backuppc' ;

* On crée le lien symbolique permettant de ne pas changer la configuration de BackupPC : '# ln -s /backuppc /var/lib/backuppc' ;

* Enfin, on déclare backuppc comme utilisateur et groupe propriétaire de ce lien : '# chown -Rh backuppc:backuppc /var/lib/backuppc'.


Génération de clefs SSH (RSA)

On se connecte en tant que BackupPC : '# sudo -i -u backuppc' puis on génère une paire de clefs RSA de longueur 4096 bits : '$ ssh-keygen -t rsa -b 4096'. Ces clefs seront stockées dans “ ~/.ssh/ ”.

* Paramétrage du client

Dans cette partie, seule la méthode utilisant rsync pour les machines UNIX en utilisant sudo sera présentée.

Le compte utilisé sur les machines UNIX clientes sera le compte “ backup ”, présent par défaut sous Ubuntu. Il faudra le créer s'il n'existe pas. On crée le dossier “ .ssh ” dans le dossier personnel de “ backup ” sur le client : '# mkdir /var/backup/.ssh'. Puis il faut copier la clef publique (id_rsa.pub) précedemment générée dans “ /var/backup/.ssh/authorized_keys ”. Enfin, il faut définir “ backup ” comme utilisateur et groupe propriétaire du dossier “ .ssh ” : '# chown -R backup:backup /var/backup/.ssh'.

Il faut maintenant modifier la configuration du serveur SSH (/etc/ssh/sshd_config) côté client (à installer s'il n'est pas présent). Passer la directive “ PermitRootLogin ” à no ; Desactive le login root par ssh “PasswordAuthentication no ” Desactive l'authentification par mot de passe : seule l'authentification par clefs sera autorisee. Il ne reste plus qu'à modifier la configuration de sudo afin de restreindre son usage à la commande rsync pour l'utilisateur “ backup ” : '#visudo /etc/sudoers'. Ajouter la ligne : “ backup ALL=NOPASSWD: /usr/bin/rsync ”.

Si tout a bien été configuré, on peut se connecter en SSH au client depuis le serveur : 'ssh backup@IP_Client'. Cette commande doit être lancée en tant que “ backuppc ”.

Il faut modifier la configuration de BackupPC via l'interface Web afin d'ajouter notre client à la liste des stations à sauvegarder (1) et définir la méthode rsync pour cela (2) :

* (1) Serveur → Modifier les machines → Machines : ajouter @IP_Client avec “ backup ” comme utilisateur pour les connexions SSH. Dans le menu “ Hôtes ” en haut à gauche : choisir @IP_Client dans la liste. Modifier la configuration → xfer → XferMethod : choisir “ rsync ”. Sauvegarder.

* (2) onglet Xfert → pour rsync → chapitre Chemins/Commandes/Args Rsync indiquer pour “ RsyncClientCmd ” : “ $sshPath -q -x -l backup @IP_Client /usr/bin/sudo $rsyncPath $argList+ ”. pour “ RsyncClientRestoreCmd ” : “ $sshPath -q -x -l backup @IP_Client /usr/bin/sudo $rsyncPath $argList+ ”.

backuppc.1413627326.txt.gz · Last modified: 2014/10/18 12:15 by antonin