Brebis, le vérificateur automatisé de sauvegarde

Posté par (page perso) . Édité par Florent Zara et Ontologia. Modéré par Florent Zara. Licence CC by-sa
13
12
nov.
2013
Sécurité

Brebis est un vérificateur automatisé de sauvegarde. Le but de cet outil est de détecter les corruptions, pertes, modifications accidentelles ou intentionnelles des données des archives que nous utilisons habituellement pour nos sauvegardes. Le but de cette vérification est de s'assurer que les archives conservées seront exploitables le jour où vous en aurez besoin. Brebis ne créé donc pas d'archive, il les vérifie.

NdM : merci à Carl Chenet pour son journal.

Fonctionnalités

Les types d'archive les plus courants sont gérés (tar, gzip, bzip2, lzma, zip et arborescence de fichiers). Les fonctionnalités majeures de Brebis sont :

  • détection de la corruption d'une archive
  • identification d’éventuels fichiers manquants
  • détection des tailles inattendues des fichiers dans l’archive (égale à, plus petite que, plus grande que)
  • détection des types des fichiers dans l’archive (fichier, répertoire, lien)
  • vérification du mode des fichiers dans l’archive (états des droits de lecture, écriture et exécution)
  • contrôle du propriétaire et du groupe propriétaire du fichier dans l'archive
  • contrôle de la somme de hachage des fichiers dans l’archive (support du md5, sha1, sha224, sha256, sha384, sha512)
  • identification d'un fichier qui n’est pas censé se trouver dans l’archive
  • contrôle de la cible des liens dans l’archive

Comment fonctionne Brebis ?

Brebis génère un fichier de configuration ainsi qu'une liste des fichiers contenus dans l'archive, liste qui sera ré-utilisée par la suite pour identifier les changements éventuellement survenus entretemps. La configuration associée à votre archive peut être signée avec GPG afin d'être protégée.

Prérequis

Brebis nécessite Python 3.3. Il peut être installé via le système de paquets de Debian, FreeBSD, Archlinux et Frugalware (merci beaucoup encore aux empaqueteurs!).

Feedback

Le projet est friand de retour sur l'utilisation de Brebis. N'hésitez pas à réagir ici dans les commentaires de ce journal ou sur la liste de diffusion du projet.

  • # Par2

    Posté par (page perso) . Évalué à 2.

    Moi ça me fait penser au système utilisé lorsque je téléchargeait (légalement bien sûr) de gros fichiers binaires via usenet, ce qui générait parfois des corruptions de fichiers (souvent des archives découpées).
    Pour détecter ces corruption mais aussi pour les réparer (si elles ne sont pas trop importantes), on utilisait un système à base de fichiers par2 (https://fr.wikipedia.org/wiki/Parchive).

    Du coup, c’est quoi les différences entre ce système et celui présenté ici ? (sans doute une question naïve, je ne suis pas un spécialiste…)

    De ses yeux vastes comme des océans, encroûtés de chassie et de poussière d'astéroïdes, Elle fixe le But Ultime.

    • [^] # Re: Par2

      Posté par (page perso) . Évalué à 4.

      François Chaix : on peut utiliser Brebis dans cette optique et c'est même l'un des deux cas principaux d'utilisations de Brebis.

      Il arrive souvent que deux sociétés échangent des fichiers sous la forme d'archive et d'après mon expérience professionnelle le contrôle du bon déroulement du transfert et de la cohérence du contenu des archives est effectué manuellement par les équipes de production, ce qui fait perdre un temps considérable pour une tâche peu gratifiante.

      Avec Brebis, tu peux générer avant l'export de l'archive une liste des fichiers contenus dans l'archive. Elle permettra au receveur de réutiliser Brebis pour vérifier que rien n'a changé et si quelque chose a changé l'identifier. Tout cela bien sûr de manière automatisée.

      Pour répondre plus directement à ta question, Brebis n'effectue que le contrôle du contenu de l'archive et l'identification d'éventuels changements. Il n'effectue pas de réparation.

      • [^] # Re: Par2

        Posté par . Évalué à 5.

        Avec Brebis, tu peux générer avant l'export de l'archive une liste des fichiers contenus dans l'archive. Elle permettra au receveur de réutiliser Brebis pour vérifier que rien n'a changé et si quelque chose a changé l'identifier. Tout cela bien sûr de manière automatisée.

        Et par rapport à une bête empreinte sha1 que je joindrais au fichier à envoyer ?

        • [^] # Re: Par2

          Posté par (page perso) . Évalué à 3.

          stopspam : la somme de hachage du fichier est une excellente habitude à avoir dans les échanges de fichiers.

          Maintenant c'est un peu du tout ou rien. Tu sais qu'il y a un problème, mais lequel ? Est-ce qu'il y a simplement une corruption de l'archive ? Est-ce que des fichiers à l'intérieur de l'archive ont été impactés ? Brebis est exhaustif dans ses rapports et va présenter tous les problèmes rencontrés (somme de hachage de l'archive incorrecte mais aussi sommes de hachage de tous les fichiers à l'intérieur de l'archive, tailles des fichiers, droits…).

          Mais surtout la somme de hachage ne permet pas de garantir la conformité de l'archive envoyée du point de vue du destinataire.

          Disons que qu'une société A envoie une archive à une société B contenant certains fichiers vides. L'archive n'est pas corrompue, l'envoi se déroulera bien, somme de hachage bonne, mais l'archive ne sera pas dans un état acceptable pour le destinataire. Et cette anomalie va monopoliser une ressource sur une tâche peu motivante pour être détectée. Brebis permet de définir un référentiel de l'archive (fichiers ou répertoires devant être présents, tailles (<,> ou =), droits,…) qui permettra à chaque transfert de garantir le respect de la conformité du format et du contenu de l'archive attendue.

  • # Projets

    Posté par (page perso) . Évalué à 3.

    Il faut abandonner les projets de sauvegarde ; une sauvegarde fonctionne toujours
    Il faut faire des projets de restauration

    • [^] # Re: Projets

      Posté par (page perso) . Évalué à 3.

      Katyucha : c'est malheureusement peu souvent vrai qu'une sauvegarde fonctionne, pour la simple et bonne raison que, comme à peu près dans tous les domaines de l'informatique, ce qui n'est pas testé ne marche pas.

      J'ai rencontré dans ma vie professionnelle des sauvegardes jamais testées qui contenaient des fichiers vides, des archives corrompues et des archives qui contenaient tous les fichiers possibles sauf celui dont l'admin avait besoin pour redémarrer son système le plus vite possible. Ces découvertes arrivent bien sûr toujours au pire moment.

      Brebis se propose de contrôler de façon automatisée les sauvegardes. Il est donc possible de le faire régulièrement sans monopoliser une ressource pour effectuer ce travail fastidieux. Ce qui permet justement de restaurer sans crainte son système d'information à l'aide des sauvegardes régulièrement contrôlées par Brebis.

      • [^] # Re: Projets

        Posté par (page perso) . Évalué à 4.

        Mais absolument d'accord sauf qu'une sauvegarde n'est sure que si on est capable de restaurer.

        Il n'y pas que la partie "informatique" qui est à prendre en compte mais : "ai je un endroit pour restaurer?" pour commencer. Brebis te valide ta sauvegarde (le beau fichier X), rien ne pourra t’empêcher d'avoir des problèmes de toute autre nature. Pour cela qu'il faut aller au bout du projet restauration pour être sur des sauvegardes.
        J'ai déjà vu une entreprise qui avait de superbes bandes de stockage, parfaites. Sauf que le jour ou le NAS a cramé, t'as beau avoir de belles sauvegardes, t'as nul part pour restaurer !

        • [^] # Re: Projets

          Posté par (page perso) . Évalué à 3.

          Katyucha: Je dirais que Brebis se situe plutôt du côté de l'exploitation quotidienne, pour clôre le cycle des sauvegardes et assurer une exploitation possible des données surveillées.

          Maintenant si l'environnement nécessaire à la restauration n'est plus là et que ça impacte le business on est dans le cas d'un désastre qui doit être prévu au niveau organisationnel et technique dans le cadre de plan de continuité d'activité/plan de reprise d'activité.

  • # Mais qui va vérifier brebis ?

    Posté par (page perso) . Évalué à 4.

    J'attends avec impatience le programme de vérification de Brebis, celui-ci vérifiera que le fichier de config contient bien les fichiers essentiel à vérifier, ainsi qu'il s'est bien exécuté comme prévu ;)
    Blague à part, intéressant ce script, je vais y songer pour mon serveur de backups

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.