Как создать скрытые файловые системы в Linux с помощью Shufflecake

Shufflecake — это простая, но очень мощная утилита для шифрования файловых систем для Linux. В отличие от традиционных схем шифрования дисков, Shufflecake работает не только путем шифрования данных внутри файловой системы, но и скрывая их от самой системы. Эта статья покажет вам, как установить Shufflecake на Ubuntu для создания и поддержания скрытой и зашифрованной файловой системы в Linux.
Содержание
- Установка Shufflecake
- Создание фиктивного тома для Shufflecake
- Инициализация скрытого тома Shufflecake
- Отмонтирование и переключение скрытых томов
- Изменение пароля для ваших скрытых томов
Установка Shufflecake
Первый шаг к получению Shufflecake — установить его зависимости в вашей системе. Для этого выполните следующую команду:
sudo apt install linux-headers-$(uname -r) libdevmapper-dev libgcrypt-dev makegccСкачайте последний релизный архив с страницы проекта на Codeberg.

Перейдите в каталог Загрузок вашего компьютера, затем извлеките архив релиза с помощью Tar:
tar xzf ./Downloads/v0.4.4.tar.gzК сведению: узнайте, как разархивировать файлы Tar в Linux с помощью графических и терминальных инструментов.
Откройте папку с исходным кодом Shufflecake, затем выполните следующую команду для компиляции его бинарного файла в вашей системе:
cd ./Downloads/shufflecake-c
makeПримечание: компиляция Shufflecake может занять от 2 до 5 минут в зависимости от ресурсов вашей системы.
Скопируйте Shufflecake из папки релиза в бинарный путь вашего компьютера:
cp ./shufflecake /usr/bin/Проверьте, может ли ваша машина правильно запустить Shufflecake из системного пути:
shufflecake --helpСоздание фиктивного тома для Shufflecake
В большинстве случаев Shufflecake может работать на любом типе блочного устройства хранения. Это включает как физические диски, так и логические разделы. Это делает его полезным для создания внешнего диска с зашифрованной файловой системой, который при этом остается доступным как обычное устройство.
Чтобы создать фиктивный том, откройте утилиту Gnome Disks из вашего лаунчера приложений, затем выберите диск, который вы хотите отформатировать.

Нажмите на пунктирную кнопку в правом верхнем углу окна, затем выберите Форматировать диск…

Нажмите на выпадающий список рядом с меткой Стереть:, затем выберите Перезаписать существующие данные нулями (Медленно).
Выберите Форматировать…, чтобы начать процесс форматирования.
После завершения нажмите на значок +, чтобы создать новый раздел на вашем диске.

Укажите размер раздела, равный четверти от общего объема вашего диска. Это будет служить незашифрованным пространством вашего диска, к которому вы можете получить доступ без Shufflecake.

Выберите оставшийся блок Свободное пространство в утилите Дисков, затем нажмите +, чтобы создать новый раздел.

Выделите все свободное дисковое пространство для вашего фиктивного раздела. Это позволит вам создать несколько скрытых томов внутри вашего диска Shufflecake.
Полезно знать: узнайте, как создать свои собственные пользовательские разделы в Linux.
Инициализация скрытого тома Shufflecake
На этом этапе у вас уже есть Shufflecake в бинарной папке вашей системы и фиктивный раздел диска. Чтобы создать из него зашифрованную файловую систему, вам нужно инициализировать его в Shufflecake.
Перейдите в папку релиза, затем загрузите модуль ядра Shufflecake на вашем компьютере:
cd ./Downloads/shufflecake-c
sudo insmod dm-sflc.koЗапустите lsblk, чтобы найти имя диска, на котором вы хотите установить Shufflecake. В моем случае я создам скрытый том внутри моего фиктивного раздела “/dev/sda2.”

Выполните следующую команду, чтобы инициализировать Shufflecake для вашего фиктивного раздела:
sudo shufflecake init /dev/sda2Примечание: Shufflecake будет работать только на не системных дисках. Запуск Shufflecake на вашем основном диске сделает вашу ОС не загружаемой.
Это запустит мастер, который спросит вас о деталях вашего скрытого тома. Введите “5”, затем нажмите Enter, чтобы создать пять скрытых томов.
Укажите пароль для каждого из ваших скрытых томов, затем нажмите Enter. Убедитесь, что вы находитесь в частном месте, прежде чем вводить его, так как мастер Shufflecake не скроет ваш ввод.

Примечание: процесс инициализации может занять от 5 до 10 минут в зависимости от размера вашего раздела.
Создание файловой системы для вашего скрытого тома
После завершения создайте файловую систему для ваших скрытых томов. Для этого откройте скрытый том, который вы хотите отформатировать, используя следующую команду:
sudo shufflecake open /dev/sda2Это запросит у вас пароль тома, который вы хотите открыть.

Подтвердите, что Shufflecake правильно загрузил ваш скрытый том, запустив lsblk.

Создайте файловую систему, которую вы хотите установить на вашем скрытом томе. Например, выполнение mkfs.fat создаст файловую систему FAT внутри “Тома 2”:
sudo mkfs.fat -F32/dev/mapper/sflc_0_2Примечание: тома Shufflecake действуют как виртуальные устройства внутри вашего компьютера. Таким образом, вы всегда найдете его скрытые тома под “/dev/mapper/sflc_0_n” вместо обычного “/dev.”
После этого Ubuntu должна автоматически смонтировать ваш новый скрытый том в текущей сессии. Чтобы получить к нему доступ, нажмите на значок Диск на левой боковой панели рабочего стола.

Проверьте, работает ли ваша файловая система правильно, создав файл или папку внутри нее.
Отмонтирование и переключение скрытых томов
В отличие от обычных дисков, извлечение тома Shufflecake требует от вас как отмонтировать виртуальный диск, так и закрыть его соединение с Shufflecake. Для этого щелкните правой кнопкой мыши на значке диска на панели задач Ubuntu, затем выберите Отмонтировать.
Откройте новую сессию терминала, затем выполните следующую команду для вашего диска:
sudo shufflecake close /dev/sda2Вы также можете переключиться на другой раздел вашего диска Shufflecake, повторно запустив sudo shufflecake open /dev/sda2, затем указав соответствующий пароль для вашего скрытого тома.
Изменение пароля для ваших скрытых томов
Помимо создания и загрузки скрытых томов, утилита Shufflecake также позволяет вам изменять пароли существующих томов. Для этого откройте новую сессию терминала, затем выполните следующую команду:
sudo shufflecake changepwd /dev/sda2Это запустит мастер, который спросит вас о пароле скрытого тома, который вы хотите изменить. Укажите пароль, затем нажмите Enter.
Мастер затем запросит у вас новый пароль для вашего скрытого тома. Напишите новый пароль, затем нажмите Enter, чтобы применить новые изменения.
Наконец, проверьте, работает ли ваш новый пароль для вашего тома, запустив подкоманду testpwd:
sudo shufflecake testpwd /dev/sda2Создание и поддержание скрытых файловых систем на внешних дисках — это только первый шаг в исследовании мира безопасности данных и конфиденциальности. Узнайте, как создать зашифрованные файлы в вашей файловой системе с помощью Tomb.
Кредит изображения: FlyD через Unsplash, разработчики Shufflecake и Wikimedia Commons. Все изменения и скриншоты сделаны Рамсесом Редом.