Otu esi ezochi diski zuru oke mgbe ị na-etinye Ubuntu 22.04


Nkesa Linux emeela nnukwu ọrụ iji nweta nchebe ọzọ site na iweta izo ya ezo diski zuru oke na ịbụ onye isi ahịa.

Ubuntu nwekwara ọtụtụ atụmatụ na nzuzo nzuzo bụ otu n'ime ha. Ịkwado izo ya ezo diski zuru oke dị oke mkpa maka ndị chọrọ ịchekwa data nzuzo ha n'agbanyeghị ụgwọ ọ bụla ọ bụrụgodị na ezuru ngwaọrụ gị ka ọ na-achọ ka itinye koodu passcode na buut ọ bụla.

Enwere ike ime ka izo ya ezo diski zuru ezu naanị mgbe ị na-etinye Sistemụ Ọrụ ka a ga-etinye ihe nzuzo diski zuru oke na akụkụ ọ bụla nke draịva gị nke gụnyere nkebi buut na swap. Ma nke a bụ ihe mere e ji chọọ ka anyị mee ya site na mmalite nke nrụnye.

Nkuzi nzọụkwụ a ga-eduzi gị otu ị ga-esi mee ka izo ya ezo diski zuru oke na Ubuntu 22.04 na maka ebumnuche ahụ, anyị ga-eji LVM (Logical Volume Management) na LUKS (maka ebumnuche nzuzo).

  • USB mbanye nwere ike ibugharị.
  • njikọ ịntanetị nwere bandwidth zuru oke iji budata nnukwu faịlụ.
  • EFI motherboard agbanyere.

Mana tupu ịwụba na usoro a, ka anyị nwee echiche dị nkenke gbasara uru na ọghọm dị na Encryption Disk.

A na-ejikọta atụmatụ ọ bụla na uru na ọghọm ya na nke a dịkwa na ihe gbasara izo ya ezo disk. Yabụ na ọ dị mma mgbe niile ịmara ihe ị ga-atụ anya ya na ihe ọ bụghị site na usoro ndị a ga-eme.

  • Na-echebe data gị nwere mmetụta na ohi - Ee, nke a bụ akụkụ kacha atọ ụtọ nke izo ya ezo disk ka a ga-echekwa data nzuzo gị mgbe niile ọbụlagodi na ezuru sistemụ gị. Isi ihe a dabara adaba n'ihe gbasara ngwaọrụ mkpanaaka dị ka Laptọọpụ nke nwere ohere zuru oke nke izu ohi.
  • Na-echekwa data gị na onyunyo – Ohere nke ịwakpo sistemu gị pere mpe na Linux mana enwere ike ịme ya ma ọ bụrụ na onye ọrụ amachaghị nke ọma iji chebe onwe ya pụọ na ojoro azụ. Ọbụlagodi na a na-awakpo kọmputa gị, onye hacker agaghị enwe ike ịnweta data gị nke bụ ihe akaebe ọzọ na-enyere ya aka.

  • Mmetụta na arụmọrụ - Enwere ike itinye nke a naanị na sistemụ nwere akụrụngwa ole na ole n'ihi na kọmpụta ọgbara ọhụrụ nwere ike ijikwa ezoro ezo n'enweghị nsogbu ọ bụla mana ị ga-ahụ ntakịrị ntakịrị ịgụ na ide ọsọ mgbe ị na-eji.

Dị ka anyị si kwuo, izo ya ezo diski zuru oke bụ nhọrọ amamihe dị na ya mgbe ọ na-enye ọtụtụ uru mgbe ọ dị mfe iji ihe ole na ole ọzọ merie nsogbu ahụ. Yabụ ọ bụrụ na ị dị mma na obere arụmọrụ arụmọrụ maka nchekwa ka mma, ka anyị bido usoro nzuzo.

Na-ezochi diski niile na Ubuntu 22.04

Nke a bụ mmalite enyi na enyi nduzi na ọ kwesịrị na-eduzi gị site ọ bụla nzọụkwụ ka elu ọrụ ka nwere ike irite uru na ya.

Gaa na ibe nbudata Ubuntu gọọmentị wee họrọ ụdị Ubuntu 22.04 LTS, nke ga-amalite nbudata ya ozugbo.

Iji gbanye ihe oyiyi Ubuntu ISO na draịvụ USB, anyị ga-eji Balena Etcher, nke ga-achọpụta OS ị na-eji ugbu a na-akpaghị aka. Ozugbo ị na-mere wụnye Balena Etcher, wụnye ya na gị usoro.

Iji gbaa faịlụ ISO ọkụ, mepee balenaEtcher wee họrọ nhọrọ Flash from file wee họrọ faịlụ Ubuntu 22.04 ISO ebudatara na nso nso a.

Ọzọ, họrọ draịva nke anyị chọrọ ịgbanye faịlụ ISO. Họrọ nhọrọ Họrọ target na ọ ga-edepụta draịva niile etinyere na sistemụ gị. Site na nhọrọ dịnụ, họrọ draịvụ USB ma ọ bụ DVD.

Ozugbo anyị kụchara draịvụ USB anyị nke ọma, oge eruola ka isi na draịvụ USB buo ya. Iji buo na USB, malitegharịa sistemu gị wee jiri F10, F2, F12, F1, ma ọ bụ DEL ka sistemụ gị na-arị elu. Site n'ebe ahụ, ị ga-ahọrọ USB gị ka ọ bụrụ draịva boot gị.

Ozugbo ebunyere anyị site na USB, anyị nwere ike ịga n'ihu na akụkụ nkewa na nzuzo. Nke a nwere ike iju ụfọdụ ndị ọrụ ọhụrụ n'ihi na ọ nwere ike ịdị mgbagwoju anya mana naanị ị ga-agbaso usoro nke ọ bụla, ị ga-enweta ezoro ezo sistemụ gị n'oge adịghị anya.

IHE: Ụfọdụ iwu dị iche iche maka ndị ọrụ Nvme SSD, biko gụọ ntụziaka a tupu itinye iwu ahụ ka anyị kewara ha mgbe achọrọ.

Ozugbo ịbanye n'ime Ubuntu, ị ga-enweta nhọrọ abụọ: Gbalịa Ubuntu na Wụnye Ubuntu. Ka anyị na-aga izochi nkebi, a chọrọ ka anyị jiri ebe obibi. Yabụ họrọ nhọrọ nke mbụ akpọrọ \Gbalịa Ubuntu.

Pịa ihe omume dị n'elu aka ekpe wee pịnye ọchụchọ maka Terminal. Pịa Tinye na nsonaazụ mbụ ọ ga-emeghe Terminal maka anyị. Ọzọ, gbanwee gaa na onye ọrụ mgbọrọgwụ, n'ihi na iwu niile nke anyị ga-eji ga-achọ ikike nchịkwa.

$ sudo -i

Dịka iwu ndị na-abịanụ ga-adabere na BASH nke ukwuu, ka anyị si na shei ndabara anyị gaa BASH site n'iwu a:

# bash

Na-esote, chọpụta ebumnuche nrụnye, a chọrọ ka anyị depụta ngwaọrụ nchekwa niile ejiri iwu a:

# lsblk

Ị nwere ike ịmata nkebi ebumnuche n'ụzọ dị mfe site na nha na n'ọtụtụ ọnọdụ, a ga-akpọ ya sda na vda. N'ọnọdụ m, ọ bụ sda nwere nha 20GB.

Akụkụ a bụ naanị maka gị ma ọ bụrụ na ị na-eji HDD maka SATA SSDs. Yabụ ọ bụrụ na ị bụ onye nwere Nvme SSD, ekenye aha agbanwe agbanwe ka akọwara n'usoro dị n'okpuru.

Dịka akpọrọ aha ngwaọrụ m lekwasịrị anya sda, achọrọ m iji iwu a:

# export DEV="/dev/sda"

Ọ bụrụ na ị bụ onye na-eji Nvme, atụmatụ aha maka ngwaọrụ ebumnuche gị ga-adị ka /dev/nvme$ {CONTROLLER}n& #36 {NAMESPACE}p& # 36 {PARTITION} yabụ ọ bụrụ na enwere naanị otu nkebi, ọ ga- nwere ike inwe aha yiri nke enyere iwu:

# export DEV="/dev/nvme0n1"

Ugbu a, ka anyị hazie mgbanwe maka maapụ ngwaọrụ ezoro ezo site na iwu a:

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

Ngwa Nvme ọ bụla ga-achọ 'p' na suffix wee jiri iwu enyere ka ịgbakwunye suffix:

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

Iji mepụta tebụl nkebi GPT ọhụrụ, anyị ga-eji sgdidk utility jiri iwu a:

# sgdisk --print $DEV

Ugbu a, anyị nwere ike wepu data niile dị n'enweghị nsogbu mana ọ bụrụ na ị na-etinye sistemu a n'akụkụ akụkụ ndị dị adị, biko zere usoro a.

Iji hazie data ahụ, jiri iwu a:

# sgdisk --zap-all $DEV

Anyị ga-ekenye akụkụ 2MB maka isi ihe oyiyi GRUB nke BIOS-mode, 768MB boot partition, na 128MB maka sistemụ faịlụ EFI, a ga-ekenye ohere fọdụrụnụ nye onye ọrụ ebe ị nwere ike ịchekwa data ịchọrọ.

Jiri iwu ndị enyere n'otu n'otu kewaa draịva gị:

# 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

Ka ịgbanwee aha nkebi, jiri iwu enyere:

# 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

Iji depụta akụkụ ndị emepụtara nso nso a, jiri iwu a:

# sgdisk --print $DEV

Ka anyị malite usoro nzuzo anyị site na izochi nkebi buut. Achọrọ ka ị pịnye EE na okpu niile mgbe ọ na-arịọ maka ikike gị.

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

Ugbu a, ka anyị zoo akụkụ OS site n'iwu a:

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

Maka nrụnye ọzọ, anyị ga-akpọghee akụkụ ezoro ezo site na iji iwu ndị a iji kpọghee akụkụ buut na OS.

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

Nzọụkwụ a dị naanị ma ọ bụrụ na ejiri Nvme SSD kwadoro sistemụ gị. Jiri iwu ndị a iji zoo akụkụ buut na OS:

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

Ugbu a, ka anyị kpọghee akụkụ ndị ezoro ezo ka ọ dị mkpa ka anyị hazie n'ihu na ntinye.

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

Nke a bụ otu n'ime usoro kachasị mkpa dị ka ọ bụrụ na emeghị ya, onye nrụnye ga-ewepụ ikike ide faịlụ faịlụ. Jiri iwu a ka ịmalite nhazi:

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

Ọ bụrụ na sistemụ gị nwere HDD na SATA SSD, jiri iwu na-esonụ hazie ya na FAT16:

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

Yabụ ọ bụrụ na sistemụ gị na-eji Nvme SSD, ị nwere ike hazie nkebi nke atọ n'ụzọ dị mfe site na iji iwu a:

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

LVM bụ otu n'ime ọrụ ndị ahụ kacha amasị m. Ọbụna ma ọ bụrụ na ị naghị eji njirimara LVM, na-eme ka ọ ghara imebi usoro gị na n'ọdịnihu, ọ bụrụ na ịchọrọ njirimara ọ bụla LVM na-enye, ị nwere ike iji ha na-enweghị nsogbu ọ bụla.

N'ebe a, anyị ga-ekenye 4GB na nkebi swap nke ga-eji ohere diski mgbe usoro ahụ kwụsịrị. Anyị na-ekenye 80% nke ohere efu iji gbanye mgbọrọgwụ ka onye ọrụ wee nwee ike iji ohere diski ya mee ka ikike dị elu.

N'ezie, ị nwere ike ịgbanwe ya dị ka ihe eji eme ihe na ọbụna gbanwee ya n'ọdịnihu. Jiri iwu enyere otu otu na sistemụ gị ga-adị njikere n'oge adịghị anya:

# 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

Ọ bụ oge ịmalite Ubuntu installer. Naanị belata installer na ị ga-ahụ installer na home screen.

Ma ị na-aga na nrụnye nkịtị ma ọ bụ nke pere mpe, ọ dịịrị gị mana nhọrọ ụfọdụ achọrọ ka ịhọrọ ka ị nweta ahụmịhe ka mma, nke ahụ na-etinye mmelite na ndị ọkwọ ụgbọ ala na codecs ndị ọzọ nke ga-eme ka ahụmịhe onye ọrụ gị dịkwuo mma ma chekwaa. ị oge mgbe echichi.

N'akụkụ nke ụdị nrụnye, họrọ nhọrọ akpọrọ \Ihe ọzọ nke ga-enyere anyị aka ijikwa nkebi ndị anyị ji aka mepụta.

N'ebe a, ị ga-ahụ ọtụtụ akụkụ nwere otu aha. Ị nwere ike ịmata nke mbụ n'ụzọ dị mfe dịka onye nrụnye ga-ekwu banyere nha ewere. Ugbu a, ka anyị jiri LUKS_BOOT bido.

Họrọ LUKS_BOOT wee pịa bọtịnụ mgbanwe.

Ugbu a, họrọ usoro faịlụ akwụkwọ akụkọ Ext4 na nhọrọ nke mbụ. Kwado Hazie nhọrọ nkebi na n'ebe ugwu, họrọ/buut.

N'otu aka ahụ, họrọ ubuntu-vg-root wee pịa bọtịnụ mgbanwe. N'ebe a, họrọ usoro faịlụ akwụkwọ akụkọ Ext4 na nhọrọ nke mbụ. Kwado usoro nkebi nhọrọ na nke ikpeazụ, họrọ \/ nhọrọ.

Ugbu a, họrọ ubuntu–vg-swap_1 wee pịa bọtịnụ nhọrọ. Họrọ nhọrọ mpaghara swap na nke ahụ bụ ya.

Mezue mgbanwe ndị a wee họrọ ebe ị nọ ugbu a.

Mgbe ịmepụtara onye ọrụ, emetụla bọtịnụ wụnye ugbu a ka anyị ga-etinye iwu ụfọdụ ka emechara onye ọrụ ọhụrụ. Mepụta onye ọrụ na paswọọdụ siri ike.

Naanị mgbe ịmechara onye ọrụ, mepee ọdụ gị wee jiri iwu enyere ka anyị na-eme ka izo ya ezo na GRUB tupu echichi amalite:

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

Ozugbo emechara nrụnye, pịa na-aga n'ihu ịnwale ka anyị na-aga mgbanwe ụfọdụ nke ka chọrọ ka anyị jiri draịva bootable.

N'akụkụ a, anyị ga-ebugo draịva, wụnye ngwugwu achọrọ, ma mee mgbanwe ụfọdụ dị mkpa iji mee ka ọrụ ezoro ezo. Ya mere, mepee ọnụ ụzọ gị ma soro usoro ndị a:

A na-eji Chroot nweta akụkụ nke anyị tinyeworo Ubuntu na ya. Jiri iwu enyerenyere otu n'ime ha gụnyere ịnya draịva na imepụta gburugburu-chroot.

# 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

Ngwungwu Cryptsetup ga-ahụ maka imeghe faịlụ ezoro ezo n'oge buut ma anyị nwere ike ịwụnye ya ngwa ngwa site na iwu nyere:

# apt install -y cryptsetup-initramfs

A ga-eji faịlụ igodo ahụ gafee-elele passcode maka decryption wee chekwaa ya na /boot/ nke bụkwa akụkụ ezoro ezo. Jiri iwu enyere ka gaba n'ihu:

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

Anyị ga-emepụta faịlụ igodo nke 512 bytes, mee ka ọ dị nchebe, anyị ga-agbakwunye mpịakọta ezoro ezo. Ị nwere ike nweta nke ahụ site na iji iwu enyere:

# 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

Nke a kwesịrị ịbụ otu n'ime usoro ikpeazụ ka anyị dị nso na izochi sistemụ anyị nke ọma. Jiri iwu a ka ịgbakwunye igodo na faịlụ boot_os.key.

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

Iji tinye igodo na crypttab, jiri iwu a:

# 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

Ọ bụrụ na ị na-eji Nvme SSD, ị nwere ike iji iwu na-esonụ tinye igodo na boot_os.file:

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

N'otu aka ahụ, iji tinye igodo na crypttab, jiri iwu a:

# 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

Ugbu a, ka anyị melite faịlụ initialramfs ka ọ ga-agbakwunye scripts mkpọghe na igodo-faịlụ site na iwu a:

# update-initramfs -u -k all

Ugbu a, malitegharịa sistemu gị, ọ ga-eduga gị na GRUB pass-phrase ozugbo iji buo sistemụ gị.

Ebumnuche bụ isi n'azụ ntuziaka a bụ ime usoro dị mfe ịgbaso ebe ọbụna onye mbido nwere ike chekwaa sistemụ ha site n'ịkwado izo ya ezo diski zuru oke na Ubuntu.