В CentOS 5.3 добавлена возможность создания шифрованных дисковых разделов на этапе установки.
Рассмотрим ручное создание шифрованного раздела /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" добавляем путь к файлу с ключом.
URL: http://beginlinux.com/blog/2009/04/centos-53-encrypted-block.../
Обсуждается: http://www.opennet.me/tips/info/2029.shtml
а почему не TrueCrypt ? 8)
у truecrypt были проблемы с лицензией
Вас это очень тревожит, их проблемы с лицензией?Но на самом деле меня интересует, где можно найти документацию на cryptsetup, в частности, команды?
А прикладную задачу типа:
Ставим систему на 600 мб отбитого от винта раздела? Все остальное на винте - шифрованный псевдо-мусор. Если в конкретный усб-порт компа вставлена флешка с ключом, то от псевдо-мусора отбивается и монтируется раздел с файлами №1, иначе с файлами №2.
Можно ли решить этим шифрованием?
Можно конечно http://forum.antichat.ru/thread51519.html
Добавляем настройки в /etc/crypttab в последовательности соответствующей
порядку монтирования разделов:luks-d77eb752-8a90-4d94-ae9f-2bec0a22c5d3 UUID=d77eb752-8a90-4d94-ae9f-2bec0a22c5d3 none luks
А как теперь удалить созданный шифрованный раздел? Т.е. сделать раздел снова незашифрованным?
Автору большое спасибо за статью! Помогла окончательно понять как оно работает. Всё чётко и по пунктам.
Для пользователей Ubuntu Server способ подключения в /etc/crypttab через UUID`ы почему-то не работает. У меня по крайней мере не получилось.
По аналогии с названиями устройств из статьи добавляем в crypttab следующее:
db /dev/sdb3 none luksПосле чего обязательно выполняем команду: update-initramfs -u
Далле, автозагрузка раздела через /etc/fstab:
1. узнаём UUID шифрованного раздела командой - ls -l /dev/disk/by-uuid/
На выходе получим:
b2e52ed6-24a5-4b97-bb37-7d4e9787ce62 -> ../../dm-02. Прописываем раздел в fstab:
UUID=b2e52ed6-24a5-4b97-bb37-7d4e9787ce62 /db ext4 defaults 0 0PS
Обязательно последний параметр ставим в ноль чтобы при старте файловая система не проверялась на ошибке. Иначе у хоста начинается кёрнел паник :)
Да и.. вопрос по стабильности данной схемы работы.Кто и как долго с ней работает? Вот в частности автор.
Насколько всё это стабильно? Не слетит ли шифрованный раздел безвозвратно? Есть ли какие-то подводные камни, косяки?
Поделитесь инфой плиз!