Как определить LVM-over-LUKS или LUKS-over-LVM

Как определить LVM-over-LUKS или LUKS-over-LVM

Недавно я установил Fedora 20. Я не помню, какие именно параметры я выбрал для шифрования диска/LVM во время установки. Он установился нормально, и я могу войти в систему и т. д. Вот моя ситуация:

Я загрузился с LiveCD и попробовал следующее: (Я установил Fedora20 в раздел /dev/sda3).

  1. При запуске cryptsetup open /dev/sda3 fedoпоявляется сообщение об ошибке, что это не устройство LUKS.
  2. Я запускаю cryptsetup luksDump /dev/sda3и получаю сообщение об ошибке, что это не устройство LUKS.
  3. Если я запускаю cryptsetup open --type plain /dev/sda3 fedo, он запрашивает пароль и нормально открывает устройство.

Итак, очевидно, что это раздел, зашифрованный обычным текстом (без заголовка LUKS).

Теперь, когда я пытаюсь запустить mount /dev/mapper/fedo /mnt/fedora, он пишет unknown crypto_LUKS filesystem.

У меня есть LVM поверх него, поэтому я могу запустить pvdisplay, vgdisplay, lvdisplayи он покажет информацию. У меня есть VG с именем fedoraи два LV, а именно 00 для раздела подкачки и 01 для раздела /.

Теперь, если я сделаю , cryptsetup luksDump /dev/fedora/01я смогу увидеть заголовки LUKS и т. д. И я могу смонтировать, запустив mount /dev/fedora/00 /mnt/fedora, без запроса пароля.

Итак, есть ли у меня раздел, зашифрованный с помощью LUKS-over-LVM-over-(plaintext)?

Вот мой вывод lsblk:

# lsblk
ИМЯ МАЖ:МИН RM РАЗМЕР RO ТИП ТОЧКА КРЕПЛЕНИЯ
sda 8:0 0 37.3G 0 диск
|-sda3 8:3 0 17.4G 0 часть
  |-fedora-00 253:0 0 2.5G 0 лвм
  | |-luks-XXXXX 253:3 0 2.5G 0 крипт [SWAP]
  |-fedora-01 253:1 0 15G 0 лвм
    |-luks-XXXXX 253:2 0 15G 0 крипта /

Итак, вопрос в том, как выяснить, есть ли у меняLVM-над-LUKSилиLUKS-over-LVM, или какая-то другая их комбинация (LUKS по сравнению с LVM по сравнению с LUKSи т. д.)? Чтобы прояснить свой вопрос, я знаю, что у меня есть LVM и LUKS, я хочу выяснить их порядок.

решение1

cryptsetup luksDump /dev/fedora/01показывает, что логический том LVM является зашифрованным томом LUKS. Вывод pvsили pvdisplayпокажет, что раздел /dev/sda3является физическим томом. Таким образом, у вас есть LUKS поверх LVM. На более низком уровне у вас есть LVM поверх раздела ПК.

Вывод lsblkподтверждает это: sda— диск, sda3— раздел (содержащий физический том LVM), — логические тома, fedora-00и fedora-01каждый логический том содержит зашифрованный том LUKS.

решение2

Очень странно иметь LUKS внутри простого склепа. Зачем шифровать дважды?

После того, как ваши файловые системы смонтированы,lsblkпокажу вам, что к чему.

NAME                         MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                            8:0    0  59.6G  0 disk  
└─sda1                         8:1    0  59.6G  0 part  
  └─md0                        9:0    0  59.6G  0 raid1 
    └─luksSSD1               253:9    0  59.6G  0 crypt 
      ├─SSD-home             253:0    0    36G  0 lvm   /home
      └─SSD-root             253:10   0    16G  0 lvm   /

Это LVM (/home и / с типом lvm) на LUKS (тип crypt, luksSSD1) на RAID1 (md0, тип raid1) на обычном разделе (sda1) на диске sda.

решение3

Вы можете увидеть, что у вас получилось, вот так:

$ sudo blkid | grep crypto_LUKS
/dev/mapper/fedora-home: UUID="XXXXXXXXXXXXXXXXX" TYPE="crypto_LUKS" 

Это логический том LVM с крипто-LUKS на нем. Когда я монтирую этот том, он монтируется вот так в Fedora 20:

$ mount | grep home
/dev/mapper/luks-XXXXX on /home type ext4 (rw,relatime,seclabel,data=ordered)

Если вы выполнили стандартную установку, то произойдет то же самое.

Ручная расшифровка

Я считаю, что вы можете сделать следующее, если хотите сделать что-то вручную. Сначала посмотрим, является ли что-то LUKS или нет:

$ sudo cryptsetup isLuks /dev/mapper/fedora-home
$ echo $?
0

$ sudo cryptsetup isLuks /dev/mapper/fedora-root 
$ echo $?
1

ПРИМЕЧАНИЕ:Ноль означает, что это LUKS, 1 — что это не так.

Итак, расшифруем это:

$ sudo cryptsetup luksOpen /dev/mapper/fedora-home crypthome

ПРИМЕЧАНИЕ:Вам нужно ввести парольную фразу для расшифровки раздела. Можете свободно изменить имя сопоставления crypthomeна любое другое. Сопоставленный раздел теперь доступен в , /dev/mapper/crypthomeно он не смонтирован. Последний шаг — создать точку монтирования и смонтировать сопоставленный раздел:

Монтаж вручную

$ sudo -Es
$ mkdir /mnt/crypthome && mount /dev/mapper/crypthome /mnt/crypthome

Какие зашифрованные разделы у меня есть?

Вы также можете проверить файл, /etc/crypttabчтобы узнать, какие LUKS у вас настроены.

$ more /etc/crypttab  
luks-XXXXXXXX UUID=XXXXXXXX none 

Сброс устройства

Вы также можете использовать luksDumpвот так:

$ sudo cryptsetup luksDump /dev/mapper/fedora-home
LUKS header information for /dev/mapper/fedora-home

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha1
Payload offset: 4096
MK bits:        512
MK digest:      XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
MK salt:        XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
                XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
MK iterations:  50625
UUID:           XXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX

Key Slot 0: ENABLED
    Iterations:             202852
    Salt:                   XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
                            XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX 
    Key material offset:    8
    AF stripes:             4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED

Если это не устройство LUKS, то оно будет отображено следующим образом:

$ sudo cryptsetup luksDump /dev/mapper/fedora-root 
Device /dev/mapper/fedora-root is not a valid LUKS device.

Рекомендации

решение4

Я думаю, что ключом к выяснению того, является ли это LVM-over-LUKS или наоборот, является порядоккриптаилвмТИПЫ в выводеlsblk команды. Исходя из этого рассуждения, я делаю вывод, что моя настройка — этоLUKS-over-LVM. Для lsblkвывода для типа настройки LVM-over-LUKS посмотрите на вывод, показанный @frostschultz ниже.

В моем случае, поскольку /dev/sda3 является системным разделом "Linux LVM" (ID раздела 8e), я думаю, вместо того, чтобы пытаться cryptsetup open --type plain /dev/sda3 SomeNameсначала, мне следовало напрямую сопоставить LVM, запустив команду command cryptsetup open /dev/disk/by-uuid/UUID-of-LV SomeName, чтобы открыть LV напрямую. Я попробовал это, и это работает так, как я и ожидал.

Спасибо всем, кто помог мне разобраться в этом.

Связанный контент