LUKS / FreeOTFE
2007-11-04, Niedziela 15:31:57 +0100, autor Karol „Zal” Zalewski, licencja LPRCTKC
Jako, iż TrueCrypt to nie jest niestety najlepsze rozwiązanie do szyfrowania dysków pod Linuksem, zostałem zmuszony do poszukania innego, lepszego. I w ten oto sposób naczytałem się co nieco o LUKS (Linux Unified Key Setup). Rozwiązanie to wydało mi się być ciekawe z kilku powodów - ma aspiracje do bycia standardem, jest dostępne za darmo dla systemów linuksowych (cryptsetup) oraz Windowsa (w tym też w wersji dla PDA - FreeOTFE), a do tego jest stosunkowo proste w obsłudze. Miło, prawda? Zatem zapoznajmy się z jego instalacją i wykorzystaniem.
Podczas zabawy w szyfrowanie skupiłem się głównie na tym, aby zaszyfrowany dysk był dostępny zarówno z poziomu Windowsa (Vista), jak i Linuksa (Debian SID). Zatem w kwestii systemu plików wybór był mocno ograniczony, decyzja mogła być tak właściwie jedna - NTFS. Prace rozpocząłem z poziomu Linuksa. Jak się okazuje, FreeOTFE w obecnej wersji (2.00) nie umożliwia tworzenia partycji, ani plików, które byłyby zgodne z LUKS'em, co nie przeszkadza mu jednak w ich otwieraniu oraz zapisywaniu. Pierwszą czynnością pod Debianem w wersji SID było wydanie komend:
sudo aptitude install cryptsetup ntfs-3g
sudo cfdisk /dev/sda
Obecne wersje Debiana nie wymagają już żadnych zabaw z modułami jądra, więc instalacja "cryptsetup" i "ntfs-3g" (do obsługi NTFS) w zupełności wystarcza. Co do drugiej linijki - z wykorzystaniem "cfdisk" postanowiłem utworzyć jedną, lecz całkiem sporą partycję na moim przenośnym dysku będącym obiektem naszych działań. Po jej utworzeniu, kolejną wykonaną przeze mnie czynnością była następująca komenda:
sudo cryptsetup --verbose --verify-passphrase luksFormat /dev/sda1
Komenda ta służy do utworzenia partycji LUKS z wykorzystaniem hasła, o które zostaniemy poproszeni. Po tej niezwykle krótkiej operacji mogłem przejść do Windowsa i tam, po instalacji FreeOTFE i zamontowaniu przenośnego dysku, dokonać jego formatu do systemu NTFS. Tutaj warto wspomnieć, iż niezamontowany przez FreeOTFE dysk jest widziany przez system jako taki, którego format wydaje się być koniecznym. Oczywiście, wykonanie tej akcji nie jest pożądane - po zamontowaniu dysku, poprzez wspomniany program, pojawia się kolejny dysk i to właśnie on powinien stać się obiektem formatowania, a w przyszłości będzie można z niego odczytać zaszyfrowane dane. Po wykonaniu tej operacji możemy już korzystać pod Windowsem z naszej zaszyfrowanej partycji. Pamiętajmy jednak, aby przed fizycznym odłączeniem dysku odmontować go poprzez program FreeOTFE. Co do samego zaś Debiana, montowanie wygląda następująco:
sudo cryptsetup luksOpen /dev/sda1 dysk_usb
mount /dev/mapper/dysk_usb
Podczas pisania drugiej linijki założyłem, iż w /etc/fstab znajduje się już odpowiedni wpis umożliwiający zamontowanie partycji z systemem plików NTFS. Może on przybrać następującą formę (ale oczywiście nie musi):
/dev/mapper/dysk_usb /mnt/dysk_usb ntfs-3g user,umask=0000,nls=utf8 0 0
Odwrotna czynność wygląda następująco:
umount /dev/mapper/dysk_usb
sudo cryptsetup luksClose dysk_usb
Prawda, że proste?
[EDIT] Z tego, co widzę to GNOME nie tylko sam usiłuje zamontować zaszyfrowany wolumin, ale również automatycznie pyta o hasło w momencie, gdy jest on zaszyfrowany zgodnie z LUKS. Plus dla LUKSa oraz samego GNOME'a!
2007-11-04, Niedziela 15:38:43 +0100
A dlaczego uważasz, że TrueCrypt pod Linuxem to niezbyt dobre rozwiązanie?
Sam używam TC do szyfrowania dysku USB, sformatowanego jako NTFS i zarówno pod Linuxem, jak i pod Windowsem nie mam najmniejszych problemów z jego obsługą.
2007-11-04, Niedziela 15:53:53 +0100
Chciałem uargumentować moją decyzję jeszcze w tekście, ale uznałem, że na TrueCrypt znajdzie się jeszcze miejsce ;]
Co do samych argumentów to problematyczna wydaje się kompilacja TrueCrypta na nowszych jądrach – nie pamiętam dokładnie „jak nowych”, ale wielu użytkowników ma z tym problem. Pewnie będzie to naprawione w najbliższej wersji – szkoda tylko, że od maja takowej nie widać. Nie może też być stosowany w urządzeniach typu PDA, co może, ale nie musi być wadą.
LUKS pretenduje do miana standardu i z tego też względu warto się z nim zapoznać.
Takie jest przynajmniej moje zdanie. Z chęcią też wysłucham Twojego :-)
2007-11-04, Niedziela 15:58:12 +0100
Używam GUI Forcefield na TrueCrypt i po za wygodą nie zauważam żadnych problemów. Czy jest coś niebezpiecznego w używaniu TrueCrypt?
Parę razy po raptownym wyłączeniu prądu nic złego się nie zdarzyło mimo, ze nie był odmontowany.
2007-11-04, Niedziela 16:06:24 +0100
Nie, raczej wątpię, aby używanie TrueCrypta było niebezpieczne. A dlaczego pytasz?
Pisząc, że nie jest najlepszym rozwiązaniem nie miałem na myśli problemów z bezpieczeństwem, lecz problemy z dostępnością. Z tego, co widzę to zastosowanie rozwiązań opartych o LUKS’a jest zdecydowanie lepsze w przypadku częstych kontaktów z systemami będącymi pochodnymi Debiana.
2007-11-04, Niedziela 16:12:47 +0100
Uff! Pocieszyłeś mnie.
Muszę wypróbować to, co Ty proponujesz. Może jest wygodniejsze?
Przy okazji dzisiaj są imieniny Karola, i z tej okazji życzę Tobie spełnienia marzeń i samych miłych chwil w życiu.
2007-11-04, Niedziela 16:14:52 +0100
Dziękuję bardzo :D Sam o nich nie pamiętałem.
2007-11-04, Niedziela 17:02:06 +0100
Zal: Fakt, że po migracji na najnowsze jajo musiałem poczekać chwilę, żeby TC się chciał skompilować. Ostatecznie ściągnąłem prekompilowaną paczkę. Ale poza tym nie mam żadnych problemów. A z PDA póki co nie korzystam, więc nawet nie wiedziałem, że TC nie ma tam zastosowania.
2007-11-04, Niedziela 17:06:19 +0100
GhandaL: Wszystko zależy od zastosowań :] U mnie TrueCrypt przestał się sprawdzać, co nie znaczy, że jest „be”.