[Linux] Chiffrement avec luks

 

Chiffrement avec luks
Article original Publié le : 03 avril 2021
Mise a jour le :

 

Pour chiffrer un disque interne, externe, clé usb ..

 

I. Installation du paquet nécessaire

$ sudo apt install cryptsetup

 

Utiliser lsblk pour vérifier la présence des devices,
Je veux chiffrer ma clé usb sdb et donc sa partition sdb1

# lsblk
NAME                           MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                              8:0    0 238,5G  0 disk  
├─sda1                           8:1    0   487M  0 part  /boot
└─sda5                           8:5    0   238G  0 part  
  └─sda5_crypt                 253:0    0   238G  0 crypt 
    ├─ubuntu--gnome--vg-root   253:1    0 222,3G  0 lvm   /
    └─ubuntu--gnome--vg-swap_1 253:2    0  15,6G  0 lvm   
      └─cryptswap1             253:3    0  15,6G  0 crypt [SWAP]
sdb                              8:16   1   7,5G  0 disk  
└─sdb1                           8:17   1   7,5G  0 part

 

 

II. Chiffrement et formatage du disque

/!\ Attention l’exécution de la commande ci-dessous effacera la totalité de la partition sdb1

$ sudo  cryptsetup -y -v luksFormat /dev/sdb1
WARNING!
========
Cette action écrasera définitivement les données sur /dev/sdb1.

Are you sure? (Type uppercase yes): YES
Saisissez la phrase secrète pour /dev/sdb1 : 
Vérifiez la phrase secrète : 
Opération réussie.

 

Ouvrir maintenant la partition dans un device mapper ici nommé cle

$ sudo cryptsetup luksOpen /dev/sdb1 cle
Saisissez la phrase secrète pour /dev/sdb1

 

Pour lister les devices mapper

$ ls /dev/mapper/
control cryptswap1 cle sda5_crypt ubuntu--gnome--vg-root ubuntu--gnome--vg-swap_1

 

Préparer le device cle

$ sudo dd if=/dev/zero of=/dev/mapper/cle

 

Formater le système de fichier avec ext4

$ sudo mkfs.ext4 /dev/mapper/cle
mke2fs 1.44.1 (24-Mar-2018)
En train de créer un système de fichiers avec 1953280 4k blocs et 488640 i-noeuds.
UUID de système de fichiers=470b1664-4e41-47b6-a64f-329a9dc69248
Superblocs de secours stockés sur les blocs : 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocation des tables de groupe : complété                            
Écriture des tables d'i-noeuds : complété                            
Création du journal (16384 blocs) : complété
Écriture des superblocs et de l'information de comptabilité du système de
fichiers : complété

 

On peut maintenant monter le device sur le système.

$ sudo mkdir /media/cle_usb
$ sudo mount /dev/mapper/cle /media/cle_usb/

 

Si on re-liste les disques, on trouvera le volume chiffré

lsblk
NAME                           MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                              8:0    0 238,5G  0 disk  
├─sda1                           8:1    0   487M  0 part  /boot
└─sda5                           8:5    0   238G  0 part  
  └─sda5_crypt                 253:0    0   238G  0 crypt 
    ├─ubuntu--gnome--vg-root   253:1    0 222,3G  0 lvm   /
    └─ubuntu--gnome--vg-swap_1 253:2    0  15,6G  0 lvm   
      └─cryptswap1             253:3    0  15,6G  0 crypt [SWAP]
sdb                              8:16   0   7,8G  0 disk  
└─sdb1                           8:17   0   7,8G  0 part  
  └─cle                        253:4    0   7,8G  0 crypt /media/cle_usb

 

 

/!\ Si le device n’est pas renseigné dans le fstab, au prochain branchement il demandera la passphrase pour accéder au contenu

En interface graphique

 

En cli

# cryptsetup luksOpen /dev/sdb1 cle
Saisissez la phrase secrète pour /dev/sdb1 :

 

 

III. Faq

Si l’erreur “Error unlocking: The function ‘bd_crypto_luks_open_blob’ called, but not implemented

Sous Ubuntu il peut manquer la dépendance libblockdev-crypto2
L’installation de ce package et le redémarrage des udisks corrigera l’erreur

$ sudo apt install libblockdev-crypto2
$ sudo systemctl restart udisks2.service

 

 

Si le label du disque n’est explicite, il est possible de le renommé

$ sudo e2label /dev/sdb1 cle_usb

Avant/après

df -h
/dev/sdb1 7,8G 68M 7,7G 1% /media/e80805e4-be4c-4cba-9c43-947f039ac59e
df -h
/dev/sdb1 7,8G 68M 7,7G 1% /media/cle_usb

 

 

IV. Quelques liens

https://github.com/pop-os/pop/issues/163

 

 

No votes yet.
Please wait...

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.