Recherche de site Web

Comment configurer des systèmes de fichiers cryptés et échanger de l'espace à l'aide de l'outil « Cryptsetup » sous Linux – Partie 3


Un LFCE (abréviation de Linux Foundation Certified Engineer) est formé et possède l'expertise nécessaire pour installer, gérer et dépanner les services réseau dans les systèmes Linux, et est en charge de la conception, mise en œuvre et maintenance continue de l’architecture du système.

Présentation du programme de certification Linux Foundation (LFCE).

L'idée derrière le cryptage est de permettre uniquement à des personnes de confiance d'accéder à vos données sensibles et de les empêcher de tomber entre de mauvaises mains en cas de perte ou de vol de votre machine/disque dur.

En termes simples, une clé est utilisée pour « verrouiller » l'accès à vos informations, afin qu'elles deviennent disponibles lorsque le système est en cours d'exécution et déverrouillé par un utilisateur autorisé. Cela implique que si une personne essaie d'examiner le contenu du disque (en le branchant sur son propre système ou en démarrant la machine avec un LiveCD/DVD/USB), elle ne trouvera que des données illisibles au lieu des fichiers réels.

Dans cet article, nous verrons comment configurer des systèmes de fichiers chiffrés avec dm-crypt (abréviation de Device Mapper et Cryptographic), l'outil de chiffrement standard au niveau du noyau. Veuillez noter que puisque dm-crypt est un outil au niveau bloc, il ne peut être utilisé que pour chiffrer des périphériques complets, des partitions ou des périphériques en boucle (ne fonctionnera pas sur des fichiers ou répertoires normaux).

Préparation d'un lecteur/partition/périphérique de boucle pour le cryptage

Puisque nous effacerons toutes les données présentes dans le lecteur choisi (/dev/sdb), nous devons tout d'abord effectuer une sauvegarde de tous les fichiers importants contenus dans cette partition AVANT aller plus loin.

Effacez toutes les données de /dev/sdb. Nous allons utiliser la commande dd ici, mais vous pouvez également le faire avec d'autres outils tels que shred. Ensuite, nous allons créer une partition sur ce périphérique, /dev/sdb1, en suivant l'explication de la Partie 4 – Créer des partitions et des systèmes de fichiers sous Linux de la série LFCS.

dd if=/dev/urandom of=/dev/sdb bs=4096 
Test de la prise en charge du chiffrement

Avant d'aller plus loin, nous devons nous assurer que notre noyau a été compilé avec le support du chiffrement :

grep -i config_dm_crypt /boot/config-$(uname -r)

Comme indiqué dans l'image ci-dessus, le module du noyau dm-crypt doit être chargé afin de configurer le chiffrement.

Installation de Cryptsetup

Cryptsetup est une interface frontale permettant de créer, de configurer, d'accéder et de gérer des systèmes de fichiers cryptés à l'aide de dm-crypt.

aptitude update && aptitude install cryptsetup 		[On Ubuntu]
yum update && yum install cryptsetup 				[On CentOS] 
zypper refresh && zypper install cryptsetup 			[On openSUSE]

Configuration d'une partition cryptée

Le mode de fonctionnement par défaut de cryptsetup est LUKS (Linux Unified Key Setup), nous allons donc nous y tenir. Nous allons commencer par définir la partition LUKS et la phrase secrète :

cryptsetup -y luksFormat /dev/sdb1

La commande ci-dessus exécute cryptsetup avec les paramètres par défaut, qui peuvent être répertoriés avec :

cryptsetup --version

Si vous souhaitez modifier les paramètres cipher, hachage ou clé, vous pouvez utiliser le –cipher, < Indicateurs b>–hash et –key-size, respectivement, avec les valeurs extraites de /proc/crypto.

Ensuite, nous devons ouvrir la partition LUKS (nous serons invités à saisir la phrase secrète que nous avons saisie précédemment). Si l'authentification réussit, notre partition chiffrée sera disponible dans /dev/mapper avec le nom spécifié :

cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

Maintenant, nous allons formater la partition en ext4.

mkfs.ext4 /dev/mapper/my_encrypted_partition

et créez un point de montage pour monter la partition chiffrée. Enfin, nous souhaiterons peut-être confirmer si l'opération de montage a réussi.

mkdir /mnt/enc
mount /dev/mapper/my_encrypted_partition /mnt/enc
mount | grep partition

Lorsque vous avez fini d'écrire ou de lire sur votre système de fichiers crypté, démontez-le simplement

umount /mnt/enc

et fermez la partition LUKS en utilisant,

cryptesetup luksClose my_encrypted_partition
Test du chiffrement

Enfin, nous vérifierons si notre partition chiffrée est sûre :

1. Ouvrez la partition LUKS

cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

2. Entrez votre phrase secrète

3. Montez la partition

mount /dev/mapper/my_encrypted_partition /mnt/enc

4. Créez un fichier factice à l'intérieur du point de montage.

echo “This is Part 3 of a 12-article series about the LFCE certification” > /mnt/enc/testfile.txt

5. Vérifiez que vous pouvez accéder au fichier que vous venez de créer.

cat /mnt/enc/testfile.txt

6. Démontez le système de fichiers.

umount /mnt/enc

7. Fermez la partition LUKS.

cryptsetup luksClose my_encrypted_partition

8. Essayez de monter la partition en tant que système de fichiers standard. Cela devrait indiquer une erreur.

mount /dev/sdb1 /mnt/enc

Crypter l'espace d'échange pour plus de sécurité

La phrase secrète que vous avez saisie précédemment pour utiliser la partition chiffrée est stockée dans la mémoire RAM lorsqu'elle est ouverte. Si quelqu’un parvient à mettre la main sur cette clé, il pourra décrypter les données. Ceci est particulièrement facile à faire dans le cas d'un ordinateur portable, car pendant la mise en veille prolongée, le contenu de la RAM est conservé sur la partition d'échange.

Pour éviter de laisser une copie de votre clé accessible à un voleur, chiffrez la partition d'échange en suivant ces étapes :

1 Créez une partition à utiliser comme swap avec la taille appropriée (/dev/sdd1 dans notre cas) et chiffrez-la comme expliqué précédemment. Nommez-le simplement « échange » pour plus de commodité.

2.Définissez-le comme swap et activez-le.

mkswap /dev/mapper/swap
swapon /dev/mapper/swap

3. Ensuite, modifiez l'entrée correspondante dans /etc/fstab.

/dev/mapper/swap none        	swap	sw          	0   	0

4. Enfin, modifiez /etc/crypttab et redémarrez.

swap               /dev/sdd1         /dev/urandom swap

Une fois le démarrage du système terminé, vous pouvez vérifier l'état de l'espace d'échange :

cryptsetup status swap

Résumé

Dans cet article, nous avons exploré comment chiffrer une partition et échanger un espace. Avec cette configuration, vos données devraient être considérablement sécurisées. N'hésitez pas à expérimenter et n'hésitez pas à nous revenir si vous avez des questions ou des commentaires. Utilisez simplement le formulaire ci-dessous – nous serons plus qu’heureux d’avoir de vos nouvelles !