Image

Base de connaissances → Montage automatique du fichier Luks crypté

[Serveurs virtuels]
Date de publication: 20.01.2024

Dans l'article Création d'un disque chiffré sur VDS Linux, nous décrit comment créer un fichier crypté et le monter en tant que disque. Dans cet exemple, pour nous connecter, nous saisissons à chaque fois un mot de passe et après avoir travaillé avec des fichiers, nous le désactivons. Cette méthode de travail offre un haut niveau de sécurité lorsque vous travaillez avec des données.

Par contre, le mot de passe que nous saisissons à chaque fois peut être intercepté si toutes les actions sont enregistrées sur le PC à partir duquel le mot de passe est saisi. (enregistreur de frappe installé)

Dans cet exemple, nous allons vous montrer comment monter automatiquement un fichier crypté et monter le disque à chaque démarrage du serveur, à l'aide d'un fichier de clé.

1. Créez un fichier clé

dd if=/dev/urandom of=/root/random_data_keyfile1 bs=1024 count=4

1.1 Attribuons des droits uniquement à root

chmod 0400 /root/random_data_keyfile1

1.2 Ajouter un fichier clé à notre fichier crypté

cryptsetup luksAddKey /root/crypt-drive /root/random_data_keyfile1

Enter any existing passphrase:

2. Ajouter une configuration pour la connexion automatique

2.1 Fichier /etc/crypttab

# <target name>	<source device>		<key file>	<options>
crypto-my /root/crypt-drive /root/random_data_keyfile1 luks,discard

Si vous supprimez le fichier clé et redémarrez le serveur, au démarrage, vous serez invité à saisir le mot de passe du fichier crypté, mais il n'y a pas d'accès au serveur via le réseau à ce stade. Après avoir saisi correctement le mot de passe, le serveur continuera à se charger, y compris les services réseau.

2.1.1 Pour garantir que le serveur continue de démarrer si le fichier de clé est manquant, ajoutez l'option de délai d'attente

# <target name>	<source device>		<key file>	<options>
crypto-my /root/crypt-drive /root/random_data_keyfile1 luks,discard,timeout=30

Maintenant, la saisie d'un mot de passe s'il n'y a pas de fichier clé attendra 30 secondes, après quoi le serveur continuera à se charger et sera accessible sur le réseau.

2.2 Fichier /etc/fstab

...
/dev/mapper/crypto-my /mnt/crypt-volume ext4 defaults 0 0

Terminé, vous pouvez redémarrer le serveur et vérifier.

df -h

Filesystem             Size  Used Avail Use% Mounted on
udev                   962M     0  962M   0% /dev
tmpfs                  197M  504K  197M   1% /run
/dev/sda1               62G  2.7G   56G   5% /
tmpfs                  984M     0  984M   0% /dev/shm
tmpfs                  5.0M     0  5.0M   0% /run/lock
/dev/mapper/crypto-my  974M   72K  908M   1% /mnt/crypt-volume
tmpfs                  197M     0  197M   0% /run/user/0

Cette méthode a son inconvénient, puisque lorsque vous aurez accès physiquement au serveur, il sera possible de réinitialiser le mot de passe root, et comme le fichier clé est stocké sur le serveur, vous pourrez accéder aux données dans la partition cryptée.





Aucun commentaire pour l'instant