Portál AbcLinuxu, 6. května 2025 16:29
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:
-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).
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?
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.
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.
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í?
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
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
#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
Díky moc! Jdu na to.
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š.
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.
/etc/crypttab
a /etc/fstab
, disk se pak připojí automaticky při bootu.
mkfs.ext4 -L jmeno /dev/mapper/nazev_svazkuuz zformatovane muzes pojmenovat:
tune2fs -L jmeno /dev/mapper/nazev_svazku
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ů.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.