#6 Криптография. Полное шифрование диска с использованием dm-crypt и LUKS.
Здравствуйте, дорогие друзья.
Давайте начнем, и я собираюсь зашифровать весь USB-накопитель, с помощью dmcrypt и luks. Вы должны выполнить те же действия. Если Вы хотите зашифровать раздел жесткого диска или внешний жесткий диск USB, следующие действия уничтожат все данные на диске. Я рекомендую Вам сделать резервную копию.
Прежде чем продолжить, имейте в виду, что это решение для полного шифрования диска операционных систем на базе Linux , и если Вы хотите получить доступ к зашифрованному диску в Windows или Mac, Вы должны установить другое программное обеспечение, например, в Windows, Вы можете установить librecrypt для доступа к зашифрованному диску.
Librecrypt — единственный способ читать тома luks в Windows. Первый шаг — установить crypt, если ее еще нет. Cryptsetup — это утилита для настройки зашифрованных файловых систем:
C помощью устройства сопоставления и dmcrypt, все следующие комментарии будут быть запущенным как root, поэтому, если у Вас нет установки crypt, Вы можете установить ее с помощью apt install cryptsetup:
В некоторых дистрибутивах Linux, таких как Fedora команда будет выглядеть как: «apt install cryptsetup-luks».
Следующий шаг является необязательным, но рекомендуется и заключается в заполнении раздела, который вы хотите зашифровать, случайными данными. Это гарантирует, что мы увидим какие-то случайные данные и защитит от раскрытия шаблоны использования. В данный момент я вставляю usb-накопитель, и у меня появляется всплывающее окно usb-накопителя:
Если Вы работаете в VMware, то у Вас появится то же окно.
К слову сказать, в VirtualBox необходимо установить Extension Pack – это дополнение к VirtualBox. Далее, проверяем, подмонтировался ли USB-накопитель, с помощью команды fdisk –l:
Отобразился диск как «/dev/sdb».
В Вашем случае может отображаться другое имя, например, sdc или sdd. Если Вы хотите зашифровать только раздел, а не весь диск, используйте это имя раздела имя, которое всегда заканчивается цифрой:
Наиболее важным является использование правильного имени.
Убедитесь в том, что Вы сделали резервное копирование файлов, на случай непредвиденных обстоятельств. Один из способов генерации случайных данных – это команда: «dd if=/dev/urandom of=/dev/sdb status=progress»:
Операция займет несколько минут, в зависимости от размера Вашего диска.
Я останавливаю данную операцию, с помощью команды «Ctrl+C». На следующем шаге будет инициализирован раздел luks, и будет установлена начальная кодовая фраза, либо через запрос, либо через файл ключа. В этом примере мы будем использовать парольную фразу. Команда завершится неудачно, если раздел уже смонтирован, поэтому, пожалуйста, отключите его.
Команда будет выглядеть как: «cryptsetup –y –v luksFormat /dev/sdb»:
Далее я набираю прописные буквы, «YES»:
После этого вводим ключевую фразу. У меня это будет слово «secret»:
Следующим шагом является открытие зашифрованного устройства и настройка имени сопоставления, после успешной проверки. Это делается с помощью команды: «cryptsetup luksOpen /dev/sdb secretdata»:
Далее, с помощью команды «ls», я просматриваю содержимое директории «/dev/mapper/secretdata»:
Далее нам нужно проверить более расширенное содержимое директории «secretdata». Это делается с помощью команды: «ls –l /dev/mapper/secretdata»:
Проверим содержимое «dm-0»:
Мы замечаем, что это специальное блочное устройство (символ «b»). Вы можете использовать следующую команду, чтобы увидеть статус состояния настройки сопоставления и имя секрета сопоставления данных. Это делается с помощью команды: «cryptsetup status secretdata»:
Вы можете увидеть, что алгоритм симметричного шифрования использовал длину ключа и многое другое.
Далее мы отформатируем файловую систему, с помощью команды: «mkfs.ext4 /dev/mapper/secretdata»:
Ext4 – наиболее часто используемая файловая система для Linux.
Наконец, мы монтируем зашифрованную файловую систему к основному файловому дереву, с помощью команды: «mount /dev/mapper/secretdata /mnt»:
На этом этапе Вы можете использовать смонтированный диск, который Вы обычно копируете, перемещаете или стирайте файлы на нем, а также на любом другом диске. Содержимое диска будет в директории «/mnt/». Вы также можете создать новый каталог и смонтировать зашифрованный диск в этот каталог. Я создаю каталог в секретных данных корневого каталога, и монтирую зашифрованный диск в этот каталог. Это команды: «mkdir /root/secretdata», «mount /dev/mapper/secretdata /root/secretdata/», «df -h»:
Я могу получить доступ к секретным данным /dev/mapper, поэтому есть зашифрованный диск как в /mnt/, так и в /secretdata/.
В Linux Вы можете смонтировать устройство хранения или диск в других каталогах. Шифрование прозрачное, и Вы ничего не заметите.
Когда диск смонтирован, он может быть доступен обычным образом любому. Хакер может запустить эксплойт, и подключиться с помощью ssh к Вашей машине, и украсть все Ваши данные.
Как только Вы размонтируете диск, данные станут недоступны.
#1 Криптография. Введение в хеши.
#2 Криптография. Свойства алгоритмов хеширования.
#3 Криптография. Применение алгоритмов хеширования.
#4 Криптография. Атаки на криптографические алгоритмы хеширования.