Linux: Šifrujeme data a disky (LUKS, EncFS, eCryptFS)
V dnešní době by člověk neměl být lhostejný k zabezpečení svých soukromých dat, prosté heslo do notebooku citlivá data rozhodně nezabezpečí v případě jeho odcizení. Chcete-li útočníkovi alespoň stížit čitelnost vašich dat, je třeba se poohlédnout možnostech jejich zašifrování. V tomto článku se podíváme na pár možností na linuxových systémech - zašifrování souborů (adresáře) pomocí EncFS (+GUI Cryptkeeper), zašifrování adresáře a home adresáře s eCryptFS (balíček eCryptFS-utils) a zašifrování disku / oddílu s LUKS (Linux Unified Key Setup - balíček ecryptsetup).
PŘÍKLAD: Zašifrujeme pomocí cryptsetup celé zařízení /dev/sdc1 na luksFormat s doporučovaným módem XTS, to pak namapujeme jako blokové zařízení luks1 a naformátujeme na ext4.
...
Chceme-li zašifrovat jen nějaký citlivý adresář, stačí použít CryptKeeper (GUI pro EncFS šifrování). Tento balíček se běžně nachází v oficiálním debianím repositáři. Technologie EncFS má oproti zašifrovanému kontejneru např. z Truecryptu/Veracryptu výhodu v tom, že se šifruje na úrovni souborů (nikoliv na úrovni diskového bloku) = není potřeba zabírat na disku předem definované vyhrazené místo. EncFS je ideální mimo jiné pro ochranu soukromých dat na free cloudech či externích zařízeních. Další výhodou je kompatibilita s Windows (EncFS MP), iOS či Androidem (Encdroid).
Dle auditu z roku 2014 pro verzi EncFS 1.7.4 není EncFS 1 úplně bezpečné, vhodnější je se poohlédnout např. po CryFS.
Nejjednodušší metoda pro běžné uživatele, kdy se vše provádí prostým naklikáním - jen se v aplikaci Cryptkeeper zvolí adresář, který chcete zašifrovat a vyplníte k němu své šifrovací heslo.
PŘÍKLAD: Soubory, které chceme zašifrovat pomocí EncFS nahrajeme do adresáře /home/k-zasifrovani/ a ty se nám zakryptují do /home/sifrovane/ .
...
# Dešifrování dat se provádí stejně jako jejich zašifrování
Zašifrování domovského $HOME adresáře je možné pohodlně zapnout během instalace distribucí založených na debianu (Ubuntu, Linux Mint, Xubuntu atd.). V tomto případě je použití a nastavení tohoto nástroje velmi snadné.
Pokud však chcete zašifrování provést na již běžícím systému včetně migrace dat, tak je postup o hodně komplikovanější. Samotné zašifrování a migrace je však vcelku jednoduchá záležitost. Trošku horší je nastavení automountu po bootu, který zde popisovat nebudu - eCryptFS aktivně nepoužívám (případně hledejte na netu spojení "Auto mount eCryptFS encrypted partition at boot").:
Jak vyplynulo z příkladu zašifrování $HOME, tak eCryptFS je také možné použít podobně jako EncFS k zašifrování libovolného adresáře:
Šifrování oddílu či celého disku (LUKS)
PŘÍKLAD: Zašifrujeme pomocí cryptsetup celé zařízení /dev/sdc1 na luksFormat s doporučovaným módem XTS, to pak namapujeme jako blokové zařízení luks1 a naformátujeme na ext4.
Zašifrování (prvotní)
apt-get install cryptsetup
cryptsetup -y -v luksFormat -c aes-xts-plain64 -s 512 /dev/sdc1
cryptsetup luksOpen /dev/sdc1 luks1
mkfs.ext4 /dev/mapper/luks1
mount /dev/mapper/luks1 /mnt/disk
#připojení...
umount disk
#odpojení cryptsetup luksClose luks1
#luks odpojeníDešifrování
cryptsetup luksOpen /dev/sdc1 luks1
mount /dev/mapper/luks1 /mnt/disk
Zašifrování adresáře (EncFS - CryptKeeper)
Chceme-li zašifrovat jen nějaký citlivý adresář, stačí použít CryptKeeper (GUI pro EncFS šifrování). Tento balíček se běžně nachází v oficiálním debianím repositáři. Technologie EncFS má oproti zašifrovanému kontejneru např. z Truecryptu/Veracryptu výhodu v tom, že se šifruje na úrovni souborů (nikoliv na úrovni diskového bloku) = není potřeba zabírat na disku předem definované vyhrazené místo. EncFS je ideální mimo jiné pro ochranu soukromých dat na free cloudech či externích zařízeních. Další výhodou je kompatibilita s Windows (EncFS MP), iOS či Androidem (Encdroid).
Dle auditu z roku 2014 pro verzi EncFS 1.7.4 není EncFS 1 úplně bezpečné, vhodnější je se poohlédnout např. po CryFS.
apt-get install encfs cryptkeeper
#instalace balíčkuEncFS: Použití GUI Cryptkeeper
Nejjednodušší metoda pro běžné uživatele, kdy se vše provádí prostým naklikáním - jen se v aplikaci Cryptkeeper zvolí adresář, který chcete zašifrovat a vyplníte k němu své šifrovací heslo.
Zašifrování (prvotní)
Cryptkeeper - New encrypted folder - Označit existující adresář - Vyplnit heslo
Dešifrování
Cryptkeeper - Encrypted folders - Označit - Vyplnit heslo
EncFS: Postup pro bash (terminal)
PŘÍKLAD: Soubory, které chceme zašifrovat pomocí EncFS nahrajeme do adresáře /home/k-zasifrovani/ a ty se nám zakryptují do /home/sifrovane/ .
Zašifrování (prvotní)
encfs /home/sifrovane/ /home/k-zasifrovani/
#spustí se průvodce nastavením...
fusermount -u /home/k-zasifrovani/
#odpojeníDešifrování
# Dešifrování dat se provádí stejně jako jejich zašifrování
encfs /home/sifrovane/ /home/k-zasifrovani/
Šifrování domovského ($HOME) adresáře (eCryptFS-utils)
Zašifrování domovského $HOME adresáře je možné pohodlně zapnout během instalace distribucí založených na debianu (Ubuntu, Linux Mint, Xubuntu atd.). V tomto případě je použití a nastavení tohoto nástroje velmi snadné.
Pokud však chcete zašifrování provést na již běžícím systému včetně migrace dat, tak je postup o hodně komplikovanější. Samotné zašifrování a migrace je však vcelku jednoduchá záležitost. Trošku horší je nastavení automountu po bootu, který zde popisovat nebudu - eCryptFS aktivně nepoužívám (případně hledejte na netu spojení "Auto mount eCryptFS encrypted partition at boot").:
eCryptFS-utils: Postup k zašifrování $HOME
apt-get install ecryptfs-utils
#instalacecp -frp /home/user1 /home/backup
#záloha datmount -t ecryptfs /home/user1 /home/user1
#zašifrování adresáře /home/user1cp -frp /home/backup /home/user1
#obnovat datrm -rf /home/backup
#smazání zálohyeCryptFS: Postup k zašifrování adresáře
Jak vyplynulo z příkladu zašifrování $HOME, tak eCryptFS je také možné použít podobně jako EncFS k zašifrování libovolného adresáře:
Zašifrování (prvotní)
mount -t ecryptfs /data /data
# spustí se průvodce zašifrováním /dataDešifrování
mount -t ecryptfs /data /data
Ale napadá mě otázka, zda při rozšifrování do adresáře po těchto souborech na disku nezůstává nezašifrovaná stopa (resp. např. smazané čitelné soubory případně jejich názvy.)
Děkuji.
Pavel