Ubuntu – Comment monter automatiquement une partition LUKS en utilisant pam-mount

Comment monter automatiquement une partition chiffrée LUKS de manière sécurisée? Idéalement, soit lorsque je me connecte (et donc mon mot de passe à l’écran de connexion), soit une fois sur le bureau, Ubuntu me demande-t-il mon mot de passe, puis monte automatiquement la partition?

Le contenu de mon fdisk est ci-dessous

La partition cryptée est / dev / sdb7, ma partition racine et home est / dev / sdb5 (qui n’est pas cryptée).

 Disk /dev/loop0: 14 MiB, 14647296 bytes, 28608 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 81.7 MiB, 85692416 bytes, 167368 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x0006d9d9

Device     Boot     Start        End    Sectors   Size Id Type
/dev/sda1            2048  524646399  524644352 250.2G  7 HPFS/NTFS/exFAT
/dev/sda2  *    524646400 1953523711 1428877312 681.4G 83 Linux


Disk /dev/sdb: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x1ffae910

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sdb1       214892542 976773119 761880578 363.3G  5 Extended
/dev/sdb2  *         2048   2150399   2148352     1G 83 Linux
/dev/sdb5       214892544 257558559  42666016  20.4G 83 Linux
/dev/sdb6       300716032 318294015  17577984   8.4G 82 Linux swap / Solaris
/dev/sdb7       318296064 976773119 658477056   314G 83 Linux

Partition table entries are not in disk order.
 

Meilleure réponse

  • Utilisation de pam-mount

    Vous pouvez utiliser pam-mount pour ce faire. Il se connectera au processus de connexion et pourra ainsi utiliser le mot de passe entré pour monter une partition luks. Voici comment le configurer:

    Créer une image luks de test

    Ignorez cette section si vous avez déjà une partition ou une image cryptée LUKS

    Créez un fichier appelé.privdans votre répertoire personnel de taille 1 Go:

     truncate -s 1G ~/.priv
     

    Formatez l’image à l’aide de LUKS et définissez un mot de passe (utilisez le même que votre mot de passe de connexion):

     cryptsetup luksFormat ~/.priv
     

    Activez l’image:

     sudo cryptsetup luksOpen ~/.priv priv
     

    Créez un système de fichiers sur le nouveau périphérique:

     sudo mkfs.ext4 /dev/mapper/priv
     

    Désactivez à nouveau l’image:

     sudo cryptsetup luksClose priv
     

    Installer et configurer pam-mount

    Installez le package:

     sudo apt install libpam-mount
     

    Editez le fichier de configuration /etc/security/pam_mount.conf.xml et ajoutez-y la ligne suivante:

     <volume path="~/.priv" mountpoint="~/priv" />
     

    Ajoutez-le juste après l’endroit où il est dit <!-- Volume definitions --> . Remarquez la différence subtile mais importante dans les arguments de chemin et de point de montage. Dans votre cas particulier, vous utiliseriez path="/dev/sdb7" .

    Connectez-vous maintenant à votre machine et vous devriez remarquer que cela prend un peu plus de temps que d’habitude. Après une connexion réussie, vous pouvez vérifier, en utilisant le mount commande, qu’il y a maintenant un nouveau système de fichiers monté dans votre maison. Cela devrait ressembler à ceci:

     /dev/mapper/_dev_loop3 on /home/seb/priv type ext4 (rw,relatime,data=ordered,helper=crypt)
     

    Utilisation pour / home / USER

    J’utilise cette configuration pour monter mon répertoire personnel ( /home/seb