Добавить вторую кодовую фразу для FDE на Ubuntu (новый слот ключей luks с шифрованием LVM)

Как я могу добавить вторую парольную фразу для расшифровки моего ноутбука при загрузке, если я решил установить Ubuntu с FDE во время установки.

На момент написания есть только один способ выбрать установку Ubuntu с полным шифрованием диска (FDE) с графическим интерфейсом .iso для установки Ubuntu, и это выбор создания зашифрованного LVM.

Я знаю, что команда для добавления дополнительного слота ключей к тому LUKS:

cryptsetup luksAddKey /dev/<device>

... но зашифрованная установка LVM, которую использует Ubuntu, немного сложнее. Он показывает, что у меня есть три расшифрованных luks-устройства:

user@host:$ ls /dev/mapper
control  nvme0n1p3_crypt  vgxubuntu-root  vgxubuntu-swap_1
user@host:$

Какую команду (-ы) я должен ввести, чтобы добавить дополнительный слот luks-ключей, чтобы я мог расшифровать свой ноутбук во время загрузки с помощью любой из двух парольных фраз?

0
задан 30 November 2020 в 18:10

1 ответ

Решение

Тот, который заканчивается на _crypt, — это устройство luks, для которого вы должны выполнить cryptsetup luksAddKey (без части _crypt). В вашем случае выполните:

# inspect the drive, note that the 0th key slot is the only key slot in use
cryptsetup luksDump /dev/nvme0n1p3

# dump the existing header and make a safe backup on another encrypted system
cryptsetup --header-backup-file header_backup luksHeaderBackup /dev/nvme0n1p3

# add a second passphrase to the 1st keyslot
cryptsetup --key-slot 1 luksAddKey /dev/nvme0n1p3

После успешного добавления второй фразы-пароля в 1-й слот ключей с помощью приведенной выше команды можно будет загрузить машину с помощью либо первой фразы-пароля (в слоте ключа № 0) или вторая парольная фраза (в слоте ключа №1).

Объяснение

По умолчанию установщик Ubuntu настраивает FDE, создавая три раздела:

  1. Незашифрованный загрузчик fat32
  2. Незашифрованный загрузочный том ext4
  3. Большой зашифрованный том luks

Вы можете см. это, например, используя lsblk для вашего диска:

root@host:~# lsblk /dev/nvme0n1
NAME                   MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
nvme0n1                259:0    0   477G  0 disk 
├─nvme0n1p1            259:1    0   512M  0 part  /boot/efi
├─nvme0n1p2            259:2    0   732M  0 part  /boot
└─nvme0n1p3            259:3    0 475,7G  0 part 
  └─nvme0n1p3_crypt    253:0    0 475,7G  0 crypt
    ├─vgxubuntu-root   253:1    0 474,8G  0 lvm   /
    └─vgxubuntu-swap_1 253:2    0   980M  0 lvm   [SWAP]
root@host:~#

Как вы можете видеть из приведенного выше вывода, диск nvme0n1 имеет три раздела. Внутри последнего раздела nvme0n1p3 находится огромный расшифрованный том nvme0n1p3_crypt.

Кроме того, внутри nvme0n1p3_crypt есть две группы томов lvm vgxubuntu-root и vgxubuntu-swap_1.

Устройство, для которого вы хотите выполнить команду luksAddKey, является фактическим зашифрованным luks разделом на диске на самом низком уровне ветви в дереве lsblk. В данном случае это /dev/nvme0n1p3.

0
ответ дан 4 December 2020 в 11:01

Другие вопросы по тегам:

Похожие вопросы: