Comment préconfigurer le chiffrement uniquement de la partition racine?

13

J'ai 3 partitions: EFI ( /boot/efi), boot ( /boot) et root ( /). Je veux chiffrer juste / . Je peux le faire manuellement via le programme d'installation, mais je veux le préconfigurer.

Comment le définir? Ma recette (non cryptée) ressemble à celle ci-dessous. C'est une sorte de méli-mélo de suggestions pour les partitions du système EFI que j'ai trouvées (aucun guide clair n'a été trouvé).

boot-root ::
  100 100 100 fat32
    $primary
    $iflabel{ gpt }
    $reusemethod( }
    use_filesystem{ } filesystem{ vfat }
    method{ efi } format{ }
    mountpoint{ /boot/efi }
  .
  300 300 300 ext4
    use_filesystem{ } filesystem{ ext4 }
    method{ format } format{ }
    mountpoint{ /boot }
  .
  100% 3000 100% ext4
    use_filesystem{ } filesystem{ ext4 }
    method{ format } format{ }
    mountpoint{ / }
  .

Comment créer sda3une partition physique pour le cryptage LUKS et avoir ensuite un système de fichiers en plus?

MISE À JOUR:

J'ai découvert que je peux définir la partition pour qu'elle soit cryptée comme ci-dessous, mais il y a encore 3 problèmes:

  1. J'ai encore besoin de créer et d'activer les volumes chiffrés sur la partition choisie
  2. J'ai encore besoin de définir le système de fichiers ext4 correct sur le volume chiffré après avoir créé et activé
  3. La recette ne sélectionne pas le type de chiffrement dm-cryptauquel est requis pour créer et activer les volumes chiffrés.

Toujours en difficulté

boot-root ::
  100 100 100 fat32
    $primary
    $iflabel{ gpt }
    $reusemethod( }
    use_filesystem{ } filesystem{ vfat }
    method{ efi } format{ }
    mountpoint{ /boot/efi }
  .
  300 300 300 ext4
    use_filesystem{ } filesystem{ ext4 }
    method{ format } format{ }
    mountpoint{ /boot }
  .
  100% 3000 100% ext4
    method{ crypto } format{ }
  .
abandonner
la source
Pour votre information, les labels comme sda, sdb, sdc, etc ne gardent pas toujours les mêmes lettres (a, b, c) entre les bottes ( le mien commutateur à chaque démarrage)
Xen2050
2
@ Xen2050 vous avez raison, UUIDou PARTUUIDou LABELou PARTLABELsont beaucoup mieux. Dans mon cas, je démarre une image au formatage, il n'y a donc qu'un seul lecteur. De toute façon, comment puis-je le configurer pour crypter une seule partition? Je peux le faire de manière interactive, mais j'en ai besoin.
deitch
Hmm, ça va peut-être arriver, mais plus de questions. Publiera d'autres q.
deitch
@deitch - est-ce une configuration de partition de serveur ou un client ou juste un exemple de partition de bureau? Ces 3 partitions sont trop peu nombreuses pour votre intention - il manque / swap et / home - vous devez donc configurer d'une manière ou d'une autre une partie étendue du disque dur avec des partitions logiques - normalement, les partitions n'autorisent que 4 dans l'ensemble mais étendues avec des partitions logiques permettent 4 fois 63 partitions au maximum (et le GPT permet bien plus)?! - unix.stackexchange.com/questions/33555/… - concernant les partitions maître et esclaves.
dschinn1001
@ dschinn1001 est en fait un modèle pour un serveur sécurisé. Le système d'exploitation principal se trouve sur un lecteur amovible. Les données utilisateur et l'échange se trouvent sur un lecteur interne, qu'un service systemd trouve et monte de manière appropriée. Mais en ignorant cela ... comment puis-je configurer la racine à chiffrer sans LVM?
deitch

Réponses:

1

Dans un premier temps, ouvrez un terminal racine:

sudo -i

Remplissez ensuite la partition, qui doit être chiffrée, avec des données aléatoires à l'aide d'une commande comme celle-ci:

openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null | base64)" -nosalt < /dev/zero > /dev/sdxy

Vous devez remplacer sdxypar la partition qui sera cryptée. Tapez ensuite

cryptsetup luksFormat --cipher twofish-xts-plain64 --key-size 512 --hash sha512 --iter-time 2000 /dev/sdxy

pour crypter la partition sdxy. Ouvrez le volume et nommez-le root:

cryptsetup luksOpen /dev/sdxy root

Utilisez cette commande pour créer un système de fichiers ext4 à l'intérieur:

mkfs.ext4 /dev/mapper/root

Ensuite, vous pouvez démarrer le programme d'installation. Choisissez "autre chose" lorsqu'on vous demande ce que vous aimeriez faire. Choisissez ensuite les points de montage pour toutes vos partitions non chiffrées. Pour votre rootpartition, sélectionnez /dev/mapper/root, cliquez sur "Modifier". Sélectionnez ensuite ext4le type de système de fichiers et définissez le point de montage sur /. Cliquez ensuite sur "Installer maintenant" et installez Ubuntu normalement.

Une fois l'installation terminée, cliquez sur "Continuer les tests". Ouvrez un terminal et saisissez:

sudo -i
cd /mnt
mkdir root
mount /dev/mapper/root root
mount /dev/sdyz root/boot

sdyzdevrait être remplacé par votre bootpartition. Ensuite, saisissez:

chroot root
mount -t proc proc /proc
mount -t sysfs sys /sys
nano /etc/crypttab

Ouvrez un deuxième terminal et tapez sudo blkid. Trouvez l'UUID pour root(celui qui dit crypto_luksà la fin) et collez-le dans /etc/crypttab. Ensuite, le fichier /etc/crypttabdevrait ressembler à ceci:

root UUID=d68911dd-172a-4608-86d4-084eb72f409c none luks

Fermez le fichier avec Ctrl+ x, yet Enter. Tapez nano /etc/fstable terminal et vérifiez si tout semble correct (par exemple les UUID).

Enfin, quittez l'environnement chroot et tapez:

cryptsetup luksHeaderBackup /dev/sdxy --header-backup-file /root/root.img

Cela place une image de l'en-tête de la partition chiffrée dans le dossier /rootet le nomme root.img. Déplacez ensuite l'image sur un disque externe (en cas d'oubli du mot de passe). Vous pouvez maintenant redémarrer votre Ubuntu nouvellement installé.

Source: http://thesimplecomputer.info/full-disk-encryption-with-ubuntu

Earl Nick
la source
Bienvenue sur Ask Ubuntu! Bien que cela puisse théoriquement répondre à la question, il serait préférable d'inclure ici les parties essentielles de la réponse et de fournir le lien de référence.
Karl Richter
@Earl, vous proposez de créer la partition au préalable dans un environnement chroot (ou conteneurisé), puis de la coller dans le programme d'installation?
deitch
Comment pourrais-je travailler avec le pré-ensemenceur?
deitch
Je ne sais pas, mais c'est au moins une solution pour créer une rootpartition cryptée LUKS sans LVM.
Earl Nick