Instalace do cryptroot
Zaznamenejte prosím: Je tu pár výstrah při používání tohoto návodou pro zašifrování kořenového diskového oddílu a datových. Jsou to:
- Toto je základní návod pro začátek. Je vaší zodpovědností se dozvědět více o LUKS, cryptsetup a šifrování. Prameny a zdroje jsou odkazování dole na této stránce a mohou být nápomocny. Nicméně jejich seznam není vyčerpávající.
- cryptsetup nemůže zašifrovat již existující datový diskový oddíl, takže budete muset vytvořit nový, nastavit jej pomocí cryptsetup a pak na něj přesunout vaše data.
- Také můžete používat soubory s klíči a mít jich pro vaše data vícero (až 8, včetně odstranění klíčů), což ale nad rámec tohoto návodu.
- Nezapomeňte vaši přihlašovací frázi, neboť byste tak ke všemu ztratili přístup! I přes chroot se bez znalosti přihlašovací fráze nedá k datům dostat, až na /boot.
- V počátku zaváděcího procesu budete na příhlašovací frázi k zašifrovanému zařízení dotázání a systém se pak zavede jako obvykle.
Příklady šifrování:
Šifrování se skupinami LVM
Tento příklad využívá crypt uvnitř svazku LVM a umožní vám oddělení vašeho home od / a využití diskového oddílu swap bez nutnosti mít více hesel. Je možné jej použít od verze aptosid-2010-03-apate a novější.
Než spustíte vlastní instalátor, musíte připravit souborové systému, které pak budou pro instalaci použity. Pro běžné způsoby vytváření diskových oddílů LVM se odkaže na Logical Volume Manager - Vytváření diskových oddílů LVM.
Budete potřebovat alespoň nezašifrovaný souborový systém /boot , dále budou vytvořeny šifrované souborové systémy / a také /home a swap.
- Jestli nezamýšlíte použít existující skupinu svzaků LVM, pak vytvořte další novou normální skupinu svazků. Tento příklad předpokládá, že máte skupinu svazků nazvanou vg, která bude obsahovat boot a vaše zašifrovaná data.
- Budete potřebovat logické svazky pro váš /boot a pak zašifrovaná data, takže použijte lvcreate pro vytvoření logických svazků ve skupině svazků vg s velikostmi, jaké si přejete:
lvcreate -n boot --size 250m vg lvcreate -n crypt --size 300g vg
Budeme vytvářet logické svazky swap, root a home, kterou budou mít 2 GB, 40 GB a 80 GB resp. - Vytvořte souborový systém pro /boot, aby byl k dispozici pro instalátor:
mkfs.ext4 /dev/mapper/vg-boot
- Použijte cryptsetup pro zašifrování vg-crypt s použitím rychlejší volby xts s nějvětší sílou délky klíče 512bit, poté jej otevřete. Budete dvakrát požádáni o zadání vašeho heslo a potřetí pro otevření. Otevřete jej výchozím názvem cíle času zavádění cryptopts cryptroot:
cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/mapper/vg-crypt
cryptsetup luksOpen /dev/mapper/vg-crypt cryptroot
- Nyní použijte lvm uvnitř zašifrovaného zařízení pro vytvoření druhé skupinty svazků, která bude použita pro zařízení /swap a /home. pvcreate cryptroot, aby se z něj stal fyzický svazek a použijte jej s vgcreate pro vytvoření nové skupiny svazků, kterou nazveme cryptvg:
pvcreate /dev/mapper/cryptroot vgcreate cryptvg /dev/mapper/cryptroot
- Poté použijte příkazu lvcreate s nově vytvořenou zašifrovanou skupinou svazků cryptvg pro vytvoření logických svazků / , /swap a /home s velikostmi, jaké si přejete:
lvcreate -n swap --size 2g cryptvg lvcreate -n root --size 40g cryptvg lvcreate -n home --size 80g cryptvg
Zde jsme logické svazky pojmenovali swap, root a home a jejich velikosti jsme zvolili 2 GB, 50 GB a 250 GB resp. - Vytvořte souborové systémy pro cryptvg-swap, cryptvg-root a cryptvg-home, ať je má k dispozici instalátor:
mkswap /dev/mapper/cryptvg-swap mkfs.ext4 /dev/mapper/cryptvg-root mkfs.ext4 /dev/mapper/cryptvg-home
- Nyní můžete použít instalátor, kde byste měli použít:
vg-boot pro /boot,
cryptvg-root pro /,
cryptvg-home pro /home,
and cryptvg-swap for swap should be automagically recognised.
Instalovaný systém by měl získat řádku přikazu kernelu, která by měla obsahovat následující volby:
root=/dev/mapper/cryptvg-root cryptopts=source=/dev/mapper/vg-crypt,target=cryptroot,lvm=cryptvg-root
Nyní máte crypt a boot pod skupinou svazků lvm nazvanou vg a root, home a swap máte uvnitř skupiny svazků lvm nazvanou vgcypt, která je umístěna v heslem zašifrovaném zařízení.
Note: If reinstalling to a previously encrypted lvm volume the installer needs to be made aware of the crypt:
cryptsetup luksOpen /dev/mapper/cryptvg-root cryptvg vgchange -a y
Poznámky pro crypt s tradičními metodami vytváření diskových oddílů
První věc, kterou musíte rozhodnout, je uspořádání vašeho disku. Budete potřebovat alespoň dva diskové oddíly, jeden normálné pro /boot a jeden pro zašifrovaná data.
Jelikož také nejspíš potřebujete swap (který by měl být také zašifrován), budete potřebovat i třetí diskový oddíl a budete pro něj muset zadávat heslo odděleně při zavádění systému (takže budete dotázání na dvě hesla).
Je také možné použít klíč pro swap přímo ze zašifrovaného sytému s tradičním diskovým oddíl, ale v takovém případě byste nemohli uspávat na disk. Vzhledem k těmto překázkám je dlouhodobě lepší volbou použití svazků LVM s kompletně zašifrovanými diskovými oddíly a klíči.
Důležité předpoklady:
- Na disku jsou pouze 3 diskové oddíly:
/boot, o velikosti 250 MB
swap, o velikosti 2 GB
/ a /home jako jeden (pro příklad). - Budou vyžadovány 2 přihlašovací fráze, 1 pro swap, druhá pro / a /home dohromady.
Nyní, když máte hotové diskové oddíly, musíte připravit zašifrované diskové oddíly, aby byly rozpoznány instalátorem.
Pokud jste použivali aplikaci s grafickým rozhraním pro vytváření diskových oddílů, tak ji zavřete a otevřete terminál, jelikož příkazy pro šifrování musí být zadávány z příkazové řádky.
Diskový oddíl /boot
Vytvořte z /boot diskový oddíl s ext4, pokud jste tak již neučinili:
/sbin/mkfs.ext4 /dev/sda1
Zašifrovaný diskový oddíl swap
Pro zašifrovaný swap musíte nejdříve naformátovat a otevřít samotné zařízení, /dev/sda2, jako šifrované zařízení, podobně jako zařízení vg-crypt výše, ale otevřené pod jiným názvem, swap.
cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/sda2
cryptsetup luksOpen /dev/sda2 swap
echo "swap UUID=$(blkid -o value -s UUID /dev/sda2) none luks" >> /etc/crypttab
Format the created /dev/mapper/swap so it will be recognised by the installer:
/sbin/mkswap /dev/mapper/swap
Zašifrovaný diskový oddíl /
Pro zašifrovaný / musíte nejprve naformátovat a otevřít samotné zařízení, /dev/sda3, jako šifrované zařízení, podobně jako zařízení vg-crypt výše.
cryptsetup --verify-passphrase --cipher aes-xts-plain:sha512 luksFormat /dev/sda3
cryptsetup luksOpen /dev/sda3 cryptroot
Naformátuje právě vytvořený /dev/mapper/cryptroot, aby se objevil v instalátoru:
/sbin/mkfs.ext4 /dev/mapper/cryptroot
Otevřete instalátor
Nyní jste připraveni spustit instalátor, kde byste měli použít:
sda1 pro /boot,
cryptroot for / and /home
swap should be automagically recognised.
Instalovaný systém by měl získat řádku přikazu kernelu, která by měla zahrnovat následující volby (použito bude ale vaše UUID):
root=/dev/mapper/cryptroot cryptopts=source=UUID=12345678-1234-1234-1234-1234567890AB,target=cryptroot
Nyní máte /boot v běžném diskovém oddílu a heslem zašifrovaný diskový oddíl swap spolu se zašifrovaným /home a /.
Prameny a zdroje:
Vyžadované čtení:
man cryptsetup
LUKS.
Protect Your Stuff With Encrypted Linux Partitions.
KVM how to use encrypted images.