Portál AbcLinuxu, 2. května 2025 06:00
dd if=/dev/urandom bs=1M count=16 of=oddil.img
který vytvoří soubor oddil.img
s náhodným obsahem. Zde jsme jen pro účely testování vytvořili diskový oddíl veliký pouhých 16MB. Generování náhodných čísel, která použijeme pro prvotní zaplnění oddílu může v případě velikých oddílů (stovky GB) trvat klidně i desítky hodin.
Nyní je třeba vygenerovat šifrovací klíč. jak jsem se dočetl, je lepší, aby byl tvořen pouze tisknutelnými znaky. Prý z důvodů kompatibility s některými systémy. Požadovaný příkaz k vytvoření klíče je tedy
echo -n `tr -cd [:graph:] < /dev/urandom | head -c 79` > klic
V souboru klic
máme tedy nezaheslovanou verzi klíče, kterým budeme šifrovat náš oddíl. Protože ponechání klíče na disku v nezaheslované podobě, by bylo hloupé, zaheslujeme si tento klíč příkazem
openssl enc -bf-cbc -in klic > oddil.keyPůvodní soubor
klic
odstraníme z disku a nejlépe jej uložíme na bezpečné místo pro potřeby zálohy a zapomenutí hesla. Soubor oddil.key
nyní obsahuje heslem chráněný šifrovací klíč.
Dalším krokem je namapování našeho oddílu na blokové zařízení. K tomu použijeme příkaz
losetup /dev/loop0 oddil.img
Nyní použijeme device mapper k tomu, aby toto blokové zařízení namapoval na jiné zařízení, ale už s použitím transparentního šifrování.
openssl enc -d -bf-cbc -in oddil.key | cryptsetup -c twofish -s 256 -h ripemd160 -d - create oddil /dev/loop2Zde musíte zadat dříve zvolené heslo použité k zaheslování klíče. Jste-li úspěšní,můžete na připojeném oddíle vytvořit souborový systém
mkfs.xfs /dev/mapper/oddil
Můžeme ověřit, že souborový systém lze připojit
mkdir oddil mount /dev/mapper/oddil ./oddil echo "pokus" > ./oddil/test cat ./oddil/testhlavně pak vše zase hezky odpojíme
umount ./oddil cryptsetup remove oddil losetup -d /dev/loop2Nyní zkusíme použít
mount.crypt
, abychom jedním příkazem provedli všechny kroky potřebné k připojení šifrovaného disku naráz.
mount.crypt -o cipher=twofish -o hash=ripemd160 -o keyfile=oddil.key -o fsk_cipher=bf-cbc -o fsk_hash=sha256 -o keysize=256 -v oddil.img oddil/
Pokud je vše ok, lze z oddílu číst testovací soubor. Nyní pomocí chown
nastavíte vlastníkem připojeného oddílu uživatele, jehož domovským adresářem se má stát - zkrátka nastavíte správná přístupová práva.
cat ./oddil/test
Nyní již stačí nainstalovat pam-mount
a editovat soubor /etc/security/pam_mount.conf.xml
vložením
<volume user="uzivatel" mountpoint="/home/%(USER)" path="oddil.img" options="loop,user,exec,cipher=twofish,keysize=256,hash=ripemd160" fskeyhash="sha256" fskeycipher="bf-cbc" fskeypath="oddil.key" fstype="crypt" />Ujistěte se, že máte správně zadané cesty k souborům
oddil.img
a oddil.key
. Místo "uzivatel" vyplníte konkrétní uživatelské jméno.
Ještě přidáte do pam konfigurace použití pam_mount.so
. Toto hodně závisí na vaši konkrétní konfiguraci. V mém případě jsem přidal do souboru /etc/pam.d/system-auth
řádky
auth optional pam_mount.so session optional pam_mount.soNyní by vše mělo pracovat. Uživatel při přihlášení zadá heslo a toto se použije k přihlášení i k dešifrování domovského adresáře. Pochopitelně musí se jednat o stejné heslo :).
Tiskni
Sdílej:
Treba si ujasniť, prečo chceš šifrovať.
Iný je postup ak chrániš súkromné dáta pred zlodejmi a iný postup, keď chrániš dáta pred políciou.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.