Entrez vos identifiants

x
OU
Vous avez oublié votre mot de passe ?
Utilisateur wiki : vous n'aviez pas d'email ?

Korben - Site d'actualité geek et tech

Go Top


Comment chiffrer une partition système Linux (ici Ubuntu)

Comment chiffrer une partition système Linux (ici Ubuntu)

Après ce premier tuto qui explique comment chiffrer une partition système Windows avec Truecrypt, j'en viens directement à mon but premier : Le faire sous linux... enfin, sous Ubuntu pour être plus précis car c'est l'OS que j'utilise...mais vous pouvez probablement l'adapter pour d'autres types de linux.

Pour info, je pensais au début que ça allait être fastoche... Il existe bel et bien une option de chiffrement sous Ubuntu mais cela ne concerne que le répertoire /home. Moi je voulais chiffrer tout le système...

Evidement, avec Truecrypt, ce n'est pas possible alors j'ai du ruser... Cherchant toujours la solution de facilité, j'ai vu que l'Alternate CD d'Ubuntu proposait cela mais au final après plusieurs bidouillage, pas moyen de le faire passer en install via clé USB (oui j'ai bien monté ma clé dans /cdrom mais après il y a eu des erreurs d'écritures qui m'ont gonflé).

Du coup, j'ai décidé de tout faire à la mano... Pour chiffrer votre ordinateur sous Linux, vous devrez donc utiliser LVM et bien sûr formater le disque dur... Attention donc ! J'ai fais la manip plusieurs fois donc je pense qu'elle est assez rodée pour être communiquée mais je ne me prétend pas expert en chiffrement donc si vous avez des remarques et améliorations à apporter à ce modeste tuto, je serai ravi d'éditer mon article pour l'améliorer. Merci.

Allez, c'est partiiiiiiiiiii ! (excusez les captures écrans un peu roots mais j'ai fait ça sur un vrai ordi (NC10) et pas une machine virtuelle)

Première étape, je boote sur le LiveCD ou plus exactement sur une clé USB qui contient l'image du LiveCD (réalisée avec Unetbootin).

Première chose à faire, passer le clavier en français... C'est important si vous ne maitrisez pas les claviers Qwerty. Il faut aller dans Système -> Préférences -> Clavier puis cliquer sur l'onglet "Agencements" et ajouter "France" pour l'appliquer à l'ensemble du système. Comme on est sur un liveCD, ça ne sera pas conservé en mémoire si vous rebootez...

On active ensuite la connexion wifi puis on démarre une console... (Applications -> Accessoires -> Terminal)

Je me mets en root :

sudo su

Je lance un update

apt-get update

j'installe ensuite lvm et cryptsetup qui me serviront à chiffrer le disque dur

apt-get install lvm2 cryptsetup

J'active ensuite le module dm-crypt qui servira au chiffrement/déchiffrement

modprobe dm-crypt

On va ensuite créer nos partitions... Il y aura en fait 2 partitions :

  • /dev/sda1 qui ne sera pas chiffrée et qui sera la partoche de boot (/boot). Il faut savoir que c'est là le point faible de cette méthode. Comme /boot n'est pas chiffrée, un attaquant peut placer un keylogger ou un trojan à ce niveau là, qui saura faire ce qu'il faut lorsque vous entrerez ensuite votre mot de passe. La solution de chiffrement LVM est donc suffisante en cas de vol de votre ordinateur mais si vous le prêtez, il est potentiellement faillible... Je reviendrai vers vous dans quelques semaines (mois ?) avec une solution qui réglera ce problème (c'est en cours de développement)
  • /dev/sda2 qui contiendra à la fois la partition système et la partition de swap. Toutes les 2 seront chiffrées

Petite parenthèse, si vous souhaitez supprimer de manière sécurisée ce qui se trouve sur sda, vous pouvez le faire en utilisant la commande shred. Plus vous faites de passes (ici 7), plus ça sera long et sûr qu'on ne pourra rien récupérer ensuite.

shred –n 7 /dev/sda

On va ensuite chiffrer la partition. Avec quel algo ? Et bien pour savoir ce qu'on a notre disposition, il suffit de faire un

cat /proc/crypto

Comme pour le tuto windows, je vais utiliser un AES mais si vous voulez en savoir plus sur les algos de chiffrement (j'suis pas expert là dedans), je vous invite à allez lire ça et ça.

Je vais donc créer la partition chiffrée en aes sur /dev/sda2

cryptsetup -c aes-xts-plain -s 512 luksFormat /dev/sda2

512 est le maximum avec cet algo mais c'est bien suffisant...

Cryptsetup demandera alors un mot de passe. Mettez un truc costaud entre 8 et 10 caractères avec des lettres minuscules, majuscules, des chiffres et des caractères comme '§*$#@ ...etc

Une fois la partoche chiffrée crée, on va la monter sous le nom lvm...

cryptsetup luksOpen /dev/sda2 lvm

Ensuite, on l'initialise :

pvcreate /dev/mapper/lvm

Et on crée un groupe de volumes qu'on va appeler ubuntu

vgcreate ubuntu /dev/mapper/lvm

Vient maintenant le moment de créer la swap chiffrée... 1,5 Gb est suffisant pour 1 Gb de RAM

lvcreate -L1500M -n swap ubuntu

Et on utilise le reste de la place du disque pour la partition système (root)

lvcreate -l 100%FREE -n root ubuntu

Reste plus qu'à formater tout ça.... en swap pour la swap et en ext4 pour la partition racine

mkswap /dev/mapper/ubuntu-swap
mkfs.ext4 /dev/mapper/ubuntu-root

Voilà les partitions sont créées. On laisse le terminal ouvert pour la suite mais on lance l'install de Ubuntu (en double cliquant sur l'icone install sur le bureau)

On suit ensuite le processus classique de l'installation d'Ubuntu à la différence prêt que lors de la sélection des partitions, on choisit l'option "Définir les partitions manuellement"

On utilise alors ubuntu-root avec le point de montage / avec un formatage en ext4, ubuntu-swap en tant que swap et bien sûr /dev/sda1 en tant que partition de boot non chiffrée.

A la fin de l'install, ne redémarrez pas, car nous allons devoir activer toute cela. On va se placer en chroot sur le système fraichement installé... Retournez dans la console, et entrez les commandes suivantes pour monter le système façon chroot, c'est à dire comme si vous étiez nativement dessus

mount /dev/mapper/ubuntu-root /mnt
mount /dev/sda1 /mnt/boot
mount -o rbind /dev /mnt/dev
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
chroot /mnt

Normalement, si vous faites un ping d'un site, vous devriez pouvoir vérifier que le réseau fonctionne en chroot. Si ce n'est pas le cas, c'est qu'il manque des fichiers dans /etc/.  Pour les placer, il suffit de faire un

strace ping www.google.com

et de regarder les messages d'erreur qui indiquent qu'il manque des fichiers. Et de copier ces fichiers (ou de faire des liens symboliques). En ce qui me concerne, je n'ai pas eu besoin de le faire. J'ai rencontré le souci mais après un reboot et une activation immédiate du wifi, ça a fonctionné.

On installe donc lvm2, cryptsetup et grub2 sur le nouvel OS fraichement installé avec un

aptitude install cryptsetup lvm2 grub2

On va ensuite (tjrs dans chroot) rajouter cela dans le fichier /etc/crypttab

ubuntu UUID=0000-0000-0000-00000-000000000 none luks,retry=1,lvm=ubuntu

Pensez à remplacer les 000000 par l'UID de votre partition. Vous pouvez l'obtenir en faisant un

blkid /dev/sda2

Ajouter ensuite l'appel au module "dm-crypt dans" /etc/initramfs-tools/modules

Editez ensuite le fichier /etc/initramfs-tools/conf.d/ubuntu

et rajouter dedans :

ubuntu=target=ubuntu,source=/dev/sda2

Puis on met à jour initramfs avec la commande suivante :

update-initramfs -k all -c

On installe grub sur la partition de boot si ce n'est pas déjà fait

grub-install /dev/sda

Puis on met à jour grub

update-grub2

Et enfin, on reboot...

Au démarrage, vous devriez alors avoir une demande de mot de passe... Puis une fois la partition déchiffrée, vous devez accéder normalement à votre système. Pas de ralentissement, c'est comme si on était sur un OS non chiffrée. C'est assez bluffant.

En ce qui me concerne, la seule ombre au tableau est que j'ai ça comme message d'avertissement et je n'ai rien trouvé sur le net qui y réfère...

cryptsetup: lvm device name (ubuntu) does not contain a dash

je sèche donc sur ce point mais ça ne m'empêche pas de faire tourner le bousin et tout fonctionne très bien... donc si quelqu'un a une idée, je suis preneur.


Facebook Twitter Email Copier Url

94 Responses to “Comment chiffrer une partition système Linux (ici Ubuntu)”

  1. dededede4 dit :

    Il suffit de chiffrer /home.

    Je suppose que c’est impossible de chiffrer le reste, car du coup tu chiffreras l’application qui permet de déchiffrer et donc ça ne marche pas.

    Suffit de chiffrer le /home, y’a tout dans le /home.

    Sauf si tu as peur que l’on trouve que tu utilises firefox & vlc…

  2. Korben dit :

    @dededede4: je ne dis pas le contraire. Le /home est largement suffisant. Mais le reste c’est toujours bien de savoir le faire… Là avec ce tuto, tout est chiffré mis à par /boot. Faut savoir que le chiffrement permet aussi d’éviter de se faire piéger la machine (ce qui reste possible ici sur le /boot) mais avec la soluce que j’ai qui va prochainement arriver, tout de chez tout sera chiffré

  3. dededede4 dit :

    @Faut savoir que le chiffrement permet aussi d’éviter de se faire piéger la machine

    Bah non, car il faut être root pour faire ça. :/

  4. jpp dit :

    le fait de crypter tous le systeme ne permet pas de faire de déni (puisque le systeme demande un mot de passe au démarrage). Donc on peux t obliger a le decrypter toi meme (par voie légal ou a la brute…)
    Parcontre, avec true crypt, tu peux avoir une 2eme partition crypté en plus de la standard. (2eme partition indetectable, donc deni possible)

  5. jpp dit :

    @dededede4, pas besoin d’etre root, sufit de booter avec une usb ou un systemrescuecd … Tu piège alors n’importe quelle partition non cryptée…

  6. dededede4 dit :

    @jpp

    D’accord, si tu as peur de quelqu’un qui est assez motivé pour découvrir que tu utilises firefox au point d’avoir envie de te piquer le PC afin de faire booter la clef USB, là faire le tuto.

  7. ça, c’est du bon cryptage

  8. Djul dit :

    Sympa, je m’y met demain, de toute façon je devais réinstaller ma distrib. Mais je crois que je ne vais chiffrer que mon /home/djul. Du coup peut être pas besoin de formater…

    Effectivement après un tuto aussi conséquent t’as bien le droit à une journée de pause.

  9. Trak dit :

    Solution plus simple : faire un LiveUSB à partir de l’Alternate Install d’Ubuntu et choisir l’option LVM+Crypt lors de l’installation à partir du disque USB.

  10. Tristan dit :

    Woot ! Korben roxx pour le coup !

  11. Trak dit :

    @Chiffrer /home ça suffit

    Les logs dans /var/log, les fichiers imprimés dans /var/spool, les fichiers temporaires dans /tmp, ça laisse des traces…

  12. Trust dit :

    Merci pour ce tuto que j’attendais avec impatience :)

    question : tu dis qu’au démarrage ça demande un mot de passe. Bon , mais ensuite il faut taper son mot de passe session ou pas ?

    et pour récupérer les paquets on peut passer par ethernet nan ,au lieu du wifi ?

    @Trak : tu parle d’usb , mais ca doit être possible avec un support cd non ?

  13. dededede4 dit :

    Le seul programme qui peut laisser des fichiers « compromettant » dans /tmp, c’est flash qui y laisse des trucs comme les vidéos.
    Mais ils ne restent pas longtemps, normalement quand tu fermes la page web, les vidéos sont supprimé.

    Et puis les fichiers de logs dans /var/log c’est surtout les serveurs.
    Par exemple, les logs de tes conversation chat sont dans ton /home, donc là aussi, pas de problème.

  14. Black Pearl dit :

    Et encore une bonne chose de faite ! Franchement, Tuto super bien expliqué pour les non linuxiens, et rien à redire.

    Continue ! ça fait du bien de pouvoir lire des vraies articles ! :D

    All is alright mon cher Korben !

  15. Trak dit :

    @Trust: Oui bien sûr. Mais ça fait une éternité que je ne grave plus de CDs…

  16. moi dit :

    /tmp et /var/spool peuvent être montés en tmpfs …

  17. Woot dit :

    Pour le truc de la partition /boot, pense aussi à chiffrer le MBR et le boot loader ;) Ha on me dit que ce n’est pas possible. Il suffit en fait de placer le boot loader et la partion boot sur une clé USB, de booter sur la clé exclusivement et de l’enlever après le chargement du kernel+initrd et l’ouverture des volumes chiffrés.

    On peut même placer la clé de chiffrement sur la clé USB, ce qui évite de la taper à chaque boot. Il faut aussi penser à modifier le initrd pour qu’il attende que la clé soit enlevée pour continuer à booter, sinon on finit par oublier de le faire et ça sert plus à rien.

    @dededede4: Ce qu’il dit c’est que si la partition root / n’est pas chiffrée, tu peux la piéger : Y placer un keylogger par exemple, ce qui permet de récupérer le mot de passe de /home pendant que tu le tapes. Donc si tu chiffres pas / ça sert à rien de chiffrer /home. Et sans parler les informations potentiellement sensibles qui se trouvent dans / (logs, mails, etc..).

  18. meik dit :

    “The two most important partitions to encrypt are: the home partition, where your private data resides, and the swap partition, where sensitive data might be stored temporarily during operation. Of course, nothing prevents you from encrypting any other partitions that might be of interest. For example /var where database servers, mail servers or print servers store their data, or /tmp which is used by various programs to store potentially interesting temporary files. Some people may even want to encrypt their whole system. The only exception is the /boot partition which must remain unencrypted, because currently there is no way to load the kernel from an encrypted partition.”

    Trouvé sur: http://d-i.alioth.debian.org/manual/en.i386/ch06s03.html
    A moins bien sûr que les choses aient changé entre temps … (je vous laisse deviner par où il est possible potentiellement de contourner le chiffrement, si cette citation est toujours d’actualité)

  19. MJack dit :

    @Woot: +1, pas mieux.

  20. FireTrap115 dit :

    Ouais…Pas aussi “évident” cet exercice qu’avec le tuto pour Windows ! Mais bon, je renâcle un peu peu là : suis pas assez Linuxien pour trouver ça fastoche. Bel exercice ce tuto, Korben. Thx

  21. dededede4 dit :

    @Woot
    Pour faire ça, il faut avoir le contact physique, l’installer, puis le rendre.

    Puisque l’on y est, même si je chiffre le boot loader et le MBR et le /, il suffit que quelqu’un me prenne le disque dur, le remplace par un autre disque dur avec un « faut » ubuntu avec le keyloggeur qui me demande le mot de mot de passe, et l’envoie par mail au voleur.

    Hey oui, c’est du phishing d’OS. :D

    Ou même un keyloggeur dans le clavier, hein.

  22. Woot dit :

    @moi: et /var/log ? (je mettrais pas /var/log en tmpfs, ni /var/spool). En plus de ça tu peux en oublier (exemple: /var/log; tu l’as oublié). À rapprocher de whitelist vs blacklist. Et il y a des systèmes qui écrivent plusieurs Go tous les jours à ces emplacements (ça va coûter cher en mémoire).

  23. Pierre dit :

    @Korben, à tout hasard, ce message ne serait-il pas à prendre au pied de la lettre ?

    cryptsetup: lvm device name (ubuntu) does not contain a dash

    “ubuntu” ne contient pas de tiret, peut-être que si tu l’avais nommé “systeme-ubuntu” il n’aurait rien dit ?

  24. MJack dit :

    @dededede4: D’où l’intérêt, comme le disait très justement Woot, d’avoir le /boot sur une clé USB que tu gardes avec toi.
    On peut pas te falsifier le système sans avoir la clé.

    Après le problème du keylogger matériel est réellement présent. Le risque est très fortement réduit avec un ordinateur portable (qui est bien la cible principale du chiffrement full), mais existe. Tu fais bien de le rappeler.

  25. Woot dit :

    @FireTrap115: Il y a des distributions où c’est beaucoup plus simple. Je me rappel l’avoir fait sur Debian pendant l’installation plus simplement qu’avec TrueCrypt sur Windows.

    @dededede4: “Pour faire ça, il faut avoir le contact physique, l’installer, puis le rendre.”. C’est exactement de ça que le chiffrement d’une partition te protège. Si tu penses que c’est impossible, pourquoi chiffrer /home ?

    @dededede4: Puisque tu bootes sur ta clé USB, cette parade ne fonctionnera pas. Rien ne sera executé à partir du disque dur avant que tu l’ais déchiffré. Pour le déchiffrer il faut qu’il ait été chiffré avec la même clé. Si l’attaquant avait déjà la clé de déchiffrement ..

    @dededede4: “Ou même un keyloggeur dans le clavier, hein.” Là oui.

  26. Gaetan dit :

    @Korben : Ton erreur est dû au fait qu’il manque un tiret dans le nom du VG comme le disait Pierre.

    J’avais déjà eu le problème sur plusieurs ordinateurs linux chiffrés, j’ai réussie à trouver la solution uniquement dans le code.

    C’est un bug dans le système qui cherche obligatoirement un tiret, allez savoir pourquoi

  27. Korben dit :

    Content que ça vous plaise ! en tout cas, vous semblez avoir lancé un débat sur l’utilité ou pas de chiffrer tout ou une partie. C’est sympa de lire les avis des uns et des autres.
    @Pierre: Effectivement, c’est possible… je vais voir si je peux changer qqchose qqlepart pour régler ça

  28. Korben dit :

    @Gaetan: ça l’empeche pas de démarrer, c’est le principal :)

  29. dededede4 dit :

    Pour le moment rien n’empêche de remplacer le disque dur pour faire un « phising d’OS » ou mettre un keyloggeur dans le clavier.

  30. MJack dit :

    @Gaetan: Non non, c’est pas un bug, mais une fonctionnalité. Un peu conne à mon sens, mais il doit bien y avoir une raison.

    En fait le nommage des volumes logiques devrait se faire “nom de groupe”-“nom de volume” (sans les guillemets). Ce qui explique la recherche du tiret.
    C’est une convention de nommage

    @dededede4: c’est bien ce que je reproche à ce tuto. C’est un chiffrement complet de disque qui n’est pas complet…

  31. Black Eco dit :

    Simple question, comment faire pour chiffrer tout son PC lorsqu’on est en Dual-Boot Windows/Ubuntu?

  32. Avish dit :

    @Korben:

    Je suis désolé mais jusqu’a réellement preuve du contraire donc benchmark ou autre les tests mon démontré qu’il y a avait bien ralentissement même si suivant la machine c’est pas grand chose il y a bien ralentissement.

    et c’est pas pour être méchant mais bon crypter pour crypter c’est vraiment toujours moyen si c’est pour perdre les données après vu que tout le monde comme moi n’as aucune donnée réellement confidentiel à craquer et que tout ou pratiquement à par les photos de vacances se retrouve sur le net.

  33. Sith dit :

    il reste un problème de sécurité, vu que le boot n’est pas crypté (et ne peut pas l’être), même si on met le boot sur une clé USB(il ne faut jamais se séparer de la clé!!).

    En modifiant l’image du noyaux qui se trouve dans /boot on peut créer des mot de passe (LVM permet d’avoir jusqu’a 8 passphrase) pour le cryptage en même temps que le système déverrouille les partitions (c’est un peu compliqué, il faut trifouiller un peu dans le noyaux et le recompiler mais ça se fait!!).

    Résultat, quand l’utilisateur, démarre son PC, et met les mot de passes on crée un nouveau passphrase vide!! Le tour est joué suffit ensuite d’aller sur la machine, et juste laisser les champs vide les partitions sont décrypté… reste plus qu’à passer root(très facile sous linux…)

    Bon faut quand même réussir à prendre la clé et la rendre a son propriétaire sans qu’il ne s’en compte (ou juste accéder à la machine si le boot est sur le DD)!! Bref vous pouvez dormir tranquille sauf si vous vivez avec votre pire ennemie, mouhahaha!! (Vos donner serons protéger si on vous vole votre PC dans la rue)

    PS si vous êtes intéresser je doit avoir les scripts qui vont bien quelques part, avec toutes les commandes pour décompiler recompiler le noyaux…Enfin c’est à titre purement éducatif évidemment.

  34. kasi dit :

    J’ai 2 remarques :
    1) dans le tuto proposé, je ne vois pas le home chiffré, il ne l’ai pas ou j’ai loupé un truc ?

    2) cool j’ai mon disque dur chiffré, mon pc est HS et je monte le disque dur sur un autre pc pour récupérer des données, comment je fais pour accéder aux données vu qu’elles sont chiffrées ?

  35. Sith dit :

    @kasi très facile de récupérer les données (si t’a la passphrase biensur) suffit de mettre le disque sur une autre machine(linux) d’installer si besoins le paquet crypt-setup ensuite quand linux détecte une partition crypté il te demandera la passphrase pour pouvoir monter la(les) partition(s) si il le propose pas tu peut le faire en ligne de commande mais la faut chercher je m’en rappels pas de tête et on les trouve sur le net…

  36. Korben dit :

    @Avish: ouais, enfin à vu d’oeil ça se sent vraiment pas…
    @kasi: oui car je chiffre tout (/ la racine) donc le /home est dedans et chiffré aussi
    @kasi: faut remettre en place un grub avec LVM

  37. Tea-bo dit :

    ce tuto va me rendre service :) merci

  38. kasi dit :

    @Korben: Donc le home est sur la même “partition” que le /, je veux dire en cas de formatage de / on perd également le home ?

  39. Korben dit :

    @kasi: oui mais rien ne t’empêche de créer une partition supplémentaire pour le /home en gardant le même principe… Moi je m’en fiche, je l’ai fais sur mon netbook et du coup, je n’ai pas fait ça proprement effectivement

  40. maeln dit :

    Ma paranoïa et moi te remercions beaucoup korben :D .

  41. Maniatux dit :

    Korben, tu aimes bien te compliquer la vie.

    A l’installation il suffit de demander une partition LVM chiffrée et tout sera fait automatiquement. Je ne sais pas si l’outil graphique de Ubuntu le fait, mais c’est surement présent sur d’autres distributions.

    Sinon tu aurais pu décrire la procédure de netinstall, cela aurait été bien plus simple que tes bidouilles.

  42. 3.1415926535897932384626 dit :

    Une partie de tlmvpsp ?

    tcpdump -i eth0 -vv -A -s 0 dst or src *.france2.fr and port 80 | grep ‘\(ANSW_LBL\|GOOD_ANSW_CASH\)’

    Easy

    3.1415926535897932384626

  43. Buntuking dit :

    Les CD “alternate” d’Ubuntu ,ne servent-ils pas à cela ?

    Crypter le disque dur dès l’installation

    ubuntu-10.04-alternate-i386.iso
    http://releases.ubuntu.com/lucid/

    Step-by-step installation tutorial with screenshots!

    Data encryption is one of the best methods to protect your sensitive files, especially if you own a laptop. Unfortunately, on the Ubuntu operating system, it’s only available in the text mode installer. But that’s why this guide is here, to help you install a fully encrypted Ubuntu OS on your computer.
    The whole process is completely safe and it is recommended to be used by anyone out there who wants to protect his/her sensitive data. To break it down to you: No more living in fear! Your data will NOT be stolen anymore!

    http://news.softpedia.com/news/Encrypted-Ubuntu-8-04-85271.shtml

  44. Rickey dit :

    @3.1415926535897932384626: xz” heu… tu peux développer stp (et pas en c++ ou autre…)? j’ai pas pigé où tu veux en venir… 0_ô

  45. 3.1415926535897932384626 dit :

    @Rickey

    C’est une commande linux , à entrer dans le terminal quand tu joues.
    Et apres obsersves …

  46. 3.1415926535897932384626 dit :

    @Rickey

    C’est une commande Linux , à entrer dans le terminal quand tu joues.
    Et après observes …

  47. snes-nostageek dit :

    Korben > Je comprend pas ça fait deux fois que tu dis que c’est pas possible de crypter avec Truecrypt sous Linux !

    Truecrypt est multiplateforme et libre pourquoi ce ne serait pas possible sous Tu-Tux ? oO

    –> http://www.truecrypt.org/

  48. Millman dit :

    Mettre la partition /boot sur une clé usb que tu porte toujours autour du coup me semble le moyen plus sécurisé de protéger tes données.

    Mais il faut pas oublier de vider complètement la ram après l’arrêt de la machine qui peut encore contenir des informations même si le pc a été arrêté depuis une heure.

  49. Korben dit :

    @snes-nostageek: la partition système c’est pas possible… Tu peux chiffrer sous linux des partoches classiques mais pas des partoches bootables. Fais le test, tu vas voir

  50. Mjack dit :

    @snes-nostageek: puisque tu donnes le lien, jettes-y un oeil.

    OS supportés au chiffrement

    Truecrypt fait le chiffrement d’OS pour Windows 7, Vista, XP, Server 2008 et Server 2003, en 32 et 64bits. Et certains niveaux de SP seulement.

  51. Oros dit :

    Hey bien c’est beaucoup plus simple avec une Debian d’origine. La possibilité de chiffrer le disque système est disponible de base lors de l’installation.

  52. GNU dit :

    @Woot: Va installer un keylogger sur un laptop linux bien configuré et avec un PWD bios non resetable…

    @Millman: +1

  53. rodskin dit :

    Mopi je veux bien savoir comment séparer le /boot sur une clef usb et lui donner la phrase magique pour pas à avoir à la taper tout le temps.
    Si quelqu’un se sent de faire un tuto sur cette manière, je suis super preneur

  54. Shenron dit :

    Salut,

    Est ce que le fait de crypter le système va jouer sur ses performances?

  55. MJack dit :

    @rodskin: Il y a un début de fil sur le forum : Chiffrement complet de l’OS

    Ici le lien que j’avais fourni à Korben à l’origine : Ubuntu 10.04 Full Disk Encryption with USB key Authentication.

    Dans ce tutoriel il y a une clé de chiffrement sur la clé USB + une passphrase. A mon sens c’est le meilleur choix pour la sécu.
    Reste encore à investiguer la “faille” proposée par Sith.

    @Shenron: OUI, ça influe sur les performances comme déjà dis par plusieurs ici. Dans une utilisation basique tu ne vois pas la différence si tu prends un algo performant comme AES en plain. Un peu à relativiser avec du Serpent en essiv, toutefois.

    Par contre sur des grosses opérations d’accès disque la différence est flagrante. Ma dernière install from scratch d’une machine virtuelle Vista a pris 2 fois plus de temps que sur une machine non chiffrée, sur mon modeste PC portable. Voila, c’est dit.
    Après si t’as un proc avec les instructions AES et que tu prends cet algo, ça doit moins se voir. Surtout si tu patch pour utiliser les 6 cores de ta nouvelle machine de guerre.

    Alors impact ou pas ? Ca dépends….

  56. rodskin dit :

    @MJack: Merci, je regardfe ca de-suite ^^
    Je me demande si on peut utiliser le même système pour mes disques durs RAID de freeNas… :D

  57. logicos dit :

    Si vous faites des choses qui ont besoin d’être cryptées pour être protégées: peut être ne devriez-vous pas les faire ! :))

    (pour les trolls: j’ai paraphrasé un dg de google a propos de la vie privée…)

  58. snes-nostageek dit :

    @Korben: @Mjack: Ok, Merci pour les précisions.

  59. Shenron dit :

    @MJack: merci pour ton explication

  60. Sebdraven dit :

    Pour info, Denis Bodor a dans un linux mag de cette année décrit comment chiffrer une partition système (comme tu viens de le faire @Korben) et coupler le tout a un systeme de carte à puce.
    Et sinon un petit article sympa d’un blog que je suis qui décrit Truecrypt et consort avec les attaques possibles :)

    http://exploitability.blogspot.com/2009/08/chiffrement-de-disques.html

  61. 16aR dit :

    Comme dit, solution avec tout chiffré = clé usb/carte SD pour booter (avec soit la clé de déchiffrement stockée sur la même clé usb/carte SD, soit a part)
    exemple :
    * clé de boot insérée + clé de chiffrement pas insérée : boot avec demande de password
    * clé de boot insérée + clé de chiffrement insérée : boot automatique
    * clé de boot pas insérée : pas de boot

    L’interet du disque completement chiffrée est que la personne qui va récupérer le disque ne saura même pas comment c’est partitionné. Bref, le déchiffrement sera plus compliqué. Si le MBR indique des offsets de partitions, ca permet de reduire le nombre de Go a traiter pour déchifffrer.

    Et pour faire dans le vicieux :
    * Installer un windows blindé de trojan dont on a le controle. Rajouter des photos et autres conneries pour faire style que c’est utilisé.
    * Installer linux sur le reste de la partition, mais sans installer grub sur le disque : le grub sera installé sur la clé usb de boot.

    Si le PC est booté sans clé, il ira sur windows, comme si de rien n’était. Si c’est suite a un vol, on peut récupérer des informations sur le voleur grace aux trojans. Si il est booté avec clé de boot, il faut le mot de passe (ou la clé de chiffrement) pour booter sur le linux “pseudo caché”.
    En gros, c’est pratique contre le vol (par des non experts), mais le chiffrement sera plus facile a detecter/casser qu’en cas de partition entierement chiffrée).

    Bref moi je cherche une solution plutot fiable basé sur du dm-crypt avec déni possible. Mais a priori ca n’existe pas sur dm-crypt. Y’aurait que le projet d’étude de StegFS qui pourrait correspondre…

  62. zebul666 dit :

    A noter qu’il n’est pas obligatoire d’utiliser LVM pour crypter avec cryptsetup/dm-crypt.

    Mais dans ce cas il faudra un mot de passe par partition chiffrée.

    Moi je ne crypte que mon /home sans LVM, et la swap avec un mot de passe generé aléatoirement

    aussi, utliser LVM, c’est le plus sûr moyen pour rendre illible toute partition non chifrée depuis Windows; si besoin est.

  63. Ori dit :

    Petit bémol pour moi sur un point dans le tuto; le fait que ce soit transparent. Tout à fait d’accord sur une machine relativement récente; mais aimant testé des petits configs pour voir concrètement avec des limitations ce que donne tel ou tel logiciel, je peux te dire qu’une partition chiffrée avec peu de ram, ça peut te plomber un pc et bien ralentir ce qu’il se passe, et d’un point de vue benchmark pure (vu que c’est ce qu’on aime voir dans les cartes graphiques, configs ou autres) il y a de toute façon bien sûr une perte. La précision pour les petites configs ou certains types d’utilisateurs a son importance et devrait être mise au cas où.

  64. no|disc dit :

    salut, il me semble que stoned bootkit (http://www.stoned-vienna.com/) est capable de faire sauter le cryptage des partitions.. me trompj-e?

  65. MJack dit :

    @no|disc: Il se met dans le MBR à la place du chargeur Truecrypt, et capture le mot de passe de déchiffrement tapé par l’utilisateur. Ca implique que l’attaquant a par 2 fois accès physique à la machine à l’insu de l’utilisateur légitime.

    Comme dit plus haut il y a 2 alternatives :
    1) Le /boot sur une clé USB qui reste au porteur ;
    2) Un démarrage suivi par TPM, qui reste à développer.

  66. K. dit :

    je conseil plutot un passe au dessus de 16 charactère.

    8 charactere vous pouvez les brute forcer, 10 -12 ( voir 14 ) c’est encore possible pour l’état.

    Imaginez les dégats avec du processeur quantique qui arrive … ( le algo a la con d’internet ne vont pas résister ).

  67. Serianox dit :

    @Korben: Il existe un patch de Grub2 pour ajouter le support de Luks; Avec un peu de bidouille, il est possible d’obtenir la totalité d’un disque chiffré, excepté le premier secteur pour contenir le Grub core. ;)
    @MJack: pour cela, tu peux utiliser BitLocker ou Trusted Grub :)

  68. mart dit :

    J’ai quelques questions pour voir si j’ai bien compris :

    si j’ai un multi-boot avec plusieurs distributions (disons toutes des linux parce qu’on est entre gens civilisés), je dois faire une partition boot pour chaque système et pas juste celle sur laquelle grub est installé ?

    dans ce cas ci, c’est tout sda2 qui est chiffré, sda2 qu’on a subdivisé en plusieurs volumes logiques pour utiliser lvm. Donc si dualboot, on aura 2 /boot, 2 / et une swap ? Et on utilise le même mot de passe pour tout sans problèmes ?

  69. Capucino dit :

    Beau travail Korben. Pour info, Fedora 13, la distrib que j’utilise maintenant, propose de tout crypter (sauf le /boot) lors de l’installation du lived CD. Ainsi pour se logger, il y a 2 mots de passe : L’un pour démarrer le système et l’autre pour démarrer sa session. Ce type de fonctionnalité ne devrait pas tarder à arriver sur Ubuntu.

  70. Philippe dit :

    En cas de plantage du disque … :/

  71. tititoto dit :

    Quelqu’un a éssayer avec Ubuntu 10.10?
    Je galère depuis 2 jours dessus…
    Il met le message : ALERT /dev/mapper/ubuntu-root does not exist
    Et me renvoi a l’invite de commande busybox…
    Ce que je comprends pas c’est que à l’invite de commande je peux monter mon disque sans probleme avec la commande cryptsetup luksOpen /dev/sda2 lvm …
    Si quelqu’un à une idée..

  72. 16aR dit :

    J’ai installé ubuntu 10.10 avec chiffrement, aucun souci de ce coté.

    Regarde du coté de ton /etc/fstab et du coté de ton /etc/crypttab

  73. tititoto dit :

    @16aR
    Ok je vais essayer de regarder ça en détail ce WE.
    Je reviens dés que j’ai trouvé la solution au pb.
    Merci.

  74. tititoto dit :

    Re,
    bon ça y est ça avance…
    Voila ce que je suis obligé de faire pour me dépatouiller :
    une fois que je suis sous busybox suite au message :
    ALERT /dev/mapper/ubuntu-root does not exist
    Je dois monter manuellement ma partition chiffré avec la commande :
    cryptsetup lukdOpen mon_dev_chiff lvm
    puis exit pour sortir de busybox et reprendre le démarrage.
    Je ne comprend pas pk il n’essai pas de monter manuellement la partition chiffrer, en fait il ne me propose jamais l’écran suivant :
    http://pictures.korben.info/2010/07/SDC11419.jpg
    Si quelqu’un à une solution.
    Pour info je suis sous ubuntu 10.10 x64.
    Merci!

  75. tititoto dit :

    Ah oui autre chose…
    Est ce que quelqu’un à le message :
    WARNING: invalid line in /etc/crypttab
    lors de l’appel de la commande update-initramfs -k all -c ??

  76. 16aR dit :

    Si tu as ce message lors du update-initramfs, c’est que ton /etc/crypttab n’est pas bien écrit/complété, normal qu’il ne te demande pas le mot de passe au démarrage car le initramfs n’aura pas bien été updaté avec les informations du /etc/crypttab
    (c’est le initramfs qui se lance au démarrage avant ton noyau linux et c’est lui qui va te demander un mot de passe (ou pas))

  77. tititoto dit :

    Salut 16aR,
    encore merci pour le suivi, en fait j’avais fait des recherches et il semblerait que le bug ai été tracé sur debian (signalé comme traité) http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597584 et il y a pas mal de report de bug pour ubuntu (pour le paquet cryptsetup), pourtant la version du paquet crypsetup d’ubuntu est bien évidement plus récente que celui de debian mis en cause.
    En fait, comme sur le lien debian, même si mon fichier /etc/crypttab est vide (avec ou sans commentaires) ça me met ce message d’erreur.
    Donc du coup je sais pas si c’est parce que j’utilise une version 64 bits (tu utilises quoi comme version d’ubuntu?) et que le bug n’a pas été traité pour ce paquet. Ce qui est bizarre c’est que l’install chiffré “automatique” via l’alternate CD fonctionne (je suppose qu’il doit mettre à jour initramfs de la même façon en utilisant le script update-initramfs…).
    Donc du coup je sèche un peu. Pour l’instant et comme expliqué plus haut, je déchiffre manuellement ma partition et sort de busybox pour que le démarrage se poursuive…
    Il faudrait que je me tappe le script /usr/sbin/update-initramfs “manuellement” et que je voie ou ça coince exactement… Si j’ai la foi et surtout le temps je jetterais un œil!!!

  78. Alca dit :

    Bonjours,
    Je serais intéressé par Sith, afin de modifié le noyaux dans /boot ( le fameux initrd)

    Pour apprendre a le décompiler recompiler afin de pouvoir crypté la saisie du mot de passe pour dévérouiller les sessions chiffré indiqué dans son message du 7 juillet 2010 à 22:55:05 .

    En éspérant qu’il soit toujours d’acutalité. Et je vais monter un formum de discution chez ubuntu. Je reviendrais déposer le lien, pour tout ceux qui voudront bien nous rejoindre! Afin d’aider a la Korben a finalisé son article et nous nous protèger contre les méchants pas beaux! lol

  79. toulinux dit :

    @tititoto
    j’ai le même soucis avec ubuntu 10.10 32 bits

  80. tititoto dit :

    @toulinux
    bon ben ça fait plaisir de savoir que je suis pas le seul! :)
    Perso j’ai un peu laissé tombé les recherches (ma partition est chiffré mais je la déchiffre via la busybox).
    Pas trés pro (pas du tout meme!) mais c’est le seul truc qui marche.
    Je me repencherais sur la question lors de la prochaine version d’ubuntu.
    Par contre si tu trouves une solution je suis preneur!

  81. N2k dit :

    Bonjour,

    Merci Korben pour cette article.
    Concernant le Boot, as-tu pu finir de développer une solution ?

    Cordialement

  82. Bigz dit :

    Bonjour,

    Très intéressant ton article Korben.

    J’ai 2 interrogations suite à ton tutoriel.

    – Est ce qu’il est possible de déchiffrer la partition système sans devoir faire une réinstallation complète ?
    – Est ce qu’il est possible de réaliser ton tutoriel à partir d’un système qui aurait déjà le partitionnement adéquate (/boot + groupe lvm pour / et swap) sans devoir repasser par l’installation d’un système vierge sur la partition nouvellement chiffrée ?

    Cordialement,

  83. wolf dit :

    ce tuto est très interressant car le home seul chiffré ne suffit pas :
    en effet il suffit de faire un photorec sur la partition système et op on trouve votre petite copine à poil :) (certes un format miniature de moins de 10 kio)
    mais quand même, photorec a les moyens de faire dévoiler la vie privée, et tous les technicien sav ou certains voleurs de portables connaissent photorec.

    J’ai bien peur que ce tuto ne soit utilisé par touristes sexuels, les malfrats etc… bref….

    pour l’instant, je n ‘ai pas envie de tout réinstallé, je me contente de mon home chiffré mais à la prochaine installation d’ Ubuntu je ferais cette manip, ne serait ce que par curiosité de sa fonctionnalité.

    la question que je me pose qu ‘ à soulevé DEDEDEDE4 , comment est ce possible que le programme cryptsetup qui se trouvera lui meme stocké sur la partition cryptée puisse commmencer à décrypter si il est lui même crypté ?
    donc il est copié dans le répertoire boot ? pas vu dans le tuto ?

  84. Mandrake dit :

    @ TITITOTO a tu trouvé la solution après plusieurs mois, car j ‘ai exactement le même problème que toi avec Ubuntu 10.10 64 bits

    message d erreur avec initramfs , et j ‘ ai donc contourné ce problème en simplifiant la méthode korben :

    beaucoup plus simple sans complications et fonctionnel : pas besoin de lvm ni des commandes lvcreate ni de faire un chroot

    j ‘expose la méthode ci dessous qui fonctionne :
    shred -v -n 1 /dev/sda2 (remplissage de données aléatoires sur la partition qui doit etre chiffrée : nettoyage pour effacer les anciennes données)
    cryptsetup -c aes-xts-plain -s 512 luksFormat /dev/sda2
    sudo cryptsetup luksOpen /dev/sda2 montageprovisoire
    sudo mkfs.ext4 /dev/mapper/montageprovisoire

    et on enlève ce point montage car on va demander à nautilus de refaire ce montage avec la dénomination par défaut (très important)

    sudo cryptsetup luksClose montageprovisoire

    Il FAUT UTILISER LE POINT DE MONTAGE PAR DÉFAUT qu ‘ Ubuntu lui attribue, ainsi plus de complications par la suite pour le boot et login passphrase et aussi laisser initramfs comme il l’est.

    pour le connaitre il suffit de cliquer sur Raccourcis et cliquer sur la partoche chiffrée en question…mot de passe…., le montage se fait automatiquement.

    ensuite : cd /dev/mapper
    ls

    relever et noter le point de montage qu Ubuntu lui à attribuer (par exemple :udisks-luks-uuid-e35a5174-eb4a-4475-ba3a-6d885faaad84-uid999 )

    et faire l installation d Ubuntu : boot sur sda1 et / sur udisks-luks-uuid-e35a5174-eb4a-4475-ba3a-6d885faaad84-uid999 , concernant la swap il suffira ultérieurement de la désactiver avec gparted la supprimer, chiffrer l emplacement et la recréer en suivant la meme procédure et modifiant fstab et crypttab pour les points de montage.

    quand Ubuntu est installé: il suffit ensuite d’ aller sur le sda2 chiffré et pour ce faire :

    sudo mount /dev/mapper/udisks-luks-uuid-f3327ad9-5c14-4b3b-86fe-ea8127c171c0-uid1000 /mnt (remplacer évidement par le votre)

    maintenant éditer crypttab et adapter avec le point de montage de votre mapper :

    gksu gedit /mnt/etc/crypttab et mettre cette ligne:

    udisks-luks-uuid-e35a5174-eb4a-4475-ba3a-6d885faaad84-uid999 /dev/sda2 none luks

    et voila c est terminé.

  85. Mandrake dit :

    point important à souligner:

    pour que nautilus prenne en compte la partition qui vient d etre chiffré, cela nécessite de redémarrer Ubuntu et dans le menu Raccourcis, celle ci sera donc visible et prête à etre montée automatiquement en la cliquant et saisissant le passphrase.

  86. Rygestop dit :

    Hola i found your blog on Yahoo! and i found it interesting to read. I bookmarked it for further reading. Thank you for sharing. Hopefully this will help me quit smoking

  87. 16aR dit :

    @tititoto : je suis sur ubuntu 10.10 64 bits.
    Ca fait depuis la 9.04 que je fais juste des migration via le systeme de paquet. L’update se fait parfaitement de version en version et continue de copier mon script de déchiffrement dans le initramfs. Pas besoin de refaire la manip à chaque fois.
    Pour ton souci, que contient ton /etc/crypttab ? (désolé pour la réponse très tardive, mais j’ai été pas mal occupé )

    @wolf : cryptsetup est empaqueté dans le initramfs qui est comme son nom l’indique : init ram fs : filesystem d’init placé en ram. En gros, c’est un linux minimal qui permettra de booter le vrai linux. Donc si tu utilise du cryptsetup sur ta partition systeme, il contiendra cryptsetup dans son initramfs, idem si tu utilises LVM2, etc)

  88. Wolf dit :

    16aR

    initramfs, oui j ai compris son utilité, j’ ai fais la manip, et essai concluant.
    au premiere abord, je pensais que la transparence était totale,
    mais au fil du temps j ‘ai constaté que certaines applications perdent leur fluidité, et parfois les ressources CPU s’emballent…et je pense que cela vient du cryptage système puisque cela tourne nickel quand le système n est pas crypté (hormis le home)
    mais bon, cette manip était tout de même intéressante.

  89. 16aR dit :

    Personnellement, j’ai un core2duo de 2007 et a priori, je n’ai pas les instructions aes dans le CPU, du coup, j’avoue, de temps en temps, je me choppe des lags impressionnant et le disque mouline.
    Le CPU n’est pas forcément à blinde, mais je vois que ca WAIT a mort (la valeur WA: en lancant top. Ce qui veut dire que le CPU attends un periphérique pour continuer). C’est surement le disque dur qui doit flusher/synchroniser les buffers qu’il chiffre à la volée. (le processus le plus bloquant a ce moment est kcryptd, le service de crypto du kernel)

  90. Wolf dit :

    Je pense que crypter /home et /var et /tmp est suffisant,
    ou peut placer aussi /tmp dans la mémoire volatile.

  91. tititoto dit :

    @16aR –> désolé j’ai pas mal traîné pour la réponse car ça faisait quelques temps que je n’avais checker les réponses sur cette page…
    Donc voici mon crypttab :

    cat /etc/crypttab
    #
    ubuntu UUID=/dev/mapper/ubuntu-root none luks,retry=1,lvm=ubuntu

    Si je fais un mount :
    mount
    /dev/mapper/ubuntu-root on / type ext4 (rw,errors=remount-ro,commit=0)
    […]

  92. Wof dit :

    il est possible de craquer la cle de chiffrement luks ou truecrypt en faisant une analyse de la ram qui n’ est pas si volatile que ça
    voir cette vidéo:

    http://hackaday.com/2008/02/21/breaking-disk-encryption-with-ram-dumps/

A gagner – Des codes abonnement pour F-Secure Key

bigstock

Aujourd'hui je vous propose de gagner des codes pour des abonnements d'un an pour Key, le gestionnaire de mot de passe de F-Secure.

Si vous êtes adeptes des ouvertures de comptes en ligne à tout-va, ce petit soft peut vous être d'une grande utilité, voir pour ceux qui décideraient de renforcer tous leurs mots de passe en cours d'utilisation.

Avec Key vous pouvez stocker tous vos mots de passe et y accéder facilement, sur n'importe quel appareils, desktop ou mobile et même générer des mots de passe renforcés et uniques chaque fois que vous en avez besoin.

Pratique pour ceux qui ont tendance à aller au plus vite en mettant la date de naissance du dernier né ;)

Pour jouer ça se passe tranquillou avec Kontest:

Toutes les fonctionnalités de Key sont listées ici

Vous avez aimé cet article ? Alors partagez-le avec vos amis en cliquant sur les boutons ci-dessous :

Twitter Facebook Google Plus Linkedin email
Rejoignez les 56993 korbenautes
et réveillez le bidouilleur qui est en vous
abonnez-vous en savoir plus
"Vous aimez bidouiller ?" Oui j'adore l'informatique et la technologie
Suivez Korben Un jour ça vous sauvera la vie.. Ou celle d'un(e) ami(e)
  • Rejoignez les 56993 bidouilleurs de la grande famille des Korbenautes
    «Je considère que votre email est aussi important que le mien.»
    Korben
  • Les Derniers Articles du Blog

  • Inscrivez vous aux bon plans

  •  
  • Site hébergé par
    Agarik Sponsor Korben
  • DANS TON CHAT (BASHFR)

    ShaniaWolf: 'tain, mes pâtes ont fini de cuire mais j'ai trop la flemme d'aller arrêter le feu...
    SpHinX: xD t'abuses, t'as 3 mètres à faire !
    Harpy: mais attends...
    Harpy: tu manges combien de fois par jour ?
    ShaniaWolf: Ben deux, pourquoi ?
    Harpy: tu m'as déjà dit ça pour tes pâtes y'a genre une heure
    ShaniaWolf: Ben alors ça fait une heure que j'ai la flemme d'aller arrêter le feu...

    -- http://danstonchat.com/12247.html
  • Un boitier externe pour booter des ISO à

    gogo sans se prendre la tête

    Il s'agit d'un boitier externe pour disque dur 2,5" fabriqué par la société Zalman, qui a la particularité d'avoir un petit écran de contrôle et qui permet de choisir l'ISO sur laquelle vous souhaitez booter...lire la suite

    Microsoft récupère vos clés de chiffrement.

    Voici comment les en empêcher

    Si vous avez acheté un appareil sous Windows 10 équipé d'une puce qui chiffre par défaut le disque, ne vous pensez pas en sécurité pour autant : La clé de récupération qui vous permet de déchiffrer vos données...lire la suite

    En ce moment dans l'univers "Raspberry Pi"

    Voir tous les articles »