Криптоконтейнеры LUKS

1.Создание криптоконтейнера

Установка необходимого пакета

sudo apt-get install cryptsetup

Создание файла размером 32ГБ для хранения секретных данных

dd if=/dev/urandom of=1.img bs=1M count=32568

Ход процесса создания файла можно наблюдать отправляя сигнал USR1 процессу dd. В данном примере его PID=12586 (ps aux|grep dd)

kill -USR1 12586

Привязка блочного устройства к созданному файлу

sudo losetup /dev/loop0 1.img

Форматирование диска LUKS (алгоритм AES с длиной ключа 256):

sudo cryptsetup -c aes -s 256 luksFormat /dev/loop0

На вопрос “Are you sure?” надо ответить “YES”, затем дважды ввести парольную фразу

Отформатированный диск LUKS необходимо подключить:

sudo cryptsetup luksOpen /dev/loop0 crypt_disk

При подключении диска пароль будет запрошен ещё раз. После выполнения команды будет создано устройство /dev/mapper/crypt_disk

На данном устройстве требуется создать файловую систему:

sudo mkfs.ext4 /dev/mapper/crypt_disk

Затем готовый диск LUKS можно отключить:

sudo cryptsetup luksClose crypt_disk
sudo losetup -d /dev/loop0

2.2. Подключение существующего диска LUKS

sudo losetup /dev/loop0 1.img

Подключение диска LUKS:

sudo cryptsetup luksOpen /dev/loop0 crypt_disk

После выполнения команды будет создано устройство /dev/mapper/crypt_disk. Далее его следует смонтировать в требуемое место файловой системы:

sudo mount /dev/mapper/crypt_disk /mnt

2.3. Отключение существующего диска LUKS

Диск следует размонтировать, затем отключить, и удалить соответствующее ему loopback-устройство:

sudo umount /dev/mapper/crypt_disk
sudo cryptsetup luksClose crypt_disk
sudo losetup -d /dev/loop0

Подробнее http://sisyphus.ru/en/srpm/Branch4/cryptsetup-luks/sources/1