Як зашифрувати домашню папку в Linux

Тим, хто шукає простий, універсальний спосіб шифрування домашньої папки в Linux, не потрібно дивитися далі, ніж EcryptFS. При правильному налаштуванні користувачі можуть без особливих зусиль шифрувати та дешифрувати свої особисті дані.

ПОВІДОМЛЕННЯ СПОЙЛЕРА: прокрутіть униз і перегляньте відеоурок у кінці цієї статті.

Встановіть EcryptFS

Перш ніж почати будь-яке шифрування, вам потрібно буде встановити інструмент шифрування. Він дуже популярний, працює майже з усіма дистрибутивами Linux і простий у використанні. Для встановлення вам, мабуть, потрібно запустити Ubuntu, Debian, Arch Linux, Fedora, OpenSUSE, або ви можете створити його з вихідного коду, якщо ви використовуєте інший дистрибутив.

Ubuntu

sudo apt install ecryptfs-utils

Debian

sudo apt-get install ecryptfs-utils

Arch Linux

sudo pacman -S  ecryptfs-utils

Fedora

sudo dnf install ecryptfs-utils

OpenSUSE

sudo zypper install  ecryptfs-utils

Інші Linux

Не можете знайти встановлюваний пакет EcryptFS у своїй операційній системі Linux? Якщо так, то вам потрібно завантажити вихідний код і встановіть програмне забезпечення вручну. Якщо у вас виникли проблеми зі створенням програмного забезпечення, перегляньте Сторінка документації EcryptFS.

Шифруйте домашню папку

Під час цього процесу шифрування ми створимо тимчасового користувача. Цей користувач не буде постійним. В кінці цього підручника ми повністю видалимо його. Створення тимчасового облікового запису суперкористувача є важливим, оскільки неможливо зашифрувати каталог користувача під час входу.

Створити нового користувача

Щоб створити нового користувача, відкрийте термінал, увійдіть в обліковий запис root.

su

або

sudo -s

Тепер, коли оболонка є root, використовуйте useradd, щоб створити тимчасовий обліковий запис. Обов’язково додайте -M, щоб система не створила новий домашній каталог.

useradd -M encrypt-admin

Useradd створить нового користувача, але він не має пароля. Використовуючи passwd, призначте encrypt-admin новий пароль UNIX.

passwd encrypt-admin

Encrypt-admin готовий до використання, але не зможе отримати доступ та виконати команди root. Щоб дозволити користувачеві запускати root-команди, нам потрібно додати його до файлу sudoers. За допомогою visudo відредагуйте файл конфігурації sudo.

EDITOR=nano visudo

Всередині текстового редактора Nano прокрутіть вниз і знайдіть «# Специфікація привілеїв користувача». Під цим ви повинні побачити «root ALL=(ALL:ALL) ALL». Натисніть Enter на клавіатурі під цим рядком і напишіть наступне в Nano.

encrypt-admin ALL=(ALL:ALL) ALL

Збережіть файл visudo, натиснувши Ctrl + O, а потім закрийте Ctrl + X.

Почніть шифрування

Щоб розпочати процес шифрування, вийдіть із імені користувача, з якого ви плануєте розпочати шифрування. На екрані входу натисніть Alt + Ctrl + F1. Якщо ця комбінація кнопок не працює, спробуйте від F2 до F6.

Використовуючи підказку TTY, напишіть encrypt-admin у підказці входу, а потім пароль, встановлений раніше. Потім скористайтеся EncryptFS, щоб почати шифрування.

Примітка: змініть «ваше ім’я користувача» на ім’я облікового запису користувача, з якого ви щойно вийшли. Щоб зашифрувати кілька облікових записів користувачів, виконайте цю команду кілька разів.

sudo ecryptfs-migrate-home –u yourusername

Наведена вище команда перенесе вашого користувача в зашифровану домашню папку. Звідси можна безпечно вийти з облікового запису тимчасового адміністратора та повернутися до звичайного користувача. Вийдіть з консолі TTY за допомогою:

exit

Запис команди виходу має миттєво повернутися до попереднього екрана входу. Звідти натисніть Alt + F2 – F7, щоб повернутися до графічного режиму.

Видалити обліковий запис користувача

EcryptFS повністю налаштована в Linux, тому настав час позбутися облікового запису encrypt-admin. Почніть з видалення його з файлу sudoers. Відкрийте термінал і змініть Visudo.

sudo -s

EDITOR=nano visudo

Прокрутіть вниз файл sudoers і видаліть код, доданий раніше в посібнику.

encrypt-admin ALL=(ALL:ALL) ALL

Збережіть редагування файлу sudoer в Nano, натиснувши Ctrl + O на клавіатурі. Вийдіть із Nano і поверніться до термінальної оболонки за допомогою Ctrl + X.

Encrypt-admin більше не має можливості отримати root-доступ або будь-яким чином змінити систему. На даний момент він нешкідливий, і його можна просто залишити. Проте, якщо ви не зацікавлені в тому, щоб на вашому ПК Linux було кілька користувачів, може бути гарною ідеєю видалити його взагалі. У терміналі скористайтеся командою userdel, щоб позбутися від неї.

sudo userdel encrypt-admin

Додати пароль шифрування

EcryptFS майже готовий до роботи. Залишилося лише встановити новий пароль. Відкрийте термінал (без використання sudo або root) і введіть додавання нової парольної фрази. Майте на увазі, що шифрування без безпечного пароля не має сенсу. Перейдіть до strongpasswordgenerator.com і створити надійну парольну фразу для шифрування.

Примітка: не хочете використовувати генератор для створення нового пароля? Перегляньте цю статтю щоб дізнатися, як створити власну безпечну парольну фразу.

ecryptfs-add-passphrase

Коли «ecryptfs-add-passphrase» закінчиться, ваша домашня папка має бути повністю зашифрована. Щоб почати використовувати його, перезавантажте ПК з Linux. Після перезапуску EcryptFS вимагатиме ваш новий пароль для правильного входу.