3.4.12 Шифрование дисков и отдельных файлов
Скачать документ Шифрование дисков с помощью cryptsetup
Шифрование файлов средствами gpg
Окружение
- Версия РЕД ОС: 8
- Конфигурация: Рабочая станция
Вы можете подробнее ознакомиться с возможностью шифрования дисков и отдельных файлов, просмотрев наши обучающие видео:
на RuTube — Шифрование дисков и отдельных файлов;
в Яндекс.Дзен — Шифрование дисков и отдельных файлов;
в VK Видео — Шифрование дисков и отдельных файлов.
На наших каналах вы также сможете найти много другой полезной информации.
Шифрование дисков с помощью cryptsetup
Создается файл размером 20 Гб (размер указывается под нужды пользователя) под зашифрованный диск - на примере домашней директории пользователя user:
truncate -s 20G /home/.user chown user:user /home/.user
Создайте loop-устройство:
losetup /dev/loop0 /home/.user
Инициализируем зашифрованный диск (потребуется дважды ввести пароль):
cryptsetup -h sha256 -c aes-xts-plain64 -s 512 luksFormat /dev/loop0
Обязательно - указать соглашение в верхнем регистре YES.
Are you sure? (Type uppercase yes): YESEnter passphrase: Verify passphrase:
Откройте зашифрованный диск:
cryptsetup luksOpen /dev/loop0 user_home
В результате появится устройство /dev/mapper/user_home. Создаем на нем ФС:
mkfs.ext4 /dev/mapper/user_home
Примонтируйте зашифрованный диск:
mount /dev/mapper/user_home /mnt
Измените права на файловой системе:
chown -R user:user /mnt
Скопируйте содержимое домашнего каталога. Затем отмонтируйте зашифрованный диск:
umount /mnt
Закройте зашифрованный диск:
cryptsetup luksClose user_home
Отсоедините loop-устройство:
losetup -d /dev/loop0
Теперь производится архивация и удаление содержимого /home/user, затем монтирование в него зашифрованного диска. Если все работает нормально — бэкап удаляется.
Скрипт /home/mount.sh для автоматизации монтирования:
#!/bin/sh set -e losetup /dev/loop0 /home/.user cryptsetup luksOpen /dev/loop0 user_home mount /dev/mapper/user_home /home/user
Сделайте скрипт исполняемым:
chmod +x /home/mount.sh
Выполните скрипт:
/home/mount.sh
Скрипт /home/umount.sh, выполняющий обратные действия:
#!/bin/sh set -e umount /home/user cryptsetup luksClose user_home losetup -d /dev/loop0
Сделайте скрипт исполняемым:
chmod +x /home/umount.sh
Выполните скрипт:
/home/umount.sh
Когда оригинальных данных на диске не осталось, можно заполнить свободное место мусором (процесс долгий):
cd /home dd if=/dev/urandom of=./random.tmp bs=10M count=6300 sync rm random.tmp
Наконец, чтобы временные файлы (те же черновики электронных писем) писались на зашифрованный раздел, в /home/user/.bashrc следует дописать:
export TMPDIR=/home/user/temp mkdir -p $TMPDIR
Шифрование файлов средствами gpg
Сгенерируйте свой личный ключ для шифрования файлов:
gpg --gen-key
От вас потребуется ввести имя пользователя, почту и придумать пароль.
Просмотр списка ключей доступен командами:
gpg --list-keys gpg --list-secret-keys
Проверка отпечатка, что вы правильно сможете обратиться к ключу:
gpg --fingerprint 'user_name'
Зашифровывание содержимого каталога при помощи ключа:
tar -c -f- /home/user/Документы/* | gpg -e -c -r 'user_name'> file.tar.gpg
Расшифровывание - потребуется ввести пароль ключа:
gpg -d -o ./file.tar ./file.tar.gpg
Дата последнего изменения: 24.09.2024
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.