Установка на шифрованный раздел root

Примечание: Обратите внимание на следующее, если Wы хотите зашифровать корневой раздел или раздел данных:

Примеры шифрования:

Шифрование в пределах групп LVM

Этот пример использует шифрование внутри группы LVM. Это позволяет Вам, разделить Ваш home from / и использовать раздел swap, не нуждаясь в многократных паролях. Это применяется с aptosid-2010-03-apate и выше.

Before running the installer you must prepare the filesystems which will be used for the installation. For basic LVM partitioning guidelines, you need to refer to Logical Volume Manager - LVM partitioning.

You will need at least an unencrypted /boot filesystem and an encrypted / filesystem and also create encrypted /home and swap filesystems.

  1. If you are not planning to use an existing lvm volume group then create a normal lvm volume group. This example will assume that the volume group is called vg to hold your boot and encrypted data.
  2. You will need a logical volume for /boot and the encrypted data so use lvcreate to create the logical volumes in vg volume group with the sizes you want:
    lvcreate -n boot --size 250m vg
    lvcreate -n crypt --size 300g vg
    
    Here you have named the logical volumes boot and crypt and made them 250Mb and 300Gb respectively.
  3. Create the filesystem for /boot so it will be available in the installer:
    mkfs.ext4 /dev/mapper/vg-boot
    
  4. Use cryptsetup to encrypt vg-crypt using the faster xts option with the highest strength key length of 512bit and then open it. This will ask you for your password twice to set it and then a third time to open it. Open it here under the default boot time cryptopts target name of cryptroot:
    cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/mapper/vg-crypt
    
    cryptsetup luksOpen /dev/mapper/vg-crypt cryptroot
    
  5. Now use lvm inside the encrypted device to create a second volume group that will be used for the /swap and /home devices. pvcreate cryptroot to make it a physical volume and use it with vgcreate to create another volume group, we call it cryptvg:
    pvcreate /dev/mapper/cryptroot
    vgcreate cryptvg /dev/mapper/cryptroot
    
  6. Next use lvcreate with the new encrypted cryptvg volume group to create the / , /swap and /home logical volumes with the sizes you want:
    lvcreate -n swap --size 2g cryptvg
    lvcreate -n root --size 40g cryptvg
    lvcreate -n home --size 80g cryptvg
    
    Here you have named the logical volumes swap, root and home and made them 2Gb, 40Gb and 80Gb respectively.
  7. Create the filesystems for cryptvg-swap, cryptvg-root and cryptvg-home so they are available in the installer:
    mkswap /dev/mapper/cryptvg-swap
    mkfs.ext4 /dev/mapper/cryptvg-root
    mkfs.ext4 /dev/mapper/cryptvg-home
    
  8. Теперь Вы готовы запустить инсталлятор, в котором Вы должны использовать:
    vg-boot для /boot,
    cryptvg-root для /,
    cryptvg-home для /home,
    и cryptvg-swap
    swap должен быть автоматически признан.

В конечном итоге установленная система должна иметь командную строку ядра со следующими вариантами:

root=/dev/mapper/cryptvg-root cryptopts=source=/dev/mapper/vg-crypt,target=cryptroot,lvm=cryptvg-root

Теперь у Вас есть скреп и загрузиться под группу томов LVM В.Г. и корень, раздел данных и свопа в объеме vgcrypt LVM группу, которая находится внутри защищен паролем зашифрованного устройства. You now have the crypt and boot under the vg lvm volume group and the root, home and swap inside the vgcrypt lvm volume group which is inside your password protected encrypted device.

cryptsetup luksOpen /dev/mapper/cryptvg-root cryptvg
vgchange -a y

Примечания для шифрования с традиционными методами разделения

The first thing to decide is how you want to layout your disk. You will need a minimum of 2 partitions, one normal partition for your /boot and one for the encypted data.

Assuming you require swap (which should also be encrypted) you will need a third partition and will have to enter the password for swap seperately during bootup (so you will have two password prompts).

It is possible to use keys for the swap from inside the encrypted system with traditional partitioning, however you will not be able to suspend to disk. Due to these issues, the better option in the long term is to use LVM volumes with fully encrypted partitions and keys.

Основные предположения

Now that you have the partitioning done, you need to prepare the encrypted partitions so that they will be recognised by the installer.

If you have been using a GUI partitioning application, close it and open a terminal, as the encryption commands need to be done from the command line.

Раздел /boot

Make the /boot partition an ext4 partition, if you have not already done so:

/sbin/mkfs.ext4 /dev/sda1
Шифрованный раздел swap

For the encrypted swap you first need to format and open the raw device, /dev/sda2, as an encrypted device, like the vg-crypt device above but opening it under a different name, swap.

  1. cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/sda2
    
  2. cryptsetup luksOpen /dev/sda2 swap
    
  3. echo "swap UUID=$(blkid -o value -s UUID /dev/sda2) none luks" >> /etc/crypttab
    

Format the created /dev/mapper/swap so it will be recognised by the installer:

/sbin/mkswap /dev/mapper/swap
Шифрованный раздел /

For the encrypted / you first need to format and open the raw device, /dev/sda3, as an encrypted device, like the vg-crypt device above.

cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/sda3
cryptsetup luksOpen /dev/sda3 cryptroot

Format the created /dev/mapper/cryptroot so it will show up in the installer:

/sbin/mkfs.ext4 /dev/mapper/cryptroot

Запуск программы инсталляции

Теперь Вы готовы запустить инсталлятор, где Вы должны использовать:

sda1 для /boot,
cryptroot для / и /home
swap должен быть автоматически признан.

Установленная ​​система должна иметь командную строку ядра со следующими параметрами (если Ваш UUID будет использоваться):

root=/dev/mapper/cryptroot cryptopts=source=UUID=12345678-1234-1234-1234-1234567890AB,target=cryptroot

Теперь у Вас есть обычный раздел /boot, зашифрованный и защищенный паролем swap вместе с корневым разделом / и /home.

Источники и ресурсы:

Прочитайте необходимо:

man cryptsetup

LUKS.

Redhat и Fedora .

Защитите ваши данные с зашифрованным разделением Linux (англ.).

Как используют зашифрованные изображения в KVM (англ.).

aptosid wiki.

Содержание, последний раз пересмотрено 06/09/2011 0920 UTC