Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOWTO] Loop-Aes sous Gentoo 2006.1
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
maicroft
n00b
n00b


Joined: 08 Nov 2006
Posts: 37

PostPosted: Thu Apr 05, 2007 2:00 pm    Post subject: [HOWTO] Loop-Aes sous Gentoo 2006.1 Reply with quote

Bonjour à tous :)

Petit nouveau dans le monde gentoo je me permets de vous soumettre ce petit howto sur la façon d'utiliser Loop-Aes. Vos idées, suggestions et commentaire sont les bienvenues.

D'avance merci :)


Quote:


Howto Loop-Aes pour Gentoo

1. Intruduction :

1.1 But de ce howto :

Mon but est d'expliquer une installation simple de Loop-Aes sur la distribution Gentoo et de montrer comment encrypter à l'aide d'une clef la dite partition. D'autres exemples ( voir liste si dessous ) son disponible dans le README :



Encrypting swap on 2.4 and newer kernels

Encrypted partition that multiple users can mount

Encrypting /tmp partition with random keys

Encrypting root partition

Boot from CD-ROM + encrypted root partition

Boot from USB-stick + encrypted root partition



http://loop-aes.sourceforge.net/loop-AES.README

Je ne réinvente pas la roue, je ne fais que partager mon expérience sur ce sujet :)

1.2 C'est quoi Loop-Aes :

Loop-Aes est une rapide et transparente encryption pour votre système de fichiers et pour votre mémoire virtuelle. Il fonctionne avec les kernels 2.6, 2.4, 2.2 et 2.0

1.3 Informations Générales :

Le package vous fourni un module chargeable directement dans votre kernel ( loop.o ou loop.ko dans le kernel 2.6). Ce module sera utilisé pour encrypter le système de fichiers local ou dans notre exemple directement une partition.

A savoir que la loop-aes encrypte vos données mais ne fait pas d’authentification, c'est pourquoi une fois votre loop monté, n'importe qui peut accéder à vos données si votre sécurité n'est pas fiable. Loop-Aes est une très bonne sécurité si vous voulez être le seul à pouvoir monter vos loop, par exemple sur un laptop en cas de vol ou sur un serveur qui serait connecté dans un local où vous ne pouvez garantir la sécurité.

Il appartient donc à l'administrateur d'être sûr que sa machine n'a pas été compromise.

Le package NE MODIFIE PAS le kernel, vous êtes donc totalement libre d'utiliser celui que vous voulez, avec ou sans autre patches.

Le package fonctionne sous les kernels suivant :

2.0.x, 2.2.x, 2.4.x (2.4.7 or later) et 2.6.x.

Par défault, 8 devices loop sont disponibles: /dev/loop0, /dev/loop1 .... /dev/loop7 ( avec devfs /dev/loop/0 ... /dev/loop/7). Toutes les devices sont identiques et chacune peut être attachée à un vrai block device ou à un dossier sur un certain système de fichiers.

2. Installation :

Ce howto est basé sur l'installation de Loop-aes sur une distribution Gentoo 2006.1, je pars du principe que je vais utiliser la première partition du mon premier disque ide donc /dev/hda1 avec le loop0.

Avant d'essayer de compiler votre driver loop.o (loop.ko sur le kernel 2.6), vous devez IMPERATIVEMENT configurer, compiler et installer un nouveau kernel avec les attributs suivants si cela n'est pas déjà fait.

CONFIG_MODULES=y
CONFIG_BLK_DEV_LOOP=n

Il faudra aussi à chaque réinstallation d'un nouveau kernel ré-installer l'ebuild ou les sources de loop.

2.1 Installation Loop-aes via le portage.

Avant tous un emerge --sync pour être sur d'être bien à jour :) une fois ceci fait, installer les ebuilds suivant.

sys-fs/loop-aes-3.1e
sys-kernel/gentoo-sources-2.6.19-r5
app-arch/sharutils
app-crypt/gnupg
sys-apps/util-linux


Les versions sont celles utilisées à l'heure ou j'écris ce document.
Il ne nous reste plus qu'a merge tout ce joli monde et leurs dépendances bien sûr :) Afk café ..... :)

une fois tous ceci installé, il vous faut charger le module et de mettre à jour votre fichier de module avec les commandes suivantes. :

#~: modprobe loop
#~: module-update -f

Pour être sur que votre module est bien chargé vous pouvez utiliser la commande lsmod :

#~: lsmod
Module Size Used by
loop 50956 8

2.2 Installation Loop-aes via les sources.

Si comme moi vous n'utilisez pas le kernel "gentoo-sources" vous n'aurez peut-être pas envie d'avoir à l'emerge. Dans ce cas il ne vous reste plus qu'a télécharger les sources ici : http://loop-aes.sourceforge.net/loop-AES/ et à les installer .

#~: mv loop-AES-v3.1e.tar.bz2 /usr/src
#~: tar jxvf loop-AES-v3.1e.tar
#~: cd loop-AES-v3.1e
#~: make clean
#~: make

3 : Création de votre clef:

Nous allons créer notre clef en utilisant 65 clefs aléatoires de chiffrage et chiffrer cette clef en utilisant GPG
Pour cela il suffit de lancer la commande suivante :

#~: head -c 2925 /dev/random | uuencode -m - | head -n 66 | tail -n 65 | gpg --symmetric -a >/root/votre_keyfile.gpg

Au lancement de cette commande, GPG va vous demander votre passphrase, plus elle sera longue, meilleur cela sera. Pour exemple certaines personnes utilisent 2 à 3 expressions bout à bout . A savoir que le même clef peut être utiliser pour plusieurs partitions différentes , vous changerez de clef si vous désirez des passphrases différentes pour vos différents loop.

Le temps de création de la clef peut prendre plus ou moins de temps suivant la charge de votre processeur, plus vous aurez de charge plus vite la clef sera générée.

/!\/!\ A savoir /!\ /!\

NE PERDEZ SURTOUT PAS votre passphrase et/ou votre clef, sinon quoi la seule possibilité qui vous restera sera de formater votre partition et de recommencer.

Personnellement j'écris ma ou mes passphrases dans un fichier et une fois toute mon installation finie je copie les dits fichiers sur une clef usb ou je les grave sur un cd-rom et les mets en lieu sûr, ça n'est pas toujours pratique mais malheureusement, sécurité et pratique riment rarement ensemble.
/!\/!\ A savoir /!\ /!\

4 : Préparation de la partition

Nous allons à présent encrypter notre partition en AES128 et la remplir avec de l'aléatoire ressemblant à des données, cela peut prendre du temps en fonction de la taille de la partition.

#~: head -c 15 /dev/urandom | uuencode -m - | head -n 2 | tail -n 1 | losetup -p 0 -e AES128 /dev/loop0 /dev/hda1
#~: dd if=/dev/zero of=/dev/loop3 bs=4k conv=notrunc 2>/dev/null
#~: losetup -d /dev/loop3

Une fois ceci fais nous allons lui créer une entrée dans notre /etc/fstab

#~: cat /etc/fstab
/dev/hda1 /asyouwant ext3 defaults,noauto,loop=/dev/loop0,encryption=AES128,gpgkey=/root/votre_keyfile.gpg 0 0

On mount le loop et on le formatte
#~:losetup -F /dev/loop0
#~:mkfs -j ext3 /dev/loop0
#~:losetup -d /dev/loop0

le switch "-F" de losetup va regarder votre /etc/fstab à quel device le loop0 est attribué ( ici /dev/hda1 ) et le monter à l'endroit défini. Ici je formate en ext3 mais bien sur vous pouvez le faire au format que vous le désirez.

5. Et voila !

Pour être sur que votre /dev/hda1 est bel et bien encrypté vous pouvez taper la commande losetup -a et vous devriez avoir quelque chose dans le style :

#~: losetup -a
/dev/loop/0: [000e]:2662 (/dev/hda1) encryption=AES128 multi-key-v3

6. Tips

Documentation :
http://loop-aes.sourceforge.net/loop-AES.README

Sources :
http://loop-aes.sourceforge.net/loop-AES/

Date de création : 5 Avril 2006
Auteur : Maicroft
Relecture : ZeBu
Suggestion

Back to top
View user's profile Send private message
ganymede
n00b
n00b


Joined: 06 Nov 2006
Posts: 21

PostPosted: Sun Apr 08, 2007 9:23 pm    Post subject: Reply with quote

Quelques petites remarques :
  • Pour plus de sécurité, il est recommandé que la clé de cryptage (keyfile) générée avec GnuPG ne soit pas enregistrée sur votre disque dur, mais sur un support externe (clé USB, disquette, CD-Rom...). De cette manière, si une personne malveillante dispose d'un accès à votre machine ET que cette personne connaît votre mot de passe, elle ne pourra cependant pas accéder à votre (vos) partition(s) cryptée(s). C'est juste une protection supplémentaire.

  • Si vous ne cryptez qu'une seule partition, n'oubliez pas que les logiciels que vous utiliserez pour accéder aux données cryptées risquent fort d'enregistrer une partie de leurs données de travail dans la partition swap ou dans /tmp... données qui seront alors enregistrées "en clair". Comme mentionné dans ce howto, le swap peut être crypté lui aussi, moyennant quelques manips supplémentaires, et il est même possible de crypter la totalité de votre disque dur, en bootant sur un support externe, tel qu'un CD-Rom ou une clé USB. Toutes les informations nécessaires se trouvent (en anglais) sur http://loop-aes.sourceforge.net/loop-AES.README.

  • Il n'est pas obligatoire de modifier /etc/fstab. Une seule ligne de commande permet de monter la partition cryptée une fois que le module loop est chargé. Pour reprendre l'exemple précédent :
    Code:
    mount /dev/hda1 /asyouwant -o loop=/dev/loop0,encryption=AES128,gpgkey=/chemin/vers/votre_keyfile.gpg
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum