Создание шифрованного раздела в Linux

Материал из Webko Wiki
Версия от 23:04, 18 мая 2015; Sol (обсуждение | вклад) (Новая страница: «Рассмотрим ручное создание шифрованного раздела /dev/sdb3 при помощи dm-crypt/LUKS. Сryptsetup можно н…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Рассмотрим ручное создание шифрованного раздела /dev/sdb3 при помощи dm-crypt/LUKS.

Сryptsetup можно найти в пакете cryptsetup в репозиториях Debian, Ubuntu, SuSE, Fedora и CentOS:

Установка:

  apt-get install cryptsetup

или

  yum install cryptsetup

Заполняем раздел случайными данными, для удаления остаточной информации:

  dd if=/dev/urandom of=/dev/sdb3

Инициализируем шифрованный раздел

  cryptsetup luksFormat /dev/sdb3

в ответ на приглашение "Enter LUKS passphrase:" вводим пароль, под которым будет производиться доступ к созданному разделу.

Проверяем все ли нормально было создано:

  cryptsetup isLuks /dev/sdb3 && echo Sucess
  Sucсess

Смотрим параметры созданного раздела:

  cryptsetup luksDump /dev/sdb3
  LUKS header information for /dev/sdb3
  Version:        1
  Ciper name:    aes
  Cipher mode:    cbc-essiv:sha256
  Hash spec:      sha1
  ...

Получаем UUID идентификатор раздела для его последующего монтирования без привязки к имени устройства:

  cryptsetup luksUUID /dev/sdb3
  d77eb752-8a90-4d94-ae9f-2bec0a22c5d3

Подключаем шифрованный раздел, для его последующего монтирования:

  cryptsetup luksOpen /dev/sdb3 db
  Enter LUKS passphrase: вводим пароль
  key slot 0 unlocked.
  Command successful.

Смотрим параметры расшифрованного устройства /dev/mapper/db, пригодного для монтирования:

  dmsetup info db
  Name:              db
  State:             ACTIVE
  Read Ahead:        256
  Tables present:    LIVE
  Open count:        0
  Event number:      0
  Major, minor:      253, 1
  Number of targets: 1

Форматируем новый раздел:

  mke2fs -j /dev/mapper/db

Создаем точку монтирования:

  mkdir /db

Монтируем:

  mount /dev/mapper/db /db

Добавляем настройки в /etc/crypttab в последовательности соответствующей порядку монтирования разделов:

  luks-d77eb752-8a90-4d94-ae9f-2bec0a22c5d3 UUID=d77eb752-8a90-4d94-ae9f-2bec0a22c5d3 none

Добавляем автомонтирование в /etc/fstab (на этапе загрузки нужно будет вводить пароль):

  /dev/mapper/luks-d77eb752-8a90-4d94-ae9f-2bec0a22c5d3 /db ext3  defaults 0 0

Для автомонтирования шифрованного раздела должен быть активен системный сервис /etc/init.d/crytdisks

Для отключения раздела нужно использовать:

  umount /db
  crytsetup luksClose /dev/mapper/db

Вместо ввода пароля можно сохранить ключ шифрования на USB брелок, последовательность примерно такая:

Создаем ключ на flash:

  dd if=/dev/random of=/media/flash/pass.key bs=1 count=256

Инициализируем раздел:

  cryptsetup luksFormat /dev/sdb3 /media/flash/pass.key 

Подключаем раздел:

  cryptsetup --key-file /media/flash/pass.key luksOpen /dev/sdb3 db

В /etc/crypttab вместо "none" добавляем путь к файлу с ключом.