Wyszukiwanie w witrynie

LUKS: Szyfrowanie danych na dysku twardym systemu Linux z obsługą NTFS w systemie Linux


Akronim LUKS oznacza Linux Unified Key Setup, która jest szeroko rozpowszechnioną metodą szyfrowania dysku używaną przez jądro Linuksa i jest implementowana za pomocą pakietu cryptsetup.

Wiersz poleceń cryptsetup szyfruje dysk woluminowy na bieżąco przy użyciu symetrycznego klucza szyfrowania pochodzącego z dostarczonego hasła podawanego za każdym razem, gdy dysk woluminowy, partycja, a także cały dysk (nawet pamięć USB) są montowane w hierarchię systemu plików i używa szyfru aes-cbc-essiv:sha256.

Ponieważ LUKS może szyfrować całe urządzenia blokowe (dyski twarde, pamięci USB, dyski Flash, partycje, grupy woluminów itp.) w systemach Linux, jest w dużej mierze zalecane do ochrony wymiennych nośników pamięci, dysków twardych laptopów lub plików wymiany systemu Linux i nie jest zalecane do plików szyfrowanie na poziomie.

NTFS (New Technology File System) to zastrzeżony system plików opracowany przez firmę Microsoft.

Ubuntu 14.04 zapewnia pełną obsługę szyfrowania LUKS, a także natywną obsługę NTFS dla Windows za pomocą pakietu ntfs-3g.

Aby udowodnić mój punkt widzenia w tym samouczku, dodałem nowy dysk twardy (4.) w pudełku Ubuntu 14.04 (odniesienie systemowe do nowo dodanego dysku twardego to /dev/sdd ), który zostanie podzielony na dwie partycje.

  1. Jedna partycja (/dev/sdd1 -primary) używana do szyfrowania LUKS.
  2. Druga partycja (/dev/sdd5 – rozszerzona) sformatowana w systemie plików NTFS w celu uzyskania dostępu do danych zarówno w systemach Linux, jak i Windows.

Również partycje zostaną automatycznie zamontowane w systemie Ubuntu 14.04 po ponownym uruchomieniu.

Krok 1: Utwórz partycje dysku

1. Po fizycznym dodaniu dysku twardego do komputera użyj polecenia ls, aby wyświetlić listę wszystkich /dev/devices (czwarty dysk to /dev/sdd).

ls /dev/sd*

2. Następnie sprawdź nowo dodany dysk twardy za pomocą polecenia fdisk.

sudo fdisk –l /dev/sdd

Ponieważ nie zapisano żadnego systemu plików, dysk nie zawiera jeszcze prawidłowej tablicy partycji.

3. Następne kroki dzielą dysk twardy na dwie partycje za pomocą narzędzia dyskowego cfdisk.

sudo cfdisk /dev/sdd

4. Następny ekran otwiera tryb interaktywny cfdisk. Wybierz Wolne miejsce na dysku twardym i przejdź do opcji Nowy za pomocą strzałek w lewo/prawo.

5. Wybierz typ partycji jako Podstawowa i naciśnij Enter.

6. Zapisz żądany rozmiar partycji w MB.

7. Utwórz tę partycję na początku wolnego miejsca na dysku twardym.

8. Następnie przejdź do opcji Typ partycji i naciśnij Enter.

9. Następny monit przedstawia listę wszystkich typów systemów plików i ich kodów liczbowych (liczba szesnastkowa). Ta partycja będzie zaszyfrowana Linux LUKS, więc wybierz kod 83 i ponownie naciśnij Enter, aby utworzyć partycję.

10. Zostanie utworzona pierwsza partycja, a monit narzędzia cfdisk wróci do początku. Aby utworzyć drugą partycję używaną jako NTFS, wybierz pozostałe Wolne miejsce, przejdź do opcji Nowa i naciśnij klawisz Enter .

11. Tym razem partycja będzie partycją rozszerzoną logiczną. Przejdź więc do opcji Logiczne i ponownie naciśnij Enter.

12. Wprowadź ponownie rozmiar partycji. Aby wykorzystać pozostałe wolne miejsce na nową partycję, pozostaw domyślną wartość rozmiaru i po prostu naciśnij Enter.

13. Ponownie wybierz kod typu partycji. Dla systemu plików NTFS wybierz kod woluminu 86.

14. Po przejrzeniu i zweryfikowaniu partycji wybierz Napisz, odpowiedz tak na kolejne interaktywne pytanie, a następnie Wyjdź, aby opuścić 14. narzędzie b>cfdisk.

Gratulacje! Twoje partycje zostały pomyślnie utworzone i są teraz gotowe do sformatowania i użycia.

15. Aby ponownie zweryfikować tabelę partycji dysku, wydaj ponownie polecenie fdisk, które wyświetli szczegółowe informacje o tablicy partycji.

sudo fdisk –l /dev/sdd

Krok 2: Utwórz system plików partycji

System plików NTFS

16. Aby utworzyć system plików NTFS na drugiej partycji, uruchom polecenie mkfs.

sudo mkfs.ntfs /dev/sdd5

17. Aby partycja była dostępna, musi być zamontowana w systemie plików w punkcie montowania. Zamontuj drugą partycję na czwartym dysku twardym w punkcie montowania /opt za pomocą polecenia mount.

sudo mount /dev/sdd5 /opt

18. Następnie sprawdź, czy partycja jest dostępna i jest wymieniona w pliku /etc/mtab za pomocą polecenia cat.

cat /etc/mtab

19. Aby odmontować partycję, użyj następującego polecenia.

sudo umount /opt
ZEWN4 LUKS

20. Upewnij się, że w Twoim systemie jest zainstalowany pakiet cryptsetup.

sudo apt-get install cryptsetup		[On Debian Based Systems]

yum install cryptsetup				[On RedHat Based Systems]

21. Teraz nadszedł czas, aby sformatować pierwszą partycję na czwartym dysku twardym z systemem plików ext4, wydając następujące polecenie.

sudo luksformat  -t ext4  /dev/sdd1

Odpowiedz wielkimi literami TAK na pytanie „Czy jesteś pewien?” i wpisz trzykrotnie żądane hasło.

Uwaga: w zależności od rozmiaru partycji i szybkości HDD utworzenie systemu plików może zająć trochę czasu.

22. Możesz także sprawdzić stan urządzenia partycji.

sudo cryptsetup luksDump  /dev/sdd1

23. LUKS obsługuje maksymalnie 8 dodanych haseł. Aby dodać hasło, użyj następującego polecenia.

sudo cryptsetup luksAddKey /dev/sdd1

Aby usunąć hasło, użyj.

sudo cryptsetup luksRemoveKey /dev/sdd1

24. Aby ta partycja Zaszyfrowana była aktywna, musi mieć wpis nazwy (zainicjowany) do katalogu /dev/mapper za pomocą pakiet cryptsetup.

To ustawienie wymaga następującej składni wiersza poleceń:

sudo cryptsetup luksOpen  /dev/LUKS_partiton  device_name

Gdzie „nazwa_urządzenia” może być dowolną nazwą opisową, która Ci się podoba! (Nazwałem go moim crypted_volume). Rzeczywiste polecenie będzie wyglądać jak pokazano poniżej.

sudo cryptsetup luksOpen  /dev/sdd1 crypted_volume

25. Następnie sprawdź, czy Twoje urządzenie znajduje się na liście /dev/mapper, katalogu, dowiązaniu symbolicznym i statusie urządzenia.

ls /dev/mapper
ls –all /dev/mapper/encrypt_volume

sudo cryptsetup –v status encrypt_volume

26. Teraz, aby udostępnić urządzenie partycji, zamontuj je w swoim systemie w punkcie montowania za pomocą polecenia mount.

sudo mount  /dev/mapper/crypted_volume  /mnt

Jak widać partycja jest zamontowana i dostępna do zapisu danych.

27. Aby uczynić go niedostępnym, po prostu odmontuj go z systemu i zamknij urządzenie.

sudo umount  /mnt
sudo cryptsetup luksClose crypted_volume

Krok 3: Automatycznie zamontuj partycję

Jeśli używasz stałego dysku twardego i chcesz, aby obie partycje zostały automatycznie zamontowane po ponownym uruchomieniu komputera, musisz wykonać te dwa kroki.

28. Najpierw edytuj plik /etc/crypttab i dodaj następujące dane.

sudo nano /etc/crypttab
  1. Nazwa docelowa: opisowa nazwa Twojego urządzenia (patrz punkt 22 powyżej na temat EXT4 LUKS).
  2. Dysk źródłowy: Partycja dysku twardego sformatowana dla LUKS (patrz punkt 21 powyżej na EXT4 LUKS).
  3. Plik klucza: nie wybieraj żadnego
  4. Opcje: określ luks

Ostatnia linia będzie wyglądać tak, jak pokazano poniżej.

encrypt_volume               /dev/sdd1          none       luks

29. Następnie edytuj plik /etc/fstab i określ nazwę urządzenia, punkt podłączenia, typ systemu plików i inne opcje.

sudo nano /etc/fstab

W ostatniej linii użyj następującej składni.

/dev/mapper/device_name (or UUID)	/mount_point     filesystem_type     options    dump   pass

I dodaj konkretną treść.

/dev/mapper/encrypt_volume      /mnt    ext4    defaults,errors=remount-ro     0     0

30. Aby uzyskać UUID urządzenia, użyj następującego polecenia.

sudo blkid

31. Aby dodać również utworzony wcześniej typ partycji NTFS, użyj tej samej składni co powyżej, w nowej linii w fstab (tutaj plik Linux dołącza przekierowanie Jest używane ).

sudo su -
echo "/dev/sdd5	/opt	ntfs		defaults		0              0"  >> /etc/fstab

32. Aby zweryfikować zmiany, uruchom ponownie komputer, naciśnij Enter po komunikacie rozruchowym „Rozpoczęcie konfigurowania urządzenia sieciowego” i wpisz hasło Twojego urządzenia.

Jak widać obie partycje dysku zostały automatycznie zamontowane w hierarchii systemu plików Ubuntu. Radzimy nie używać automatycznie zaszyfrowanych woluminów z pliku fstab na fizycznie zdalnych serwerach, jeśli nie możesz mieć dostępu do sekwencji ponownego uruchomienia w celu podania zaszyfrowanego hasła woluminu.

Te same ustawienia można zastosować do wszystkich typów nośników wymiennych, takich jak pamięć USB, pamięć Flash, zewnętrzny dysk twardy itp. w celu ochrony ważnych, tajnych lub wrażliwych danych w przypadku podsłuchu lub kradzieży.