Изготовление зашифрованного раздела в Linux средствами ядра

Важные объявления связанные с Linux. Выпуск новых версий, ошибки безопасности, обновления и др.
Ответить
Аватара пользователя
vasilich
Сообщения: 696
Зарегистрирован: 03 окт 2012, 14:04
Темы: 498
Статус: Не в сети

Изготовление зашифрованного раздела в Linux средствами ядра

Сообщение vasilich » 26 фев 2013, 03:56

Всем пользователям Linux предоставляется мощнейшее криптографическое средство, но не каждый пользователь догадывается о его существовании. Cryptoloop является частью ядра и позволяет шифровать разделы промышленным алгоритмом AES.

Использовать Cpyptoloop довольно легко. Для начала убедитесь, что модуль загружен:
# lsmod | grep cryptoloop
cryptoloop 12671 1

...и если не загружен, то загрузите его:
# modprobe cryptoloop

Теперь нужно специальным образом подготовить раздел, который предполагается сделать зашифрованным. Подготовка носит необязательных характер и рекомендуется лишь параноикам и тем, кто хочет обеспечить самый высокий класс защиты. Допустим, требуется подготовить раздел /dev/sdb1. Заполним этот раздел случайными данными, чтобы усложнить возможную работу криптоаналитиков:
# dd if=/dev/urandom of=/dev/sdb1 bs=1M

Наверное, не стоит отдельно упоминать, что данная операция уничтожит все данные на разделе /dev/sdb1.

Теперь основная часть работы. Создадим виртуальный раздел /dev/loop0, который будет использоваться для доступа к расшифрованным данным. В качестве алгоритма шифрования выберем AES256, который стабильно демонстрирует отличные показатели криптостойкости.
# losetup -e aes -k 256 /dev/loop0 /dev/sdb1
Password:

Пользователя попросят придумать пароль. Желательно придумать стойкий вариант и хорошо его запомнить. В случае утраты пароля, восстановить данные будет невозможно.

Теперь создадим на устройстве /dev/loop0 файловую систему ext4 (вы можете выбрать любую другую):
# mkfs.ext4 /dev/loop0

Затем нужно смонтировать раздел и.... всё — можно работать:
# mkdir /mnt/cryptoloop
# mount -t ext4 /dev/loop0 /mnt/cryptoloop/

Теперь точка монтирования /mnt/cryptoloop может использоваться как самая обычная директория для хранения файлов. Физически, данные из /mnt/cryptoloop будут храниться в зашифрованном виде на разделе /dev/sdb1. После работы необходимо размонтировать все обратно:
# umount /mnt/cryptoloop/
# losetup -d /dev/loop0

Если пользователь пожелает, то можно можно прописать соответствующие параметры монтирования в файл /etc/fstab:
/dev/sdb1 /mnt/cryptoloop ext4 noauto,encryption=aes

Теперь в любой момент можно использовать команду mount /mnt/cryptoloop для доступа к зашифрованным данным и команду umount /mnt/cryptoloop для отключения.

Кроме раздела, можно создавать создавать и отдельные криптоконтейнеры в виде файлов (просто замените /dev/sdb1 на произвольное имя файла). Можно шифровать и флешки. Как видите, все просто и эффективно. А главное, что вы сможете получить доступ к своим данным на любом компьютере с Линуксом, ведь никаких дополнительных программ не требуется.

http://liberatum.ru/exclusive/25207

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость