View previous topic :: View next topic |
Author |
Message |
maicroft n00b
Joined: 08 Nov 2006 Posts: 37
|
Posted: Thu Apr 05, 2007 2:00 pm Post subject: [HOWTO] Loop-Aes sous Gentoo 2006.1 |
|
|
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 dauthentification, 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 |
|
|
ganymede n00b
Joined: 06 Nov 2006 Posts: 21
|
Posted: Sun Apr 08, 2007 9:23 pm Post subject: |
|
|
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 |
|
|
|
|
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
|
|