Si ca peut servir à quelqu’un… je poste ma methode:
Prérequis:
Avoir un noyau au minimum 2.6.4 (2.6.10 pour plus de sécurité) configuré avec BLK_DEV_DM et DM_CRYPT. Ces options sont présentes par défaut dans les noyaux binaires debian (pas de recompilation nécessaire)
│ Symbol: BLK_DEV_DM [=m] │
│ Prompt: Device mapper support │
│ Defined at drivers/md/Kconfig:186 │
│ Depends on: MD │
│ Location: │
│ -> Device Drivers │
│ -> Multi-device support (RAID and LVM) │
│ -> Multiple devices driver support (RAID and LVM) (MD [=y])
│ Symbol: DM_CRYPT [=m] │
│ Prompt: Crypt target support │
│ Defined at drivers/md/Kconfig:202 │
│ Depends on: BLK_DEV_DM && EXPERIMENTAL │
│ Location: │
│ -> Device Drivers │
│ -> Multi-device support (RAID and LVM) │
│ -> Multiple devices driver support (RAID and LVM) (MD [=y]) │
│ -> Device mapper support (BLK_DEV_DM [=m]) │
│ Selects: CRYPTO
Avoir une partition libre … (sisi…). Pour ma machine, c’est /dev/hda12
Il est interessant de s’assurer de l’integrité de secteurs sur cette partition et surtout de la remplir avec des données aléatoires (pour eviter certaines attaques)
2.a)
Verifier le disque et remplir avec des données aléatoires:
apt-get install e2fsprogs
/sbin/badblocks -s -w -t random -v /dev/hda12
Ou
2.b)
Ne pas verifier le disque, seulement remplir avec des données aléatoires:
Installation des outils et scripts de démarrage:
[quote]cryptsetup: /.
cryptsetup: /etc
cryptsetup: /etc/default
cryptsetup: /etc/default/cryptdisks
cryptsetup: /etc/init.d
cryptsetup: /etc/init.d/cryptdisks-early
cryptsetup: /etc/init.d/cryptdisks
cryptsetup: /lib
cryptsetup: /lib/cryptsetup
cryptsetup: /lib/cryptsetup/checks
cryptsetup: /lib/cryptsetup/checks/ext2
cryptsetup: /lib/cryptsetup/checks/swap
cryptsetup: /lib/cryptsetup/checks/un_vol_id
cryptsetup: /lib/cryptsetup/checks/vol_id
cryptsetup: /lib/cryptsetup/checks/xfs
cryptsetup: /lib/cryptsetup/scripts
cryptsetup: /lib/cryptsetup/scripts/decrypt_gpg
cryptsetup: /lib/cryptsetup/scripts/decrypt_old_ssl
cryptsetup: /lib/cryptsetup/scripts/decrypt_ssl
cryptsetup: /lib/cryptsetup/cryptdisks.functions
cryptsetup: /sbin
cryptsetup: /sbin/cryptsetup
cryptsetup: /usr
cryptsetup: /usr/sbin
cryptsetup: /usr/sbin/luksformat
cryptsetup: /usr/share
cryptsetup: /usr/share/initramfs-tools
cryptsetup: /usr/share/initramfs-tools/hooks
cryptsetup: /usr/share/initramfs-tools/hooks/cryptroot
cryptsetup: /usr/share/initramfs-tools/scripts
cryptsetup: /usr/share/initramfs-tools/scripts/local-top
cryptsetup: /usr/share/initramfs-tools/scripts/local-top/cryptroot
cryptsetup: /usr/share/initramfs-tools/conf.d
cryptsetup: /usr/share/lintian
cryptsetup: /usr/share/lintian/overrides
cryptsetup: /usr/share/lintian/overrides/cryptsetup
cryptsetup: /usr/share/man
cryptsetup: /usr/share/man/man5
cryptsetup: /usr/share/man/man5/crypttab.5.gz
cryptsetup: /usr/share/man/man8
cryptsetup: /usr/share/man/man8/cryptsetup.8.gz
cryptsetup: /usr/share/man/man8/luksformat.8.gz
cryptsetup: /usr/share/locale
cryptsetup: /usr/share/locale/de
cryptsetup: /usr/share/locale/de/LC_MESSAGES
cryptsetup: /usr/share/locale/de/LC_MESSAGES/cryptsetup-luks.mo
cryptsetup: /usr/share/doc
cryptsetup: /usr/share/doc/cryptsetup
cryptsetup: /usr/share/doc/cryptsetup/NEWS.Debian.gz
cryptsetup: /usr/share/doc/cryptsetup/changelog.gz
cryptsetup: /usr/share/doc/cryptsetup/AUTHORS
cryptsetup: /usr/share/doc/cryptsetup/README.html
cryptsetup: /usr/share/doc/cryptsetup/CryptoRoot.HowTo
cryptsetup: /usr/share/doc/cryptsetup/CryptoSwap.HowTo
cryptsetup: /usr/share/doc/cryptsetup/usbcrypto.mkinitrd
cryptsetup: /usr/share/doc/cryptsetup/usbcrypto.root
cryptsetup: /usr/share/doc/cryptsetup/README.initramfs
cryptsetup: /usr/share/doc/cryptsetup/README.Debian
cryptsetup: /usr/share/doc/cryptsetup/TODO.Debian
cryptsetup: /usr/share/doc/cryptsetup/copyright
cryptsetup: /usr/share/doc/cryptsetup/examples
cryptsetup: /usr/share/doc/cryptsetup/examples/gen-ssl-key
cryptsetup: /usr/share/doc/cryptsetup/examples/gen-old-ssl-key
cryptsetup: /usr/share/doc/cryptsetup/changelog.Debian.gz
cryptsetup: /usr/share/doc/cryptsetup/usbcrypto.hotplug.gz
cryptsetup: /usr/lib
cryptsetup: /usr/lib/libcryptsetup.so.0.0.0
cryptsetup: /usr/lib/libcryptsetup.la
cryptsetup: /usr/include
cryptsetup: /usr/include/libcryptsetup.h
cryptsetup: /usr/lib/libcryptsetup.so.0
cryptsetup: /usr/lib/libcryptsetup.so[/quote]
[quote]dmsetup: /.
dmsetup: /sbin
dmsetup: /sbin/dmsetup
dmsetup: /usr
dmsetup: /usr/share
dmsetup: /usr/share/man
dmsetup: /usr/share/man/man8
dmsetup: /usr/share/man/man8/dmsetup.8.gz
dmsetup: /usr/share/doc/dmsetup
dmsetup: /usr/share/doc/dmsetup/INTRO
dmsetup: /usr/share/doc/dmsetup/copyright
dmsetup: /usr/share/doc/dmsetup/changelog.Debian.gz
dmsetup: /usr/share/doc/dmsetup/changelog.gz
[/quote]
2)
Ici j’utilise LUKS qui définit un standard pour le chiffrement de système de fichier. Vous pouvez très bien faire votre propre cuisine mais je n’ai pas trouvé d’interet( Luksformat fait appel à cryptsetup que vous pouvez utilisez directement pour utiliser d’autre methode de cryptage, etc…)
On formate la partition hda12 avec dedans un système de fichier ext2
luksformat -t ext2 /dev/hda12
Il vous demande plusieurs fois le mot de passe.
Essayez de vous en rappeler
Créer le point de montage
Et rajouter cette ligne pour que dm puisse faire l’association entre /dev/mapper/cdisk1 et /mnt/cdisk1:
Automatiser le montage et decryptage au boot:
/etc/init.d/cryptdisks lit le fichier /etc/crypttab et monte les partitions en demandant le passe au boot.
Créez ce fichier:
Ici il y a notre ligne, on utilise luks et ses options par défaut.
L’autre exemple permet de stocker la clef, cryptée avec SSL, sur une clef usb (qu’il faudra donc monter avant, voir le parametre CRYPTDISKS_MOUNT dans /etc/default/cryptdisks)
Si vous avez un /proc/crypto avec les priorités standard, vous avez alors votre partition cryptée en AES, le mot de passe est hashé en SHA256, blindé contre une attaque par dictionnaire.
Je me rend compte à l’instant que vous pouvez acceder à cette partition a partir de windows grace à:
freeotfe.org/ (non GPL mais sources fournies)
Dans ce cas, il faut probablement ne pas fixer l’option -t ext2 dans l’etape 2 si bien que la partition décrypté sera au format vfat, accessible sans problème sous windows.
J’ai pas essayé je n’ai pas encore trouvé d’utilité à Windows
Dans le repertoire doc, vous trouverez une moultitude de possibilités de cryptage: cryptage du swap, cryptage de /, cryptage complet d’une clef usb, déplacement de la clef secrete cryptée sur une clef usb ,…
ps: Etant donné que j’avais déja une partition cryptée et plus d’autre partition, j’ai du refaire la manip pour créer ce post. Donc c’est à paufiner probablement: peut-etre que certaines étapes sont manquantes si on part de zéro. Prévenez-moi, je modifierai.