Titkosított fájlrendszerek beállítása és helycsere a „Cryptsetup” eszközzel Linux alatt – 3. rész
Egy LFCE (röviden: Linux Foundation Certified Engineer) képzett és szakértelemmel rendelkezik a hálózati szolgáltatások telepítéséhez, kezeléséhez és hibaelhárításához Linux rendszereken, és ő felel a a rendszerarchitektúra tervezése, megvalósítása és folyamatos karbantartása.
Bemutatkozik a Linux Foundation Certification Program (LFCE).
A titkosítás mögött meghúzódó gondolat az, hogy csak megbízható személyek férhessenek hozzá érzékeny adataihoz, és megóvjuk azokat a rossz kezekbe kerüléstől a gép/merevlemez elvesztése vagy ellopása esetén.
Egyszerűen fogalmazva, egy kulccsal „zárolják” az Ön adataihoz való hozzáférést, így azok elérhetővé válnak, amikor a rendszer fut, és egy jogosult felhasználó feloldja a zárolást. Ez azt jelenti, hogy ha valaki megpróbálja megvizsgálni a lemez tartalmát (saját rendszeréhez csatlakoztatva vagy LiveCD/DVD/USB-vel indítja el a gépet), akkor a tényleges fájlok helyett csak olvashatatlan adatokat fog találni.
Ebben a cikkben megvitatjuk, hogyan állíthatunk be titkosított fájlrendszereket a dm-crypt (az eszközleképező és kriptográfiai szavak rövidítése) segítségével, amely a szabványos kernelszintű titkosítási eszköz. Kérjük, vegye figyelembe, hogy mivel a dm-crypt egy blokkszintű eszköz, csak teljes eszközök, partíciók vagy hurokeszközök titkosítására használható (nem működik normál fájlokon vagy könyvtárakon).
Meghajtó/partíció/hurokeszköz előkészítése titkosításhoz
Mivel a kiválasztott meghajtónkon (/dev/sdb) lévő összes adatot törölni fogjuk, mindenekelőtt biztonsági másolatot kell készítenünk a partíción lévő fontos fájlokról ELŐTT továbbmenni.
Törölje az összes adatot a /dev/sdb mappából. Itt a dd parancsot fogjuk használni, de más eszközökkel is megteheti, például a shred segítségével. Ezután létrehozunk egy partíciót ezen az eszközön, a /dev/sdb1 címmel, az LFCS sorozat 4. részében – Partíciók és fájlrendszerek létrehozása Linuxon található magyarázatot követve.
dd if=/dev/urandom of=/dev/sdb bs=4096
A titkosítási támogatás tesztelése
Mielőtt továbblépnénk, meg kell győződnünk arról, hogy a kernelünket titkosítási támogatással fordították le:
grep -i config_dm_crypt /boot/config-$(uname -r)
Ahogy a fenti képen is látható, a titkosítás beállításához be kell tölteni a dm-crypt kernelmodult.
A Cryptsetup telepítése
A Cryptsetup egy frontend felület a titkosított fájlrendszerek létrehozásához, konfigurálásához, eléréséhez és kezeléséhez a dm-crypt használatával.
aptitude update && aptitude install cryptsetup [On Ubuntu]
yum update && yum install cryptsetup [On CentOS]
zypper refresh && zypper install cryptsetup [On openSUSE]
Titkosított partíció beállítása
A cryptsetup alapértelmezett működési módja a LUKS (Linux Unified Key Setup), így maradunk is ennél. Kezdjük a LUKS partíció és a jelszó beállításával:
cryptsetup -y luksFormat /dev/sdb1
A fenti parancs a cryptsetup parancsot futtatja alapértelmezett paraméterekkel, amelyek listázhatók a következővel:
cryptsetup --version
Ha módosítani szeretné a cipher, hash vagy key paramétereket, használja a –cipher, < b>–hash és –key-size jelzők, a /proc/crypto-ból vett értékekkel.
Ezután meg kell nyitnunk a LUKS partíciót (a rendszer kéri a korábban megadott jelszót). Ha a hitelesítés sikeres, a titkosított partíciónk elérhető lesz a /dev/mapper fájlban a megadott néven:
cryptsetup luksOpen /dev/sdb1 my_encrypted_partition
Most a partíciót ext4ként fogjuk formázni.
mkfs.ext4 /dev/mapper/my_encrypted_partition
és hozzon létre egy csatolási pontot a titkosított partíció csatlakoztatásához. Végül érdemes ellenőrizni, hogy a beillesztési művelet sikerült-e.
mkdir /mnt/enc
mount /dev/mapper/my_encrypted_partition /mnt/enc
mount | grep partition
Ha végzett a titkosított fájlrendszer írásával vagy olvasásával, egyszerűen válassza le azt
umount /mnt/enc
és zárja be a LUKS partíciót a
cryptesetup luksClose my_encrypted_partition
Titkosítás tesztelése
Végül ellenőrizzük, hogy a titkosított partíciónk biztonságos-e:
1. Nyissa meg a LUKS partíciót
cryptsetup luksOpen /dev/sdb1 my_encrypted_partition
2. Írja be jelszavát
3. Szerelje fel a partíciót
mount /dev/mapper/my_encrypted_partition /mnt/enc
4. Hozzon létre egy álfájlt a csatlakoztatási ponton belül.
echo “This is Part 3 of a 12-article series about the LFCE certification” > /mnt/enc/testfile.txt
5. Ellenőrizze, hogy hozzáfér-e az imént létrehozott fájlhoz.
cat /mnt/enc/testfile.txt
6. Válassza le a fájlrendszert.
umount /mnt/enc
7. Zárja be a LUKS partíciót.
cryptsetup luksClose my_encrypted_partition
8. Próbálja meg a partíciót normál fájlrendszerként csatlakoztatni. Hibát kell jeleznie.
mount /dev/sdb1 /mnt/enc
Titkosítsa a csereterületet a további biztonság érdekében
A titkosított partíció használatához korábban megadott jelszó a RAM memóriában tárolódik, amíg az nyitva van. Ha valaki a kezébe veszi ezt a kulcsot, képes lesz visszafejteni az adatokat. Ez különösen egyszerű laptop esetén, mivel hibernált állapotban a RAM tartalma a swap partíción marad.
Annak elkerülése érdekében, hogy a kulcsa egy példányát a tolvaj számára hozzáférhetővé tegye, titkosítsa a cserepartíciót az alábbi lépésekkel:
1 Hozzon létre egy megfelelő méretű partíciót (esetünkben /dev/sdd1), és titkosítsa azt a korábban leírtak szerint. Nevezd csak „csere ” a kényelem kedvéért.
2. Állítsa be csereként, és aktiválja.
mkswap /dev/mapper/swap
swapon /dev/mapper/swap
3. Ezután módosítsa a megfelelő bejegyzést az /etc/fstab fájlban.
/dev/mapper/swap none swap sw 0 0
4. Végül szerkessze a /etc/crypttab fájlt, és indítsa újra.
swap /dev/sdd1 /dev/urandom swap
Miután a rendszer befejeződött, ellenőrizheti a swap terület állapotát:
cryptsetup status swap
Összegzés
Ebben a cikkben megvizsgáltuk, hogyan titkosíthatunk egy partíciót és hogyan cserélhetünk területet. Ezzel a beállítással adatainak jelentős biztonságban kell lenniük. Nyugodtan kísérletezzen, és ha kérdése vagy észrevétele van, forduljon hozzánk bizalommal. Csak használja az alábbi űrlapot – örömmel fogunk hallani Önről!