Szyfrowanie partycji w Linuksie

Bezpieczeństwo, Linux Add comments

Co się stanie z poufnymi danymi, gdy ktoś ukradnie nam laptopa lub przenośny dysk? Co z naszymi danymi? Jak sie zabezpieczyć? Odpowiedzią może być szyfrowany system plików który pozwala na ograniczenie dostępu przez niepowołane osoby. A więc co nam będzie potrzebne:

  • cryptsetup
  • dmsetup

Pod Ubuntu wystarczy wpisać:

sudo apt-get install cryptsetup dmsetup

Po zainstalowaniu upewnijmy się czy posiadamy to co trzeba :) :

dreamer@jomal:~$ cat /proc/crypto | grep aes
name : cbc(aes)
driver : cbc(aes-generic)
name : aes
driver : aes-generic
module : aes

oraz

dreamer@jomal:~$ sudo dmsetup targets
crypt v1.3.0
striped v1.0.2
linear v1.0.2
error v1.0.1

Skoro wszystko OK idziemy dalej. W moim przypadku będę szyfrował partycje na zewnętrznym przenośnym dysku, która znajduję się pod adresem /dev/sdb1. Na początek dobrze jest jednorazowo zapełnić partycje losowymi danymi. Uwaga w tym momęcie utracimy wszystkie dane z tej partycji!

dreamer@jomal:~$ sudo dd if=/dev/urandom of=/dev/sdb1 bs=1M

Zapełnienie partycji trwa dość długo. Wszystko zależy od rozmiaru partycji. Proponuje przejść się na kawę lub obejrzeć cos w TV;)
Po zakończeniu przygotowujemy wolumin kryptograficzny poleceniem “cryptsetup -y create nazwa urządzenie”. Program zapyta nasz o hasło które będzie później używane do montowania partycji.

dreamer@jomal:~$ sudo cryptsetup -y create TAJNE /dev/sdb1
Enter passphrase:
Verify passphrase:
dreamer@jomal:~$

Możemy teraz za pomocą polecenia cryptsetup status crypted uzyskać informacje o woluminie.

dreamer@jomal:~$ sudo cryptsetup status TAJNE
/dev/mapper/TAJNE is active:
cipher: aes-cbc-plain
keysize: 256 bits
device: /dev/sdb1
offset: 0 sectors
size: 293073795 sectors
mode: read/write
dreamer@jomal:~$

Nadszedł czas na stworzenie systemu plików na partycji. Do wyboru mamy reiserfs, ext2, ext3… Każdy może użyć swojego ulubionego. Ja postanowiłem użyć ext3:

dreamer@jomal:~$ sudo mkfs.ext3 /dev/mapper/TAJNE

No tak ale dlaczego akurat /dev/mapper/TAJNE a nie /dev/sdb1? program cryptsetup zmapował dysk i właśnie w taki sposób do niego się teraz dostajemy.
Pozostało nam tylko zamoutowanie dysku do systemu plików. Utworzymy sobie katalog np /mnt/TAJNE i do niego podepniemy nasz nowy system plików.

dreamer@jomal:~$ sudo mkdir /mnt/TAJNE
dreamer@jomal:~$ sudo mount /dev/mapper/TAJNE /mnt/TAJNE

Teraz zapisując dane w /mnt/TAJNE trafiają na zaszyfrowany dysk ;)
A co po restarcie maszyny? Należy wydać polecenia:

dreamer@jomal:~$ sudo cryptsetup -y create TAJNE /dev/sdb1
dreamer@jomal:~$ sudo mount /dev/mapper/TAJNE /mnt/TAJNE

Jeśli do partycja na dysku lokalnym można dodać wpis do /etc/crypttab

TAJNE /dev/sdb1 none

Wolumin będzie przygotowywany automatycznie podczas uruchamiania komputera. Oczywiście zostaniemy zapytani wcześniej o hasło. Należy jeszcze dodać do /etc/fstab informacje o systemie plików:

/dev/mapper/TAJNE /mnt/TAJNE ext3 defaults,errors=remount-ro 0 0

Jednak należy pamiętać, że stosowanie szyfrowanych partycji nie jest 100% zabezpieczeniem poufnych danych.

3 Responses to “Szyfrowanie partycji w Linuksie”

  1. jackalek Says:

    W sprawie parycju szyfrowanych.
    Aktualnie korzystam z takiego rozwiazania pod ms windows xp - truecrypt. Jest to swietne narzedzie, pozwala na korzystanie z plikow kluczy, ukrytych partycji szyfrowanych. To ostanie szczegolnie wazne poniewaz pozwala sie zabezpieczyc przed czyms w rodzaju szantazu aby napastnik uzyskal dostęp - czyli zagrozil cio jakos abys podal haslo, podajesz haslo do podstawowej czesci szyfrowanej partycji - z malo waznymy danymi i nie ma sposobu aby sie dowiedzec ze jest tam jeszcze cos więcej.
    poszukuje takiego rizwiazania dla systemu linux ale natywnego znaczy bez korzystanie z truecrypt.
    Aby sie dalo takie cos odczytac zarowno pod ms win oraz freebsd. na razie nie znalazlem, moze ma ktos jakis pomysł ?

  2. dreamer Says:

    myśl ciekawa :) rozlejże się, chyba że ktoś ma jakieś gotowe rozwiązanie…

  3. Aleksander P. Says:

    jackalek:

    jedyne co wymyśliłem to odpalanie FreeBSD w vmware pod Windowsem (vmware podaje do bsd dysk w trybie raw), montujesz partycje przez GELI/GBDE i udostępniasz windowsowi przez SAMBe.

Leave a Reply

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS
mieszkania na sprzedaz - Pożyczki - www.netcv.pl - Sklep komputerowy - ogłoszenia samochodowe - inwestycje mieszkaniowe zakopane - Gry - Notatki ekonomia - Darmowe forum - kalkulator kredyt - Real Music Nokia - Aff - Kotły - przepisy kulinarne - darmowy katalog stron