Jak šifrovat disky pomocí LUKS ve Fedora Linux
V tomto článku stručně vysvětlíme blokové šifrování, Linux Unified Key Setup (LUKS) a popíšeme instrukce pro vytvoření šifrovaného blokového zařízení ve Fedora Linux.
Blokovat šifrování zařízení
Šifrování blokového zařízení se používá k zabezpečení dat na blokovém zařízení jejich zašifrováním a k dešifrování dat musí uživatel zadat přístupové heslo nebo klíč. To poskytuje další bezpečnostní mechanismy, protože chrání obsah zařízení, i když bylo fyzicky odpojeno od systému.
Úvod do LUKS
LUKS (Linux Unified Key Setup) je standard pro šifrování blokových zařízení v systému Linux, který funguje na základě vytvoření formátu na disku pro data a zásady správy přístupových frází/klíčů. . Ukládá všechny potřebné informace o nastavení v hlavičce oddílu (také známé jako LUKS hlavička), což vám umožňuje bezproblémově přenášet nebo migrovat data.
LUKS využívá subsystém mapovače zařízení jádra s modulem dm-crypt k poskytování nízkoúrovňového mapování, které uchovává šifrování a dešifrování dat zařízení. Program cryptsetup můžete použít k provádění úloh na úrovni uživatele, jako je vytváření a přístup k šifrovaným zařízením.
Příprava blokového zařízení
Následující pokyny ukazují kroky k vytvoření a konfiguraci šifrovaných blokových zařízení po instalaci.
Nainstalujte balíček cryptsetup.
dnf install cryptsetup-luks
Dále vyplňte zařízení náhodnými daty, než jej zašifrujete, protože to výrazně zvýší sílu šifrování pomocí následujících příkazů.
dd if=/dev/urandom of=/dev/sdb1 [slow with high quality random data ]
OR
badblocks -c 10240 -s -w -t random -v /dev/sdb1 [fast with high quality random data]
Upozornění: Výše uvedené příkazy vymažou veškerá existující data v zařízení.
Formátování šifrovaného zařízení
Poté pomocí nástroje příkazového řádku cryptsetup naformátujte zařízení jako šifrované zařízení dm-crypt/LUKS.
cryptsetup luksFormat /dev/sdb1
Po spuštění příkazu budete vyzváni k zadání YES
(velkými písmeny), abyste dvakrát zadali přístupovou frázi pro zařízení, které má být naformátováno pro použití, jak je znázorněno na následujícím snímku obrazovky.
Chcete-li ověřit, zda byla operace úspěšná, spusťte následující příkaz.
cryptsetup isLuks /dev/sdb1 && echo Success
Můžete zobrazit souhrn informací o šifrování pro zařízení.
cryptsetup luksDump /dev/sdb1
Vytvoření mapování pro povolení přístupu k dešifrovanému obsahu
V této části nakonfigurujeme, jak přistupovat k dešifrovanému obsahu šifrovaného zařízení. Mapování vytvoříme pomocí kernel device-mapper. Pro toto mapování se doporučuje vytvořit smysluplný název, například luk-uuid (kde <uuid>
je nahrazeno LUKS UUID zařízení ( Univerzálně jedinečný identifikátor).
Chcete-li získat UUID šifrovaného zařízení, spusťte následující příkaz.
cryptsetup luksUUID /dev/sdb1
Po získání UUID můžete vytvořit název mapování podle obrázku (budete vyzváni k zadání přístupové fráze vytvořené dříve).
cryptsetup luksOpen /dev/sdb1 luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Pokud je příkaz úspěšný, uzel zařízení s názvem /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
představuje dešifrované zařízení.
Blokové zařízení, které bylo právě vytvořeno, lze číst a zapisovat do něj jako z jakéhokoli jiného nešifrovaného blokového zařízení. Spuštěním následujícího příkazu můžete zobrazit některé informace o mapovaném zařízení.
dmsetup info /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Vytváření souborových systémů na mapovaném zařízení
Nyní se podíváme na to, jak vytvořit souborový systém na mapovaném zařízení, který vám umožní používat uzel mapovaného zařízení stejně jako jakékoli jiné blokové zařízení.
Chcete-li vytvořit souborový systém ext4 na mapovaném zařízení, spusťte následující příkaz.
mkfs.ext4 /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
Chcete-li připojit výše uvedený souborový systém, vytvořte pro něj přípojný bod, např. /mnt/encrypted-device
a poté jej připojte následovně.
mkdir -p /mnt/encrypted-device
mount /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c /mnt/encrypted-device/
Přidejte informace o mapování do /etc/crypttab a /etc/fstab
Dále musíme nakonfigurovat systém tak, aby automaticky nastavil mapování pro zařízení a také jej připojil při spouštění.
Informace o mapování byste měli přidat do souboru /etc/crypttab v následujícím formátu.
luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c none
ve výše uvedeném formátu:
- luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c – je název mapování
- UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c – je název zařízení
Uložte soubor a zavřete jej.
Poté přidejte následující položku do /etc/fstab, aby se mapované zařízení automaticky připojilo při spouštění systému.
/dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c /mnt/encrypted-device ext4 0 0
Uložte soubor a zavřete jej.
Poté spusťte následující příkaz k aktualizaci systemd jednotek generovaných z těchto souborů.
systemctl daemon-reload
Zálohování hlaviček LUKS
Nakonec probereme, jak zálohovat hlavičky LUKS. Toto je kritický krok, aby nedošlo ke ztrátě všech dat v šifrovaném blokovém zařízení v případě, že sektory obsahující hlavičky LUKS jsou poškozeny buď chybou uživatele nebo selháním hardwaru. Tato akce umožňuje obnovu dat.
K zálohování hlaviček LUKS.
mkdir /root/backups
cryptsetup luksHeaderBackup --header-backup-file luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
A obnovit hlavičky LUKS.
cryptsetup luksHeaderRestore --header-backup-file /root/backups/luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c
To je vše! V tomto článku jsme vysvětlili, jak šifrovat blokovaná zařízení pomocí LUKS v distribuci Fedora Linux. Máte-li jakékoli dotazy nebo připomínky týkající se tohoto tématu nebo průvodce, kontaktujte nás pomocí níže uvedeného formuláře zpětné vazby.