Kryptovany filesystem

21.05.2003 13:43

Zakryptovat si cely filesystem moze byt casto uzitocne. V clanku sa pozrieme co vsetko potrebujeme a ako nato.

Je treba mat stiahnute a nainstalovane tieto baliky:
cryptoapi,cryptoloop a patchnute util-linux

Tieto veci je mozne stiahnut z http://www.kerneli.org. cryptoapi a cryptoloop je na ftp serveri v /pub/linux/kernel/crypto/v2.4/testing. Patch na util-linux je mozne stiahnut rovno z oficialnych stranok.

Ked budete mat nainstalovany kernel s cryptoapi a cryptoloop, tak je treba este patchnut util-linux. Potom je vsetko treba skompilovat. Z neho je treba prakticky iba program losetup. Ostatne veci, ako mkfs alebo mount mozeme pouzit tie originalne z distribucie.

Pouzitie:
Je treba najprv natiahnut tieto dva moduly:
# modprobe cryptoapi
# modoprobe cryptoloop

Dalej je treba si zvolit, ze cim sa to bude nas filesystem kryptovat. Moduly su ulozene v /lib/modules/$(uname -r)/cryptoapi
# modprobe cipher-xxxxx

Aby ste si moholi urobit kryptovany filesystem, tak je najprv potrebne vyrobit si subor, ktory bude mat taku velkost, aku chcete pre svoj filesystem.
# dd if=/dev/urandom of=crfile bs=1M count=xx

xx je velkost v MB.

Tento subor si teraz pripojite pomocou losetup. Na tento ucel je potrebne pouzit losetup, ktory ste si skompilovali sami aj s prislusnymi patchmi.
# losetup -e xxxxx /dev/loop0 crfile

Na miesto xxxxx si dajte algoritmus, pre ktory ste si natiahli modul. Po spusteni losetup bude treba este urcit dlzku kluca a heslo. Na heslo si dajte bacha, pretoze sa zadava iba raz. Nepomylte sa ;-). Taktiez je dobry napad si zapametat, ze aky dlhy kluc ste si vybrali.

Teraz si nas novy filesystem naformatujeme a namountujeme.
# mkfs -t ext2 /dev/loop0
# mount -t ext2 /dev/loop0 /mnt/extern

Mozete is este pre istotu nechat vypisat kapacitu vasho noveho kryptovaneho filesystemu :-).
# df -h

Ak vas uz prestane bavit. Tak sa ho zbavite nasledovne:
# umount /dev/loop0
# losetup -d /dev/loop0

Este mala rada na zaver:
Skorej ako budete patchovat a rekompilovat kernel, tak si pozrite, ze ci uz nemate crypto podporu. Ak ano, tak vam bude stacit skompilovat moduly z cryptoapi balicku. Je tam aj .spec subor, takze si mozete urobit aj RPM balicek. Potom si uz iba patchnite a skompilujte util-linux a mozete zacat.mrjoe