Image

База знаний → Создание зашифрованного диска на VDS Linux

[Виртуальные сервера]
Дата публикации: 19.01.2024

Существуют задачи, когда нужно разместить на виртуальном сервере ВАЖНЫЕ данные, чтобы доступ к ним был только у владельца и при этом были доступны из любой точки мира посредством интернета.

Данная задача решается покупкой VDS сервера и созданием зашифрованного диска, на котором мы будем хранить свои данные с доступом по паролю.

В нашем примере мы будем использовать Linux Debian 12, а действия выполнять от пользователя root.

1. Установка необходимых пакетов

apt update
apt upgrade
apt install cryptsetup

1.1 Определимся с размером и создадим файл

dd if=/dev/zero of=/root/crypt-drive bs=1M count=1024

1.1.1 Далее преобразуем файл в формат раздела LUKS:

cryptsetup -y luksFormat /root/crypt-drive
WARNING!
========
This will overwrite data on /root/crypt-drive irrevocably.

Are you sure? (Type 'yes' in capital letters): YES
Enter passphrase for /root/crypt-drive: 
Verify passphrase:

Назначим пароль и введем подтверждение. Обратите внимание если Вы забудете пароль - восстановить его и доступ к данным возможности не будет.

1.1.2 Информация о файле

file /root/crypt-drive
/root/crypt-drive: LUKS encrypted file, ver 2, header size 16384, ID 3, algo sha256, salt 0x16ddc735c6afbd8c..., UUID: da846bb0-3001-4eb9-a533-0ad833e6a780, crc 0x62e90a39e3cd9bc7..., at 0x1000 {"keyslots":{"0":{"type":"luks2","key_size":64,"af":{"type":"luks1","stripes":4000,"hash":"sha256"},"area":{"type":"raw","offse

Крипто-контейнер готов к использованию, теперь его необходимо преобразовать в устройство crypt-volume.

1.2 Подключаем созданный крипто-контейнер

cryptsetup luksOpen /root/crypt-drive crypt-volume
Enter passphrase for /root/crypt-drive:

Вводим пароль.

1.2.1 Создаем файловую систему

mkfs.ext4 -j /dev/mapper/crypt-volume

1.2.2 Создаем папку для монтирования

mkdir /mnt/crypt-volume

1.2.3 Монтируем раздел

mount /dev/mapper/crypt-volume /mnt/crypt-volume

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

2. Проверка

df -h

Filesystem                Size  Used Avail Use% Mounted on
udev                      962M     0  962M   0% /dev
tmpfs                     197M  492K  197M   1% /run
/dev/sda1                  62G  2.7G   56G   5% /
tmpfs                     984M     0  984M   0% /dev/shm
tmpfs                     5.0M     0  5.0M   0% /run/lock
tmpfs                     197M     0  197M   0% /run/user/0
/dev/mapper/crypt-volume  974M   72K  908M   1% /mnt/crypt-volume

3. Дальнейшее использование

3.1 Отключение контейнера

umount /mnt/crypt-volume
cryptsetup luksClose crypt-volume

3.2 Подключение контейнера

cryptsetup luksOpen /root/crypt-drive crypt-volume
mount /dev/mapper/crypt-volume /mnt/crypt-volume

Обратите внимание! При перезагрузке сервера, если Вы специально не размонтировали контейнер - Вам потребуется его подключить заново как описано в пункте 3.2.

Смотрите также: Автоматическое монтирование зашифрованного файла Luks





Нет комментариев