Portál AbcLinuxu, 6. května 2025 16:29

Dotaz: Zašifrování oddílu

Petr Fiedler avatar 9.1.2019 22:55 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Zašifrování oddílu
Přečteno: 377×
Odpovědět | Admin

Ještě bych potřeboval poradit se zašifrováním oddílu. Jedná se o sekundární disk v pc. Rozdělen je takto:

Neobsazeno                                4 MiB
sdb1 Basic data partition         ntfs  512 MiB
sdb2 EFI system partition         fat32 128 MiB
sdb3 Microsoft reserved partition ----   16 MiB
sdb4 Basic data partition         ntfs   50 GiB
sdb5 bude se šifrovat             ext4  881 GiB
Neobsazeno                                2 MiB

Na netu jsem našel následující postup. Byl ale pro celý disk. Já jsem v něm zaměnil sdb1 za sdb5.

dd if=/dev/zero of=/dev/sdb5 bs=1M
cryptsetup luksFormat /dev/sdb5
cryptsetup luksOpen /dev/sdb5 nazev_disku
mkfs.ext4 /dev/mapper/nazev_disku
sudo chown -R uzivatel /media/uzivatel/např. e2902cbe-7e2d-4fb2-8cfe-f50ba9b80795/

Je to tak v pořádku, nebo bych měl ještě něco doplnit?

A taky bych chtěl místo e2902cbe-7e2d-4fb2-8cfe-f50ba9b80795 mít ten disk nějak pojmenovaný. Jak na to prosím?


Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Josef Kufner avatar 9.1.2019 23:14 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Zašifrování oddílu
Odpovědět | | Sbalit | Link | Blokovat | Admin
mkfs.ext4 má volbu na pojmenování disku: -L

Velikost bloku bs=1M u dd je zbytečně málo. Klidně tam dej 4M nebo i víc. Pokud je to SSD, tak se na nulování vykašli a zavolej trim na celý oddíl: blkdiscard /dev/sdb5 a zapni si discard v cryptsetup. Pokud je to rotační disk, tak spíš než /dev/zero použij /dev/urandom, aby se případný útočník lépe bavil (u SSD by to znamenalo zbytečnou ztrátu výkonu a životnosti).
Hello world ! Segmentation fault (core dumped)
Petr Fiedler avatar 10.1.2019 00:53 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

V tomto případě se jedná o rotační disk. Bylo by to tedy takto?

dd if=/dev/urandom of=/dev/sdb5 bs=4M # může být 4MiB?
cryptsetup luksFormat /dev/sdb5
cryptsetup luksOpen /dev/sdb5 nazev_disku
mkfs.ext4 -L nazev_disku /dev/mapper/nazev_disku # lze tu použít 2x stejný název?
sudo chown -R uzivatel /media/uzivatel/nazev_disku # -R je v pořádku?

A má smysl jako druhý příkaz dát tohle:

badblocks -c 10240 -s -w -t random -v /dev/sdb5

Protože jsme to ale měnili z 1M na 4M, nemělo by zde místo 10240 být např. 4096?

9.1.2019 23:54 MadCatX | skóre: 28 | blog: dev_urandom
Rozbalit Rozbalit vše Re: Zašifrování oddílu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ten "název" není název ale UUID, které se na nic lidštějšího změnit nedá. Disky v Linuxu nejlépe "pojmenuješ" tím, že je mountneš do vhodně pojmenovaného adresáře.
Petr Fiedler avatar 10.1.2019 00:35 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Snad se nepletu, ale mám tu zkušenost, že když např. v GParted naformátuji celý externí disk např. z NTFS na ext4 a nepřiřadím mu žádné návěští, tak se mi pak v /media/uzivatel vytvoří adresář, jehož název je UUID toho disku, což je někdy nepraktické. Když mu ale přiřadím návěští např. muj_disk, tak se mi pak v /home/uzivatel vytvoří adresář muj_disk, do kterého se to mountuje. Proto jsem chtěl vědět, jak ten disk pojmentovat, aby se ten adresář sám vytvořil. Už mi to zodpověděli Josef s Lertimirem.

10.1.2019 00:15 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: Zašifrování oddílu
Odpovědět | | Sbalit | Link | Blokovat | Admin
V zásadě je to správně. Otázka je proti čemu se chceš chránit. Jestli je to na vyzkoušení, proti vlezlým kamarádům, rodině nebo jinému BFU, tak to stačí. Pokud by to mělo být i ochrana proti cílenému odbornému útoku je třeba větší pečlivosti. Jinak luksFormat také má volbu label a mužeš si šifrovaný oddíl pojmenovat. Stejně tak mkfs. U luksFormat je možné použít volbu --use-random, kdy se pro generování master key používne pseudo náhodný ale náhodný generátor.
Petr Fiedler avatar 10.1.2019 00:27 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu
Pokud by to mělo být i ochrana proti cílenému odbornému útoku je třeba větší pečlivosti.

Co myslíš tou pečlivostí?

Petr Fiedler avatar 10.1.2019 00:58 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu
U luksFormat je možné použít volbu --use-random, kdy se pro generování master key používne pseudo náhodný ale náhodný generátor.

Myslíš takto?

cryptsetup luksFormat --use-random /dev/sdb5
Petr Fiedler avatar 11.1.2019 18:27 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tak jsem to celé předelal. Je to takhle správně?

#1 zaplnění oddílu nulami
dd if=/dev/zero of=/dev/sdb5 bs=4MiB status=progress

#2 likvidace LUKS hlavičky
dd if=/dev/urandom of=/dev/sdb5 bs=4MiB count=10 status=progress

#3 vytvoření LUKS
cryptsetup --cipher aes-xts-plain64 --key-size 512 --hash sha512 --use-random luksFormat /dev/sdb5

#4 odemčení LUKS
cryptsetup luksOpen /dev/sdb5 nazev_svazku

#5 naformátování
mkfs.ext4 /dev/mapper/nazev_svazku

#6 osvojení
sudo chown uzivatel:uzivatel /media/uzivatel/nazev_svazku
Petr Fiedler avatar 11.1.2019 20:02 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

#1 je špatně. Celé tedy znovu:

#1 zaplnění oddílu nulami
cryptsetup open --type plain --key-file /dev/random /dev/sdb5 nuly
dd bs=4MiB if=/dev/zero of=/dev/mapper/nuly status=progress
cryptsetup luksClose nuly

#2 likvidace LUKS hlavičky
dd if=/dev/urandom of=/dev/sdb5 bs=4MiB count=10 status=progress

#3 vytvoření LUKS
cryptsetup --cipher aes-xts-plain64 --key-size 512 --hash sha512 --use-random luksFormat /dev/sdb5

#4 odemčení LUKS
cryptsetup luksOpen /dev/sdb5 nazev_svazku

#5 naformátování
mkfs.ext4 /dev/mapper/nazev_svazku

#6 osvojení
sudo chown uzivatel:uzivatel /media/uzivatel/nazev_svazku
11.1.2019 21:06 MadCatX | skóre: 28 | blog: dev_urandom
Rozbalit Rozbalit vše Re: Zašifrování oddílu
První krok jsi měl dobře předtím, navíc lépe než nulovat je přepsat to náhodným obsahem, druhý krok není potřeba a před krokem šestým potřebuješ oddíl připojit, aby měla změna práv nějaký efekt.
Petr Fiedler avatar 11.1.2019 21:20 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Díky moc! Jdu na to.

k3dAR avatar 11.1.2019 21:47 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: Zašifrování oddílu
1 podruhe sice nuloval ale open luks, takze se zapisovalo prave nahodne/sifrovane pres aes-ni akceleraci
porad nemam telo, ale uz mam hlavu... nobody
Petr Fiedler avatar 11.1.2019 22:06 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Čau,
snažím se to nějak splácat dohromady z tvého skriptu, rad tady a jednoho návodu na netu. Mrkni mi na to prosím.

Petr Fiedler avatar 11.1.2019 22:08 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Myslím na tohle.

Petr Fiedler avatar 11.1.2019 22:03 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Pro jistotu to sem ještě jednou vložím. Prosím tě, podívej se na to na celé ještě jednou a zvláštní pozornost věnuj prosím nazvu_svazku v krocích 2,3,4 a 5.

#1 zaplnění oddílu nulami
dd bs=4MiB if=/dev/urandom of=/dev/sdb5 status=progress

#2 vytvoření LUKS
cryptsetup --cipher aes-xts-plain64 --key-size 512 --hash sha512 --use-random luksFormat --label nazev_svazku /dev/sdb5

#3 odemčení LUKS
cryptsetup luksOpen /dev/sdb5 nazev_svazku

#4 naformátování
mkfs.ext4 /dev/mapper/nazev_svazku

#5 zamčení LUKS
cryptsetup luksClose nazev_svazku

#6 dvojklik na šifrovaný oddíl ve správci souborů a zadání hesla

#7 osvojení
chown uzivatel:uzivatel /media/uzivatel/nazev_svazku

sudo neřeš.

Petr Fiedler avatar 12.1.2019 00:48 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu

Tak tenhle poslední postup zabral, akorát jsem musel v #7 změnit "nazev_svazku" na "UUID", protože v /media/uzivatel/ je to připojeno do adresáře, který má název dle UUID (asi té partition). V GParted ale vidím, že ten oddíl má přidělen název. Každopádně to funguje.

12.1.2019 02:28 MadCatX | skóre: 28 | blog: dev_urandom
Rozbalit Rozbalit vše Re: Zašifrování oddílu
To je normální, UDisks při připojování disků používá UUID, aby předešel kolizi v názvech. V tomhle případě je lepší postup přidat pro ten disk záznam do /etc/crypttab a /etc/fstab, disk se pak připojí automaticky při bootu.
k3dAR avatar 12.1.2019 03:04 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: Zašifrování oddílu
udisk pouziva cesty /media/UUID jen kdyz oddil nema jmeno, pokud ma pouzije ho, pokud jsou 2 stejna jmena, druhe vytvori jako jmeno_2
porad nemam telo, ale uz mam hlavu... nobody
k3dAR avatar 12.1.2019 03:09 k3dAR | skóre: 63
Rozbalit Rozbalit vše Re: Zašifrování oddílu
v GParted asi vidis GPT pojmenovani oddliu, protoze pri formatovani si jmeno filesystemu nedal, to by bylo:
mkfs.ext4 -L jmeno /dev/mapper/nazev_svazku
uz zformatovane muzes pojmenovat:
tune2fs -L jmeno /dev/mapper/nazev_svazku
porad nemam telo, ale uz mam hlavu... nobody
Petr Fiedler avatar 12.1.2019 14:03 Petr Fiedler | skóre: 35 | blog: Poradna | Brno
Rozbalit Rozbalit vše Re: Zašifrování oddílu
v GParted asi vidis GPT pojmenovani oddliu, protoze pri formatovani si jmeno filesystemu nedal ...

V kroku #2 jsem dal --label nazev_svazku a nezabralo to. Před chvílí jsem šifroval další disk a udělal to u formátování s tím parametrem -L a to už zabralo.

uz zformatovane muzes pojmenovat:
tune2fs -L jmeno /dev/mapper/nazev_svazku

Dobrá rada jako vždy :-) Ještě, že tě mám Keďo :-)
V /dev/mapper se svazek ale stále jmenuje "luks-UUID" a ten druhý disk, respektive oddíl, protože nechávám první 4MiB volné se v /dev/mapper/ zobrazuje jako "luks-UUID". To nevadí?

A mám problém s odpojováním svazku:

~$ sudo cryptsetup luksClose luks-UUID 
Zařízení luks-UUID se stále používá.
Dělá mi to u obou disků.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.