Jak zaszyfrować folder domowy w systemie Linux

Ci, którzy szukają łatwego, uniwersalnego sposobu zaszyfrowania folderu domowego w systemie Linux, nie muszą szukać dalej niż EcryptFS. Po prawidłowym skonfigurowaniu użytkownicy mogą bezproblemowo szyfrować i odszyfrowywać swoje prywatne pliki bez większego wysiłku.

OSTRZEŻENIE SPOILERA: Przewiń w dół i obejrzyj samouczek wideo na końcu tego artykułu.

Zainstaluj EcryptFS

Przed rozpoczęciem szyfrowania musisz zainstalować narzędzie szyfrujące. Jest bardzo popularny, działa na prawie wszystkich dystrybucjach Linuksa i jest łatwy w użyciu. Aby zainstalować, musisz mieć uruchomione Ubuntu, Debian, Arch Linux, Fedora, OpenSUSE lub możesz zbudować go ze źródła, jeśli używasz innej dystrybucji.

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

Inne systemy Linux

Nie możesz znaleźć instalowalnego pakietu EcryptFS w systemie operacyjnym Linux? Jeśli tak, musisz pobierz kod źródłowy i zainstaluj oprogramowanie ręcznie. Jeśli masz problemy z budowaniem oprogramowania, zapoznaj się z Strona dokumentacji EcryptFS.

Zaszyfruj folder domowy

Podczas tego procesu szyfrowania utworzymy użytkownika tymczasowego. Ten użytkownik nie będzie stały. Pod koniec tego samouczka całkowicie go usuniemy. Utworzenie tymczasowego konta superużytkownika jest ważne, ponieważ nie można zaszyfrować katalogu użytkownika po zalogowaniu.

Utwórz nowego użytkownika

Aby utworzyć nowego użytkownika, otwórz terminal, zaloguj się na konto root.

su

lub

sudo -s

Teraz, gdy powłoką jest root, użyj useradd, aby utworzyć konto tymczasowe. Pamiętaj, aby dodać -M, aby upewnić się, że system nie utworzy nowego katalogu domowego.

useradd -M encrypt-admin

Useradd utworzy nowego użytkownika, ale nie ma hasła. Używając passwd, przypisz encrypt-admin nowe hasło UNIX.

passwd encrypt-admin

Encrypt-admin jest gotowy do użycia, ale nie będzie mógł uzyskać dostępu i wykonywać poleceń roota. Aby umożliwić użytkownikowi uruchamianie poleceń root, musimy dodać je do pliku sudoers. Używając visudo, edytuj plik konfiguracyjny sudo.

EDITOR=nano visudo

W edytorze tekstu Nano przewiń w dół i znajdź „# Specyfikacja uprawnień użytkownika”. Pod tym powinieneś zobaczyć „root ALL = (ALL: ALL) ALL”. Naciśnij klawisz Enter na klawiaturze pod tym wierszem i napisz w Nano.

encrypt-admin ALL=(ALL:ALL) ALL

Zapisz plik visudo, naciskając Ctrl + O, a następnie zamknij za pomocą Ctrl + X.

Rozpocznij szyfrowanie

Aby rozpocząć proces szyfrowania, wyloguj się z nazwy użytkownika, dla której planujesz rozpocząć szyfrowanie. Na ekranie logowania naciśnij Alt + Ctrl + F1. Jeśli ta kombinacja przycisków nie działa, spróbuj od F2 do F6.

Korzystając z zachęty TTY, wpisz encrypt-admin w monicie logowania, a następnie hasło ustawione wcześniej. Następnie użyj EncryptFS, aby rozpocząć szyfrowanie.

Uwaga: zmień „twoja nazwa użytkownika” na nazwę konta użytkownika, z którego właśnie się wylogowałeś. Aby zaszyfrować wiele kont użytkowników, uruchom to polecenie wiele razy.

sudo ecryptfs-migrate-home –u yourusername

Powyższe polecenie przeniesie użytkownika do zaszyfrowanego folderu domowego. Stąd można bezpiecznie wylogować się z tymczasowego konta administratora i wrócić do zwykłego użytkownika. Wyloguj się z konsoli TTY za pomocą:

exit

Wypisanie polecenia wyjścia powinno natychmiast powrócić do poprzedniego ekranu logowania. Stamtąd naciśnij Alt + F2 – F7, aby powrócić do trybu graficznego.

Usuń konto użytkownika

EcryptFS jest w pełni skonfigurowany w systemie Linux, więc czas pozbyć się konta szyfrowania administratora. Zacznij od usunięcia go z pliku sudoers. Otwórz terminal i zmodyfikuj plik visudo.

sudo -s

EDITOR=nano visudo

Przewiń w dół plik sudoers i usuń kod dodany wcześniej w przewodniku.

encrypt-admin ALL=(ALL:ALL) ALL

Zapisz edycję pliku sudoer w Nano, naciskając Ctrl + O na klawiaturze. Wyjdź z Nano i wróć do powłoki terminala za pomocą Ctrl + X.

Encrypt-admin nie ma już możliwości uzyskania uprawnień roota lub modyfikowania systemu w jakikolwiek sposób. W tym momencie jest nieszkodliwy i można go tam po prostu zostawić. Jeśli jednak nie chcesz mieć wielu użytkowników na swoim komputerze z systemem Linux, dobrym pomysłem może być całkowite usunięcie go. W terminalu użyj polecenia userdel, aby się go pozbyć.

sudo userdel encrypt-admin

Dodaj hasło szyfrowania

EcryptFS jest prawie gotowy do pracy. Pozostało tylko ustawić nowe hasło. Otwórz terminal (bez używania sudo lub roota) i wprowadź nowe hasło. Pamiętaj, że szyfrowanie bez bezpiecznego hasła jest bezcelowe. Udaj się do strongpasswordgenerator.com i utwórz silne hasło szyfrowania.

Uwaga: nie chcesz używać generatora do tworzenia nowego hasła? Przeczytaj ten artykuł aby dowiedzieć się, jak zamiast tego utworzyć własne bezpieczne hasło.

ecryptfs-add-passphrase

Po zakończeniu pracy „ecryptfs-add-passphrase” folder domowy powinien być w pełni zaszyfrowany. Aby zacząć go używać, uruchom ponownie komputer z systemem Linux. Po ponownym uruchomieniu EcryptFS będzie wymagać nowego hasła, aby zalogować się poprawnie.