Jak szyfrować dyski za pomocą LUKS w Fedorze Linux
W tym artykule wyjaśnimy pokrótce szyfrowanie blokowe, ujednoliconą konfigurację klucza systemu Linux (LUKS) i opiszemy instrukcje tworzenia zaszyfrowanego urządzenia blokowego w Fedorze Linux.
Blokuj szyfrowanie urządzenia
Szyfrowanie urządzenia blokowego służy do zabezpieczania danych na urządzeniu blokowym poprzez ich szyfrowanie, a do odszyfrowania danych użytkownik musi podać hasło lub klucz, aby uzyskać dostęp. Daje to dodatkowe mechanizmy bezpieczeństwa, ponieważ chroni zawartość urządzenia nawet jeśli zostało ono fizycznie odłączone od systemu.
Wprowadzenie do LUKS-a
LUKS (Linux Unified Key Setup) to standard szyfrowania urządzeń blokowych w systemie Linux, który działa poprzez ustalenie formatu danych na dysku oraz zasady zarządzania hasłami/kluczami . Przechowuje wszystkie niezbędne informacje konfiguracyjne w nagłówku partycji (znanym również jako nagłówek LUKS), umożliwiając w ten sposób bezproblemowy transport lub migrację danych.
LUKS wykorzystuje podsystem mapowania urządzeń jądra z modułem dm-crypt, aby zapewnić mapowanie niskiego poziomu, które przechowuje szyfrowanie i deszyfrowanie danych urządzenia. Programu cryptsetup można używać do wykonywania zadań na poziomie użytkownika, takich jak tworzenie i uzyskiwanie dostępu do zaszyfrowanych urządzeń.
Przygotowanie urządzenia blokowego
Poniższe instrukcje przedstawiają kroki tworzenia i konfigurowania szyfrowanych urządzeń blokowych po instalacji.
Zainstaluj pakiet cryptsetup.
dnf install cryptsetup-luks
Następnie wypełnij urządzenie losowymi danymi przed ich zaszyfrowaniem, ponieważ znacznie zwiększy to siłę szyfrowania za pomocą poniższych poleceń.
dd if=/dev/urandom of=/dev/sdb1 [slow with high quality random data ]
OR
badblocks -c 10240 -s -w -t random -v /dev/sdb1 [fast with high quality random data]
Ostrzeżenie: powyższe polecenia usuną wszelkie istniejące dane z urządzenia.
Formatowanie zaszyfrowanego urządzenia
Następnie użyj narzędzia wiersza poleceń cryptsetup, aby sformatować urządzenie jako urządzenie zaszyfrowane dm-crypt/LUKS.
cryptsetup luksFormat /dev/sdb1
Po uruchomieniu polecenia zostaniesz poproszony o wpisanie YES
(wielkimi literami) w celu dwukrotnego podania hasła potrzebnego do sformatowania urządzenia do użycia, jak pokazano na poniższym zrzucie ekranu.
Aby sprawdzić, czy operacja się powiodła, uruchom następujące polecenie.
cryptsetup isLuks /dev/sdb1 && echo Success
Możesz wyświetlić podsumowanie informacji o szyfrowaniu urządzenia.
cryptsetup luksDump /dev/sdb1
Tworzenie mapowania umożliwiającego dostęp do odszyfrowanej zawartości
W tej sekcji skonfigurujemy sposób dostępu do odszyfrowanej zawartości zaszyfrowanego urządzenia. Stworzymy mapowanie za pomocą narzędzia mapowania urządzeń jądra. Zaleca się utworzenie zrozumiałej nazwy dla tego mapowania, na przykład luk-uuid (gdzie <uuid>
zastępuje się LUKS UUID urządzenia ( Uniwersalny unikalny identyfikator).
Aby uzyskać UUID zaszyfrowanego urządzenia, uruchom następujące polecenie.
cryptsetup luksUUID /dev/sdb1
Po uzyskaniu UUID możesz utworzyć nazwę mapowania, jak pokazano (zostaniesz poproszony o wprowadzenie utworzonego wcześniej hasła).
cryptsetup luksOpen /dev/sdb1 luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Jeśli polecenie się powiedzie, węzeł urządzenia o nazwie /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
reprezentuje odszyfrowane urządzenie.
Z utworzonego właśnie urządzenia blokowego można odczytywać i zapisywać dane, tak jak w przypadku każdego innego niezaszyfrowanego urządzenia blokowego. Możesz wyświetlić informacje o zamapowanym urządzeniu, uruchamiając następujące polecenie.
dmsetup info /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Tworzenie systemów plików na zmapowanym urządzeniu
Teraz przyjrzymy się, jak utworzyć system plików na zmapowanym urządzeniu, co pozwoli ci używać zmapowanego węzła urządzenia tak samo, jak każdego innego urządzenia blokowego.
Aby utworzyć system plików ext4 na zmapowanym urządzeniu, uruchom następujące polecenie.
mkfs.ext4 /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Aby zamontować powyższy system plików, utwórz dla niego punkt montowania, np. /mnt/encrypted-device
, a następnie zamontuj go w następujący sposób.
mkdir -p /mnt/encrypted-device
mount /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c /mnt/encrypted-device/
Dodaj informacje o mapowaniu do /etc/crypttab i /etc/fstab
Następnie musimy skonfigurować system tak, aby automatycznie konfigurował mapowanie urządzenia, a także montował je podczas uruchamiania.
Informacje o mapowaniu należy dodać w pliku /etc/crypttab w następującym formacie.
luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c none
w powyższym formacie:
- luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c – to nazwa mapowania
- UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c – to nazwa urządzenia
Zapisz plik i zamknij go.
Następnie dodaj następujący wpis do /etc/fstab, aby automatycznie zamontować zmapowane urządzenie podczas uruchamiania systemu.
/dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c /mnt/encrypted-device ext4 0 0
Zapisz plik i zamknij go.
Następnie uruchom następujące polecenie, aby zaktualizować jednostki systemowe wygenerowane z tych plików.
systemctl daemon-reload
Kopia zapasowa nagłówków LUKS
Na koniec omówimy, jak wykonać kopię zapasową nagłówków LUKS. Jest to kluczowy krok, pozwalający uniknąć utraty wszystkich danych znajdujących się w zaszyfrowanym urządzeniu blokowym, na wypadek uszkodzenia sektorów zawierających nagłówki LUKS w wyniku błędu użytkownika lub awarii sprzętu. Ta czynność pozwala na odzyskanie danych.
Aby wykonać kopię zapasową nagłówków LUKS.
mkdir /root/backups
cryptsetup luksHeaderBackup --header-backup-file luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
I przywrócić nagłówki LUKS.
cryptsetup luksHeaderRestore --header-backup-file /root/backups/luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
To wszystko! W tym artykule wyjaśniliśmy, jak szyfrować urządzenia blokowe przy użyciu LUKS w dystrybucji Fedora Linux. Jeśli masz jakieś pytania lub uwagi dotyczące tego tematu lub przewodnika, skorzystaj z poniższego formularza opinii, aby się z nami skontaktować.