9省区非遗项目在河南展演
Poni?ej przedstawiono przyk?ady typowych scenariuszy pe?nego szyfrowania systemu z dm-crypt. Wyja?niaj? wszystkie adaptacje, które nale?y wykona? w normalnej procedurze instalacji. Wszystkie niezb?dne narz?dzia znajduj? si? na installation image.
Przegl?d
Zabezpieczenie g?ównego systemu plików to miejsce, w którym dm-crypt wyró?nia si? pod wzgl?dem cech, wydajno?ci i wydajno?ci. W przeciwieństwie do selektywnego szyfrowania systemów plików u?ytkownika innego ni? root, zaszyfrowany system plików root mo?e ukrywa? informacje, takie jak zainstalowane programy, nazwy u?ytkowników wszystkich kont i popularne wektory wycieku danych, takie jak locate i /var/log/
. Co wi?cej, zaszyfrowany system plików root sprawia, ?e manipulowanie systemem jest o wiele trudniejsze, poniewa? wszystko oprócz programu boot loader i j?dra jest szyfrowane.
Wszystkie scenariusze zilustrowane poni?ej dziel? te zalety, inne ich wady i zalety, które je ró?nicuj?:
Scenariusze | Zalety | Wady |
---|---|---|
#Prosty uk?ad partycji z LUKS
pokazuje podstawow? i prost? konfiguracj? dla w pe?ni zaszyfrowanego rootu LUKS. |
|
|
#LVM na LUKS
osi?ga elastyczno?? partycjonowania za pomoc? LVM w pojedynczej zaszyfrowanej partycji LUKS. |
|
|
#LUKS na LVM
u?ywa dm-crypt tylko po skonfigurowaniu LVM. |
|
|
#LUKS na programowym RAID
u?ywa dm-crypt tylko po skonfigurowaniu RAID. |
|
|
#Zwyk?y dm-crypt
u?ywa trybu zwyk?ego dm-crypt, tj. bez nag?ówka LUKS i jego opcji dla wielu kluczy. |
|
|
#Szyfrowana partycja rozruchowa (GRUB)
pokazuje, jak zaszyfrowa? partycj? rozruchow? za pomoc? programu ?aduj?cego GRUB. |
|
|
#Btrfs subvolumes with swap
pokazuje, jak zaszyfrowa? Btrfs system, w tym |
|
|
Chocia? wszystkie powy?sze scenariusze zapewniaj? o wiele wi?ksz? ochron? przed zagro?eniami zewn?trznymi ni? zaszyfrowane systemy plików wtórnych, maj? równie? wspóln? wad?: ka?dy u?ytkownik posiadaj?cy klucz szyfruj?cy jest w stanie odszyfrowa? ca?y dysk, a zatem mo?e uzyska? dost?p do danych innych u?ytkowników. Je?li jest to niepokoj?ce, mo?liwe jest u?ycie kombinacji narz?dzia blokowego i u?o?onego w stos szyfrowania systemu plików i czerpania korzy?ci z obu. Zobacz Disk encryption, aby zaplanowa? z wyprzedzeniem.
Zobacz dm-crypt (Polski)/Drive preparation (Polski)#Partycjonowanie ogólny przegl?d strategii partycjonowania u?ywanych w scenariuszach.
Innym obszarem, który nale?y rozwa?y?, jest skonfigurowanie zaszyfrowanej partycji wymiany i jakiego rodzaju. Zobacz dm-crypt (Polski)/Swap encryption (Polski) dla alternatywy.
Je?li spodziewasz si? chroni? dane systemu nie tylko przed kradzie?? fizyczn?, ale tak?e przed konieczno?ci? zabezpieczenia przed logicznym manipulowaniem, zobacz dm-crypt (Polski)/Specialties (Polski)#Zabezpieczanie niezaszyfrowanej partycji rozruchowej dla dalszych mo?liwo?ci po wykonaniu jednego ze scenariuszy.
Prosty uk?ad partycji z LUKS
Ten przyk?ad obejmuje pe?ne szyfrowanie systemu za pomoc? "dmcrypt" + LUKS w prostym uk?adzie partycji:
+--------------------+--------------------------+--------------------------+ |Boot partition |LUKS encrypted system |Optional free space | | |partition |for additional partitions | |/dev/sdaY |/dev/sdaX |or swap to be setup later | +--------------------+--------------------------+--------------------------+
Pierwsze kroki mo?na wykona? bezpo?rednio po uruchomieniu obrazu instalacyjnego Arch Linux.
Przygotowanie dysku
Przed utworzeniem jakichkolwiek partycji powiniene? wiedzie? o znaczeniu i metodach bezpiecznego usuwania dysku, opisanych w dm-crypt (Polski)/Drive preparation (Polski).
Nast?pnie utwórz potrzebne partycje, przynajmniej jedn? dla /
(e.g. /dev/sdaX
) i /boot
(/dev/sdaY
). Zobacz Partitioning.
Preparing non-boot partitions
Nast?puj?ce polecenia tworz? i montuj? zaszyfrowan? partycj? root. Odpowiadaj? one procedurze opisanej szczegó?owo w dm-crypt (Polski)/Encrypting a non-root file system (Polski)#Partycja (which, despite the title, can be applied to root partitions, as long as mkinitcpio and the boot loader are correctly configured). If you want to use particular non-default encryption options (e.g. cipher, key length), see the encryption options before executing the first command:
(który, pomimo tytu?u, mo?e by? zastosowany do partycji root, o ile mkinitcpio i program ?aduj?cy s? poprawnie skonfigurowane). Je?li chcesz u?y? okre?lonych, innych ni? domy?lne opcji szyfrowania (np. Szyfr, d?ugo?? klucza), zobacz opcje szyfrowania przed wykonaniem pierwszego polecenia:
# cryptsetup -y -v luksFormat /dev/sdaX # cryptsetup open /dev/sdaX cryptroot # mkfs.ext4 /dev/mapper/cryptroot # mount /dev/mapper/cryptroot /mnt
Sprawd?, czy mapowanie dzia?a zgodnie z przeznaczeniem:
# umount /mnt # cryptsetup close cryptroot # cryptsetup open /dev/sdaX cryptroot # mount /dev/mapper/cryptroot /mnt
Je?li utworzy?e? oddzielne partycje (e.g. /home
), kroki te musz? zosta? dostosowane i powtórzone dla nich wszystkich, z wyj?tkiem /boot
. Zobacz dm-crypt (Polski)/Encrypting a non-root file system (Polski)#Automatyczne odblokowywanie i montowanie, jak radzi? sobie z dodatkowymi partycjami podczas startu.
Zauwa?, ?e ka?de urz?dzenie blokowe wymaga w?asnego has?a. Mo?e to by? niewygodne, poniewa? skutkuje oddzielnym has?em, które nale?y wprowadzi? podczas rozruchu. Alternatyw? jest u?ycie pliku klucza przechowywanego w partycji systemowej, aby odblokowa? oddzieln? partycj? za po?rednictwem crypttab
. zobacz dm-crypt (Polski)/Device encryption (Polski)#U?ywanie LUKS do formatowania partycji za pomoc? pliku kluczy po instrukcje.
Przygotowanie partycji rozruchowej
To, co musisz skonfigurowa?, to nieszyfrowana partycja rozruchowa, która jest potrzebna dla zaszyfrowanego katalogu g?ównego. Dla standardowej partycji MBR / non-EFI / boot, na przyk?ad wykonaj:
# mkfs.ext4 /dev/sdaY # mkdir /mnt/boot # mount /dev/sdaY /mnt/boot
Mounting the devices
At Installation guide (Polski)#Montowanie systemu plików you will have to mount the mapped devices, not the actual partitions. Of course /boot
, which is not encrypted, will still have to be mounted directly.
Afterwards continue with the installation procedure up to the mkinitcpio step.
W Przewodniku instalacji # Zainstaluj systemy plików, w których b?dziesz musia? zamontowa? odwzorowane urz?dzenia, a nie rzeczywiste partycje. Oczywi?cie / boot, który nie jest szyfrowany, b?dzie musia? by? montowany bezpo?rednio.
Nast?pnie kontynuuj procedur? instalacji a? do kroku mkinitcpio.
Konfigurowanie mkinitcpio
Dodaj keyboard
, keymap
i encrypt
haki do mkinitcpio.conf. Je?li domy?lna mapa klawiszy US jest dla Ciebie w porz?dku, mo?esz pomin?? keymap
hak.
/etc/mkinitcpio.conf
HOOKS=(... keyboard keymap block encrypt ... filesystems ...)
Depending on which other hooks are used, the order may be relevant. See dm-crypt/System configuration#mkinitcpio for details and other hooks that you may need.
Konfiguracja programu rozruchowego
Aby odblokowa? zaszyfrowan? partycj? root przy starcie, program ?aduj?cy musi ustawi? nast?puj?ce parametry boot loadera:
cryptdevice=UUID=<device-UUID>:cryptroot root=/dev/mapper/cryptroot
Zobacz dm-crypt/System configuration#Kernel parameters po szczegó?y..
The <device-UUID>
refers to the UUID of /dev/sdaX
. See Persistent block device naming for details.
LVM na LUKS
Prost? metod? jest ustawienie LVM na górze zaszyfrowanej partycji zamiast na odwrót. Technicznie LVM jest skonfigurowany w jednym du?ym szyfrowanym systemie blokowym. W zwi?zku z tym LVM nie jest przezroczysta, dopóki urz?dzenie blokuj?ce nie zostanie odblokowane, a podstawowa struktura woluminu zostanie odblokowana i zamontowana podczas rozruchu.
Uk?ad dysku w tym przyk?adzie to:
+-----------------------------------------------------------------------+ +----------------+ | Logical volume1 | Logical volume2 | Logical volume3 | | | |/dev/mapper/MyVol-swap |/dev/mapper/MyVol-root |/dev/mapper/MyVol-home | | Boot partition | |_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _| | (may be on | | | | other device) | | LUKS encrypted partition | | | | /dev/sdaX | | /dev/sdbY | +-----------------------------------------------------------------------+ +----------------+
- Instrukcje na dm-crypt (Polski)/Specialties (Polski)#Szyfrowany system za pomoc? oddzielnego nag?ówka LUKS u?yj tej konfiguracji z od??czonym nag?ówkiem LUKS na urz?dzeniu USB, aby uzyska? z nim dwuetapowe uwierzytelnienie.
- Instrukcje na Pavel Kogan's blog poka?, jak zaszyfrowa?
/boot
partycji, zachowuj?c j? na g?ównej partycji LUKS podczas korzystania z GRUB-a.
Przygotowanie dysku
Przed utworzeniem jakichkolwiek partycji powiniene? powinna? wiedzie? o znaczeniu i metodach bezpiecznego usuwania dysku, opisanych w dm-crypt (Polski)/Drive preparation (Polski).
Korzystaj?c z bootloadera GRUB razem z GPT, utwórz partycj? rozruchow? systemu BIOS, jak wyja?niono w GRUB#BIOS systems.
Utwórz partycj? do zamontowania w /boot
typu 8300
o wielko?ci 100 MB lub wi?kszej.
Utwórz partycj? typu 8E00
, która pó?niej b?dzie zawiera?a zaszyfrowany kontener.
Utwórz zaszyfrowany kontener LUKS na partycji "systemowej". Wprowad? dwukrotnie wybrane has?o.
# cryptsetup luksFormat /dev/sdaX
Aby uzyska? wi?cej informacji o dost?pnych opcjach cryptsetup, zobacz LUKS encryption options przed powy?szym poleceniem.
Otwórz kontener:
# cryptsetup open /dev/sdaX cryptolvm
Odszyfrowany kontener jest teraz dost?pny pod adresem /dev/mapper/cryptolvm
.
Przygotowywanie woluminów logicznych
Utwórz wolumin fizyczny na otwartym kontenerze LUKS:
# pvcreate /dev/mapper/cryptolvm
Utwórz nazw? grupy woluminów MyVol
(lub cokolwiek chcesz), dodaj?c do niego wcze?niej utworzon? wolumin fizyczny:
# vgcreate MyVol /dev/mapper/cryptolvm
Utwórz wszystkie swoje woluminy logiczne w grupie woluminów:
# lvcreate -L 8G MyVol -n swap # lvcreate -L 15G MyVol -n root # lvcreate -l 100%FREE MyVol -n home
Sformatuj systemy plików na ka?dym woluminie logicznym:
# mkfs.ext4 /dev/mapper/MyVol-root # mkfs.ext4 /dev/mapper/MyVol-home # mkswap /dev/mapper/MyVol-swap
Zamontuj swoje systemy plików:
# mount /dev/mapper/MyVol-root /mnt # mkdir /mnt/home # mount /dev/mapper/MyVol-home /mnt/home # swapon /dev/mapper/MyVol-swap
Przygotowanie partycji rozruchowej
The bootloader loads the kernel, initramfs, and its own configuration files from the /boot
directory. This directory must be located on a separate unencrypted filesystem.
Program ?aduj?cy ?aduje j?dro, initramfs i w?asne pliki konfiguracyjne z katalogu /boot
. Ten katalog musi znajdowa? si? w oddzielnym niezaszyfrowanym systemie plików.
Utwórz system plików Ext2 na partycji przeznaczonej dla /boot
. Dowolny system plików, który mo?e odczyta? bootloader, jest odpowiedni.
# mkfs.ext2 /dev/sdbY
Utwórz katalog /mnt/boot
:
# mkdir /mnt/boot
Zamontuj partycj? na /mnt/boot
:
# mount /dev/sdbY /mnt/boot
Nast?pnie kontynuuj procedur? instalacji a? do kroku mkinitcpio
Konfigurowanie mkinitcpio
Dodaj keyboard
, encrypt
i lvm2
haki do mkinitcpio.conf:
/etc/mkinitcpio.conf
HOOKS=(... keyboard keymap block encrypt lvm2 ... filesystems ...)
Zobacz dm-crypt/System configuration#mkinitcpio dla szczegó?ów i innych haczyków, których mo?esz potrzebowa?.
Konfigurowanie boot loadera
Aby odblokowa? zaszyfrowan? partycj? root przy starcie, program ?aduj?cy musi ustawi? nast?puj?cy boot loadera:
cryptdevice=UUID=device-UUID:cryptolvm root=/dev/mapper/MyVol-root
The <device-UUID>
refers to the UUID of /dev/sdaX
. See Persistent block device naming for details.
See dm-crypt/System configuration#Kernel parameters for details.
LUKS na LVM
Aby u?y? szyfrowania na LVM, woluminy LVM s? najpierw konfigurowane, a nast?pnie wykorzystywane jako baza dla zaszyfrowanych partycji. W ten sposób mo?liwa jest równie? kombinacja zaszyfrowanych i nieszyfrowanych woluminów partycji.
Poni?szy krótki przyk?ad tworzy LUKS na instalacji LVM i miesza si? w u?yciu pliku klucza dla partycji / home i tymczasowych woluminów krypt dla / tmp i / swap. Ten ostatni jest uwa?any za po??dany z punktu widzenia bezpieczeństwa, poniewa? ?adne potencjalnie wra?liwe dane tymczasowe nie prze?ywaj? ponownego uruchomienia komputera, gdy szyfrowanie zostanie ponownie zainicjowane. Je?li masz do?wiadczenie z LVM, b?dziesz móg? zignorowa? / zast?pi? LVM i inne szczegó?y zgodnie z twoim planem. Je?li chcesz roz?o?y? wolumin logiczny na wielu dyskach podczas konfiguracji, procedura do tego zosta?a opisana w dm-crypt (Polski)/Specialties (Polski)#Rozszerzanie LVM na wielu dyskach.
Przygotowanie dysku
Schemat partycjonowania:
+----------------+-----------------------------------------------------------------------+ | | LUKS encrypted volume | LUKS encrypted volume | LUKS encrypted volume | | | /dev/mapper/swap | /dev/mapper/root | /dev/mapper/home | | |_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _| | | Logical volume1 | Logical volume2 | Logical volume3 | | |/dev/mapper/MyVol-swap |/dev/mapper/MyVol-root |/dev/mapper/MyVol-home | | |_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _ _ _ _ _| | Boot partition | | | /dev/sda1 | /dev/sda2 | +----------------+-----------------------------------------------------------------------+
Randomise /dev/sda2
zgodnie z dm-crypt (Polski)/Drive preparation (Polski)#dm-crypt wymazuje pusty dysk lub partycj?.
Przygotowywanie woluminów logicznych
# pvcreate /dev/sda2 # vgcreate MyVol /dev/sda2 # lvcreate -L 10G -n lvroot MyVol # lvcreate -L 500M -n swap MyVol # lvcreate -L 500M -n tmp MyVol # lvcreate -l 100%FREE -n home MyVol
# cryptsetup luksFormat -c aes-xts-plain64 -s 512 /dev/mapper/MyVol-lvroot # cryptsetup open /dev/mapper/MyVol-lvroot root # mkfs.ext4 /dev/mapper/root # mount /dev/mapper/root /mnt
Wi?cej informacji o opcjach szyfrowania mo?na znale?? w dm-crypt (Polski)/Device encryption (Polski)#Opcje szyfrowania dla trybu LUKS.
Zauwa?, ?e /home
zostanie zaszyfrowane #Szyfrowanie woluminu logicznego /home. Further, zauwa?, ?e je?li kiedykolwiek b?dziesz mia? dost?p do zaszyfrowanego katalogu g?ównego z Arch-ISO, powy?sze open
akcja pozwoli ci po Pojawia si? LVM.
Przygotowanie partycji rozruchowej
# dd if=/dev/zero of=/dev/sda1 bs=1M status=progress # mkfs.ext4 /dev/sda1 # mkdir /mnt/boot # mount /dev/sda1 /mnt/boot
Teraz po skonfigurowaniu zaszyfrowanego partycjonowania LVM nadszed? czas na instalacj?: Arch Install Scripts.
Konfigurowanie mkinitcpio
Dodaj keyboard
, lvm2
i encrypt
haki do mkinitcpio.conf:
/etc/mkinitcpio.conf
HOOKS=(... keyboard keymap block lvm2 encrypt ... filesystems ...)
Zobacz dm-crypt/System configuration#mkinitcpio po szczegó?y i inne haki, które mog? by? potrzebne.
konfiguracjae boot loadera
Aby odblokowa? zaszyfrowan? partycj? root przy starcie, program ?aduj?cy musi ustawi? nast?puj?ce parametry boot loadera :
cryptdevice=/dev/mapper/MyVol-lvroot:root root=/dev/mapper/root
Zobacz dm-crypt/System configuration#Kernel parameters po szczegó?y.
Konfigurowanie fstab i crypttab
/etc/fstab
/dev/mapper/root / ext4 defaults 0 1 /dev/sda1 /boot ext4 defaults 0 2 /dev/mapper/tmp /tmp tmpfs defaults 0 0 /dev/mapper/swap none swap sw 0 0
The following crypttab options will re-encrypt the temporary filesystems each reboot:
Nast?puj?ce opcje crypttab ponownie zaszyfruj? tymczasowe pliki przy ka?dym ponownym uruchomieniu komputera:
/etc/crypttab
swap /dev/mapper/MyVol-swap /dev/urandom swap,cipher=aes-xts-plain64,size=256 tmp /dev/mapper/MyVol-tmp /dev/urandom tmp,cipher=aes-xts-plain64,size=256
Szyfrowanie woluminu logicznego /home
Since this scenario uses LVM as the primary and dm-crypt as secondary mapper, each encrypted logical volume requires its own encryption. Yet, unlike the temporary filesystems configured with volatile encryption above, the logical volume for /home
should be persistent, of course. The following assumes you have rebooted into the installed system, otherwise you have to adjust paths.
To safe on entering a second passphrase at boot for it, a keyfile is created:
Poniewa? ten scenariusz u?ywa LVM jako podstawowej i dm-crypt jako programu odwzorowuj?cego wtórnego, ka?dy zaszyfrowany wolumin logiczny wymaga w?asnego szyfrowania. Jednak, inaczej ni? w przypadku tymczasowych systemów plików skonfigurowanych powy?ej z u?yciem szyfrowania ulotnego, wolumin logiczny dla /home
powinien by? oczywi?cie sta?y. Poni?sze za?o?enie zak?ada ponowne uruchomienie systemu, w przeciwnym razie trzeba dostosowa? ?cie?ki. Aby zabezpieczy? si? przed wprowadzeniem drugiego has?a podczas uruchamiania, tworzony jest plik klucza:
# mkdir -m 700 /etc/luks-keys # dd if=/dev/random of=/etc/luks-keys/home bs=1 count=256 status=progress
Wolumin logiczny jest zaszyfrowany:
# cryptsetup luksFormat -v -s 512 /dev/mapper/MyVol-home /etc/luks-keys/home # cryptsetup -d /etc/luks-keys/home open /dev/mapper/MyVol-home home # mkfs.ext4 /dev/mapper/home # mount /dev/mapper/home /home
The encrypted mount is configured in crypttab:
/etc/crypttab
home /dev/mapper/MyVol-home /etc/luks-keys/home
/etc/fstab
/dev/mapper/home /home ext4 defaults 0 2
i konfiguracja jest zakończona.
Je?li chcesz rozszerzy? wolumin logiczny dla /home
(lub dowolnego innego woluminu) w pó?niejszym czasie, wa?ne jest, aby pami?ta?, ?e cz??? zaszyfrowana LUKS musi równie? zosta? zmieniona. Aby zobaczy? procedur?, patrz dm-crypt (Polski)/Specialties (Polski)#Rozszerzanie LVM na wielu dyskach.
LUKS na programowym RAID
Ten przyk?ad jest oparty na konfiguracji dla laptopa wyposa?onego w dwa dyski SSD o jednakowej wielko?ci oraz dodatkowy dysk twardy dla pami?ci masowej. Efektem końcowym jest oparte na LUKS pe?ne szyfrowanie dysku (w tym /boot
) dla wszystkich dysków, z dyskami SSD w macierzy RAID0 i pliki kluczy u?ywane do odblokowania ca?ego szyfrowania po podaniu GRUB poprawnego has?a przy starcie. Obs?uga formatów TRIM jest w??czona na dyskach SSD, ale warto zapozna? si? ze szczegó?owymi informacjami na temat bezpieczeństwa dm-crypt (Polski)/Specialties (Polski)#Obs?uga Discard / TRIM dla dysków pó?przewodnikowych (SSD) przed rozwa?eniem skorzystania z tego.
This setup utilizes a very simplistic partitioning scheme, with all the available RAID storage being mounted at /
(no separate /boot
partition), and the decrypted HDD being mounted at /mnt/data
. It is also worth mentioning that the system in this example boots in BIOS mode and the drives are partitioned with GPT partitions.
Ta konfiguracja wykorzystuje bardzo uproszczony schemat partycjonowania, przy czym wszystkie dost?pne pami?ci RAID s? montowane w / (brak oddzielnej partycji rozruchowej), a odszyfrowany dysk HDD jest montowany w {ic|/mnt/data}}. Warto równie? wspomnie?, ?e system w tym przyk?adzie uruchamia si? w trybie BIOS, a dyski s? partycjonowane przy u?yciu partycji GPT.
Nale?y pami?ta?, ?e regularne kopie zapasowe s? bardzo wa?ne w tej konfiguracji. Je?li którakolwiek z dysków SSD ulegnie awarii, dane zawarte w macierzy RAID b?d? praktycznie niemo?liwe do odzyskania. Mo?esz wybra? inny poziom RAID, je?li twoja odporno?? na uszkodzenia jest dla ciebie wa?na.
W tej konfiguracji szyfrowanie nie jest zaprzeczeniem.
W celu wykonania poni?szych instrukcji stosuje si? nast?puj?ce urz?dzenia blokowe:
/dev/sda = first SSD /dev/sdb = second SSD /dev/sdc = HDD
Pami?taj, aby zast?pi? je odpowiednimi oznaczeniami urz?dzeń do konfiguracji, poniewa? mog? si? one ró?ni?.
Przygotowanie dysku
Przed utworzeniem jakichkolwiek partycji powiniene? powinna? wiedzie? o znaczeniu i metodach bezpiecznego usuwania dysku, opisanych w dm-crypt (Polski)/Drive preparation (Polski).
Korzystaj?c z bootloadera GRUB razem z GPT, utwórz partycj? rozruchow? systemu BIOS, jak wyja?niono w systemach GRUB # BIOS. W przypadku tej konfiguracji obejmuje to partycj? 1M dla "rozruchu BIOS" w /dev/sda1
, a pozosta?e miejsce na dysku jest podzielone na partycje dla "Linux RAID" w /dev/sda2
.
Po utworzeniu partycji na /dev/sda
, mo?na u?y? nast?puj?cych komend do sklonowania ich do /dev/sdb
.
# sfdisk -d /dev/sda > sda.dump # sfdisk /dev/sdb < sda.dump
Dysk twardy jest przygotowywany z pojedyncz? partycj? Linuksa obejmuj?c? ca?y dysk w /dev/sdc1
.
Budowanie macierzy RAID
Utwórz macierz RAID dla dysków SSD. Ten przyk?ad wykorzystuje RAID 0, mo?esz chcie? wykorzysta? inny poziom w oparciu o twoje preferencje lub wymagania.
# mdadm --create --verbose --level=0 --metadata=1.2 --raid-devices=2 /dev/md0 /dev/sda2 /dev/sdb2
Przygotowanie urz?dzeń blokowych
Jak wyja?niono w przygotowaniu dm-crypt (Polski)/Drive preparation (Polski), dyski s? wymazywane losowymi danymi z wykorzystaniem /dev/zero
oraz kryptograficznym z losowym kluczem. Alternatywnie mo?esz u?y? dd
z /dev/random
lub /dev/urandom
, ale b?dzie to znacznie wolniejsze
# cryptsetup open --type plain /dev/md0 container --key-file /dev/random # dd if=/dev/zero of=/dev/mapper/container bs=1M status=progress # cryptsetup close container
I powtórz powy?sze na HDD (/dev/sdc1
w tym przyk?adzie).
Skonfiguruj szyfrowanie dla /dev/md0
:
# cryptsetup -y -v luksFormat -c aes-xts-plain64 -s 512 /dev/md0 # cryptsetup open /dev/md0 cryptroot # mkfs.ext4 /dev/mapper/cryptroot # mount /dev/mapper/cryptroot /mnt
I powtórz dla HDD:
# cryptsetup -y -v luksFormat -c aes-xts-plain64 -s 512 /dev/sdc1 # cryptsetup open /dev/sdc1 cryptdata # mkfs.ext4 /dev/mapper/cryptdata # mkdir -p /mnt/mnt/data # mount /dev/mapper/cryptdata /mnt/mnt/data
Konfiguracja boot loadera
Skonfiguruj GRUB dla zaszyfrowanego systemu, edytuj?c plik /etc/defaults/grub
, wykonuj?c nast?puj?ce czynno?ci. Zauwa?, ?e opcja: :allow-discards
umo?liwia obs?ug? TRIM na SSD, je?li nie chcesz jej u?ywa?, powiniene? to pomin??.
GRUB_CMDLINE_LINUX="cryptdevice=/dev/md0:cryptroot:allow-discards root=/dev/mapper/cryptroot" GRUB_ENABLE_CRYPTODISK=y
Zobacz dm-crypt/System configuration#Kernel parameters i GRUB#Encrypted /boot po szczegó?owe informacje.
Dokończ instalacj? GRUB na obu dyskach SSD (w rzeczywisto?ci instalacja b?dzie dzia?a? tylko na /dev/sda
).
# grub-install --target=i386-pc /dev/sda # grub-install --target=i386-pc /dev/sdb # grub-mkconfig -o /boot/grub/grub.cfg
Tworzenie plików kluczy
Kolejne kroki nie pozwalaj? na dwukrotne wpisanie has?a podczas startu systemu (raz GRUB mo?e odblokowa? szyfrowanie, a drugi raz, gdy initramfs przejmuje kontrol? nad systemem). Odbywa si? to poprzez utworzenie pliku klucza do szyfrowania i dodanie go do obrazu initramfs, aby umo?liwi? szyfrowanie haka, aby odblokowa? urz?dzenie root. zobacz dm-crypt (Polski)/Device encryption (Polski)#Z plikiem kluczy osadzonym w initramfs po szczegó?owe informacje.
- Utwórz plik klucza i dodaj klucz do
/dev/md0
.
- Utwórz kolejny plik kluczy dla dysku twardego ((
/dev/sdc1
), aby mo?na go by?o odblokowa? podczas rozruchu. Dla wygody pozostaw powy?sze has?o w miejscu, poniewa? mo?e to u?atwi? odzyskiwanie, je?li kiedykolwiek b?dziesz tego potrzebowa?. Edytuj/etc/crypttab
, aby odszyfrowa? dysk twardy podczas startu. Zobacz dm-crypt (Polski)/Device encryption (Polski)#Odblokowywanie partycji g?ównej podczas rozruchu.
Konfigurowanie systemu
Edytuj /etc/fstab, aby zamontowa? urz?dzenia blokuj?ce cryptroot i cryptdata; je?li nie w??czasz obs?ugi TRIM, usuń opcj? montowania:
/dev/mapper/cryptroot / ext4 rw,noatime,discard 0 1 /dev/mapper/cryptdata /mnt/data ext4 defaults 0 2
Zapisz konfiguracj? RAID:
# mdadm --detail --scan > /etc/mdadm.conf
Edytuj plik mkinitcpio.conf, aby do??czy? swój plik kluczy i dodaj odpowiednie haki:
FILES=(/crypto_keyfile.bin) HOOKS=( ... keyboard keymap block mdadm_udev encrypt filesystems ... )
Zobacz dm-crypt/System configuration#mkinitcpio po szczegó?y
Zwyk?y dm-crypt
W przeciwieństwie do LUKS, tryb zwyk?y dm-crypt nie wymaga nag?ówka na zaszyfrowanym urz?dzeniu: ten scenariusz wykorzystuje t? funkcj? do ustawienia systemu na niepodzielonym na partycje, zaszyfrowanym dysku, który b?dzie nieodró?nialny od dysku wype?nionego losowymi danymi, co mo?e pozwoli? na deniable encryption. Zobacz te? wikipedia:Disk encryption#Full disk encryption.
Zauwa?, ?e je?li szyfrowanie ca?ego dysku nie jest wymagane, metody korzystaj?ce z LUKS opisane w powy?szych sekcjach s? lepszymi opcjami zarówno dla szyfrowania systemowego, jak i zaszyfrowanych partycji. Funkcje LUKS takie jak zarz?dzanie kluczami z wieloma has?ami / plikami kluczy lub ponowne szyfrowanie urz?dzenia w miejscu s? niedost?pne w trybie zwyk?ym.
Plain dm-crypt encryption can be more resilient to damage than LUKS, because it does not rely on an encryption master-key which can be a single-point of failure if damaged.
Zwyk?e szyfrowanie dm-crypt mo?e by? bardziej odporne na uszkodzenia ni? LUKS, poniewa? nie opiera si? na kluczu szyfruj?cym, który mo?e by? pojedynczym punktem awarii, je?li jest uszkodzony. Jednak u?ycie trybu zwyk?ego wymaga równie? r?cznej konfiguracji opcji szyfrowania, aby uzyska? tak? sam? si?? kryptograficzn?. Zobacz te? Disk encryption#Cryptographic metadata. Stosuj?c tryb "zwyk?y" mo?na równie? rozwa?y?, je?li chodzi o problemy wyja?nione w dm-crypt (Polski)/Specialties (Polski)#Obs?uga Discard / TRIM dla dysków pó?przewodnikowych (SSD).
- tcplay, który oferuje szyfrowanie bez nag?ówków, ale z funkcj? PBKDF2, lub
- tryb dm-crypt LUKS z od??czonym nag?ówkiem za pomoc? "cryptsetup"
--header
opcja. Nie mo?na go u?ywa? ze standardowym hakiem "szyfruj", ale hakiem may be modified.
Scenariusz wykorzystuj?cy dwie pami?ci USB:
- jeden dla urz?dzenia rozruchowego, który pozwala równie? na przechowywanie opcji wymaganych do otwarcia / odblokowania zwyk?ego szyfrowanego urz?dzenia w konfiguracji modu?u ?aduj?cego, poniewa? wpisanie ich na ka?dym rozruchu by?oby podatne na b??dy;
- drugi dla pliku kluczy szyfruj?cych, zak?adaj?c, ?e jest przechowywany jako nieprzetworzone bity, aby w oczach nie?wiadomego napastnika, który móg?by uzyska? klucz usb, klucz szyfrowania pojawi si? jako dane losowe, zamiast by? widocznym jako normalny plik. Zobacz te? Wikipedia:Security through obscurity, follow dm-crypt (Polski)/Device encryption (Polski)#Pliki kluczy to prepare the keyfile.
Uk?ad dysku to:
+--------------------+------------------+--------------------+ +---------------+ +---------------+ |Volume 1: |Volume 2: |Volume 3: | |Boot device | |Encryption key | | | | | | | |file storage | |root |swap |home | |/boot | |(unpartitioned | | | | | | | |in example) | |/dev/store/root |/dev/store/swap |/dev/store/home | |/dev/sdY1 | |/dev/sdZ | |--------------------+------------------+--------------------| |---------------| |---------------| |disk drive /dev/sdaX encrypted using plain mode and LVM | |USB stick 1 | |USB stick 2 | +------------------------------------------------------------+ +---------------+ +---------------+
- Mo?liwe jest równie? u?ycie pojedynczego klucza usb poprzez bezpo?rednie skopiowanie pliku klucza do initram. Przyk?adowy plik kluczy
/etc/keyfile
zostanie skopiowany do obrazu initram przez ustawienieFILES=(/etc/keyfile)
w/etc/mkinitcpio.conf
. Sposób instruowaniaencrypt
do odczytu pliku klucza w obrazie initramrootfs:
prefiks przed nazw? pliku, np.cryptkey=rootfs:/etc/keyfile
. - inn? opcj? jest u?ycie has?a z dobrom entropi?.
Przygotowanie dysku
Wa?ne jest, aby zamapowane urz?dzenie by?o wype?nione danymi. W szczególno?ci dotyczy to zastosowania scenariusza, które stosujemy tutaj. Zobacz dm-crypt (Polski)/Drive preparation (Polski) i dm-crypt (Polski)/Drive preparation (Polski)#Metody specyficzne dla dm-crypt
Przygotowywanie partycji, które nie s? uruchomione
Zobacz dm-crypt (Polski)/Device encryption (Polski)#Opcje szyfrowania dla trybu zwyk?ego szczegó?owe informacje.
Korzystanie z urz?dzenia /dev/sdX
, z szyfrem twofish-xts z 512-bitowym rozmiarem klucza i przy u?yciu pliku klucza mamy nast?puj?ce opcje dla tego scenariusza:
# cryptsetup --hash=sha512 --cipher=twofish-xts-plain64 --offset=0 --key-file=/dev/sdZ --key-size=512 open --type=plain /dev/sdX enc
W przeciwieństwie do szyfrowania za pomoc? LUKS, powy?sze polecenie musi by? wykonane "w ca?o?ci" za ka?dym razem, gdy konieczne jest ponowne ustanowienie mapowania, dlatego wa?ne jest, aby pami?ta? szczegó?y szyfrowania, hasza i pliku klucza.
Mo?emy teraz sprawdzi?, czy wpis mapowania zosta? wprowadzony /dev/mapper/enc
:
# fdisk -l
Nast?pnie ustawiamy woluminy logiczne LVM na zmapowanym urz?dzeniu. Zobacz Install Arch Linux on LVM po dalsze szczegó?y:
# pvcreate /dev/mapper/enc # vgcreate store /dev/mapper/enc # lvcreate -L 20G store -n root # lvcreate -L 10G store -n swap # lvcreate -l 100%FREE store -n home
Formatujemy i montujemy je oraz aktywujemy partycj? swap zobacz File systems#Create a file system po dalsze szczegó?y:
# mkfs.ext4 /dev/store/root # mkfs.ext4 /dev/store/home # mount /dev/store/root /mnt # mkdir /mnt/home # mount /dev/store/home /mnt/home # mkswap /dev/store/swap # swapon /dev/store/swap
Przygotowanie partycji rozruchowej
Partycj? /boot
mo?na zainstalowa? na standardowej partycji vfat USB-Stick, je?li jest taka potrzeba. Ale je?li potrzebne jest r?czne partycjonowanie, wystarczy ma?a partycja 200 MB. Utwórz partycj? za pomoc? wybranego narz?dzia do partycjonowania.
Wybieramy system plików, który nie jest zapisywany w dzienniku, aby zachowa? pami?? flash partycji /boot
, je?li nie zosta?a jeszcze sformatowana jako vfat:
# mkfs.ext2 /dev/sdY1 # mkdir /mnt/boot # mount /dev/sdY1 /mnt/boot
Konfigurowanie mkinitcpio
Dodaj keyboard
, encrypt
i lvm2
haki do mkinitcpio.conf:
etc/mkinitcpio.conf
HOOKS=(... keyboard keymap block encrypt lvm2 ... filesystems ...)
Zobacz dm-crypt/System configuration#mkinitcpio do dalszych szczegó?ów i innych haczyków, które mo?esz potrzebowa?.
Konfiguracja bootloadera
Aby uruchomi? zaszyfrowan? partycj? root, botlader musi ustawi? nast?puj?ce parametry j?dra:
cryptdevice=/dev/sdX:enc cryptkey=/dev/sdZ:0:512 crypto=sha512:twofish-xts-plain64:512:0:
Zobacz dm-crypt/System configuration#Kernel parameters po dalsze szczegó?y i inne parametry, których mo?esz potrzebowa?.
/boot
:
# grub-install --recheck /dev/sdY
Po instalacji
Mo?esz chcie? usun?? pendrive USB po uruchomieniu. Poniewa? partycja /boot
zazwyczaj nie jest potrzebna, opcja noauto mo?e zosta? dodana do odpowiedniej linii w /etc/fstab
:
/etc/fstab
# /dev/sdYn /dev/sdYn /boot ext2 noauto,rw,noatime 0 2
Jednak?e, gdy wymagana jest aktualizacja j?dra lub programu ?aduj?cego, partycja /boot
musi by? obecna i zamontowana. Poniewa? pozycja w fstab
ju? istnieje, mo?na j? zamontowa? po prostu za pomoc?:
# mount /boot
Szyfrowana partycja rozruchowa (GRUB)
Ta konfiguracja wykorzystuje ten sam uk?ad i konfiguracj? partycji dla partycji g?ównej systemu, co poprzednia sekcja ##LVM na LUKS, z dwiema wyra?nymi ró?nicami:
- Konfiguracja jest przeprowadzana dla systemu UEFI i
- Specjalna funkcja programu bodladera GRUB s?u?y do dodatkowego szyfrowania partycji rozruchowej
/boot
. Zobacz te? GRUB#Encrypted /boot.
Uk?ad dysku w tym przyk?adzie to:
+---------------+----------------+----------------+----------------+----------------+ |ESP partition: |Boot partition: |Volume 1: |Volume 2: |Volume 3: | | | | | | | |/boot/efi |/boot |root |swap |home | | | | | | | | | |/dev/store/root |/dev/store/swap |/dev/store/home | |/dev/sdaX |/dev/sdaY +----------------+----------------+----------------+ |unencrypted |LUKS encrypted |/dev/sdaZ encrypted using LVM on LUKS | +---------------+----------------+--------------------------------------------------+
cryptboot
script from cryptbootAUR package for simplified encrypted boot management (mounting, unmounting, upgrading packages) and as a defense against Evil Maid attacks with UEFI Secure Boot. For more informations and limitations see cryptboot project page.Przygotowanie dysku
Przed utworzeniem jakichkolwiek partycji powiniene? powinna? wiedzie? o znaczeniu metod bezpiecznego usuwania dysku, opisanych w dm-crypt (Polski)/Drive preparation (Polski).
Utwórz partycj? systemow? EFI o odpowiednim rozmiarze, pó?niej zostanie zamontowana w /boot/efi
.
Utwórz partycj? do zamontowania w /boot
typu 8300
o wielko?ci 100 MB lub wi?cej.
Utwórz partycj? typu 8E00
, który pó?niej b?dzie zawiera? zaszyfrowany kontener.
Utwórz zaszyfrowany kontener LUKS na partycji "systemowej".
# cryptsetup luksFormat /dev/sdaZ
Aby uzyska? wi?cej informacji o dost?pnych opcjach cryptsetup, zobacz LUKS encryption options przed powy?szym poleceniem.
Twój uk?ad partycji powinien wygl?da? podobnie do tego:
# gdisk /dev/sda
Number Start (sector) End (sector) Size Code Name 1 2048 1050623 512.0 MiB EF00 EFI System 2 1050624 1460223 200.0 MiB 8300 Linux filesystem 3 1460224 41943006 19.3 GiB 8E00 Linux LVM
Otwórz kontener:
# cryptsetup open /dev/sdaZ lvm
Odszyfrowany kontener jest teraz dost?pny pod adresem /dev/mapper/lvm
.
Przygotowywanie woluminów logicznych
Woluminy logiczne LVM tego przyk?adu s? zgodne z dok?adnym uk?adem w poprzednim scenariuszu. Dlatego prosimy post?powa? zgodnie z instrukcjami Preparing the logical volumes lub dostosuj je wed?ug potrzeb.
Przygotowanie partycji rozruchowej
Program ?aduj?cy ?aduje j?dro initramfs, i jego w?asne pliki konfiguracyjne z katalogu /boot
directory.
Najpierw utwórz kontener LUKS, w którym b?d? znajdowa? si? i instalowane pliki:
# cryptsetup luksFormat /dev/sdaY
Nast?pnie otwórz:
# cryptsetup open /dev/sdaY cryptboot
Utwórz system plików na partycji przeznaczonej dla /boot
. Dowolny system plików, który mo?e odczyta? bootloader, jest odpowiedni:
# mkfs.ext2 /dev/mapper/cryptboot
Utwórz katalog /mnt/boot
:
# mkdir /mnt/boot
Zamontuj partycj? na /mnt/boot
:
# mount /dev/mapper/cryptboot /mnt/boot
Utwórz punkt montowania dla EFI system partition w /boot/efi
w celu zapewnienia zgodno?ci z grub-install
i zamontuj:
# mkdir /mnt/boot/efi # mount /dev/sdaX /mnt/boot/efi
W tym momencie powiniene? mie? nast?puj?ce partycje i woluminy logiczne wewn?trz /mnt
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi ├─sda2 8:2 0 200M 0 part │ └─boot 254:0 0 198M 0 crypt /boot └─sda3 8:3 0 100G 0 part └─lvm 254:1 0 100G 0 crypt ├─MyStorage-swapvol 254:2 0 8G 0 lvm [SWAP] ├─MyStorage-rootvol 254:3 0 15G 0 lvm / └─MyStorage-homevol 254:4 0 77G 0 lvm /home
Nast?pnie kontynuuj procedur? instalacji a? do kroku mkinitcpio.
Konfigurowanie mkinitcpio
Dodaj keyboard
, encrypt
i lvm2
haki do mkinitcpio.conf:
/etc/mkinitcpio.conf
HOOKS=(... keyboard keymap block encrypt lvm2 ... filesystems ...)
Zobacz dm-crypt/System configuration#mkinitcpio for details and other hooks that you may need.
Konfiguracja botladera
Skonfiguruj GRUB, aby rozpozna? zaszyfrowan? partycj? /boot
LUKS i odblokuj zaszyfrowan? partycj? root przy starcie:
/etc/default/grub
GRUB_CMDLINE_LINUX="... cryptdevice=UUID=<device-UUID>:lvm ..." GRUB_ENABLE_CRYPTODISK=y
Zobacz dm-crypt/System configuration#Kernel parameters i GRUB#Encrypted /boot do dalszych szczegó?ów. <device-UUID>
odnosi si? do UUID z /dev/sdaZ
(partycja przechowuj?ca lvm zawieraj?cy g?ówny system plików). Zobacz Persistent block device naming.
Wygeneruj plik konfiguracyjny GRUB i zainstaluj na zamontowanym ESP:
# grub-mkconfig -o /boot/grub/grub.cfg # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub --recheck
Je?li zakończy si? to bezb??dnie, GRUB powinien poprosi? o has?o, aby odblokowa? partycj? /boot
po nast?pnym uruchomieniu.
Konfigurowanie fstab i crypttab
Ta sekcja opisuje dodatkow? konfiguracj? pozwalaj?c? systemowi zamontowa? zaszyfrowane /boot
Podczas gdy GRUB prosi o has?o, aby odblokowa? zaszyfrowane /boot
po powy?szych instrukcjach odblokowanie partycji nie jest przekazywane do initramfs. St?d, /boot
nie b?dzie dost?pne po ponownym uruchomieniu systemu, poniewa? encrypt
hook tylko odblokowuje root systemu.
Je?li u?ywa?e? skryptu "genfstab" podczas instalacji, zostanie wygenerowany /etc/fstab
wpisy dla /boot
i /boot/efi
montuj punkty ju?, ale system nie odnajdzie device mapper dla partycji rozruchowej. Aby go udost?pni?, dodaj go do crypttab. Na przyk?ad:
/etc/crypttab
cryptboot /dev/sdaY none luks
sprawi, ?e system ponownie poprosi o podanie has?a (to znaczy, ?e musisz wprowadzi? je dwukrotnie przy starcie systemu: raz dla GRUB i raz dla systemd init). Aby unikn?? podwójnego wpisu dotycz?cego odblokowania /boot
, post?puj zgodnie z instrukcjami na stronie dm-crypt (Polski)/Device encryption (Polski)#Pliki kluczy do:
- Stwórz randomtext keyfile,
- Dodaj plik klucza do pliku (
/dev/sdaY
) boot partition's LUKS header and - Sprawd? wpis
/etc/fstab
i dodaj lini?/etc/crypttab
do unlock it automatically at boot.
Je?li z jakiego? powodu plik klucza nie odblokuje partycji rozruchowej, systemd zrestartuje si?, aby poprosi? o has?o do odblokowania, a je?li jest to poprawne, kontynuuj uruchamianie.
- Warto rozwa?y? dodanie programu ?aduj?cego GRUB do listy ignorowanych plików
/etc/pacman.conf
w celu uzyskania szczególnej kontroli, kiedy bootloader (który zawiera w?asne modu?y szyfruj?ce) jest aktualizowany. - Je?li chcesz zaszyfrowa? partycj?
/boot
, aby zabezpieczy? si? przed zagro?eniami zwi?zanymi z nieuprawnionym dost?pem, pomoc dla mkinitcpio-chkcryptoboot
Btrfs subvolumes with swap
Poni?szy przyk?ad tworzy pe?ne szyfrowanie systemowe za pomoc? LUKS przy u?yciu subwoluminów Btrfs do simulate partitions.
Je?li u?ywasz UEFI, to EFI system partition (ESP) jest wymagane. /boot
mo?e znajdowa? si? na /
i by? zaszyfrowane; jednak samo ESP nie mo?e by? zaszyfrowane. W tym przyk?adowym uk?adzie ESP jest /dev/sdaY
i jest zamontowany w /boot/efi
. /boot
sama znajduje si? na partycji systemowej, /dev/sdaX
.
Poniewa? /boot
znajduje si? na zaszyfrowanej /
, GRUB musi by? u?yty jako bootloader, poniewa? tylko GRUB mo?e za?adowa? modu?y niezb?dne do odszyfrowania /boot
(e.g., crypto.mod, cryptodisk.mod and luks.mod) [1].
Dodatkowo wy?wietlana jest opcjonalna zwyk?a, zaszyfrowana partycja swap.
+--------------------------+--------------------------+--------------------------+ |ESP |System partition |Swap partition | |unencrypted |LUKS-encrypted |plain-encrypted | | | | | |/boot/efi |/ | | |/dev/sdaY |/dev/sdaX |/dev/sdaZ | |--------------------------+--------------------------+--------------------------+
Przygotowanie dysku
Przed utworzeniem jakichkolwiek partycji powiniene? wiedzie? o znaczeniu i metodach bezpiecznego usuwania dysku, opisanych w dm-crypt (Polski)/Drive preparation (Polski). Je?li u?ywasz UEFI stworzy? EFI system partition o odpowiednim rozmiarze. Zostanie on pó?niej zamontowany w /boot/efi
. Je?li masz zamiar utworzy? zaszyfrowan? partycj? wymiany, utwórz dla niej partycj?, ale nie oznaczaj jej jako "swap", poniewa? z partycj? b?dzie u?ywana zwyk?y "dm-crypt".
Utwórz potrzebne partycje, przynajmniej jedn? dla /
(e.g. /dev/sdaX
). zobacz Partitioning article.
Przygotowanie partycji systemowej
Utwórz kontener LUKS
?ledzi? dm-crypt (Polski)/Device encryption (Polski)#Szyfrowanie urz?dzeń w trybie LUKS ustawi? /dev/sdaX
dla LUKS. Zobacz dm-crypt (Polski)/Device encryption (Polski)#Opcje szyfrowania dla trybu LUKS zanim to zrobisz, aby wy?wietli? list? opcji szyfrowania.
Odblokuj kontener LUKS
Teraz wykonaj dm-crypt (Polski)/Device encryption (Polski)#Odblokowywanie / mapowanie partycji LUKS za pomoc? device mapper aby odblokowa? kontener LUKS i zmapowa? go.
Sformatuj zmapowane urz?dzenie
Przejd? do sformatowania zmapowanego urz?dzenia zgodnie z opisem w Btrfs#File system on a single device, gdzie /dev/partition
jest nazw? zmapowanego urz?dzenia (tj., cryptroot
) i not /dev/sdaX
.
Zamontuj zmapowane urz?dzenie
W końcu, mount teraz sformatowane urz?dzenie mapowane (tzn. /dev/mapper/cryptroot
) do /mnt
.
compress=lzo
opcja montowania. zobacz Btrfs#Compression po wi?cej informacji.Tworzenie subwoluminów btrfs
Uk?ad
Subvolumes b?d? u?ywane do symulacji partycji, ale b?d? równie? tworzone inne (zagnie?d?one) podwiliny. Oto cz??ciowa reprezentacja tego, co wygeneruje nast?puj?cy przyk?ad:
subvolid=5 (/dev/sdaX) | ├── @ (mounted as /) | | | ├── /bin (directory) | | | ├── /home (mounted @home subvolume) | | | ├── /usr (directory) | | | ├── /.snapshots (mounted @snapshots subvolume) | | | ├── /var/cache/pacman/pkg (nested subvolume) | | | ├── ... (other directories and nested subvolumes) | ├── @snapshots (mounted as /.snapshots) | ├── @home (mounted as /home) | └── @... (additional subvolumes you wish to use as mount points)
Ta sekcja jest zgodna z Snapper#Suggested filesystem layout, który jest najbardziej przydatny w po??czeniu z Snapper. Powiniene? tak?e skonsultowa? si? Btrfs Wiki SysadminGuide#Layout.
Create top-level subvolumes
Tutaj u?ywamy konwencji prefiksowania @
do subwolumowania nazw, które b?d? u?ywane jako punkty montowania, oraz @
b?dzie subvolume, które jest zamontowane jako /
.
?ledz?c Btrfs#Creating a subvolume artyku?, utwórz subvolumes w /mnt/@
, /mnt/@snapshots
, i /mnt/@home
.
Utwórz teraz wszystkie dodatkowe subvolumes, które chcesz teraz wykorzysta? jako punkty pod??czenia.
Mount top-level subvolumes
Odmontuj partycj? systemow? na /mnt
.
Teraz zamontuj nowo utworzony @
subvolume, które b?dzie s?u?y? jako /
do /mnt
u?ywaj?c subvol=
opcje montowania. Zak?adaj?c, ?e zmapowane urz?dzenie ma nazw? cryptroot
, polecenie wygl?da?oby jak:
# mount -o compress=lzo,subvol=@ /dev/mapper/cryptroot /mnt
Zobacz Btrfs#Mounting subvolumes for more details.
Zamontuj tak?e inne subvolumes do odpowiednich punktów montowania @home
do /mnt/home
i @snapshots
do /mnt/.snapshots
.
Utwórz zagnie?d?one subvolumes
utwórz dowolne subvolumes, których nie chcesz mie? podczas robienia migawki /
. Na przyk?ad prawdopodobnie nie chcesz robi? migawek /var/cache/pacman/pkg
. Te podwilumny b?d? zagnie?d?one pod @
subvolume, ale równie ?atwo mog?oby zosta? stworzone wcze?niej na tym samym poziomie co @
zgodnie z w?asnymi preferencjami.
poniewa? @
subvolume jest zamontowany w /mnt
b?dziesz musia? create a subvolume w /mnt/var/cache/pacman/pkg
dla tego przyk?adu. Mo?e by? konieczne najpierw utworzenie katalogów macierzystych.
Inne katalogi, z którymi mo?esz to zrobi?, to /var/abs
, /var/tmp
, i /srv
.
Zamontuj ESP
Je?li wcze?niej przygotowano partycj? systemow? EFI, utwórz jej punkt pod??czenia i zamontuj go teraz.
/boot/efi
, poniewa? nie jest to system plików btrfs.Na etapie pacstrap, btrfs-progs musi by? zainstalowany jako dodatek do grupy podstawowej.
Konfigurowanie mkinitcpio
Utwórz plik klucza
Aby GRUB otworzy? partycj? LUKS bez konieczno?ci dwukrotnego wpisywania has?a przez u?ytkownika, u?yjemy pliku klucza osadzonego w initramfs. ?ledzi? dm-crypt (Polski)/Device encryption (Polski)#Z plikiem kluczy osadzonym w initramfs upewnij si?, ?e dodasz klucz /dev/sdaX
na luksAddKey step.
Edycja mkinitcpio.conf
Po utworzeniu, dodaniu i osadzeniu klucza, jak opisano powy?ej, dodaj encrypt
hak do mkinitcpio.conf jak równie? wszelkie inne haki, których potrzebujesz. Zobacz Dm-crypt/System configuration#mkinitcpio dla szczegó?owych informacji. Pami?taj, aby zregenerowa? pocz?tkowy RAMdysk po zakończeniu.
BINARIES=(/usr/bin/btrfs)
dla Twojej mkinitcpio.conf
. Zobacz Btrfs#Corruption recovery article.Konfigurowanie botladera
Zaistaluj GRUB do /dev/sda
. Nast?pnie edytuj /etc/default/grub
zgodnie z instrukcj? GRUB#Encrypted /boot artyku?u, zgodnie z instrukcjami dla zaszyfrowanego katalogu g?ównego i partycji rozruchowej. Na koniec wygeneruj plik konfiguracyjny GRUB.
Konfiguracja swap
Je?li utworzy?e? partycj?, która ma by? u?ywana do szyfrowanej wymiany, teraz jest czas na jej skonfigurowanie. Post?puj zgodnie z instrukcjami na dm-crypt (Polski)/Swap encryption (Polski).
Po wykonaniu tego kroku kontynuuj konfiguracj? systemu zgodnie z ustawieniami installation guide.