GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer Debian sur un conteneur LUKS existant

LUKS (Linux Unified Key Setup) est la méthode de cryptage standard de facto utilisée sur les systèmes basés sur Linux. Alors que l'installateur Debian est parfaitement capable de créer un conteneur LUKS, il lui manque la capacité de reconnaître et donc de réutiliser un conteneur déjà existant. Dans cet article, nous voyons comment contourner ce problème en utilisant le programme d'installation "DVD1" et en l'exécutant en mode "avancé".

Dans ce didacticiel, vous apprendrez :

  • Comment installer Debian en "mode avancé"
  • Comment charger les modules supplémentaires du programme d'installation nécessaires pour déverrouiller un appareil LUKS existant
  • Comment effectuer l'installation sur un conteneur LUKS existant
  • Comment ajouter une entrée dans le fichier crypttab du système nouvellement installé et régénérer son initramfs

Comment installer Debian sur un conteneur LUKS existant

Configuration logicielle requise et conventions utilisées

Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système Debian
Logiciel Aucun logiciel spécifique nécessaire
Autre L'installateur de DVD Debian
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo command
$ - nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Le problème :réutiliser un conteneur LUKS existant

Comme nous l'avons déjà dit, l'installateur Debian est parfaitement capable de créer et d'installer la distribution sur un conteneur LUKS (une configuration typique est LVM sur LUKS), mais il ne peut pas actuellement reconnaître et ouvrir un conteneur déjà existant ; pourquoi aurions-nous besoin de cette fonctionnalité ? Supposons, par exemple, que nous ayons déjà créé un conteneur LUKS manuellement, avec certains paramètres de cryptage qui ne peuvent pas être ajustés à partir du programme d'installation de la distribution, ou imaginons que nous ayons un volume logique à l'intérieur du conteneur que nous ne voulons pas détruire (peut-être il contient des données); en utilisant la procédure standard de l'installateur, nous serions obligés de créer un nouveau conteneur LUKS, et donc de détruire celui existant. Dans ce didacticiel, nous verrons comment, avec quelques étapes supplémentaires, nous pouvons contourner ce problème.

Téléchargement du programme d'installation du DVD

Pour pouvoir effectuer les actions décrites dans ce tutoriel, nous devons télécharger et utiliser le programme d'installation du DVD Debian, car il contient certaines bibliothèques qui ne sont pas disponibles dans le netinstall version. Pour télécharger l'image d'installation via torrent, nous pouvons utiliser l'un des liens ci-dessous, en fonction de l'architecture de notre machine :

  • 64 bits
  • 32 bits

À partir des liens ci-dessus, nous pouvons télécharger les fichiers torrent que nous pouvons utiliser pour obtenir l'image du programme d'installation. Ce que nous devons télécharger est le DVD1 dossier. Pour obtenir l'ISO d'installation, il faut utiliser un client torrent comme Transmission . Une fois l'image téléchargée, nous pouvons la vérifier en téléchargeant le SHA256SUM correspondant et SHA256SUM.sign fichiers et suivez ce didacticiel sur la façon de vérifier l'intégrité d'une image iso de distribution Linux. Une fois prêt, nous pouvons écrire l'image sur un support pouvant servir de périphérique de démarrage :soit un (DVD ou USB), et démarrer notre machine à partir de celui-ci.

Utilisation du mode d'installation avancé

Lorsque nous démarrons la machine à l'aide du périphérique que nous avons préparé, nous devrions visualiser le syslinux suivant menus :

Nous sélectionnons les options avancées entrée, puis Installation par un expert graphique (ou Installation experte si nous voulons utiliser le programme d'installation basé sur ncurses, qui utilise moins de ressources) :

Une fois que nous avons sélectionné et confirmé l'entrée de menu, l'installateur démarrera et nous visualiserons la liste des étapes d'installation :

Nous suivons les étapes d'installation jusqu'à ce que nous arrivions sur le Charger les composants du programme d'installation à partir du CD une. Ici, nous avons le changement pour sélectionner les bibliothèques supplémentaires qui doivent être chargées par le programme d'installation. Le minimum que nous voulons sélectionner dans la liste est Crypto-dm-modules et mode de secours (faites défiler la liste pour la voir):

Déverrouillage manuel du conteneur LUKS existant et partitionnement du disque

À ce stade, nous pouvons procéder comme d'habitude jusqu'à ce que nous arrivions sur le Détecter les disques étape. Avant d'effectuer cette étape, nous devons passer à un tty et ouvrez le conteneur LUKS existant à partir de la ligne de commande. Pour ce faire, nous pouvons appuyer sur Ctrl+Alt+F3 combinaison de touches et appuyez sur Entrée pour obtenir une invite. À partir de l'invite, nous ouvrons le périphérique LUKS en lançant la commande suivante :

# cryptsetup luksOpen /dev/vda5 cryptdevice
Enter passphrase for /dev/vda5:

Dans ce cas, le périphérique LUKS a été précédemment défini sur le /dev/vda5 partition, vous devez bien sûr l'adapter à vos besoins. Il nous sera demandé de saisir la passhprase du conteneur afin de le déverrouiller. Le nom du mappeur de périphérique que nous utilisons ici (cryptdevice) est ce que nous aurons besoin d'utiliser plus tard dans le /etc/crypttab fichier.

Une fois cette étape effectuée, nous pouvons revenir à l'installateur (Ctrl+Alt+F5 ) et passez à l'étape Détecter les disques puis avec Partitionner les disques pas. Dans les Partitionner les disques menu, nous sélectionnons l'entrée "Manuel":

Le périphérique LUKS déverrouillé et les volumes logiques qu'il contient doivent apparaître dans la liste des partitions disponibles, prêts à être utilisés comme cibles pour la configuration de notre système. Une fois que nous sommes prêts, nous pouvons continuer l'installation jusqu'à ce que nous arrivions sur le Terminer l'installation étape. Avant de l'exécuter, nous devons créer une entrée dans le système nouvellement installé crypttab pour le périphérique LUKS, puisqu'il n'est pas créé par défaut, et recréez le système initramfs pour que la modification soit effective.

Création d'une entrée dans /etc/crypttab et recréation de l'initramfs

Revenons au tty nous utilisions auparavant (Ctrl+Alt+F3 ). Ce que nous devons faire maintenant, c'est ajouter manuellement une entrée dans le /etc/crypttab fichier du système nouvellement installé pour le périphérique LUKS. Pour ce faire, nous devons monter la partition racine du nouveau système quelque part (utilisons le /mnt répertoire) et monter des pseudo-systèmes de fichiers qui fournissent des informations importantes sur les répertoires appropriés à l'intérieur de celui-ci. Dans notre cas, le système de fichiers racine se trouve dans /dev/debian-vg/root volume logique :

# mount /dev/debian-vg/root /mnt
# mount /dev /mnt/dev
# mount /sys /mnt/sys
# mount /proc /mnt/proc

Puisque dans ce cas nous avons une partition de démarrage séparée (/dev/vda1 ), nous devons également le monter sur /mnt/boot :

# mount /dev/vda1 /mnt/boot

À ce stade, nous devons chrooter dans le système installé :

# chroot /mnt

Enfin, nous pouvons ouvrir le /etc/crypttab fichier avec l'un des éditeurs de texte disponibles, (vi par exemple), et ajoutez l'entrée suivante :

cryptdevice /dev/vda5 none luks

Le premier élément de la ligne ci-dessus est le nom du mappeur de périphérique que nous avons utilisé ci-dessus lorsque nous avons déverrouillé manuellement le conteneur LUKS ; il sera utilisé à chaque ouverture du conteneur lors du démarrage du système.

Le deuxième élément est la partition qui est utilisée comme périphérique LUKS (dans ce cas, nous l'avons référencé par le chemin (/dev/vda5 ), mais une meilleure idée serait de le référencer via UUID ).

Le troisième élément est l'emplacement du fichier clé utilisé pour ouvrir le conteneur :ici, nous mettons aucun car nous n'en utilisons pas (suivez notre tutoriel sur Comment utiliser un fichier comme clé de périphérique LUKS si vous voulez savoir comment réaliser ce type de configuration).

Le dernier élément de la ligne héberge les options qui doivent être utilisées pour l'appareil chiffré :ici, nous avons juste utilisé luks pour spécifier que l'appareil est un conteneur LUKS.

Une fois que nous avons mis à jour le /etc/crypttab fichier, nous pouvons continuer et régénérer le fichier initramfs . Sur Debian et les distributions basées sur Debian, pour effectuer cette action, nous utilisons le update-initramfs commande :

# update-initramfs -k all -c

Ici, nous avons utilisé le -c option pour demander à la commande de créer un nouvel initramfs au lieu de mettre à jour un existant, et -k pour spécifier pour quel noyau l'initramfs doit être créé. Dans ce cas, nous avons passé all comme argument, donc un pour chaque noyau existant sera généré.

Une fois l'initramfs généré, nous revenons à l'installateur (Ctrl+Alt+F5 ) et passez à la dernière étape :Terminer l'installation . Lors de l'installation, nous serons invités à redémarrer pour accéder au système nouvellement installé. Si tout s'est déroulé comme prévu, lors du démarrage du système, nous devrions être invités à saisir la phrase secrète pour déverrouiller le conteneur LUKS :

Conclusion

Dans ce didacticiel, nous avons appris à contourner une limitation de l'installateur Debian qui n'est pas capable de reconnaître et d'ouvrir un conteneur LUKS existant pour effectuer l'installation du système à l'intérieur de celui-ci. Nous avons appris à utiliser le programme d'installation en "mode avancé" pour pouvoir charger des modules supplémentaires qui nous permettent de déverrouiller le conteneur manuellement en passant à un tty. Une fois le conteneur ouvert, il est correctement reconnu par l'installateur et peut être utilisé sans problème. La seule partie délicate de cette configuration est que nous devons nous rappeler de créer une entrée pour le conteneur dans le système nouvellement installé crypttab fichier et mettez à jour son initramfs.


Debian
  1. Comment installer Debian 10 (Buster)

  2. Comment installer VeraCrypt sur Debian 10 Buster

  3. Comment installer Python 3.9 sur Debian 10

  4. Comment installer TeamViewer sur Debian 10

  5. Comment installer Docker sur Debian 9 (Stretch)

Comment installer PHP sur Debian 9

Comment installer R sur Debian 10

Comment installer Debian 11

Comment installer Docker sur Debian 11

Comment installer Go sur Debian 10

Comment installer Go sur Debian