Sauvegarder des données cryptées sur Amazon S3

ATTENTION : je vous présente ici une solution de sauvegarde ; effectuez plusieurs tests avant de valider le système et de lui faire aveuglément confiance

Bonjour à vous,

cela faisait longtemps que je n’avais pas écrit sur Ubuntu. Cela ne change rien au fait qu’il s’agit toujours de ma distribution Linux que j’utilise au quotidien et que j’apprécie toujours autant.

Il y a très longtemps, je vous avais présenté ma méthode de sauvegarde.
J’ai gardé la même méthode quelques temps puis j’ai récupéré un serveur. Là, j’ai opté pour une version plus simple avec copie de mes fichiers tels quels sur le serveur si et seulement si ils étaient modifiés depuis la dernière sauvegarde (via l’outil rsync).

Mais voilà, quelle que soit la solution retenue, que se passait-il si un incendie se déclare ? Ou si des voleurs viennent me rendre visite ?
Là, à moins de très bien cacher le disque dur de sauvegarde (le serveur, ce n’est même pas la peine d’essayer) dans une boîte ignifugée, c’est peine perdue…

Une solution serait donc de sauvegarder le tout en ligne mais je me suis retrouvé face à deux problèmes :
- le coût d’une telle solution
- la confidentialité des données

Pour le premier problème, j’ai décidé de tenter ma chance avec le système Amazon S3. Pour 20 Go de données, il faut compter 2 euros par mois (plus les frais de transfert qui sont tout aussi faibles)
Il ne s’agit pas là d’une bête de course mais pour des sauvegardes, nous n’en avons pas vraiment besoin.

La sauvegarde sur Amazon

Après venait le problème sur comment envoyer mes données.

Sous Ubuntu, l’outil s3cmd fonctionne très bien !

Commençons par l’installer :
sudo apt-get install s3cmd

Puis configurons-le :
s3cmd --configure

Vous allez devoir entrer les clés d’identification fournies par Amazon et répondre à quelques questions ; rien de bien sorcier en soi… (répondez YES pour l’utilisation de https ; cela ralentira les transferts mais augmentera la sécurité)

Ensuite, nous allons créer un bucket sur notre compte Amazon. Qu’est-ce ? En termes simples : un dossier (bucket = seau en anglais)…
Et oui, certains prennent parfois un malin plaisir à utiliser des nouveaux mots pour des concepts existants.

s3cmd cb s3://mon_nouvea_seau

Petite particularité : les buckets doivent être uniques pour tout le système S3 ; ce n’est même pas la peine d’essayer d’en créer un qui s’appelle test par exemple.
Astuce lue : préfixer le nom que vous vouliez donner par votre pseudo ou un nom quelconque ; par exemple, dans mon cas, au lieu de test, nous aurions szdavid.test.

Pour vérifier qu’il est bien créé:
s3cmd ls

Maintenant, synchronisons notre premier dossier pour tester :
s3cmd sync /home/mon/dossier/a/sauvegarder s3://mon_nouvea_seau/

Lors du premier lancement, le programme enverra tout le dossier mais, lors des lancements suivants, seules les modifications seront transmises (cela permet d’économiser du temps – le transfert – et de l’argent – les coûts Amazon du trafic)

Pour restaurer dans un autre dossier ? Exactement la même logique !
s3cmd sync s3://mon_nouvea_seau/ /home/mon/dossier/ou/restaurer

Mais où est la sécurité là-dedans ? ? ?

Pour l’instant, je ne faisais que vous présenter l’étape de synchronisation pour que vous voyiez le principe général…

Sécurisons un peu le process

Pour la suite, nous allons utiliser encfs.

Cet outil permet de chiffrer un dossier spécifique. Une fois ce dossier créé, vous pouvez l’ouvrir en clair et l’utiliser comme un dossier classique.

Mas nous sommes dans le cas contraire : le dossier en clair existe déjà, c’est celui que vous voulez sauvegarder.
Pas de problème, ça va fonctionner sur le même principe.
Au final, nous demanderons à s3cmd de sauvegarder le dossier crypté et non pas le dossier clair.

Nous souhaitons sauvegarder le dossier ~/test/.

Créons un dossier qui contiendra les données chiffrées :
mkdir ~/test_enc

encfs --reverse /chemin/complet/vers/test /chemin/complet/vers/test_enc

Il est très important que vous donniez le chemin complet et non pas les raccourcis du style ~/test
~ signifie /home/votre_nom_d’utilisateur.

Sélectionnez le mode standard puis rentrez le mot de passe de votre choix.
Ne l’oubliez pas surtout pas !

Un fichier de configuration va être créé.
Il est impératif de le sauvegarder !
Si vous le perdez, tout comme si vous oubliez le mot de passe, vous perdrez vos données et, surtout, vos sauvegardes.

Nous allons le sauvegarder sur Amazon S3 (nous avons de l’espace à disposition, autant en profiter) :
s3cmd put ~/test/.encfs6.xml s3://mon_nouvea_seau/test.xml

A présent, synchronisons comme nous l’avions fait auparavant avec notre dossier /home/mon/dossier/a/sauvegarder

s3cmd --delete-removed sync test_enc/ s3://mon_nouvea_seau/test

Une fois que c’est fini, nous allons démonter le dossier chiffré :
fusermount -u test_enc/

Maintenant, tout cela est terminé.

La restauration

C’est bien beau d’avoir sa sauvegarde protégée à distance mais, et maintenant, que faisons nous pour récupérer nos données ?

Nous allons d’abord créer deux répertoires, un qui recevra les données cryptées, l’autre les données en clair :
mkdir test
mkdir test_enc

Nous récupérons le fichier XML que je vous ai fait sauvegarder auparavant :
s3cmd get s3://mon_nouveau_seau/test.xml test/.encfs6.xml

Ensuite, nous récupérons tous les fichiers cryptés :
s3cmd sync s3://mon_nouveau_seau/test test_enc/

maintenant, faites voir un
ls test

Vous avez récupéré vos fichier ?

C’est beau, n’est-ce pas ?

N’oubliez pas de libérer le dossier crypté :
fusermount -u Music_enc/

Automatisation peu pratique

Mon gros souci avec ce système est que, à moins de stocker quelque part en clair le mot de passe, l’automatisation du processus n’est vraiment pas simple du tout…

Pour résoudre cela, j’ai finalement opté pour le logiciel Jungle Disk, payant mais qui permet tout cela très bien.

Source

  • Share/Bookmark

Articles similaires:



Laissez un commentaire

Login Method

OpenID

Anonymous

Vous pouvez utilisez les balises suivantes dans vos commentaires:

<a href=""></a> <strong></strong> <em></em> <blockquote></blockquote>

Votre commentaire :

|Top | Content|


|Top | FarBar|


Bad Behavior has blocked 990 access attempts in the last 7 days.


Attention: This is the end of the usable page!
The images below are preloaded standbys only.
This is helpful to those with slower Internet connections.