Chiffrement d'une Raspberry Pi 4 avec Debian Bullseye

Mon serveur principal, sur lequel tourne le site que vous êtes en train de lire en ce moment même, m’a lâché du jour au lendemain. J’ai donc dû le remplacer en catastrophe, et la seule machine que j’avais à la maison pour ça était un Raspberry Pi. Seul problème, je souhaitais que le système soit entièrement chiffré.
Voilà comment j’y suis arrivé.

Debian sur une Raspberry Pi 4, la manière officielle

Plus ou moins en marge du projet Debian, une petite communauté travaille à améliorer le support de tous les modèles de Raspberry Pi. Ces personnes fournissent des images prêtes à l’emploi mais celles-ci ne proposent pas le chiffrement du système.

J’ai dans un premier temps tenté de modifier la recette de cuisine qui sert à générer ces images en me basant sur le travail de lstoll mais j’ai échoué. Impossible d’avoir une image fonctionnelle. Je suis allé en parler sur le canal IRC #debian-raspberrypi sur OFTC et quelqu’un m’a orienté vers le dépôt Github Cryptmypi.

Crypt My Pi

Cryptmypi permet d’installer directement sur une carte SD le système de votre choix (Debian, Ubuntu, Kali, Pi OS), chiffré ou pas, et cela pour plusieurs modèles de Raspberry Pi.

Dans mon cas, j’ai dû modifier l’exemple debian-encrypted-basic-dropbear pour arriver à mes fins.

On commence par éditer le fichier cryptmypi.conf suivant ses besoins. On peut même activer le wifi très tôt et déchiffrer le raspi via SSH ainsi, pas besoin d’une connexion filaire.

Il y a une variable pour choisir le type de chiffrement utilisé, j’ai choisi aes-xts-plain64 en lieu et place de aes-cbc-essiv:sha256.

Une fois qu’on a fini d’éditer cryptmypi.conf, on s’assure que la SD est bien apparente au même endroit que défini (/dev/sda, /dev/sdb ?). On édite le fichier stage2-otherscript pour y mettre le chemin correct vers la SD et puis on lance l’installation : sudo ./cryptmypi.sh examples/debian-encrypted-basic-dropbear et on suit les instructions. Au bout de quelques minutes, on aura une SD prête à insérer dans le raspi.

Au moment où j’écris cet article, il ne faut pas mettre à jour le paquet firmware-brcm80211. Ça casse le wifi au démarrage et peut-être sans doute après le déchiffrement, je n’ai pas pu tester.

Voilà, si vous avez besoin que j’ajoute des instructions plus précises, voire un lien vers un clone du dépôt cryptmypi avec les modifications à effectuer, faites-moi signe sur Mastodon (les commentaires du blog sont cassés pour le moment).

Lire plus