A folder with some encrypted Linux documents and a shield with a padlock in the foreground.
Agence web » Actualités du digital » Qu'est-ce que LUKS et comment sécurise-t-il votre système de fichiers Linux ?

Qu'est-ce que LUKS et comment sécurise-t-il votre système de fichiers Linux ?

Principaux points à retenir

  • Linux Unified Key Setup (LUKS) est une spécification de chiffrement de disque pour Linux.
  • LUKS utilise une clé principale pour crypter les données, avec des phrases de passe déverrouillant la clé.
  • LUKS protège les données utilisateur sur les périphériques de stockage, y compris les ordinateurs portables et les disques externes, contre le vol.

Vous avez entendu parler du terme « LUKS » mais vous ne savez pas à quoi il sert ni quel est son rapport avec Linux ? Si vous êtes soucieux de la protection de vos données, il est essentiel que vous ayez installé LUKS. Dans ce guide, je vais vous expliquer comment fonctionne LUKS et comment il vous aide à sécuriser vos données importantes.

Qu'est-ce que LUKS sur Linux ?

Linux Unified Key Setup (ou LUKS en abrégé) est une spécification de chiffrement de disque largement utilisée dans les systèmes Linux. Créée par Clemens Fruhwirth en 2004, elle est conçue pour fournir un mécanisme de chiffrement standardisé à la fois sécurisé et convivial. Elle protège les données en les chiffrant à l'intérieur de partitions de disque physiques et logiques afin que seuls les utilisateurs autorisés puissent accéder au contenu de cette partition chiffrée. Vous pouvez la considérer comme similaire à Windows BitLocker.

LUKS fonctionne au niveau du bloc. Il crypte des partitions ou des disques entiers plutôt que des fichiers individuels. Il utilise des algorithmes de cryptage puissants comme AES (Advanced Encryption Standard). Il utilise l'en-tête de partition pour stocker les informations de configuration nécessaires telles que l'algorithme de cryptage et la taille de la clé. Cet en-tête est ce qui distingue LUKS de dm-crypt. Si l'en-tête est corrompu, vous ne pourrez pas décrypter l'appareil.

Comment fonctionne LUKS

Le chiffrement LUKS crée un conteneur chiffré appelé volume LUKS sur une partition de disque. Il utilise des algorithmes symétriques tels qu'AES pour chiffrer le volume auquel on ne peut accéder qu'à l'aide d'une phrase de passe. Lorsque vous déverrouillez le volume LUKS, il devient accessible comme un périphérique de bloc classique. Vous pouvez donc y lire et y écrire.

LUKS stocke ses métadonnées de chiffrement dans une section spéciale au début de la partition chiffrée appelée en-tête LUKS. Cet en-tête contient des informations critiques telles que le chiffrement et le mode, la fonction de hachage et les emplacements de clé. Le chiffrement réel de la partition est effectué à l'aide d'une clé principale. Cette clé principale est générée de manière aléatoire lors de l'initialisation de la configuration LUKS. Cette clé principale est ce qui chiffre et déchiffre directement les données sur la partition. La phrase de passe ne chiffre pas les données. Au lieu de cela, elle chiffre la clé principale stockée dans les emplacements de clé.

Si vous souhaitez accéder aux données chiffrées, LUKS vous demande de saisir une phrase secrète. Cette phrase secrète est ensuite utilisée pour déchiffrer la clé principale stockée dans l'un des emplacements de clé. Une fois la clé principale déchiffrée, cette clé est à son tour utilisée pour déchiffrer les données de la partition.

Pourquoi devriez-vous utiliser LUKS

La principale raison d'utiliser LUKS est de protéger les données des utilisateurs. LUKS peut chiffrer des périphériques de blocs entiers, ce qui le rend adapté à la protection des données des appareils mobiles tels que les disques durs d'ordinateurs portables et les supports amovibles. Étant donné que le contenu des périphériques de blocs chiffrés est arbitraire, il est également adapté au chiffrement des périphériques d'échange.

LUKS est couramment utilisé pour le chiffrement intégral du disque. Vous pouvez chiffrer la partition racine de votre système Linux pendant l'installation afin que personne sans autorisation ne puisse accéder aux fichiers système. Vous pouvez également chiffrer la partition de démarrage du système Linux pour vous protéger contre toute altération du noyau Linux. Si vous utilisez systemd, vous pouvez également chiffrer des répertoires personnels individuels.

LUKS prend en charge plusieurs emplacements de clés, ce qui vous permet d'attribuer différentes phrases de passe pour la même partition chiffrée. Ainsi, si vous disposez d'une configuration multi-utilisateur, chaque utilisateur peut disposer d'une clé de déchiffrement individuelle sans avoir à partager une phrase de passe commune. De plus, si une phrase de passe est oubliée, d'autres peuvent être utilisées pour accéder aux données.

Il protège votre appareil contre le vol physique. Même si votre ordinateur portable, votre disque dur externe ou d'autres périphériques de stockage sont volés, les données qu'ils contiennent restent inaccessibles sans la clé de déchiffrement correcte.

Il y a quelques pièges

L'un des plus gros inconvénients de l'utilisation du chiffrement intégral du disque réside dans les problèmes de performances. Le déchiffrement des données à la volée nécessite une puissance de traitement, ce qui entraîne des vitesses de lecture/écriture plus lentes. Si vous disposez d'un matériel moderne, la différence peut parfois être négligeable, mais elle n'est pas totalement exclue. Vous constaterez également un temps de démarrage plus long, car le système doit déchiffrer l'intégralité du disque avant de charger complètement le système d'exploitation. Vous pouvez en savoir plus à ce sujet dans ce fil de discussion Reddit et ce test de référence.

Il est également important de noter que le chiffrement de disque LUKS ne protège vos données que lorsque votre système est éteint. Si votre ordinateur portable est volé alors qu'il est allumé et que le lecteur est déjà déchiffré, le voleur pourrait potentiellement accéder à vos données sans avoir besoin de contourner le chiffrement. Une fois déchiffré, n'importe qui a accès aux fichiers de ce lecteur.

La configuration du chiffrement LUKS n'est pas un processus simple sur les systèmes Linux préinstallés. Elle nécessite une sauvegarde complète afin de pouvoir restaurer les données importantes en cas de perte. En parlant de sauvegardes, les sauvegardes chiffrées nécessitent une manipulation prudente. Si vous perdez votre clé de déchiffrement, vous ne pourrez peut-être jamais récupérer vos données.

Comment configurer le cryptage LUKS

La manière la plus simple de configurer le chiffrement intégral du disque LUKS est lors de la première installation de Linux. Laissez-moi vous montrer comment procéder sur Ubuntu 24.04.

Pendant l'installation, vous devriez voir une invite de configuration du disque. Appuyez sur « Fonctionnalités avancées ».

Dans la liste, sélectionnez « Utiliser LVM et le chiffrement ». Appuyez sur « OK ».

Appuyez sur le bouton « Suivant » pour continuer. Sur l'écran suivant, il vous sera demandé de créer une phrase secrète. Saisissez une phrase secrète sécurisée dans les deux champs et appuyez sur « Suivant ».

Continuez ensuite avec le reste de l'installation.

Si vous ne souhaitez pas réinstaller Linux, il existe un utilitaire appelé cryptsetup pour configurer des systèmes de fichiers chiffrés. Vous aurez peut-être besoin des privilèges root pour exécuter certaines commandes. Vous devrez d'abord l'installer. Sur Debian/Ubuntu, exécutez :

sudo apt install cryptsetup

Répertoriez vos partitions disponibles à l’aide des commandes suivantes :

sudo fdisk -l 

blkid

Recherchez la partition que vous souhaitez crypter dans la liste.

Ensuite, utilisez l’utilitaire cryptsetup pour crypter la partition choisie de la manière suivante :

cryptsetup -y -v luksFormat /path/to/partition 

cryptsetup -y -v luksFormat /dev/xvdc # For example

Il vous sera demandé de confirmer que vous souhaitez écraser la partition, puis de saisir une phrase secrète. Vous devez enregistrer et mémoriser la phrase secrète, car elle n'est pas récupérable.

La commande ci-dessus effacera toutes les données de la partition. Assurez-vous de sauvegarder toutes les données importantes.

Après cela, créez un mappage logique en exécutant :

cryptsetup luksOpen /path/to/partition partition_name 

cryptsetup luksOpen /dev/xvdc backup_partition # For example

Saisissez la phrase secrète lorsque vous y êtes invité. Cela initialisera le volume. Pour voir les détails du mappage, exécutez :

ls -l /dev/mapper/backup_partition

Pour voir l'état du mappage, utilisez :

cryptsetup -v status backup_partition

Ensuite, utilisez cryptsetup pour voir si l’appareil a été correctement formaté pour le cryptage.

cryptsetup luksDump /path/to/partition 

cryptsetup luksDump /dev/xvdc # For example

Utilisez la commande dd pour allouer des données de bloc avec des zéros à la partition chiffrée LUKS :

dd if=/dev/zero of=/dev/mapper/backup_partition

Une fois terminé, formatez la nouvelle partition avec cette commande :

mkfs.ext4 /dev/mapper/backup_partition

J'ai utilisé ici le système de fichiers ext4. Vous pouvez utiliser celui que vous préférez. Enfin, montez le nouveau système de fichiers.

mkdir /backup2
mount /dev/mapper/backup_partition /backup_partition
df -H
cd /backup_partition
ls -l

Si vous souhaitez modifier la phrase secrète de la partition chiffrée, exécutez les commandes ci-dessous :

cryptsetup luksDump /dev/xvdc # Using /dev/xvdc as an example 

​​​​​​​cryptsetup luksAddKey /dev/xvdc # Using /dev/xvdc as an example

​​Vous serez invité à saisir une nouvelle phrase secrète, puis à la confirmer.


En mettant en œuvre LUKS, vous pouvez garantir une meilleure sécurité de vos données confidentielles. Il convient également aux appareils utilisés par plusieurs utilisateurs. Vous pouvez prendre de nombreuses autres mesures pour renforcer la sécurité de votre appareil Linux.

★★★★★