OpenBSD prend en charge le chiffrement intégral du disque uniquement depuis OpenBSD 5.3 . Les versions antérieures nécessitent une partition de démarrage en texte clair. Je ne sais pas quand le programme d'installation a été modifié pour prendre en charge l'installation directe sur une partition cryptée (avec le chargeur de démarrage toujours non crypté bien sûr, car quelque chose doit décrypter le bit suivant).
De toute façon, le cryptage de la partition système est peu utile¹. Je suggère donc d'installer le système normalement, puis de créer une image de système de fichiers cryptée et d'y mettre vos données sensibles ( /home
, des parties de /var
, peut-être quelques fichiers /etc
).
Si vous voulez quand même crypter la partition système (car vous avez un cas d'utilisation spécial, comme certains logiciels confidentiels), et que vous n'avez pas installé de système crypté à l'origine, voici comment vous pouvez le faire.
Démarrez dans votre installation OpenBSD et créez un fichier qui contiendra l'image du système de fichiers chiffrée. Assurez-vous de choisir une taille raisonnable car il sera difficile de changer plus tard (vous pouvez créer une image supplémentaire, mais vous devrez saisir la phrase secrète séparément pour chaque image). La vnconfig
page de manuel contient des exemples (bien qu'il leur manque quelques étapes). En un mot:
dd if=/dev/urandom of=/ENCRYPTED.img bs=1m count=4096
vnconfig -k svnd0 /ENCRYPTED.img # type your passphrase
{ echo a a; echo w; echo q; } | disklabel -E /svnd0 # create a single slice
newfs /dev/svnd0a
mount /dev/svnd0a /mnt
mv /home/* /mnt
umount /mnt
umount /dev/svnd0c
Ajoutez les entrées correspondantes à /etc/fstab
:
/ENCRYPTED.img /dev/svnd0c vnd rw,noauto,-k
/dev/svnd0a /home ffs rw,noauto
Ajoutez des commandes pour monter le volume chiffré et le système de fichiers qu'il contient au démarrage pour /etc/rc.local
:
echo "Mounting encrypted volumes:"
mount /dev/svnd0c
fsck -p /dev/svnd0a
mount /home
Vérifiez que tout fonctionne correctement en exécutant ces commandes ( mount /dev/svnd0c && mount /home
).
Notez qu'il rc.local
est exécuté tard dans le processus de démarrage, vous ne pouvez donc pas placer de fichiers utilisés par les services standard tels que ssh ou sendmail sur le volume chiffré. Si vous voulez le faire, placez ces commandes à la /etc/rc
place, juste après mount -a
. Déplacez ensuite les parties de votre système de fichiers que vous considérez comme sensibles et déplacez-les vers le /home
volume.
mkdir /home/etc /home/var
mv /etc/ssh /home/etc
ln -s ../home/etc/ssh /home/etc
mv /var/mail /var/spool /home/var
ln -s ../home/var/mail ../home/var/spool /var
Vous devriez également crypter votre swap, mais OpenBSD le fait automatiquement de nos jours.
La nouvelle façon d'obtenir un système de fichiers crypté consiste à utiliser le pilote de raid logiciel softraid
. Consultez les pages de manuel softraid
et bioctl
ou le HOWTO NAS chiffré OpenBSD de Lykle de Vries pour plus d'informations. Les versions récentes d'OpenBSD prennent en charge le démarrage à partir d'un volume softraid et l' installation sur un volume softraid en passant à un shell pendant l'installation pour créer le volume.
¹
Autant que je sache, le chiffrement de volume d'OpenBSD est protégé pour la confidentialité (avec Blowfish), pas pour l' intégrité . La protection de l'intégrité du système d'exploitation est importante, mais la confidentialité n'est pas nécessaire. Il existe également des moyens de protéger l'intégrité du système d'exploitation, mais ils dépassent le cadre de cette réponse.