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
1 |
$ 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
1 |
# lsblk |
1 2 3 4 5 6 7 8 9 10 |
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
1 |
$ sudo cryptsetup -y -v luksFormat /dev/sdb1 |
1 2 3 4 5 6 7 8 |
WARNING! ======== Cette action écrasera définitivement les données sur /dev/sdb1. Are you sure? (Type uppercase yes): <span style="color: #ff0000;">YES</span> 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
1 |
$ sudo cryptsetup luksOpen /dev/sdb1 <strong>cle</strong> |
1 |
Saisissez la phrase secrète pour /dev/sdb1 |
Pour lister les devices mapper
1 |
$ ls /dev/mapper/ |
1 |
control cryptswap1 <strong>cle</strong> sda5_crypt ubuntu--gnome--vg-root ubuntu--gnome--vg-swap_1 |
Préparer le device cle
1 |
<del>$ sudo dd if=/dev/zero of=/dev/mapper/cle</del> |
Formater le système de fichier avec ext4
1 |
$ sudo mkfs.ext4 /dev/mapper/cle |
1 2 3 4 5 6 7 8 9 10 11 |
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.
1 |
$ sudo mkdir /media/cle_usb |
1 |
$ sudo mount /dev/mapper/cle /media/cle_usb/ |
Si on re-liste les disques, on trouvera le volume chiffré
1 2 3 4 5 6 7 8 9 10 11 12 |
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
1 |
# cryptsetup luksOpen /dev/sdb1 cle |
1 |
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
1 |
$ sudo apt install libblockdev-crypto2 |
1 |
$ sudo systemctl restart udisks2.service |
Si le label du disque n’est explicite, il est possible de le renommé
1 |
$ sudo e2label /dev/sdb1 cle_usb |
Avant/après
1 |
df -h |
1 |
/dev/sdb1 7,8G 68M 7,7G 1% /media/e80805e4-be4c-4cba-9c43-947f039ac59e |
1 |
df -h |
1 |
/dev/sdb1 7,8G 68M 7,7G 1% /media/cle_usb |
IV. Quelques liens
https://github.com/pop-os/pop/issues/163