Comment monter un disque chiffré avec BitLocker sous Linux ?

I. Présentation

Dans ce tutoriel, nous allons voir comment monter un disque chiffré avec BitLocker sous Linux à l'aide de l'outil Dislocker. Cette manipulation permet également de déverrouiller une clé USB chiffrée avec BitLocker.

Lorsque l'on chiffre une clé USB ou un disque dur externe avec BitLocker To Go, on peut y accéder facilement à partir d'une machine Windows. En effet, lorsque l'on connecte le périphérique à son PC, Windows affiche une notification afin de demander la clé de déverrouillage. Facile. Par contre, sous Linux, c'est un peu différent, car il faut s'appuyer sur un utilitaire, en l'occurrence Dislocker, et effectuer quelques manipulations avant de pouvoir accéder au contenu du disque.

Environnement : pour ma part, je vais installer Dislocker sur mon Raspberry Pi qui tourne sur une base de Debian. Une simple clé USB chiffrée avec BitLocker me servira de cobaye.

Si BitLocker est un sujet qui vous intéresse, voici quelques tutoriels BitLocker dans un environnement Windows :

II. Installation de Dislocker

L'installation du paquet Dislocker est très classique, il suffit de mettre à jour le cache des paquets et de lancer l'installation, comme ceci :

sudo apt-get update
sudo apt-get install dislocker

On valide l'installation du paquet et le tour est joué.

III. Utilisation de Dislocker pour monter un périphérique USB chiffré

Maintenant, je vous invite à connecter votre clé USB, votre disque externe (ou interne, mais ça il fallait le faire avant de démarrer) à votre PC. Ensuite, suivez les étapes ci-dessous.

A. Créer les deux points de montage pour Dislocker

Commencez par créer deux points de montage, que l'on appellera "bitlocker" et "bitlockerloop" (vous pouvez donner d'autres noms). Vous comprendrez par la suite pourquoi il faut créer deux points de montage. Ce qui donne :

sudo mkdir /media/bitlocker
sudo mkdir /media/bitlockerloop

B. Repérer le périphérique BitLocker

Une fois que c'est fait, il faut que l'on identifie notre disque sur la machine. Pour cela, exécutez la commande suivante :

sudo fdisk -l

Cette commande va lister l'ensemble des disques et volumes visibles par votre machine. Dans la liste des périphériques, je parviens à repérer ma clé USB et sa partition qui correspond à "/dev/sda1".

C. Déchiffrer le volume BitLocker avec Dislocker

Désormais, nous pouvons déchiffrer le volume sur notre machine Linux à l'aide de Dislocker. Là, je vais spécifier "/dev/sda1" puisque ça correspond à ma clé USB. Ensuite, on spécifie le point de montage "/media/bitlocker". Ce qui donne :

sudo dislocker /dev/sda1 -u /media/bitlocker

Le prompt va afficher "Enter the user password:" et là il ne faut pas indiquer le mot de passe du compte qui exécute la commande via sudo, mais le mot de passe BitLocker qui permet de déverrouiller le volume protégé. Si vous mettez le bon mot de passe et que tout se passe bien, la commande n'affiche pas de retour.

Note : il est possible d'ajouter le mot de passe directement dans la commande Dislocker, mais il sera en clair alors ce n'est pas recommandé. Exemple :

sudo dislocker -r -V /dev/sda1 -uVotreMDP -- /media/bitlocker

Attention : dans la commande ci-dessus, il n'y a pas d'espace entre "-u" et le mot de passe, mais c'est normal.

A partir de là, Dislocker est en mesure de déchiffrer notre volume, mais si l'on regarde dans "/media/bitlocker", on voit seulement un fichier nommé "dislocker-file" qui est un binaire généré par Dislocker. Il joue le rôle de déchiffreur entre le système Linux et notre partition chiffrée avec BitLocker.

D. Monter le volume Bitlocker sur Linux

Il faut s'appuyer sur le fichier "dislocker-file" pour monter notre volume chiffré au sein du second point de montage "/media/bitlockerloop". Cette fois-ci, le montage va être effectué avec la commande classique, à savoir "mount" et il faudra bien spécifier l'option "loop" compte tenu du format très particulier du fichier dislocker-file.

Ce qui donne :

sudo mount -o loop /media/bitlocker/dislocker-file /media/bitlockerloop

À partir de là, on peut accéder au contenu de notre périphérique chiffré avec BitLocker depuis notre machine Linux ! Par exemple, en listant le contenu du répertoire "/media/bitlockerloop", on voit bien le contenu de la clé USB s'afficher :

sudo ls -l /media/bitlockerloop

BitLocker sous Linux

Voilà, votre périphérique protégé par BitLocker est accessible sous Linux ! Nous n'allons pas en rester là, voyons deux trois petites choses supplémentaires...

E. Démonter le volume BitLocker sur Linux

Une fois que vous n'avez plus besoin de ce volume, il faudra le démonter. Pour cela, on va utiliser la commande "umount" et commencer par le point de montage "bitlockerloop" pour ensuite démonter le point de montage "bitlocker", ce qui donne :

sudo umount /media/bitlockerloop
sudo umount /media/bitlocker

C'est bon, vous pouvez déconnecter votre clé USB ou votre disque.

F. Intégrer le montage Dislocker dans /etc/fstab

Grâce au fichier /etc/fstab, on peut automatiser le montage de notre volume protégé par Bitlocker, en s'appuyant sur Dislocker. Editez le fichier :

sudo nano /etc/fstab

Ajoutez la ligne suivante en adaptant les valeurs, notamment le volume cible à monter et le mot de passe de déverrouillage.

/dev/sda1 /media/bitlocker fuse.dislocker user-password=VotreMDP,nofail 0 0

Ensuite, ajoutez une seconde ligne pour monter le volume chiffré au sein du point de montage "/media/bitlockerloop".

/media/bitlocker/dislocker-file /media/bitlockerloop auto nofail 0 0

Sans même redémarrer votre machine, vous pouvez recharger le contenu de fstab avec la commande suivante :

mount -a

Si vous obtenez une erreur, vérifiez les lignes du fichier /etc/fstab et veillez à bien libérer les points de montage au préalable.

G. Créer un script bash pour monter le volume via Dislocker

Si vous souhaitez vous faciliter la vie, sans pour autant intégrer le montage dans fstab, vous pouvez créer un script bash qui reprend les commandes vues précédemment. Par exemple (sans intégrer le mot de passe en clair) :

#!/bin/bash
sudo dislocker /dev/sda1 -u /media/bitlocker
sudo mount -o loop /media/bitlocker/dislocker-file /media/bitlockerloop

Il ne reste plus qu'à enregistrer le script et à lui attribuer les droits d'exécution.

chmod +x /home/pi/dislocker.sh

Enfin, voici le lien vers le GitHub du projet Dislocker où vous pouvez trouver plus d'infos, notamment sur les fichiers "fuse.dislocker" et "dislocker-file".

Amusez-vous bien !

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian Burnel

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

florian has 3369 posts and counting.See all posts by florian

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

 

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.