Ubuntu 22.04 gurlanda doly diski nädip şifrlemeli


Linux paýlaýjylary, doly disk şifrlemek we bazaryň lideri bolmak bilen goşmaça gorag almak üçin ajaýyp iş etdi.

Ubuntu köp sanly aýratynlyklar bilen birleşdirilen we disk şifrlemek hem şolaryň biridir. Doly disk şifrlemesini açmak, şahsy maglumatlaryňyzy islendik enjamda ogurlanan hem bolsa, her bootda giriş koduny girizmegiňizi talap edýänligi sebäpli, şahsy maglumatlary goramak isleýänler üçin möhümdir.

Doly diski şifrlemek diňe Operasiýa ulgamyny guranyňyzda işledilip bilner, sebäbi diskiň her bölümine boot we swap bölümini hem öz içine alýan doly disk şifrlemesi ulanylar. Bu, gurnamagyň başyndan başlap işlemegimiziň sebäbi.

Bu ädimme-ädim gollanma size Ubuntu 22.04-de doly disk şifrlemesini nädip açyp boljakdygyny görkezer we bu maksat bilen LVM (Logical Volume Management) we LUKS (şifrlemek maksady bilen) ulanarys.

  • bootable USB disk.
  • Uly faýllary göçürip almak üçin ýeterlik zolakly internet birikmesi.
  • UEFI anakart işledildi.

Emma prosese geçmezden ozal, Disk şifrlemegiň oňaýly taraplary barada gysgaça pikir edeliň.

Her aýratynlyk, oňaýsyz taraplary bilen baglanyşdyrylýar we bu disk şifrlenen ýagdaýynda hem ulanylýar. Şonuň üçin nämä garaşmalydygyny we edilmeli ädimlerden nämäniň däldigini bilmek elmydama gowy pikirdir.

  • Duýgur maglumatlaryňyzy ogurlykdan goraýar - Hawa, bu disk şifrlemegiň iň tolgundyryjy aýratynlygy, sebäbi ulgamyňyz ogurlanan hem bolsa şahsy maglumatlaryňyz elmydama üpjün ediler. Bu nokat, ogurlanmak ähtimallygy has ýokary bolan noutbuklar ýaly ykjam enjamlar üçin has ýerliklidir.
  • Maglumatlaryňyzy gözegçilikden tygşytlaýar - Linux ulgamyňyzda ulgamyňyzyň döwülmegi ähtimallygy gaty az, ýöne ulanyjy özüni balyk aldawlaryndan goramak üçin akylly bolmasa, edip bolýar. Kompýuteriňize hüjüm edilse-de, haker maglumatlaryňyza girip bilmez, bu oňa mümkinçilik berýän başga bir subutnama.

  • Öndürijilige täsiri - Bu diňe az sanly ulgamlara ulanylyp bilner, sebäbi häzirki zaman kompýuter şifrlemäni hiç hili kynçylyksyz dolandyryp biler, emma ulanylanda biraz haýal okamak we ýazmak tizligini taparsyňyz.

Biziň pikirimizçe, doly disk şifrlemek elmydama paýhasly saýlawdyr, sebäbi başga-da birnäçe çeşme bilen zyýany ýeňip geçmek aňsat. Şonuň üçin has gowy howpsuzlyk üçin azajyk öndürijilik peselse, şifrlemek işine başlalyň.

Ubuntu 22.04-de tutuş diski şifrlemek

Bu başlangyç dostlukly gollanma we her ädimde size ýol görkezmeli, şol bir wagtyň özünde ösen ulanyjylar ondan peýdalanyp bilerler.

Resmi Ubuntu göçürip almak sahypasyna giriň we awtomatiki göçürip alyp başlajak Ubuntu 22.04 LTS wersiýasyny saýlaň.

Ubuntu ISO şekilini USB diskine öwürmek üçin Balena Etcher ulanarys, häzirki wagtda ulanýan OS-yňyzy awtomatiki kesgitlär. “Balena Etcher” -i guranyňyzdan soň, ony öz ulgamyňyza guruň.

ISO faýlyny ýakmak üçin balenaEtcher açyň we\Faýldan fleş opsiýasyny saýlaň we ýakynda göçürilen Ubuntu 22.04 ISO faýlyny saýlaň.

Ondan soň, ISO faýlyny ýakmak isleýän diskimizi saýlaň.\Maksady saýla opsiýasyny saýlaň we ulgamyňyzdaky gurnalan diskleriň hemmesini görkezer. Elýeterli opsiýalardan USB ýa-da DVD diskini saýlaň.

USB diskimizi üstünlikli ýitirenimizden soň, USB diskden başlamagyň wagty geldi. USB-den açmak üçin ulgamyňyzy täzeden açyň we ulgamyňyz açylanda F10, F2, F12, F1 ýa-da DEL ulanyň. Şol ýerden USB-ni boot disk hökmünde saýlamaly.

USB arkaly açylansoň, bölmek we şifrlemek bölümine geçip bileris. Bu käbir täze ulanyjylary kynlaşdyryp biler, sebäbi çylşyrymly görünmegi mümkin, ýöne her ädimden geçmeli bolarsyňyz we ulgamyňyzy gysga wagtda şifrlärsiňiz.

ÜNS BERI N: Nvme SSD ulanyjylary üçin käbir buýruklar tapawutlanýar, buýrugy ulanmazdan ozal görkezmäni okaň, zerur bolanda olary aýyrdyk.

Ubuntu-a gireniňizden soň, iki wariant alarsyňyz: Ubuntu-ny synap görüň we Ubuntu-ny guruň. Bölümleri şifrlemekçi bolanymyzda, janly gurşaw ulanmalydyrys. Şonuň üçin\Ubuntu synap görüň diýlen birinji warianty saýlaň.

Leftokarky çep tarapda ýerleşýän çärelere basyň we Terminal üçin gözleg ýazyň. Ilkinji netijede Enter basyň we bu biziň üçin Terminal açar. Ondan soň kök ulanyja geçiň, sebäbi ulanjak buýruklarymyzyň hemmesi administratiw artykmaçlyklary talap eder.

$ sudo -i

Upcomingakynda çykjak buýruklar BASH-a ýokary derejede bil baglaýandygy sebäpli, geliň, aşakdaky gabyk bilen başlangyç gabymyzdan BASH-a geçeliň:

# bash

Ondan soň, gurnama nyşanyny kesgitläň, gurnalan ammar enjamlaryny aşakdaky buýruk bilen sanamalydyrys:

# lsblk

Maksatly bölümi ululygy boýunça aňsatlyk bilen kesgitläp bilersiňiz we köp halatlarda sda we vda diýip atlandyrylar. Meniň ýagdaýymda, 20 Gb ululykdaky sda.

Bu bölüm diňe SATA SSD-leri üçin HDD ulanýan bolsaňyz ulanylýar. Şonuň üçin Nvme SSD bilen enjamlaşdyrylan biri bolsaňyz, üýtgeýän atlary paýlamak aşakdaky ädimde düşündirilýär.

Maksatly enjamymyň sda ady bolany üçin, aşakdaky buýrugy ulanmagy talap edýärin:

# export DEV="/dev/sda"

Nvme ulanýan biri bolsaňyz, maksatly enjamyňyzyň atlandyryş shemasy/dev/nvme & # 36 {CONTROLLER} n & # 36 {NAMESPACE} p & # 36 {PARTITION} bolar, şonuň üçin diňe bir bölüm bar bolsa, bolardy berlen buýruga meňzeş ady bar bolsa gerek:

# export DEV="/dev/nvme0n1"

Indi, şifrlenen enjam kartasy üçin üýtgeýjini aşakdaky buýruk bilen düzeliň:

# export DM="${DEV##*/}"

Her Nvme enjamyna goşulma 'p' gerek bolar, şonuň üçin goşulma goşmak üçin berlen buýruklary ulanyň:

# export DEVP="${DEV}$( if [[ "$DEV" =~ "nvme" ]]; then echo "p"; fi )"
# export DM="${DM}$( if [[ "$DM" =~ "nvme" ]]; then echo "p"; fi )"

Täze GPT bölüm bölümini döretmek üçin sgdidk kömekçi programmasyny aşakdaky buýruk bilen ulanarys:

# sgdisk --print $DEV

Indi bar bolan maglumatlary arkaýyn aýyryp bileris, emma bu ulgamy bar bolan bölümler bilen birlikde gurýan bolsaňyz, bu ädimden gaça durmagyňyzy haýyş edýäris.

Maglumatlary formatlamak üçin aşakdaky buýrugy ulanyň:

# sgdisk --zap-all $DEV

BIOS re modeimli GRUB-iň esasy suraty üçin 2MB bölüm, 768MB boot bölümi we EFI faýl ulgamy üçin 128MB bölmekçi, galan ýer islenýän maglumatlaryňyzy saklap boljak ulanyja bölüner.

Draýweriňizi bölmek üçin berlen buýruklary birin-birin ulanyň:

# sgdisk --new=1:0:+768M $DEV
# sgdisk --new=2:0:+2M $DEV
# sgdisk --new=3:0:+128M $DEV
# sgdisk --new=5:0:0 $DEV
# sgdisk --typecode=1:8301 --typecode=2:ef02 --typecode=3:ef00 --typecode=5:8301 $DEV

Bölümleriň adyny üýtgetmek üçin berlen buýruklary ulanyň:

# sgdisk --change-name=1:/boot --change-name=2:GRUB --change-name=3:EFI-SP --change-name=5:rootfs $DEV
# sgdisk --hybrid 1:2:3 $DEV

Recentlyakynda döredilen bölümleri sanamak üçin aşakdaky buýrugy ulanyň:

# sgdisk --print $DEV

Geliň, boot bölümini şifrlemek bilen şifrlemek amalymyza başlalyň. Rugsatyňyzy soranda, ähli gapaklarda HAES ýazmaly bolarsyňyz.

# cryptsetup luksFormat --type=luks1 ${DEV}1

Indi, OS bölümini aşakdaky buýruk bilen şifrläliň:

# cryptsetup luksFormat --type=luks1 ${DEV}5

Has giňişleýin gurnamak üçin, boot we OS bölümlerini açmak üçin aşakdaky buýruklary ulanyp, kodlanan bölümleri açmalydyrys.

# cryptsetup open ${DEV}1 LUKS_BOOT
# cryptsetup open ${DEV}5 ${DM}5_crypt

Bu ädim diňe ulgamyňyz Nvme SSD bilen enjamlaşdyrylan ýagdaýynda ulanylýar. Bootükleme we OS bölümlerini şifrlemek üçin aşakdaky buýruklary ulanyň:

# cryptsetup luksFormat --type=luks1 ${DEVP}1
# cryptsetup luksFormat --type=luks1 ${DEVP}5

Indi, şifrlenen bölümleriň gulpuny açalyň, sebäbi mundan beýläk gurnamak üçin zerur.

# cryptsetup open ${DEVP}1 LUKS_BOOT
# cryptsetup open ${DEVP}5 ${DM}5_crypt

Bu edilmedik ýaly iň möhüm ädimleriň biri, gurnaýjy faýl ulgamyny ýazmak ukybyny öçürer. Formatlamak üçin aşakdaky buýrugy ulanyň:

# mkfs.ext4 -L boot /dev/mapper/LUKS_BOOT

Ulgamyňyz HDD we SATA SSD bilen enjamlaşdyrylan bolsa, FAT16-da formatlamak üçin aşakdaky buýrugy ulanyň:

# mkfs.vfat -F 16 -n EFI-SP ${DEV}3

Şonuň üçin ulgamyňyz Nvme SSD ulanýan bolsa, aşakdaky buýrugy ulanyp 3-nji bölümi aňsatlyk bilen formatlap bilersiňiz:

# mkfs.vfat -F 16 -n EFI-SP ${DEVP}3

LVM iň halanýan funksiýalarymdan biridir. LVM aýratynlyklaryny ulanmasaňyzam, bu ulgamyňyza zyýan ýetirmez we geljekde LVM-iň hödürleýän aýratynlygy gerek bolsa, olary hiç hili kynçylyksyz ulanyp bilersiňiz.

Bu ýerde, ulgam ýady gutaranda disk ýerini ulanjak swap bölümine 4GB bölmekçi. Mundan başga-da, ulanyjy öz disk giňişligini mümkin boldugyça has köp peýdalanmak üçin boş ýerleriň 80% -ini köklemek üçin bölýäris.

Elbetde, ulanyş ýagdaýlaryňyza görä üýtgedip bilersiňiz we hatda geljekde üýtgedip bilersiňiz. Berlen buýruklary birin-birin ulanyň we ulgamyňyz hiç wagt LVM taýýar bolmaz:

# pvcreate /dev/mapper/${DM}5_crypt
# vgcreate ubuntu--vg /dev/mapper/${DM}5_crypt
# lvcreate -L 4G -n swap_1 ubuntu—vg
# lvcreate -l 80%FREE -n root ubuntu--vg

Ubuntu gurnaýjysyny işe girizmegiň wagty geldi. Gurnaýjyny kiçeldiň we gurnaýjyny baş ekranda taparsyňyz.

Adaty gurnama ýa-da minimal bilen gidýän bolsaňyzam, size bagly, ýöne has gowy tejribe almak üçin käbir wariantlar saýlanylmaly we täzelenmeleri we üçünji tarap draýwerlerini we kodekleri gurnap, ulanyjy tejribäňizi hökman ýokarlandyrar we tygşytlar gurnandan soň wagt

Gurnama görnüşi bölüminde, ýaňy el bilen döreden bölümlerimizi dolandyrmaga kömek etjek\Başga bir zat diýen belligi saýlaň.

Bu ýerde şol bir at bilen birnäçe bölüm taparsyňyz. Asyl nusgasyny aňsatlyk bilen kesgitläp bilersiňiz, sebäbi gurnawçy alnan ululygy bellär. Indi LUKS_BOOT bilen başlalyň.

LUKS_BOOT saýlaň we üýtgetmek düwmesine basyň.

Indi, birinji wariantda Ext4 ingurnal faýl ulgamyny saýlaň. Bölüm opsiýasyny “Format” -y işlediň we gurnama nokadynda saýlaň/ýükläň.

Şonuň ýaly, ubuntu - vg-root saýlaň we üýtgetmek düwmesine basyň. Bu ýerde, birinji wariantda Ext4 ingurnal faýl ulgamyny saýlaň. Bölüm opsiýasyny “Format” -y işjeňleşdiriň we iň soňkusynda \/opsiýasyny saýlaň.

Indi ubuntu - vg-swap_1 saýlaň we opsiýalar düwmesine basyň. Swap meýdany opsiýasyny saýlaň we hut şu.

Üýtgeşmeleri jemläň we häzirki ýerleşýän ýeriňizi saýlaň.

Ulanyjy döredilenden soň, täze gurmak düwmesine basmaň, sebäbi täze ulanyjy döredenimizden soň käbir buýruklary ulanarys. Ulanyjyny güýçli parol bilen dörediň.

Ulanyjy döredeniňizden soň, terminalyňyzy açyň we gurnama başlamazdan ozal GRUB-da şifrlemegi işjeňleşdirjek bolanymyzda berlen buýruklary ulanyň:

# while [ ! -d /target/etc/default/grub.d ]; do sleep 1; done; echo "GRUB_ENABLE_CRYPTODISK=y" > /target/etc/default/grub.d/local.cfg

Gurnama tamamlanandan soň, ýüklemeli disk ulanmagy talap edýän käbir üýtgeşmelere geçýändigimiz üçin synagy dowam etdiriň.

Bu bölümde, diskleri gurnamak, zerur paketleri gurmak we şifrlemek üçin käbir zerur üýtgeşmeler girizmekçi. Şonuň üçin terminalyňyzy açyň we berlen ädimleri ýerine ýetiriň:

Chroot, ýaňy Ubuntu guran bölümlerimize girmek üçin ulanylýar. Berlen buýruklary ulanyň, olaryň biri sürüjini gurnamagy we çroot-gurşawy döretmegi öz içine alýar.

# mount /dev/mapper/ubuntu----vg-root /target
# for n in proc sys dev etc/resolv.conf; do mount --rbind /$n /target/$n; done 
# chroot /target
# mount -a

“Cryptsetup” bukjasy, şifrlenen faýllary açmak wagtynda açmak üçin jogapkärçilik çeker we berlen buýruk bilen aňsatlyk bilen gurup bileris:

# apt install -y cryptsetup-initramfs

Esasy faýl parol koduny şifrlemek üçin kesişmek üçin ulanylar we şifrlenen bölüm bolan/boot/-da saklanýar. Dowam etmek üçin berlen buýrugy ulanyň:

# echo "KEYFILE_PATTERN=/etc/luks/*.keyfile" >> /etc/cryptsetup-initramfs/conf-hook 
# echo "UMASK=0077" >> /etc/initramfs-tools/initramfs.conf 

512 baýtdan ybarat esasy faýl dörederis, ony ygtybarly ederis we şifrlenen göwrümleri hem goşarys. Berlen buýruklary ulanyp, oňa ýetip bilersiňiz:

# mkdir /etc/luks
# dd if=/dev/urandom of=/etc/luks/boot_os.keyfile bs=512 count=1
# chmod u=rx,go-rwx /etc/luks
# chmod u=r,go-rwx /etc/luks/boot_os.keyfile

Ulgamymyzy üstünlikli şifrlemek üçin gaty ýakyn bolanymyz üçin bu iň soňky ädimleriň biri bolmaly. Boot_os.key faýlynda düwmeler goşmak üçin aşakdaky buýrugy ulanyň.

# cryptsetup luksAddKey ${DEV}1 /etc/luks/boot_os.keyfile
# cryptsetup luksAddKey ${DEV}5 /etc/luks/boot_os.keyfile 

Kripttabyň açarlaryny goşmak üçin aşakdaky buýrugy ulanyň:

# echo "LUKS_BOOT UUID=$(blkid -s UUID -o value ${DEV}1) /etc/luks/boot_os.keyfile luks,discard" >> /etc/crypttab
# echo "${DM}5_crypt UUID=$(blkid -s UUID -o value ${DEV}5) /etc/luks/boot_os.keyfile luks,discard" >> /etc/crypttab

Nvme SSD ulanýan bolsaňyz, boot_os.file-de düwmeler goşmak üçin aşakdaky buýrugy ulanyp bilersiňiz:

# cryptsetup luksAddKey ${DEVP}1 /etc/luks/boot_os.keyfile
# cryptsetup luksAddKey ${DEVP}5 /etc/luks/boot_os.keyfile 

Şonuň ýaly-da, crypttab-da düwmeler goşmak üçin aşakdaky buýrugy ulanyň:

# echo "LUKS_BOOT UUID=$(blkid -s UUID -o value ${DEVP}1) /etc/luks/boot_os.keyfile luks,discard" >> /etc/crypttab
# echo "${DM}5_crypt UUID=$(blkid -s UUID -o value ${DEVP}5) /etc/luks/boot_os.keyfile luks,discard" >> /etc/crypttab

Indi initialramfs faýllaryny täzeläliň, sebäbi aşakdaky buýruk bilen gulpy açýan skriptleri we açar faýly goşar:

# update-initramfs -u -k all

Indi ulgamyňyzy täzeden açyň we ulgamyňyzy açmak üçin GRUB söz düzümine geçer.

Bu gollanmanyň esasy maksady, Ubuntu-da doly disk şifrlemesini açmak arkaly hatda öz ulgamyny gorap bilýän aňsat amallary ýerine ýetirmekdi.