Installation:

sur un ubuntu 16.04 tout neuf, faire un :

sudo apt-get install backuppc

éventuellement rrdtool libfile-rsyncp-perl

si probleme redémarrer ou :

sudo a2enmod cgid

Then restart apache2

sudo service apache2 restart
essayer aussi
sudo a2disconf serve-cgi-bin

Backuppc 4

a priori, juste un
sudo apt-get install backuppc
devrait suffire

Préparation:

En général, j'utilise une partition à part (ex /sauvegarde ..)

Après avoir installé backuppc ( sudo apt-get install backuppc )

ainsi que le module libfile-rsyncp-perl ainsi que rrdtool (pour afficher les graphiques) (installé par défaut sur la 16.04 serveur)

, je déplace le répertoire et refait un lien symbolique: (après avoir stoppé le service backuppc)

sudo service backuppc stop

sudo cp -a /var/lib/backuppc /sauvegarde/

sudo rm -rf /var/lib/backuppc/

sudo ln -s /sauvegarde/backuppc /var/lib/backuppc

sudo service backuppc start

sudo service apache2 restart

Paramètre réseau

Si besoin, modifier le fichier /etc/networking/interfaces. Par défaut il est en dynamique (DHCP) et on peut le laisser tel quel.

pour du statique: (adresse à voir selon le réseau, ici peut convenir pour un réseau avec freebox).

Pour info : eth0 est remplacé par enp3s0 depuis 2013

auto enp3s0
iface  enp3s0 inet static
address 192.168.1.50
netmask 255.255.255.0
gateway 192.168.1.254

pour du dynamique (config en général par défaut...)

auto enp3s0
iface eth0 inet dhcp

Modifier le mot de passe de backuppc

sudo htpasswd /etc/backuppc/htpasswd backuppc

et taper le mot de passe

Installation serveur/client

Par défaut, backkupc se connecte en tant que root. L'idée, c'est de plutôt le faire se connecter sous un utilisateur backuppc à créer chez le client auquel on donnera juste les droits sudo qu'il faut
...(rsync à priori). Pour plus de facilités, on ouvre un terminal ssh côté serveur, et un terminal ssh côté client.

côté serveur

sudo su backuppc

ssh-keygen -t rsa (NE pas mettre de mot de passe)

cd /var/lib/backuppc/.ssh/

cat id_rsa.pub

On affiche la clef que l'on va copier/coller chez le client (cf. paragraphe suivant)

côté client (linux)

On créé sur le client un utilisateur backuppc et on lui donne la clef du serveur.

sudo adduser backuppc

cd /home/backuppc/

sudo su backuppc

ssh-keygen -t rsa (NE pas mettre de mot de passe)

cd .ssh

vim authorized_keys2

et coller la ligne copié paragraphe précédent (fichier id_rsa.pub du serveur)

On opère de même dans l'autre sens (on copie la clef id_rsa du client dans le fichier à créer authorized_keys2 du serveur)

Côté client, on donne ensuite des droits à l'utilisateur backuppc via visudo...

(vérifier que sudo est bien installé ainsi que rsync !)

sudo visudo

et ajouter la ligne:

 backuppc  ALL=NOPASSWD: /usr/bin/rsync

Il faut ensuite faire une première connexion en ssh pour initialiser:
côté serveur :
su backuppc
ssh -l backuppc clientHostName whoami


côté client :
su backuppc
ssh -l backuppc serveurHostName whoami

Normalement, pour chaque côté, il ne devrait pas demander de mots de passe...

Il faut/suffit pour se connecter sans mot de passe que l'authorized_keys2 soit rempli sur la machine contactée

Bien faire gaffe à l'underscore du authorized....et a des erreurs de copier/coller (genre sh-rsa au début au lieu de ssh-rsa..)

IMPORTANT : authorized_keys2 doit être interdit en écriture au groupe (ainsi que le répertoire .ssh)
(faire un

chmod 600 authorized_keys2

pour être sûr)

côté paramétrage Backuppc

Ne pas oublier de remplacer la ligne $Conf{RsyncClientCmd} (config serveur backuppc) par :

$sshPath -q -x -l backuppc $host nice -n 19 sudo $rsyncPath $argList+

Backuppc 4

Le paramétrage a changé un peu. Avec la manip faite plus haute, il faut rajouter un sudo dans RsyncClientPath
sudo /usr/bin/rsync
et dans RsyncSshArgs
$sshPath -l backuppc
ca a quand même planté, avec un message concernant les hostkeys. Du coup, en ligne de commande, sur le serveur, sous l'utilisateur backuppc, j'ai recopié la commande qui n'a pas marché (à récupérer dans le log d'erreur), et il demande de valider l'authentification avec un Yes. Une fois cela fait manuellement, l'essai suivant via l'interface de backuppc a fonctionné.

côté client (Windows)

On peut utiliser samba, mais il existe un outil très simple pour faire du rsync sur windows.

Il est téléchargeable ici:

http://sourceforge.net/projects/backuppc/files/cygwin-rsyncd/

- Vérifier que le client windows répond bien aux ping (voir le pare-feu) voir : http://www.it-connect.fr/autoriser-le-ping-sous-windows-7-en-configurant-le-pare-feu/

Sauvegarde interne au serveur

pour sauvegarder un répertoire du serveur (/etc, /home, ..), configurer localhost.

Le mode de sauvegarde est déjà à priori configuré sur Tar, mais il faut changer la commande $Conf{TarClientCmd} par:

/usr/bin/sudo $tarPath -c -v -f - -C $shareName --totals

Sauvegarde depuis un client Windows