Šifrování v Linuxu
Sunday, January 18, 2009 12:49:25 PM
Na výběr jsou 2 možnost: šifrovat celý oddíl (či dokonce celý disk) nebo šifrovat pouze ty věci, pro které to má smysl.
První metoda má zásadní nevýhodu - část výkonu procesoru padne na šifrování všech dat (a to i těch u kterých to nepotřebujete).
Zvolil jsem tedy metodu šifrovat pouze části disku nebo jednotlivá data. Pomocí programů Truecrypt, EncFS nebo GnuPG je to hračka.
Šifrování jednotlivých souborů s GnuPG:
Na Windows existují programy pro práci s archivy, které umí zabalené soubory i zaheslovat.
Na Linuxu můžete zaheslovat jakýkoliv soubor (tedy ne jenom archiv) pomocí GnuPG.
- Nainstalujeme do systému gnupg.
V Archlinuxu následovně:sudo pacman -S gnupg
- Soubor zašifrujeme:
gpg -c soubor.tar.gz
Budete dvakrát vyzvání k zadání hesla.
Vedle našeho původního souboru nyní máme zaheslovaný soubor s příponou .gpg. - Pro rozšifrování souboru použijte příkaz:
gpg soubor.tar.gz.gpg
Šifrování více dat pomocí programu TrueCrypt:
Touto metodou lze šifrovat důležitá data, ke kterým potřebujete častý přístup.
Jak to funguje?
Program truecrypt vytvoří soubor na disku o předem dané velikosti - např. /home/user/.sifrovano o velikost 120MB.
Tento soubor obsahuje všechna data, která do něj prostřednictvím truecryptu uložíte.
Abyste do něj subory mohly ukládat, je potřeba soubor namountovat (připojit).
K připojení je potřeba modul loop a fuse.
Při připojování se vás truecrypt ptá na heslo nebo keyfile.
Po připojení do /media/truecrypt můžete do tohoto adresáře vkládat soubory, které se ve skutečnosti šifrují a ukládají do /home/user/.sifrovano. Nesmíte do něj však vložit více než předem danou velikost (120MB).
Výhody:
- Šifrujete jen to, co potřebujete.
- TrueCrypt je multiplatformní, funguje v Unixu i Windows.
- Všechna šifrovaná data jsou v jednom souboru.
- Šifrují se data včetně metadat, nelze poznat kolik souborů máte šifrovaných ani jejich oprávnění.
- Pevně daná velikost šifrovaných dat, musíte předem stanovit velikost.
- Potřebuje administrátorská oprávnění kvůli připojování.
Obecný postup instalace psaný pro archlinux (obdobně však bude fungovat kdekoli).
- Nainstalujeme Truecrypt:
sudo pacman -S truecrypt
- Příkazem sudo visudo upravíme oprávnění (jsme členem skupiny wheel):
%wheel ALL=(ALL) NOPASSWD: /usr/bin/truecrypt
Pro vyšší bezpečí doporučuji povolit pouze pokud jsme přihlášeni místně:%wheel localhost=(ALL) NOPASSWD: /usr/bin/truecrypt
- Vytvoříme šifrovaný soubor v truecrypt GUI příkazem truecrypt.
Postup: http://www.truecrypt.org/docs/?s=tutorial
Doporučuji filesystem EXT3 (nebo EXT2 při nedostatku místa). - Po vytvoření stačí disk připojit - v GUI viz. návod, v konzoli příkazem:
truecrypt -u /home/user/myEncryptedFile.tc /home/media/truecrypt
Pokud chceme mountovat jednodušeji stačí v GUI přidat disk do Favorites a používat příkaz:truecrypt --auto-mount=favorites
Můžete si pro něj vytvořit alias, nebo jej spouštět při startu grafického prostředí. Pokud například používáte openbox přidejte do .config/openbox/autostart.sh toto:(sleep 2 && truecrypt --auto-mount=favorites) &
-
Použití:
Všechna cená data ukládejte do /media/truecryptX -> X je číslo šifrované jednotky.
Například:mv .gnupg /media/truecrypt1/ ln -s /media/truecrypt1/.gnupg .gnupg
Tímto budou vaše inforamce od GnuPG šifrované a pokud nebude truecrypt připojen, nikdo se k nim nedostane.
Odkazy:
1) http://wiki.archlinux.org/index.php/Truecrypt - Zastaralá wiki
2) http://www.truecrypt.org/ - Oficiální stránky programu
3) http://www.howtoforge.com/truecrypt_data_encryption - Návod na howtoforge.
Šifrování více dat pomocí EncFS:
EncFS funguje podobně jako TrueCrypt, k provozu také potřebuje fuse. Nevyužívá však loop smyčky, ale vytvoří adresář s XML info souborem, do kterého ukládá šifrovaná data. Tento je pak připojen podobně jako u TrueCryptu.
Šifrování pomocí EncFS lez použít společně s programem Cryptkeeper.
Cryptkeeper stačí spouštět při každém přihlášení a po vybrání disku Vás vyzve k zadání hesla.
Při uspání lze šifrovaný adresář odpojit pomocí příkazu fusermount -u.
Výhody:
- Šifrujete jen to, co potřebujete.
- Dynamická velikost šifrovaných dat, nemusíte předem stanovit velikost.
- Nepotřebuje administrátorská oprávnění, vše lze vytvořit v domovském adresáři.
- Šifrují se jen data, nikoliv metadata - lze poznat oprávnění, poslední změnu a další atributy souborů.
- Není multiplatformní.
- Šifrovaná data jsou soubory umístěné v adresáři. Při záloze tak manipulujete s celým obsahem adresáře.
- Pomalejší než TrueCrypt.
Postup instalace:
- Nainstalujeme EncFS:
sudo pacman -S encfs
- Vytvoříme adresář, kde budou uložena šifrovaná data:
mkdir ~/.sifrovano
- Spustíme průvodce:
encfs ~/.sifrovano ~/pripojny_bod
Klávesa p zařídí výchozí nastavení a budete dvakrát vyzvání k zadání hesla. - Připojení se provádí příkazem
encfs ~/.sifrovano ~/pripojny_bod
a odpojenífusermount -u ~/pripojny_bod
- Nainstalujeme cryptkeeper:
yaourt -S cryptkeeper
- Spustíme Cryptkeeper, importujeme vytvořenou šifrovanou složku a přidáme cryptkeeper do automaticky spouštěných aplikací.
