meta données pour cette page
Chiffrer ses données personnelles avec Luks
Luks est un système de fichier dont il indexe un block de données dont le contenu est chiffré. Ci-dessous on utilisera l'outil cryptsetup vu qu'il est bien supporté et de mon point de vue, la force de cette technologie réside sur deux points :
- Possible de chiffrer ses données avec sa clé privé.
- Les données sont stocker sous forme de block.
Ainsi, en fonction de la taille du block, il est aisé de déplacer et partager une arborescence de dossiers par exemple.
Installation
apt install cryptsetup
Création du block (container)
fallocate -l 100M container.img
Création de la clé privé et du formatage
openssl req -new -newkey rsa:4096 -sha512 -nodes -out secure.csr -keyout secure.key -subj "/C=FR/ST=Example/L=Example/O=Example/CN=example.org"
Notons que l'on peut faire pareille si l'on créée juste un fichier du type :
echo "ma clé privé" >> secure.key
Si l'on utilise la commande d'openssl, on pourra valider l'authenticité de la clé privé.
Formatons le block :
sudo cryptsetup luksFormat -d secure.key container.img
Sinon, il n'est pas obligatoire d'utiliser une clé mais une passphrase :
sudo cryptsetup -y luksFormat container.img
Dévérouiller le block
sudo cryptsetup luksOpen container.img -d secure.key container.open
Le dernier paramètre sera présent dans le dossier /dev/mapper/
Si l'on a choisie de le faire avec la passphrase :
sudo cryptsetup luksOpen container.img container.open
Une commande à faire qu'une seule fois pour lui donner un système de fichier. Ce qui va lui permettre de retrouver l'emplacement des fichiers :
sudo mkfs.ext4 /dev/mapper/container.open
Il reste plus qu'a monter le périphérique :
mount /dev/mapper/container.open /mnt
Vérouiller le block
On le démonte :
umount /mnt
On sécurise :
cryptsetup luksClose -d secure.key container.open
Si l'on utilise une passphrase :
cryptsetup luksClose container.open
Aller plus loin
Supprimer une passphrase/clé :
# cryptsetup luksDump /dev/xvdc
Ajouter une clé/passphrase :
# cryptsetup luksAddKey /dev/xvdc