dm-crypt – это механизм шифрования на уровне ядра, предназначенный для прозрачного шифрования диска. Это означает, что файлы будут доступны сразу, без дополнительного взаимодействия после монтирования.
В данной записи предполагается, что вы уже создали/подготовили раздел или файл для шифрования. Создание и форматирование (файловой системы на разделе) разделов тут разбираться не будут.
Форматирование раздела
Для форматирования раздела в нужный формат используется команда:
сryptsetup luksFormat «Устройство»
Например, Cryptsetup luksFormat /dev/testvg/stripelv, в данном случае будет отформатирован логический том stripelv. При выполнении операции вас предупредят, о потере всех данных на разделе. Надо ответить YES (заглавными буквами), и задать пароль для нашего зашифрованного раздела.
Примечание. Опции в cryptsetup чувствительны к регистру.
Создание ключа
Если вы собираетесь использовать только пароль, то этот пункт можно пропустить.
Сначала надо создать случайный ключ. для этого выполните команду
dd if=/dev/random of=/»Путь до ключа»/crypttab.key bs=1024 count=4
И задайте соответствующие разрешения на этот ключ
сhmod 400 /»Путь до ключа»/crypttab.key
Теперь этот ключ можно использовать для разблокировка хранилища.
Не храните этот ключ на самом защищенном хранилище.
Добавление ключа
Далее надо добавить этот ключ к хранилищу командой
сryptsetup luksAddKey «устройство» /»Путь до ключа»/crypttab.key
Например, сryptsetup luksAddKey /dev/testмп/striprlv /root/crypttab.key
Для выполнения операции, будет запрошен пароль.
Открытие хранилища
Для открытия хранилища используется команда
cryptsetup luksOpen «устройство» «имя нового раздела» –key-file /»Путь до ключа»/crypttab.key
Например, команда cryptsetup luksOpen /dev/testvg/stripelv securevol –key-file /root/crypttab.key разблокирует устройство /dev/testvg/stripelv с помощью ключа crypttab.key и создаст раздел securevol (который надо будет отформатировать и монтировать) в /dev/mapper/. Если вы не создавали ключ, то можете не писать —key-file /root/crypttab.key, и при выполнении команды у вас запросят пароль.
Автоматическое монтирование раздела
Так как раздел зашифрован, то fstab не сможет смонтировать раздел самостоятельно. Для этого в файле /etc/crypttab (если его нет, создайте самостоятельно) укажите следующие параметры:
«Имя расшифрованного раздела» «Имя устройства» «Путь до ключа»
Например securevol /dev/testvg/stripelv /root/crypttab.key
после этого должен появиться раздел /dev/mapper/securevol, который уже можно смонтировать через fstab.
Примечание. Если вы собираетесь включить автомонтирование диска по имени в виде /dev/sda, то желательно использовать UUID диска, т.к. при переключении дисков, их порядок может измениться и их обозначения поменяться. С LVM томами такой проблемы нет.