Installation de backuppc sur le serveur

Installation de backuppc sur le serveur

Après avoir vu l’intérêt que peut avoir backuppc dans l’administration d’un parc informatique, abordons sa mise en place. Tout d’abord nous allons commencer par l’installation sur le serveur. Dans ce tutoriel je donne les instructions pour un environnement sous Debian ou dérivés.

On commence par l’installation des paquets nécessaires :

apt-get install ssh samba smbfs rsync apache2 backuppc

Il est à noter que l’installation de tous ces paquets n’est nécessaire que si vous comptez utiliser toutes les méthodes utilisables avec backuppc. Si vous ne comptez pas utiliser de PC sous Linux ou MacOs, vous pouvez donc vous passez d’installer ssh. Et si vous avez suivi ce que je vous ai expliqué dans le précédent billet sur backuppc vous pourrez vous passez de samba et smbfs qui reste plus une solution de secours qu’autre chose…

Lors de l’installation vous allez devoir choisir quel apache vous voulez utilisez pour backuppc. Si vous ne savez pas quelle version choisir, optez pour apache2.

Choix de apache

Un utilisateur backuppc est créé et un mot de passe par défaut lui est attribué. On va donc commencer par changer ce mot de passe à l’aide de la commande fournie.

Installation de backuppc

En root :

# htpasswd /etc/backuppc/htpasswd backuppc

Puis, pour vérifier que tout fonctionne correctement on va aller sur l’interface d’administration de backuppc. Pour cela, rendez vous à l’adresse 127.0.0.1/backuppc.

Si tout est OK on doit voit demander un login et un password. Pour le login vous entrer « backuppc », c’est l’user qui a tous les droits pour administrer backuppc (le root de backuppc en résumé :) ). Et pour le mot de passe vous indiquez celui que vous venez de modifiez.

Authentification sur l'interface web de backuppc

Ensuite vous devriez tomber sur cette page :

Interface web de backuppc

Si vous souhaitez passer l’interface de backuppc en français il suffit d’aller sur edit config dans le menu de gauche puis sur CGI et enfin de sélectionner fr pour l’option langage. Vous sauvez et vous rechargez la page et voilà!

Du français pour backuppc

Nous allons maintenant créer les utilisateurs qui pourront se connecter à l’interface web de backuppc pour effectuer des sauvegardes et des restaurations sur les machines qui leurs sont attribuées. Sur l’interface web un user disposera de beaucoup moins de droit que l’utilisateur backuppc. Un user pourra seulement faire des sauvegardes et des restaurations de la (ou les) machine(s) qui lui sont attribuée(s) (et c’est déjà pas mal!). Vous pourrez affecter plusieurs machines à un seul user sachant que l’utilisateur backuppc peut administrer toutes les machines.

Par exemple, pour créer un user se nommant bobby :

$ su

ou (pour ubuntu)

$ sudo su

puis :

# htpasswd /etc/backuppc/htpasswd bobby

Vous répétez cette opération autant de fois que vous avez d’utilisateur à ajouter. Si vous avez beaucoup d’utilisateurs et un annuaire LDAP il doit être possible d’écrire un petit script bash pour automatiser le processus. (Peut-être dans une mise à jour de l’article)

La partie suivante concernant la partie sur le ssh n’est utile que si vous avez des clients sous linux ou MacOs dans votre parc informatique. On va donc générer une clé ssh pour l’utilisateur backuppc. Le dossier home de backuppc est situé dans /var/lib/backuppc. On va commencer par se loguer avec cette utilisateur, pour cela il faut d’abord vous loguer en root :

$ su

Si vous êtes sous ubuntu faites :

$ sudo su

puis ensuite vous pourrez basculer sur l’utilisateur backuppc en faisant :

# su backuppc

Ensuite on va générer une paire de clé ssh :

$ ssh-keygen -t rsa

Et là vous tapez sur entrée à chaque question (vous ne rentrez donc pas de passphrase!!!). Vous voilà maintenant avec une clé publique et une clé privée dans le dossier /var/lib/backuppc/.ssh (respectivement il s’agit de id_rsa.pub et de id_rsa). Vous allez devoir diffuser cette clé publique à tous vos clients (Linux et MacOs) mais on verra cette partie dans les billets qui traiteront de la configuration des clients car ce sont des manipulations à effectuées coté client. Tout de même, pour que la clé soit accessible aux clients on va la copier dans le dossier home de l’un des users du serveur. Dans l’exemple qui suit, mon user s’appelle mnttech sur mon serveur (remplacez donc mnttech par un des users disponibles sur votre serveur) :

$ su

ou (pour les ubunteros)

$ sudo su

puis

# cp /var/lib/backuppc/.ssh/id_rsa.pub /home/mnttech

Maintenant, nous allons voir le fonctionnement de backuppc un peu plus en détail. Vous devez savoir que pour configurer backuppc vous pouvez soit passez par l’interface web, soit par les fichiers de configurations situés dans /etc/backuppc. Mais le mieux, à mon avis, est d’utiliser les deux possibilités.

Tout d’abord, il y a le fichier /etc/backuppc/hosts qui va lister, comme son nom l’indique, tous les hosts que vous devrez sauvegarder ainsi que les noms d’utilisateur associés à ses hôtes. Pour prendre un exemple concret nous allons déclarer que le pc s’appelant zindoze20 et étant utilisé par bobby  est déclaré dans le fichier hosts. Cela doit ressembler à ceci :

/etc/backuppc/hosts

Le chiffre 0 signifie que le pc a une ip fixe et le nom d’utilisateur correspond à un des utilisateurs que vous avez créez précédemment. Vous devrez donc également remplir ce fichier avec toutes les machines clientes ainsi que les utilisateurs qui leurs sont associées.

Ensuite, il y a le fichier config.pl qui est le gros fichier de configuration regroupant toutes les configurations générales du serveur. Il permet, par exemple, de définir quand s’effectue les backups et combien il faut en garder, etc. Je ne vais pas rentrer dans le détail car il y a énormément d’options et ce fichier est, par défaut, très bien commenté.

Et enfin, il y a les fichiers de configurations des machines clientes. Par exemple, pour une machine cliente se nommant zindoze20 vous aurez un fichier zindoze20.pl correspondant à la configuration de cette machine. Il faut savoir que ce fichier est prioritaire sur le fichier config.pl. Ceci signifie que si vous mentionnez une option dans zindoze20.pl celle ci sera prioritaire sur le fichier config.pl. Mais vous pouvez également ne pas mentionner certaines options qui seront communes à plusieurs machines. Et dans ce cas, backuppc ira chercher dans le fichier config.pl les options qui seront donc identiques pour toutes les machines.

Ce fichier étant différent selon les méthodes de sauvegarde utilisées et le type d’OS de la machine cliente, je vous détaillerai sa rédaction dans les billets suivants.

Une petite astuce si vous ne voulez pas que vos sauvegardes soient archivées dans le dossier /var/lib/backuppc. Vous pouvez déplacer votre dossier en faisant  en root :

# /etc/init.d/backuppc stop
# mv /var/lib/backuppc /dans/votre/dossier
# ln –s /dans/votre/dossier /var/lib/backuppc

Voilà pour la partie installation de votre serveur. La seule manipulation que vous aurez à effectuer sur le serveur par la suite, sera d’ajouter les fichiers client.pl des ordinateurs clients. Et une fois la configuration finie vous devrez simplement redémarrer le serveur backuppc en faisant, en root :

# /etc/init.d/backuppc restart

31 réponses à “Installation de backuppc sur le serveur”

  1. Eric NGOUPE dit :

    bjours j’éssayes de suivre votre procedure mais après cette étape $ ssh-keygen -t rsa le mot de passe de backuppc ne passe plus consequence je n’arrive pas à effectuer cette étape cp /var/lib/backuppc/.ssh/id_rsa.pub /home/mnttech.
    Je suis bloqué aidez moi SVP

  2. Eric NGOUPE dit :

    Mais j’ai oublié de vous dire que le mot de passe passe bien sur l’accès à la page web ici 127.0.0.1/backuppc

  3. MNT-Tech dit :

    Salut, le mot de passe de backuppc n’a rien à voir avec la génération de la paire de clé. Vous parlez de deux choses totalement différentes. Je pense plutôt que vous avez copiez la ligne de code sans réfléchir et que du coup vous ne vous êtes pas aperçu que mnttech représentait le nom d’un user (ce que j’explique juste au dessus de la ligne de code). Il faut donc que vous copiez la clé publique dans un dossier d’un user valide sur votre machine.

  4. Eric NGOUPE dit :

    Bonjour je vous ai compris mais le problème reste entien en fait après avoir créer la clé rsa, je doit taper sudo su (comme expliqué) mais le problème est qu’après il me demande le mot de passe de backuppc ansi: [sudo] password for backuppc
    là j’entre le mot de passe que j’ai modifié au debut (et qui passe bien sur la connexion de la page web) et zut il me dit sorry try again .
    alors quand je réfléchis un peu c’est coe si je dois aussi créer un utilisateur backuppc directement sous unbuntu.
    voilà un peu réexpliqué mon problème

  5. Eric NGOUPE dit :

    et quand je force pour continuer il me dit ( mon utilisateur est bien ngoupe)
    cp: cannot create regular file `/home/ngoupe’: Permission denied

  6. Eric NGOUPE dit :

    là c’est passé la copie car il fallait créer l’utilisateur ngoupe comme user du serveur.
    j’aimerais toujours savoir si je dois aussi créer backuppc comme user du serveur aussi ?

  7. Edith dit :

    J’ai suivi la démarche d’installation sur le serveur, mais je connais quelques difficultés :
    d’abord, je ne retrouve pas sur le fichier /etc/backuppc/hosts, les utilisateurs créés avec la procédure mentionnée: je ne retrouve que localhost backuppc.

    Puis lorsque j’essaie de déplacer le dossier de sauvegarde, j’ai la réponse suivante :
    ln –s /media/sda1/sauvegardes /var/lib/backuppc
    ln: la cible `/var/lib/backuppc’ n’est pas un répertoire
    Par contre, dans le dossier sauvegardes créé, je trouve un dossier backuppc protégé.

    Enfin, je reçois comme message d’erreur dans l’état du serveur : Tar exited with error 512 () status.

    Merci de donner suite à ces questions.

  8. mnttech dit :

    Salut edith,

    Soit tu n’es pas sur debian ou dérivée, soit tu n’as pas bien suivi le tuto.
    Car tes messages d’erreurs me font penser à des problèmes de convention de dossiers qui ne sont pas les bons.

    Pour tar tu peux tenter de lui mettre l’option –ignore-failed-read pour voir ce que ça donne. Si c’est un fichier qu’il n’arrive pas à lire ou un fichier qui bouge durant le tar.

    Pour ln: la cible `/var/lib/backuppc’ n’est pas un répertoire, je confirme ce que je disait, soit t’as pas fait le mv avant soit les conventions des dossiers ne sont pas les même que sur debian.

    Et pour finir, le fichier /etc/backuppc/hosts, tu dois le remplir toute seule avec tes petites mains comme c’est écrit dans le tuto.

    Bon courage

  9. Alex dit :

    Bonjour, j’ai récemment installé Backuppc sur Gentoo, mais le problème est que je n’arrive pas à accéder à l’interface en entrant http://adresse_ip_serveur/backuppc (je travaille en SSH sur le serveur Gentoo, mais celui-ci n’a pas d’interface graphique).

    Lors de l’installation on ne m’a pas demandé l’option apache ni l’option utilisateur backuppc.

    Quelqu’un pourrait il m’aider?

    Merci.

  10. mnttech dit :

    @Alex Je n’ai qu’un seul conseil :

    # emerge –unmerge gentoo
    # emerge -av debian

    :)

    Gentoo, ça fait longtemps pour moi. Et je n’ai jamais testé backuppc dessus donc je ne peux pas trop t’aider.
    Désolé, tente ta chance ailleurs ou passe du coté du bien : installe debian. ;)

  11. Alex dit :

    Je sais, j’ai beaucoup trouvé de tutoriel pour Debian, mais pas pour Gentoo, et comme je suis obligé de le faire sous Gentoo :-s… Sinon Debian cela aurait été mieux, mais mes boss ne veulent rien savoir, bref…

    Enfin merci quand même =), je vais me débrouiller!

    Si j’ai d’autres questions, je le ferai savoir!

  12. mnttech dit :

    Ah c’est énervant quand c’est la personne qui ne met pas les mains dans le cambouis qui impose ses choix…
    Mais sinon t’as jeté un coup d’oeil sur gentoo wiki?

  13. Alex dit :

    Oui je suis allé voir…

    Bon j’ai deux questions : si mon ordinateur s’appelle toto, ai je bien fait de créer un fichier toto.pl sur le serveur backuppc dans etc/backuppc ? (malgré qu’il soit dans un domaine spécial?)

    Sur cette ordinateur toto, j’ai partagé un dossier dans C:\Temp (Windows XP), j’ai autorisé tout le monde à pouvoir lire modifier ce dossier et je l’ai mis en lecture seule.

    Sur mon serveur Backuppc, dans mon fichier toto.pl j’ai :

    $Conf{XferMethod} = ‘smb’;

    $Conf{SmbShareUserName} = ‘Administrateur’;

    $Conf{SmbSharePasswd} = ‘password_Administrateur’;

    $Conf{SmbShareName} = ‘C:\Temp’;

    $Conf{ClientNameAlias} = ‘adresse_ip_toto’;

    Et mon fichier hosts :

    toto 0 Administrateur

    Il y a une erreur, j’arrive pas à backuper ce dossier.
    Je crois avoir fait une erreur au niveau des utilisateurs, je dois mélanger un peu.

    Merci toujours de m’aider =)

  14. mnttech dit :

    Ton hosts n’est pas bon!
    Sur le serveur tu dois créer un user qui correspond à l’id de l’user sur le poste client.
    Si sur ton poste client le nom du compte est Administrateur tu dois le créer sur le serveur comme indiqué au dessus avec l’exemple de bobby. Il faut que cet utilisateur est les droits backuppc.

  15. Alex dit :

    J’ai crée le compte Administrateur :

    htpasswd /etc/backuppc/htpasswd Administrateur

    Je dois maintenant lui mettre les droits backuppc? chown Administrateur /etc/backuppc?

    Et surtout comment je dois remplir mon host, c’est ca que je comprends pas.

  16. mnttech dit :

    Nan cette manip’ suffit.
    Quelle est ton message d’erreur précisément?

  17. Alex dit :

    Got fatal error during xfer (tree connect failed: NT_STATUS_BAD_NETWORK_NAME)
    Backup aborted (tree connect failed: NT_STATUS_BAD_NETWORK_NAME)

    • mnttech dit :

      Tu dois être dans un domaine…
      J’ai trouvé la solution en 30 secondes dans google avec le message d’erreur.
      Les mecs qui t’emploient ne font visiblement pas une bonne affaire avec toi… sans vouloir être vexant, tu as fait une recherche?
      Tu dois utiliser la syntaxe domaine\username pour le nom d’utilisateur.

  18. Alex dit :

    Bien sur que je l’ai faite la recherche. Je suis stagiaire pas payé, j’apprends sur le tas, c’est toujours une bonne affaire que de s’occuper d’un travail gratuitement pour les employeurs. Alors lol.

  19. Alex dit :

    By the way, j’ai réparé l’erreur, ce n’était pas une erreur de domaine, mais une erreur de nom de fichier de partage : il ne faut pas le mettre le chemin complet, comme j’ai mis ‘C:\Temp’;, mais le nom du dossier partagé seulement, en l’occurrence ‘Temp’; . ++

  20. Alex dit :

    Et ça ne fonctionne pas non plus, si je mets ‘nom_de_la_machine.pl’ pour le fichier de configuration, il faut mettre ‘adresse_ip.pl’, mais ça je pense c’est une spécificité de Gentoo.

  21. mnttech dit :

    OK désolé d’avoir été désagréable avec toi. Je comprends que si t’es pas payé t’es pas motivé.
    Mais pas de soucis pour le nom d’utilisateur? T’as pas eu à utiliser la syntaxe domaine\user habituelle dans un domaine NT?

  22. Alex dit :

    C’est pas grave, je m’emballe rapidement aussi.
    Étrangement, non : dans mon fichier machine.pl et mon fichier hosts.pl, mes utilisateurs sont definis comme cela : nom_machine/user. Pas besoin de domaine…
    Maintenant je vais voir pour utiliser la méthode rsyncd, elle a l’air plus sécurisé.

  23. mnttech dit :

    Plus sécurisée, plus rapide, plus simple à mettre en place et plus économe en bande passante… Mais je ne sais pas pourquoi les gens préfèrent utiliser la méthode samba.

  24. Alex dit :

    Je ne sais pas. Peut être que Samba c’est plus parlant et plus connu que Rsyncd.
    En tout cas merci pour tout, j’ai réussi à faire les méthodes Samba, Rsyncd Windows et Rsyncd Linux.
    Il y a qu’avec Cygwin j’ai pas encore essayé, mais je sais pas si c’est bien utile.
    Bref… merci.

  25. viji dit :

    salut!
    je travaille chez une entreprise x et je dois gerer le backup de leurs serveurs.
    j’explique nous avons des serveurs hebergés chez online et des serveurs virtuels aussi.
    et nous utilisons webmin pour les administrer.
    alors je voudrais installer backuppc pour gerer les backup mais je ne sais pas comment faire pour l’installer.
    néanmoins quand je cherche les paquet backuppc dans les packets apt je ne trouve rien!
    et quand je le fais par commande shell j’ai cette erreur  » Souhaitez-vous continuer [O/n]Â ? Annulation. > o bash: o : commande introuvable  »
    j’ai besoin d’aide et c’est urgent !
    merci d’avance!

  26. viji dit :

    je precise que je ne vois pas de terminal comme sur une machine ubuntu classique

  27. jogodepau dit :

    Bonjour,
    je viens de changer de serveur et sur l’ancien j’avais backuppc, je voudrais avoir la même config sur le nouveau serveur. je sais qu’on peux prendre le fichier de config sur l’ancien serveur et le mettre sur le nouveau mais je ne sais pas quoi faire?
    QUELQU’UN PEUT IL M’AIDER?
    MERCI.

  28. jogodepau dit :

    Pou vous viji dit

    voici un lien j’espère que vous trouverez votre bonheur.
    http://doc.ubuntu-fr.org/backuppc

  29. mnttech dit :

    @viji j’ai bien ri avec ça : « je precise que je ne vois pas de terminal comme sur une machine ubuntu classique »
    Je pense que depuis l’entreprise x a engagé un pro, enfin j’espère pour eux et leur backups. :)

    @jogodopau Je ne comprends pas ta question car tu y réponds toi même… Tu prends tes fichiers de conf et tu les balances sur ta nouvelle machine en adaptant le hostname et tout ce qui va changer.

  30. Eth0 dit :

    Bonjour tout le monde
    Pour ma part j’ai un petit souci avec l’ajout des clients avec le protocole smb j’ai un « delai d’attente dépassé  » (root@epn4-desktop:~# ssh mjc@193.0.0.59
    ssh: connect to host 193.0.0.59 port 22: Connection timed out)
    mais aussi j’ai deux OS par machine comment dire au Serveur qu’il doit pointer sur un OS spécifique?

Laisser un commentaire