|
Il y a actuellement 6 visiteurs connectés sur le site !
Stockage des données confidentielles sous GNU/Linux
|
Stockage des données confidentielles sous GNU/Linux
|
|
Objectif
Ce tutorial est le complément de l'article Stockage des données confidentielles sous GNU/Linux (Hakin9 01/2005). On considere que les exercices décrits ci-dessous seront effectués au moyen du CD Hakin9 Live.
Avertissement! Il n'est pas conseillé de chiffrer les vraies données disponibles dans le systeme Hakin9 Live \u2013 elles risquent d'etre perdues lors du redémarrage de l'ordinateur.
Objectif: Apres avoir fait les exercices décrits, vous saurez :
# au moyen du paquet GnuPG chiffrer les fichiers simples par clé symétrique et asymétrique,
# créer et utiliser le répertoire chiffré a l'aide de l'outil EncFS,
# créer et monter une partition chiffrée (réelle et virtuelle) a l'aide de cryptoloop.
Chiffrage symétrique des fichiers \u2013 paquet GnuPG
Dans le premier exercice, nous utiliserons le paquet GnuPG pour chiffrer un fichier simple. Dans notre cas, ce sera le fichier HK1204.pdf.
Cryptage d'un fichier
01] Dans le tutorial, nous nous servirons de l'algorithme AES (il a le meilleur rapport qualité efficacité). Nous commençons par charger le module du noyau approprié:
$ su -
# modprobe aes
# exit
[02] Nous créons le répertoire /home/haking/encrypted dans lequel nous stockerons les données chiffrées:
$ mkdir ~/encrypted
Dans ce répertoire, nous enregistrons le fichier HK1204.pdf.
[03] Maintenant, il est temps de commencer le chiffrage. Tapons la commande suivante :
$ gpg --output ~/encrypted/cyph1 --symmetric --cipher-algo AES192 ~/encrypted/HK2104.pdf
Cette commande permet de chiffrer symétriquement le fichier HK2104.pdf dans le fichier cible ~/encrypted/cyph1 au moyen de l'algorithme AES sur la clé de 192 bits.
[04]Pour chiffrer, il est nécessaire d'entrer un mot de passe. Réfléchissons bien pour inventer une phrase qui n'a pas de sens, mais qui est facile a retenir \u2013 par exemple Trois gros rats gris dans trois gros trous tres creux, 666. Ce sera notre mot de passe.
[05] Le fichier a été chiffré. Maintenant, il faut supprimer l'original:
$ shred -n 35 -z -u ~/encrypted/HK2104.pdf
[06] Pour déchiffrer le fichier et récupérer les données, nous allons taper la commande suivante:
$ gpg --output HK2104.pdf --decrypt ~/encrypted/cyph1
Cryptage d'un dossier
Répertoires chiffrés \u2013 EncFS
[07] Avant d'utiliser cette possibilité du programme EncFS, il faut créer deux répertoires. L'un (chez nous ~/.crypto) stockera nos données sous forme chiffrée (il ne sera pas utilisé de façon directe), par contre, dans le deuxième(~/secret), elles seront montées et déchiffrées à chaque demande d'accès. Le montage, bien sûr, ne sera possible qu'après la saisie du mot de passe.
$ mkdir ~/.crypto
$ mkdir ~/secret
[08] L'étape suivante consiste à activer le mécanisme EncFS:
$ su -; insmod fuse; exit
$ encfs ~/.crypto ~/secret
Après avoir appuyé sur la touche [Entrée], le programme nous demande de choisir le mode de configuration. Nous décidons d'utiliser le mode préconfiguré pour les paranoïaques.
Il est temps de déterminer le mot de passe associé à notre archive. Après la saisie du mot de passe et sa confirmation, notre système de fichiers virtuel est prêts à être utilisé.
[09] Nous y copions quelques fichiers (echo, ls, telnet):
$ cp /bin/echo /bin/ls /bin/telnet ~/secret/
Nous vérifions ce qui se trouve dans les répertoires ~/secret et ~/.crypto:
$ ls ~/secret
$ ls ~/.crypto
Comme vous le voyez, le premier contient nos fichiers, et le deuxième \u2013 leurs versions chiffrées. Maintenant, pour que personne ne puisse lire leur contenu, nous pouvons démonter le système de fichiers virtuel à l'aide de la commande:
$fusermount -u ~/crypto
Réussi! Nos données sont protégées.
[10] Maintenant, essayons de les monter encore une fois \u2013 avec un protection supplémentaire qui permet le démontage automatique après une période d'inactivité (10 minutes):
$ encfs --idle=10 ~/.crypto ~/secret
Nos fichiers sont de nouveau disponibles dans le répertoire ~/secret. Si nous attendons 10 minutes, le répertoire sera automatiquement démonté.
Cryptoloop
Système de fichiers chiffré \u2013 cryptoloop
Il reste encore un outil qui nous permettra de protéger les fichiers confidentiels. C'est cryptoloop, l'outil intégré dans le noyau de Linux.
[11] Nous admettons que nous n'avons pas de partition libre (ce qui est le cas du CD Hakin9 Live), nous nous servirons donc d'une caractéristique commode du mécanisme de retour \u2013 loopback \u2013 permettant de l'utiliser comme un système de fichier ou un fichier ordinaire. Préparons-le:
$ dd if=/dev/urandom of=~/crypto.raw bs=1k count=10000
À la suite de l'exécution de cette commande, le fichier d'une taille de 10 Mo est créé. Il contient des valeurs aléatoires (déchets).
[12] Dans l'étape suivante, il faut associer le fichier créé au dispositif loop libre et de le chiffrer par le biais de la méthode décrite:
$ su -
# modprobe cryptoloop
# losetup -e aes-192 /dev/loop1 /home/haking/crypto.raw
Le programme nous demande d'entrer le mot de passe (20 caractères au minimum).
[13] Nous avons préparé de la place. Maintenant, il faut y mettre un peu d'ordre, c'est-à-dire, créer un système de fichiers quelconque. Par exemple ext2:
# mkfs.ext2 /dev/loop1
[14]Après cela, nous pouvons libérer (option -d) le dispositif loop1:
# losetup -d /dev/loop1
# exit
[15] Notre système de fichiers chiffré est prêt et il peut être monté et utilisé de la même façon que tout autre système de fichiers. Montons-le et voyons comment il fonctionne:
$ mkdir ~/encrypted_disk
$ mount -t ext2 ~/crypto.raw ~/encrypted_disk -oencryption=aes-192
La commande mount, après la saisie du mot de passe valide, associe le fichier donné au premier dispositif loop libre.
[16] Copions maintenant nos fichiers dans un répertoire sûr:
$ cp /bin/echo /bin/ls /bin/telnet ~/encrypted_disk
Et c'est tout \u2013 notre nouveau disque chiffré peut être monté et démonté suivant les besoins. Les personnes non-autorisées qui ne connaissent pas le mot de passe ne pourront pas y accéder.
|
Sources de l'article
|