Tutoriel : Sauvegarde Linux et Windows

Les technologies utilisées

rsync

rsync est avant tout un protocole, destiné au transfert de fichiers incrémental. En clair il compare les données côté serveur et côté client, puis transfère uniquement les différences entre les deux, ce qui lui permet d’être considérablement plus rapide qu’une copie brute de l’ensemble des données comme ce serait le cas avec ftp, sftp ou scp. L’outil rsync qui implémente ce protocole présente par ailleurs des options intéressantes comme la possibilité d’encapsuler le trafic dans un tunnel crypté ou de limiter la bande passante pour ne pas saturer le réseau. C’est pourquoi il est particulièrement adapté aux sauvegardes dites de disque à disque (par opposition aux sauvegardes sur bandes magnétiques).

SSH

C’est la façon la plus simple de crypter des transferts de données. En plus d’être très sécurisée, elle est relativement simple à mettre en œuvre par rapport à des solutions à base de kerberos ou de VPN. En outre elle s’interface facilement avec rsync et possède des clients sur toutes les plateformes.

BTRFS

C’est là entre autres qu’on va innover par rapport à d’autres solutions plus classiques à ce type de problématique. Sur une machine Linux, les disques sont généralement formatés avec le système de fichiers ext4. BTRFS est un système de fichiers récent et qui est maintenant disponible sur la plupart des distributions Linux, même s’il n’est pas encore le choix par défaut en raison de sa jeunesse. Il est néanmoins très stable et possède certains avantages par rapport à ext4 qui en font un choix idéal pour héberger des sauvegardes :

  • son concept de snapshots permet de prendre de manière instantanée une photo de son contenu à un instant donné
  • on peut tout aussi rapidement supprimer un snapshot (pas besoin de supprimer récursivement tous les fichiers et répertoires un à un, ce qui peut être très long)
  • il compresse les données de façon transparente pour économiser l’espace disque
  • sa nature copy-on-write permet d’économiser encore plus d’espace (la copie d’un fichier modifié n’occupe que l’espace nécessaire aux blocs modifiés et non le double de l’espace original : les blocs non modifiés restent communs).

BTRFS n’est disponible que sous Linux, ce qui nous oblige donc à avoir notre serveur de sauvegarde sur cet OS. Néanmoins les propriétés de ce système de fichiers sont très proches de celles du ZFS de Solaris, que l’on trouve également sur certains BSD. Il est donc certainement possible d’adapter l’essentiel de ce tutoriel pour fonctionner sur une base de ZFS, mais je laisse cet exercice au lecteur !

SFTP

Tout comme la sauvegarde, la restauration des données se doit de répondre à deux critères essentiels :

  • être simple et intuitive pour les utilisateurs qui n’ont pas vocation à devenir des experts en informatique
  • être sécurisée (à quoi bon sécuriser la sauvegarde sinon ?)

En fait, l’idéal est de rendre les sauvegardes accessibles au même titre que des données locales et de rendre leur restauration aussi simple qu’un copier/coller. Cela exclut donc d’emblée rsync (ou son équivalent graphique sous Windows : Grsync), qui n’est pas intuitif ni sécurisé par défaut et nécessite de plus le lancement d’une application spécifique. Exit aussi les partages Samba ou NFS qu’il est très difficile de crypter (cela requiert en gros un VPN local), même s’ils répondent bien au critère d’accessibilité.

Curieusement, il nous reste un protocole qu’on n’attendait pas forcément, mais qui astucieusement implémenté va nous permettre de satisfaire à nos deux exigences : SFTP.

2 thoughts on “Tutoriel : Sauvegarde Linux et Windows”

  1. Merci pour ce très mon tutoriel :-).

    j’ai juste un soucis au niveau de la configuration de ssh : je n’arrive pas utiliser l’attribut loaclport dans les MATCH du fichier sshd_config,et d’après le man et les recherche que j’ai fait sur le net cet attribut n’existe pas !

    Pouvez vous me dire comment vous avez fait ?

    Merci

    PS : je suis sous debian 7.1.0 avec ssh 6.0p1

  2. Bonjour,

    merci pour ce tutoriel, sur mon client, on me demande une passphrase qui est a blanc dans ton tuto. je l’ai changé par autre chose et rien n’y fait.

    J’ai transfere le .pub de mon serveur de sauvegarde vers mon client mais ca ne marche pas.

    je suis débutant sur Linux mais bon je trouve ce tutoriel vraiment bien.

Les commentaires sont clos.