Dans cet article nous allons chiffrer une partition pour qu’en cas de vol du système, les données stockées sur cet espace disque ne soient pas accessibles.
Dans mon cas, je vais chiffrer la dernière partition de mon serveur qui n’est pas formatée. Pour effectuer ce chiffrement Cryptsetup sera utilisé.
Mises à jour et installation de Cryptsetup
Dans un premier temps, faire les mises à jour du système et installer cryptsetup.
#Mises à jour apt update && apt upgrade -y #installation cryptsetup apt install cryptsetup
Attention: Les commandes suivantes doivent être lancées en tant que root. Toutes les données présentes sur le disque seront effacées !
Effectuer la commande suivante pour récupérer le nom du disque / de la partition à chiffrer
lsblk
Création de la partition
Pour créer la partition, récupérer l’UUID du volume en tapant la commande:
blkid
Créer un répertoire à l’endroit où vous souhaitez faire le point de montage. Dans mon cas il se trouvera dans /media et sera nommé VAULT.
mkdir /media/VAULT
Editer ensuite le fichier /etc/fstab pour y insérer la ligne suivante:
# <file system> <mount point> <type> <options> <dump> <pass> UUID=<UUID-VOLUME> /media/VAULT ext4 defaults 0 2
le fichier /etc/fstab est composé de plusieurs colonnes:
- <file system> : le nom de la partition. Ici l’UUID sera utilisé pour plus de précision.
- <mountpoint> : répertoire de la partition principale où sera montée notre partition.
- <type> : indique le système de fichiers en place sur la partition montée.
- <options> : définit les options au montage. Laisser « defaults ».
- <dump> : règle les sauvegardes via dump.
- <pass> : règle la priorité de vérification des erreurs du système de fichier au démarrage. Le « 2 » est utilisé pour les partitions secondaires. Le « 1 » est utilisé pour les partitions principales. Il est d’ailleurs possible de le vérifier dans le fichier fstab. La partition racine (« / ») a une priorité « 1 ».
Préparation de la partition
Lancer la commande suivante qui pemet d’installer le chiffrement.
cryptsetup -y -v luksFormat /dev/nvme0n1p5
- L’option -y permet de vérifier la passphrase en la demandant 2 fois
- -v = verbose, affiche les détails des messages d’erreur
Entrer une passphrase, ne pas oublier de la mémoriser 😉
Ouverture et formatage du volume
Maintenant que le volumé est créé, l’ouvrir et le formater:
#Ouverture du volume cryptsetup luksOpen /dev/nvme0n1p5 VAULT #Pour obtenir le statut de la partition cryptsetup -v status VAULT #formatage en ext4 mkfs.ext4 /dev/mapper/VAULT
Enfin, monter le volume puis vérifier que le montage est bien fait:
#Monter le volume mount /dev/mapper/VAULT /media/VAULT/ #Vérification df -h
Faire un test en créant un fichier dans la partition, la fermer et vérifier son absence dans le répertoire servant au point de montage.
Fermeture du volume
Pour fermer le volume, le démonter avec la commande umount et le clore avec cryptsetup.
#Démonter le volume umount /media/VAULT #Fermer le volume cryptsetup luksClose VAULT
Pour le monter à nouveau, utiliser les commandes vues précédemment et entrer la passphrase:
cryptsetup luksOpen /dev/nvme0n1p5 VAULT mount /dev/mapper/VAULT /media/VAULT/
Dans cet article nous avons vu comment chiffrer une partition et la monter. Les données ne sont pas accessibles par n’importe qui et sont donc en sécurité. Cependant, en cas de formatage du disque elles seront perdues.