Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar
Udhëzuesi i përditësuar i vet për kriptim të plotë të diskut në RuNet V0.2.

Strategjia e kaubojve:

[A] Kriptimi i bllokut të sistemit Windows 7 të sistemit të instaluar;
[B] Kriptimi i bllokut të sistemit GNU/Linux (Debian) sistemi i instaluar (përfshirë /boot);
[C] Konfigurimi GRUB2, mbrojtje nga ngarkuesi me nënshkrim dixhital/autentikim/hashing;
[D] zhveshje-shkatërrimi i të dhënave të pakriptuara;
[E] kopje rezervë universale e sistemit operativ të koduar;
[F] sulm <në artikullin [C6]> objektiv - ngarkuesi GRUB2;
[G]dokumentacion i dobishëm.

╭───Skema e #dhomes 40# :
├──╼ Windows 7 i instaluar - enkriptimi i plotë i sistemit, jo i fshehur;
├──╼ GNU/Linux i instaluar (Shpërndarjet Debian dhe derivatore) — Kriptimi i plotë i sistemit, jo i fshehur(/, duke përfshirë /boot; swap);
├──╼ ngarkues të pavarur: Bootloader VeraCrypt është instaluar në MBR, ngarkuesi GRUB2 është instaluar në ndarjen e zgjeruar;
├──╼nuk kërkohet instalim/riinstalim i OS;
└──╼ softuer kriptografik i përdorur: VeraCrypt; Cryptsetup; GnuPG; Kali i detit; Hashdeep; GRUB2 është falas/falas.

Skema e mësipërme zgjidh pjesërisht problemin e "boot në distancë në një flash drive", ju lejon të shijoni OS të koduar Windows/Linux dhe të shkëmbeni të dhëna përmes një "kanali të koduar" nga një OS në tjetrin.

Renditja e nisjes së kompjuterit (një nga opsionet):

  • ndezja e makinës;
  • ngarkimi i ngarkuesit të VeraCrypt (Futja e fjalëkalimit të saktë do të vazhdojë për të nisur Windows 7);
  • duke shtypur tastin "Esc" do të ngarkojë ngarkuesin e nisjes GRUB2;
  • Ngarkuesi i nisjes GRUB2 (zgjidhni shpërndarjen/GNU/Linux/CLI), do të kërkojë vërtetimin e superpërdoruesit të GRUB2 <login/password>;
  • pas vërtetimit të suksesshëm dhe përzgjedhjes së shpërndarjes, do t'ju duhet të vendosni një frazë kalimi për të zhbllokuar "/boot/initrd.img";
  • pas futjes së fjalëkalimeve pa gabime, GRUB2 do të "kërkojë" një futje fjalëkalimi (e treta, fjalëkalimi i BIOS-it ose fjalëkalimi i llogarisë së përdoruesit GNU/Linux - mos e merrni parasysh) për të zhbllokuar dhe nisur OS GNU/Linux, ose zëvendësim automatik i një çelësi sekret (dy fjalëkalime + çelës, ose fjalëkalim + çelës);
  • Ndërhyrja e jashtme në konfigurimin GRUB2 do të ngrijë procesin e nisjes së GNU/Linux.

Shqetësuese? Ok, le të automatizojmë proceset.

Kur ndani një hard disk (Tabela MBR) Një PC mund të ketë jo më shumë se 4 ndarje kryesore, ose 3 kryesore dhe një të zgjeruar, si dhe një zonë të pandarë. Një seksion i zgjeruar, ndryshe nga ai kryesor, mund të përmbajë nënseksione (disqet logjik = ndarje e zgjeruar). Me fjalë të tjera, "ndarja e zgjeruar" në HDD zëvendëson LVM për detyrën në fjalë: kriptimi i plotë i sistemit. Nëse disku juaj është i ndarë në 4 ndarje kryesore, duhet të përdorni lvm, ose të transformoni (me formatim) seksioni nga kryesori tek ai i avancuar, ose përdorni me mençuri të katër seksionet dhe lini gjithçka ashtu siç është, duke marrë rezultatin e dëshiruar. Edhe nëse keni një ndarje në diskun tuaj, Gparted do t'ju ndihmojë të ndani HDD-në tuaj (për seksione shtesë) pa humbje të të dhënave, por gjithsesi me një dënim të vogël për veprime të tilla.

Skema e paraqitjes së diskut, në lidhje me të cilën do të verbalizohet i gjithë artikulli, është paraqitur në tabelën më poshtë.

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar
Tabela (nr. 1) e ndarjeve 1 TB.

Duhet të keni edhe ju diçka të ngjashme.
sda1 - ndarja kryesore nr. 1 NTFS (i koduar);
sda2 - shënuesi i seksionit të zgjeruar;
sda6 - disk logjik (ka të instaluar ngarkuesin GRUB2);
sda8 - swap (skedar shkëmbimi i koduar/jo gjithmonë);
sda9 - testimi i diskut logjik;
sda5 - disk logjik për kureshtarët;
sda7 - GNU/Linux OS (OS i transferuar në një disk logjik të koduar);
sda3 - ndarja kryesore nr. 2 me Windows 7 OS (i koduar);
sda4 - seksioni kryesor nr. 3 (ai përmbante GNU/Linux të pakriptuar, të përdorura për kopje rezervë/jo gjithmonë).

[A] Kriptimi i bllokut të sistemit të Windows 7

A1. VeraCryptKriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Po ngarkohet nga faqen zyrtare, ose nga pasqyra SourceForge versioni i instalimit të softuerit kriptografik VeraCrypt (në kohën e publikimit të artikullit v1.24-Update3, versioni portativ i VeraCrypt nuk është i përshtatshëm për kriptim të sistemit). Kontrolloni kontrollin e softuerit të shkarkuar

$ Certutil -hashfile "C:VeraCrypt Setup 1.24.exe" SHA256

dhe krahasoni rezultatin me CS-në e postuar në faqen e internetit të zhvilluesve VeraCrypt.

Nëse është instaluar softueri HashTab, është edhe më e lehtë: RMB (VeraCrypt Setup 1.24.exe)-properties - shuma hash e skedarëve.

Për të verifikuar nënshkrimin e programit, softueri dhe çelësi publik pgp i zhvilluesit duhet të instalohen në sistem gnuPG; gpg4win.

A2. Instalimi/drejtimi i softuerit VeraCrypt me të drejta administratoriKriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

A3. Përzgjedhja e parametrave të enkriptimit të sistemit për ndarjen aktiveVeraCrypt – Sistemi – Kripto ndarjen/diskun e sistemit – Normal – Kripto ndarjen e sistemit të Windows – Multiboot – (paralajmërim: "Përdoruesit e papërvojë nuk rekomandohen të përdorin këtë metodë" dhe kjo është e vërtetë, ne pajtohemi me "Po") – Disku i nisjes ("po", edhe nëse jo ashtu, prapë "po") – Numri i disqeve të sistemit “2 ose më shumë” – Disa sisteme në një disk “Po” – Ngarkuesi jo-Windows “Jo” (në fakt, "Po", por ngarkuesit e nisjes VeraCrypt/GRUB2 nuk do ta ndajnë MBR-në mes tyre; më saktë, vetëm pjesa më e vogël e kodit të ngarkuesit të nisjes ruhet në rrugën MBR/boot, pjesa kryesore e saj është ndodhet brenda sistemit të skedarëve) – Multiboot – Cilësimet e kriptimit…

Nëse devijoni nga hapat e mësipërm (bllokojnë skemat e enkriptimit të sistemit), atëherë VeraCrypt do të lëshojë një paralajmërim dhe nuk do t'ju lejojë të kriptoni ndarjen.

Në hapin tjetër drejt mbrojtjes së synuar të të dhënave, kryeni një "Test" dhe zgjidhni një algoritëm kriptimi. Nëse keni një CPU të vjetëruar, atëherë ka shumë të ngjarë që algoritmi më i shpejtë i kriptimit do të jetë Twofish. Nëse CPU është i fuqishëm, do të vini re ndryshimin: kriptimi AES, sipas rezultateve të testit, do të jetë disa herë më i shpejtë se konkurrentët e tij kripto. AES është një algoritëm i njohur i enkriptimit; hardueri i CPU-ve moderne është i optimizuar posaçërisht si për "sekret" ashtu edhe për "hakim".

VeraCrypt mbështet aftësinë për të enkriptuar disqe në një kaskadë AES(Dy peshk)/ dhe kombinime të tjera. Në një CPU të vjetër Intel nga dhjetë vjet më parë (pa mbështetje harduerike për AES, enkriptim kaskadë A/T) Rënia e performancës është në thelb e padukshme. (për CPU-të AMD të së njëjtës epokë/~parametra, performanca është pakësuar). Sistemi operativ funksionon në mënyrë dinamike dhe konsumi i burimeve për kriptim transparent është i padukshëm. Në të kundërt, për shembull, ka një rënie të dukshme të performancës për shkak të mjedisit të instaluar të paqëndrueshëm të desktopit të testit Mate v1.20.1 (ose v1.20.2 nuk e mbaj mend saktësisht) në GNU/Linux, ose për shkak të funksionimit të rutinës së telemetrisë në Windows7↑. Në mënyrë tipike, përdoruesit me përvojë kryejnë teste të performancës së harduerit përpara kriptimit. Për shembull, në Aida64/Sysbench/systemd-analyze faji krahasohet me rezultatet e të njëjtave teste pas enkriptimit të sistemit, duke hedhur poshtë në këtë mënyrë mitin për vete se "kriptimi i sistemit është i dëmshëm". Ngadalësimi i makinerisë dhe shqetësimi janë të dukshme gjatë kopjimit/rivendosjes së të dhënave të enkriptuara, sepse vetë operacioni "backup i të dhënave të sistemit" nuk matet në ms, dhe të njëjtat <decrypt/encrypt on the fly> shtohen. Në fund të fundit, çdo përdorues që lejohet të ndërhyjë me kriptografinë balancon algoritmin e enkriptimit kundrejt kënaqësisë së detyrave në fjalë, nivelit të tyre të paranojës dhe lehtësisë së përdorimit.

Është më mirë të lini parametrin PIM si parazgjedhje, në mënyrë që kur ngarkoni OS të mos keni nevojë të vendosni vlerat e sakta të përsëritjes çdo herë. VeraCrypt përdor një numër të madh përsëritjesh për të krijuar një "hash të ngadaltë" të vërtetë. Një sulm ndaj një "kërmilli kripto" të tillë duke përdorur metodën Brute force/rainbow tables ka kuptim vetëm me një frazë të shkurtër kalimi "të thjeshtë" dhe listën personale të karaktereve të viktimës. Çmimi që duhet paguar për fuqinë e fjalëkalimit është një vonesë në futjen e fjalëkalimit të saktë gjatë ngarkimit të sistemit operativ. (montimi i vëllimeve të VeraCrypt në GNU/Linux është dukshëm më i shpejtë).
Softuer falas për zbatimin e sulmeve me forcë brutale (ekstraktoni frazën e kalimit nga kreu i diskut VeraCrypt/LUKS) Hashcat. John the Ripper nuk di se si të "thyejë Veracrypt" dhe kur punon me LUKS nuk e kupton kriptografinë Twofish.

Për shkak të fuqisë kriptografike të algoritmeve të kriptimit, cypherpunks të pandalshëm po zhvillojnë softuer me një vektor të ndryshëm sulmi. Për shembull, nxjerrja e meta të dhënave/çelësave nga RAM (sulmi i ndezjes së ftohtë/hyrjes direkte të memories), Për këto qëllime ka softuer të specializuar falas dhe jo të lirë.

Pas përfundimit të konfigurimit/gjenerimit të "meta të dhënave unike" të ndarjes aktive të koduar, VeraCrypt do të ofrojë rinisjen e kompjuterit dhe testimin e funksionalitetit të ngarkuesit të tij të nisjes. Pas rindezjes/fillimit të Windows, VeraCrypt do të ngarkohet në modalitetin e gatishmërisë, gjithçka që mbetet është të konfirmoni procesin e kriptimit - Y.

Në hapin e fundit të kriptimit të sistemit, VeraCrypt do të ofrojë krijimin e një kopje rezervë të kokës së ndarjes aktive të koduar në formën e "veracrypt rescue disk.iso" - kjo duhet të bëhet - në këtë softuer një operacion i tillë është një kërkesë (në LUKS, si kërkesë - kjo fatkeqësisht është lënë jashtë, por është theksuar në dokumentacion). Disku i shpëtimit do të jetë i dobishëm për të gjithë, dhe për disa më shumë se një herë. Humbje (titulli/rishkrimi MBR) një kopje rezervë e kokës do të mohojë përgjithmonë aksesin në ndarjen e deshifruar me OS Windows.

A4. Krijimi i një USB/disku shpëtimi VeraCryptSi parazgjedhje, VeraCrypt ofron të djegë "~ 2-3 MB metadata" në një CD, por jo të gjithë njerëzit kanë disqe ose disqe DWD-ROM, dhe krijimi i një flash drive bootable "VeraCrypt Rescue disk" do të jetë një surprizë teknike për disa: Rufus /GUIdd-ROSA ImageWriter dhe softuer të tjerë të ngjashëm nuk do të jenë në gjendje të përballojnë detyrën, sepse përveç kopjimit të meta të dhënave të kompensuara në një flash drive bootable, duhet të kopjoni/ngjisni imazhin jashtë sistemit të skedarëve të diskut USB. me pak fjalë, kopjoni saktë MBR/rrugën në zinxhir. Ju mund të krijoni një flash drive bootable nga GNU/Linux OS duke përdorur mjetin "dd", duke parë këtë shenjë.

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Krijimi i një disku shpëtimi në një mjedis Windows është i ndryshëm. Zhvilluesi i VeraCrypt nuk e përfshiu zgjidhjen e këtij problemi në zyrtar dokumentacionin nga "disku i shpëtimit", por propozoi një zgjidhje në një mënyrë tjetër: ai postoi softuer shtesë për krijimin e një "disku shpëtimi usb" për qasje falas në forumin e tij VeraCrypt. Arkivisti i këtij softueri për Windows po “krijon diskun e shpëtimit me veracrypt usb”. Pas ruajtjes së diskut të shpëtimit.iso, do të fillojë procesi i enkriptimit të sistemit të bllokimit të ndarjes aktive. Gjatë kriptimit, funksionimi i OS nuk ndalet; rinisja e PC-së nuk kërkohet. Pas përfundimit të operacionit të kriptimit, ndarja aktive bëhet plotësisht e koduar dhe mund të përdoret. Nëse ngarkuesi i nisjes VeraCrypt nuk shfaqet kur filloni kompjuterin dhe operacioni i rikuperimit të kokës nuk ju ndihmon, atëherë kontrolloni flamurin "boot", ai duhet të vendoset në ndarjen ku Windows është i pranishëm. (pavarësisht nga kriptimi dhe OS tjera, shih tabelën nr. 1).
Kjo plotëson përshkrimin e enkriptimit të sistemit të bllokut me Windows OS.

[B]LUKS. Kriptimi GNU/Linux (~Debian) OS të instaluar. Algoritmi dhe hapat

Për të enkriptuar një shpërndarje të instaluar Debian/derivativ, duhet të hartoni ndarjen e përgatitur në një pajisje bllok virtual, ta transferoni atë në diskun e hartuar GNU/Linux dhe të instaloni/konfiguroni GRUB2. Nëse nuk keni një server metalik të zhveshur dhe vlerësoni kohën tuaj, atëherë duhet të përdorni GUI-në dhe shumica e komandave të terminalit të përshkruara më poshtë janë menduar të ekzekutohen në "modalitetin Chuck-Norris".

B1. Nisja e kompjuterit nga GNU/Linux live usb

"Kryer një test kripto për performancën e harduerit"

lscpu && сryptsetup benchmark

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Nëse jeni pronar i lumtur i një makine të fuqishme me mbështetje harduerike AES, atëherë numrat do të duken si ana e djathtë e terminalit; nëse jeni pronar i lumtur, por me pajisje antike, numrat do të duken si në anën e majtë.

B2. Ndarja e diskut. montimi/formatimi i disqeve logjike fs HDD në Ext4 (Gparted)

B2.1. Krijimi i një titulli të ndarjes sda7 të koduarUnë do të përshkruaj emrat e ndarjeve, këtu dhe më tej, në përputhje me tabelën time të ndarjeve të postuar më lart. Sipas paraqitjes së diskut, duhet të zëvendësoni emrat e ndarjeve tuaja.

Harta e Kriptimit Logjik të Diskut (/dev/sda7 > /dev/mapper/sda7_crypt).
#Krijimi i lehtë i një ndarjeje "LUKS-AES-XTS"

cryptsetup -v -y luksFormat /dev/sda7

opsionet:

* luksFormat - inicializimi i kokës së LUKS;
* -y -fjalëkalimi (jo kyç/skedar);
* -v -verbalizimi (shfaqja e informacionit në terminal);
* /dev/sda7 - disku juaj logjik nga ndarja e zgjeruar (ku planifikohet të transferohet/shifrohet GNU/Linux).

Algoritmi i parazgjedhur i enkriptimit <LUKS1: aes-xts-plain64, çelësi: 256 bit, hashimi i kokës LUKS: sha256, RNG: /dev/urandom> (varet nga versioni i kriptetup).

#Проверка default-алгоритма шифрования
cryptsetup  --help #самая последняя строка в выводе терминала.

Nëse nuk ka mbështetje harduerike për AES në CPU, zgjidhja më e mirë do të ishte krijimi i një ndarjeje të zgjeruar "LUKS-Twofish-XTS-partition".

B2.2. Krijimi i avancuar i ndarjes "LUKS-Twofish-XTS"

cryptsetup luksFormat /dev/sda7 -v -y -c twofish-xts-plain64 -s 512 -h sha512 -i 1500 --use-urandom

opsionet:
* luksFormat - inicializimi i kokës së LUKS;
* /dev/sda7 është disku juaj logjik i koduar i ardhshëm;
* -v verbalizimi;
* -y fraza kalimi;
* -c zgjidhni algoritmin e enkriptimit të të dhënave;
* -s madhësia e çelësit të enkriptimit;
* -h algoritmi hashing/funksioni kripto, përdoret RNG (--përdorim-urandom) për të gjeneruar një çelës unik enkriptimi/deshifrimi për kokën logjike të diskut, një çelës dytësor të kokës (XTS); një çelës unik kryesor i ruajtur në kokën e diskut të koduar, një çelës dytësor XTS, të gjitha këto meta të dhëna dhe një rutinë enkriptimi që, duke përdorur çelësin kryesor dhe çelësin dytësor XTS, kodon/deshifron çdo të dhënë në ndarje (përveç titullit të seksionit) të ruajtura në ~ 3 MB në ndarjen e zgjedhur të diskut të ngurtë.
* -i përsëritjet në milisekonda, në vend të "sasia" (vonesa kohore gjatë përpunimit të frazës së kalimit ndikon në ngarkimin e OS dhe fuqinë kriptografike të çelësave). Për të ruajtur një ekuilibër të fuqisë kriptografike, me një fjalëkalim të thjeshtë si "rusisht" ju duhet të rrisni vlerën -(i); me një fjalëkalim kompleks si "?8dƱob/øfh" vlera mund të ulet.
* —përdor gjeneratorin e numrave të rastësishëm, gjeneron çelësa dhe kripë.

Pas hartës së seksionit sda7 > sda7_crypt (operacioni është i shpejtë, pasi krijohet një kokë e koduar me ~ 3 MB metadata dhe kjo është e gjitha), ju duhet të formatoni dhe montoni sistemin e skedarëve sda7_crypt.

B2.3. Krahasimi

cryptsetup open /dev/sda7 sda7_crypt
#выполнение данной команды запрашивает ввод секретной парольной фразы.

opsione:
* hapur - përputhni seksionin "me emrin";
* /dev/sda7 -disk logjik;
* sda7_crypt - harta e emrit që përdoret për të montuar ndarjen e koduar ose për ta inicializuar atë kur OS niset.

B2.4. Formatimi i sistemit të skedarëve sda7_crypt në ext4. Montimi i një disku në OS(Shënim: nuk do të mund të punoni me një ndarje të koduar në Gparted)

#форматирование блочного шифрованного устройства
mkfs.ext4 -v -L DebSHIFR /dev/mapper/sda7_crypt 

opsione:
* -v -verbalizimi;
* -L - etiketa e diskut (e cila shfaqet në Explorer midis disqeve të tjera).

Më pas, duhet të montoni në sistem pajisjen e bllokut të koduar virtuale /dev/sda7_crypt

mount /dev/mapper/sda7_crypt /mnt

Puna me skedarë në dosjen /mnt do të enkriptojë/deshifrojë automatikisht të dhënat në sda7.

Është më i përshtatshëm për të hartuar dhe montuar ndarjen në Explorer (nautilus/caja GUI), ndarja do të jetë tashmë në listën e përzgjedhjes së diskut, ajo që mbetet është të futni frazën e kalimit për të hapur/deshifruar diskun. Emri i përputhur do të zgjidhet automatikisht dhe jo "sda7_crypt", por diçka si /dev/mapper/Luks-xx-xx...

B2.5. Rezervimi i kokës së diskut (~3 MB meta të dhëna)Një nga më të e rëndësishme operacionet që duhet të bëhen pa vonesë - një kopje rezervë e kokës "sda7_crypt". Nëse mbishkruani/dëmtoni kokën (për shembull, instalimi i GRUB2 në ndarjen sda7, etj.), të dhënat e koduara do të humbasin plotësisht pa asnjë mundësi rikuperimi të tyre, sepse do të jetë e pamundur të rigjenerohen të njëjtët çelësa; çelësat janë krijuar në mënyrë unike.

#Бэкап заголовка раздела
cryptsetup luksHeaderBackup --header-backup-file ~/Бэкап_DebSHIFR /dev/sda7 

#Восстановление заголовка раздела
cryptsetup luksHeaderRestore --header-backup-file <file> <device>

opsione:
* luksHeaderBackup —komanda header-backup-file -komanda rezervë;
* luksHeaderRestore —komanda header-backup-file -restore;
* ~/Backup_DebSHIFR - skedar rezervë;
* /dev/sda7 - ndarje, kopja rezervë e kokës së diskut të koduar të së cilës do të ruhet.
Në këtë hap përfundon <krijimi dhe redaktimi i ndarjes së koduar>.

B3. Transferimi i sistemit operativ GNU/Linux (sda4) në një ndarje të koduar (sda7)

Krijo një dosje /mnt2 (Shënim - ne jemi ende duke punuar me USB live, sda7_crypt është montuar në /mnt), dhe montoni GNU/Linux-in tonë në /mnt2, i cili duhet të kodohet.

mkdir /mnt2
mount /dev/sda4 /mnt2

Ne kryejmë transferimin e saktë të OS duke përdorur softuerin Rsync

rsync -avlxhHX --progress /mnt2/ /mnt

Opsionet e Rsync përshkruhen në paragrafin E1.

më tej, është e nevojshme defragmentoni një ndarje logjike të diskut

e4defrag -c /mnt/ #после проверки, e4defrag выдаст, что степень дефрагментации раздела~"0", это заблуждение, которое может вам стоить существенной потери производительности!
e4defrag /mnt/ #проводим дефрагментацию шифрованной GNU/Linux

Bëjeni rregull: bëni e4defrag në GNU/Linux të koduar herë pas here nëse keni një HDD.
Transferimi dhe sinkronizimi [GNU/Linux > GNU/Linux-encrypted] përfundon në këtë hap.

NË 4. Konfigurimi i GNU/Linux në një ndarje të koduar sda7

Pas transferimit të suksesshëm të OS /dev/sda4 > /dev/sda7, duhet të identifikoheni në GNU/Linux në ndarjen e koduar dhe të kryeni konfigurimin e mëtejshëm (pa rindezur kompjuterin) në lidhje me një sistem të koduar. Kjo do të thotë, jini në USB live, por ekzekutoni komanda "në lidhje me rrënjën e sistemit operativ të koduar". "chroot" do të simulojë një situatë të ngjashme. Për të marrë shpejt informacion se me cilin OS jeni duke punuar aktualisht (të koduara ose jo, pasi të dhënat në sda4 dhe sda7 janë të sinkronizuara), desinkronizoni OS. Krijo në direktoritë rrënjësore (sda4/sda7_crypt) skedarë bosh shënues, për shembull, /mnt/encryptedOS dhe /mnt2/decryptedOS. Kontrolloni shpejt se në cilin OS jeni (përfshirë për të ardhmen):

ls /<Tab-Tab>

B4.1. "Simulimi i hyrjes në një OS të koduar"

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt

B4.2. Verifikimi që puna është kryer kundër një sistemi të koduar

ls /mnt<Tab-Tab> 
#и видим файл "/шифрованнаяОС"

history
#в выводе терминала должна появиться история команд su рабочей ОС.

B4.3. Krijimi/konfigurimi i shkëmbimit të koduar, redaktimi i crypttab/fstabMeqenëse skedari i shkëmbimit formatohet sa herë që fillon OS, nuk ka kuptim të krijohet dhe të hartohet swap në një disk logjik tani dhe të shtypni komanda si në paragrafin B2.2. Për Swap, çelësat e tij të përkohshëm të enkriptimit do të gjenerohen automatikisht në çdo fillim. Cikli i jetës së çelësave të shkëmbimit: çmontimi/çmontimi i ndarjes së shkëmbimit (+pastrimi i RAM-it); ose rinisni OS. Vendosja e shkëmbimit, hapja e skedarit përgjegjës për konfigurimin e pajisjeve të koduara në bllok (analog me një skedar fstab, por përgjegjës për kripto-n).

nano /etc/crypttab 

ne redaktojmë

#"emri i synuar" "pajisja burimore" "skedari kyç" "opsionet"
swap /dev/sda8 /dev/urandom swap,cipher=twofish-xts-plain64,size=512,hash=sha512

Options
* swap - emri i hartuar kur enkripton /dev/mapper/swap.
* /dev/sda8 - përdorni ndarjen tuaj logjike për shkëmbim.
* /dev/urandom - gjenerues i çelësave të rastësishëm të enkriptimit për shkëmbim (me çdo nisje të re të OS, krijohen çelësa të rinj). Gjeneruesi /dev/urandom është më pak i rastësishëm se /dev/random, në fund të fundit, /dev/random përdoret kur punoni në rrethana të rrezikshme paranojake. Kur ngarkoni OS, /dev/random ngadalëson ngarkimin për disa ± minuta (shih systemd-analize).
* swap,cipher=twofish-xts-plain64,size=512,hash=sha512: -ndarja e di që është swap dhe është e formatuar “në përputhje me rrethanat”; algoritmi i enkriptimit.

#Открываем и правим fstab
nano /etc/fstab

ne redaktojmë

# swap ishte aktiv / dev / sda8 gjatë instalimit
/dev/mapper/swap asnjë ndërroni sw 0 0

/dev/mapper/swap është emri që u vendos në crypttab.

Shkëmbim alternativ i koduar
Nëse për ndonjë arsye nuk dëshironi të hiqni dorë nga një ndarje e tërë për një skedar shkëmbimi, atëherë mund të shkoni në një mënyrë alternative dhe më të mirë: të krijoni një skedar shkëmbimi në një skedar në një ndarje të koduar me OS.

fallocate -l 3G /swap #создание файла размером 3Гб (почти мгновенная операция)
chmod 600 /swap #настройка прав
mkswap /swap #из файла создаём файл подкачки
swapon /swap #включаем наш swap
free -m #проверяем, что файл подкачки активирован и работает
printf "/swap none swap sw 0 0" >> /etc/fstab #при необходимости после перезагрузки swap будет постоянный

Konfigurimi i ndarjes së shkëmbimit ka përfunduar.

B4.4. Konfigurimi i GNU/Linux të koduar (redaktimi i skedarëve crypttab/fstab)Skedari /etc/crypttab, siç është shkruar më sipër, përshkruan pajisjet e bllokuara të koduara që janë konfiguruar gjatë nisjes së sistemit.

#правим /etc/crypttab 
nano /etc/crypttab 

nëse përputhet me seksionin sda7>sda7_crypt si në paragrafin B2.1

# "emri i synuar" "pajisja burimore" "skedari kryesor" "opsionet"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none luks

nëse përputhet me seksionin sda7>sda7_crypt si në paragrafin B2.2

# "emri i synuar" "pajisja burimore" "skedari kryesor" "opsionet"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none cipher=twofish-xts-plain64,size=512,hash=sha512

nëse përputhet me seksionin sda7>sda7_crypt si në paragrafin B2.1 ose B2.2, por nuk dëshironi të rifusni fjalëkalimin për të zhbllokuar dhe nisur sistemin operativ, atëherë në vend të fjalëkalimit mund të zëvendësoni një çelës sekret/skedar të rastësishëm

# "emri i synuar" "pajisja burimore" "skedari kryesor" "opsionet"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 /etc/skey luks

Përshkrim
* asnjë - raporton se kur ngarkoni OS, kërkohet futja e një fraze të fshehtë për të zhbllokuar rrënjën.
* UUID - identifikuesi i ndarjes. Për të zbuluar ID-në tuaj, shkruani terminalin (kujtoj se nga kjo kohë e tutje, ju jeni duke punuar në një terminal në një mjedis chroot, dhe jo në një terminal tjetër të drejtpërdrejtë USB).

fdisk -l #проверка всех разделов
blkid #должно быть что-то подобное 

/dev/sda7: UUID=«81048598-5bb9-4a53-af92-f3f9e709e2f2» TYPE=«crypto_LUKS» PARTUUID=«0332d73c-07»
/dev/mapper/sda7_crypt: LABEL=«DebSHIFR» UUID=«382111a2-f993-403c-aa2e-292b5eac4780» TYPE=«ext4»

kjo linjë është e dukshme kur kërkon blkid nga terminali i drejtpërdrejtë USB me sda7_crypt të montuar).
Ju merrni UUID nga sdaX juaj (jo sdaX_crypt!, UUID sdaX_crypt - do të lihet automatikisht kur gjenerohet konfigurimi grub.cfg).
* cipher=twofish-xts-plain64,size=512,hash=sha512 -kriptimi luks në modalitetin e avancuar.
* /etc/skey - skedari i çelësit sekret, i cili futet automatikisht për të zhbllokuar nisjen e OS (në vend që të futni fjalëkalimin e tretë). Mund të specifikoni çdo skedar deri në 8 MB, por të dhënat do të lexohen <1 MB.

#Создание "генерация" случайного файла <секретного ключа> размером 691б.
head -c 691 /dev/urandom > /etc/skey

#Добавление секретного ключа (691б) в 7-й слот заголовка luks
cryptsetup luksAddKey --key-slot 7 /dev/sda7 /etc/skey

#Проверка слотов "пароли/ключи luks-раздела"
cryptsetup luksDump /dev/sda7 

Do të duket diçka si kjo:

(bëjeni vetë dhe shikoni vetë).

cryptsetup luksKillSlot /dev/sda7 7 #удаление ключа/пароля из 7 слота

/etc/fstab përmban informacion përshkrues për sisteme të ndryshme skedarësh.

#Правим /etc/fstab
nano /etc/fstab

# "sistemi i skedarëve" "pika e montimit" "lloji" "opsionet" "dump" "pass"
# / ishte në / dev / sda7 gjatë instalimit
/dev/mapper/sda7_crypt / ext4 errors=remount-ro 0 1

opsion
* /dev/mapper/sda7_crypt - emri i hartës sda7>sda7_crypt, i cili specifikohet në skedarin /etc/crypttab.
Konfigurimi i crypttab/fstab ka përfunduar.

B4.5. Redaktimi i skedarëve të konfigurimit. Moment kyçB4.5.1. Redaktimi i konfigurimit /etc/initramfs-tools/conf.d/resume

#Если у вас ранее был активирован swap раздел, отключите его. 
nano /etc/initramfs-tools/conf.d/resume

dhe komentoni (nëse ekziston) Rreshti "#" "rifillimi". Skedari duhet të jetë plotësisht bosh.

B4.5.2. Redaktimi i konfigurimit /etc/initramfs-tools/conf.d/cryptsetup

nano /etc/initramfs-tools/conf.d/cryptsetup

duhet të përputhen

# /etc/initramfs-tools/conf.d/cryptsetup
CRYPTSETUP=po
eksportoni CRYPTSETUP

B4.5.3. Redaktimi i konfigurimit /etc/default/grub (ky konfigurim është përgjegjës për aftësinë për të gjeneruar grub.cfg kur punoni me /boot të koduar)

nano /etc/default/grub

shtoni rreshtin "GRUB_ENABLE_CRYPTODISK=y"
vlera 'y', grub-mkconfig dhe grub-install do të kontrollojnë për disqet e koduar dhe do të gjenerojnë komanda shtesë të nevojshme për t'iu qasur atyre në kohën e nisjes (të pakëndshme ).
duhet të ketë një ngjashmëri

GRUB_DEFAULT = 0
GRUB_TIMEOUT = 1
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || jehonë Debian`
GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=shitësi"
GRUB_CMDLINE_LINUX="noautomount me spërkatje të qetë"
GRUB_ENABLE_CRYPTODISK=y

B4.5.4. Redaktimi i konfigurimit /etc/cryptsetup-initramfs/conf-hook

nano /etc/cryptsetup-initramfs/conf-hook

kontrolloni se linja komentoi <#>.
Në të ardhmen (dhe edhe tani, ky parametër nuk do të ketë ndonjë kuptim, por ndonjëherë ndërhyn në përditësimin e imazhit initrd.img).

B4.5.5. Redaktimi i konfigurimit /etc/cryptsetup-initramfs/conf-hook

nano /etc/cryptsetup-initramfs/conf-hook

shtoni

KEYFILE_PATTERN=”/etc/skey”
UMASK=0077

Kjo do të paketojë "kyçin" e çelësit sekret në initrd.img, çelësi është i nevojshëm për të zhbllokuar rrënjën kur çizmet OS (nëse nuk dëshironi të futni përsëri fjalëkalimin, çelësi "kyç" zëvendësohet për makinën).

B4.6. Përditëso /boot/initrd.img [version]Për të paketuar çelësin sekret në initrd.img dhe për të aplikuar rregullime të konfigurimit të kripteve, përditësoni imazhin

update-initramfs -u -k all

kur përditësoni initrd.img (siç thonë ata "Është e mundur, por nuk është e sigurt") do të shfaqen paralajmërime në lidhje me konfigurimin e kripteve, ose, për shembull, një njoftim për humbjen e moduleve Nvidia - kjo është normale. Pas përditësimit të skedarit, kontrolloni nëse ai është përditësuar në të vërtetë, shikoni kohën (në lidhje me mjedisin chroot./boot/initrd.img). Kujdes! përpara [update-initramfs -u -k all] sigurohuni që të kontrolloni që cryptsetup është i hapur /dev/sda7 sda7_crypt - ky është emri që shfaqet në /etc/crypttab, përndryshe pas rindezjes do të ketë një gabim busybox)
Në këtë hap, konfigurimi i skedarëve të konfigurimit ka përfunduar.

[C] Instalimi dhe konfigurimi i GRUB2/Protection

C1. Nëse është e nevojshme, formatoni ndarjen e dedikuar për ngarkuesin (një ndarje kërkon të paktën 20 MB)

mkfs.ext4 -v -L GRUB2 /dev/sda6

C2. Montoni /dev/sda6 në /mntPra, ne punojmë në chroot, atëherë nuk do të ketë drejtori /mnt2 në rrënjë dhe dosja /mnt do të jetë bosh.
montoni ndarjen GRUB2

mount /dev/sda6 /mnt

Nëse keni të instaluar një version më të vjetër të GRUB2, në drejtorinë /mnt/boot/grub/i-386-pc (është e mundur një platformë tjetër, për shembull, jo "i386-pc") nuk ka module kripto (shkurt, dosja duhet të përmbajë module, duke përfshirë këto .mod: cryptodisk; luks; gcry_twofish; gcry_sha512; signature_test.mod), në këtë rast, GRUB2 duhet të tundet.

apt-get update
apt-get install grub2 

E rëndësishme! Kur përditësoni paketën GRUB2 nga depoja, kur pyeteni "për zgjedhjen" se ku të instaloni ngarkuesin, duhet të refuzoni instalimin (arsyeja - përpiquni të instaloni GRUB2 - në "MBR" ose në usb live). Përndryshe ju do të dëmtoni kokën/ngarkuesin e VeraCrypt. Pas përditësimit të paketave GRUB2 dhe anulimit të instalimit, ngarkuesi i nisjes duhet të instalohet manualisht në diskun logjik, dhe jo në MBR. Nëse depoja juaj ka një version të vjetëruar të GRUB2, provoni përditësimi është nga faqja zyrtare - nuk e kam kontrolluar (punuar me ngarkuesit më të fundit GRUB 2.02 ~BetaX boot).

C3. Instalimi i GRUB2 në një ndarje të zgjeruar [sda6]Duhet të keni një ndarje të montuar [artikull C.2]

grub-install --force --root-directory=/mnt /dev/sda6

opsione
* —force - instalimi i ngarkuesit, duke anashkaluar të gjitha paralajmërimet që ekzistojnë pothuajse gjithmonë dhe bllokon instalimin (flamuri i kërkuar).
* --root-directory - instalimi i direktoriumit te rrënja e sda6.
* /dev/sda6 - ndarja juaj sdaХ (mos humbisni <space> midis /mnt /dev/sda6).

C4. Krijimi i një skedari konfigurimi [grub.cfg]Harrojeni komandën "update-grub2" dhe përdorni komandën e gjenerimit të skedarit të konfigurimit të plotë

grub-mkconfig -o /mnt/boot/grub/grub.cfg

pas përfundimit të gjenerimit/përditësimit të skedarit grub.cfg, terminali dalës duhet të përmbajë rreshta me OS që gjendet në disk ("grub-mkconfig" me siguri do të gjejë dhe do të marrë OS nga një USB e drejtpërdrejtë, nëse keni një flash drive multiboot me Windows 10 dhe një mori shpërndarjesh të drejtpërdrejta - kjo është normale). Nëse terminali është "bosh" dhe skedari "grub.cfg" nuk gjenerohet, atëherë ky është i njëjti rast kur ka gabime GRUB në sistem. (dhe me shumë mundësi ngarkuesi nga dega e testimit të depove), riinstaloni GRUB2 nga burime të besuara.
Instalimi i "konfigurimit të thjeshtë" dhe konfigurimi i GRUB2 ka përfunduar.

C5. Provë provë e OS GNU/Linux të koduarNe e përfundojmë saktë misionin e kriptos. Duke lënë me kujdes GNU/Linux-in e koduar (dalja nga mjedisi chroot).

umount -a #размонтирование всех смонтированных разделов шифрованной GNU/Linux
Ctrl+d #выход из среды chroot
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount -a #размонтирование всех смонтированных разделов на live usb
reboot

Pas rindezjes së kompjuterit, ngarkuesi VeraCrypt duhet të ngarkohet.
Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

*Futja e fjalëkalimit për ndarjen aktive do të fillojë të ngarkojë Windows.
*Shtypja e tastit "Esc" do të transferojë kontrollin te GRUB2, nëse zgjidhni GNU/Linux të koduar - do të kërkohet një fjalëkalim (sda7_crypt) për të zhbllokuar /boot/initrd.img (nëse grub2 shkruan uuid "nuk u gjet" - kjo është një problemi me ngarkuesin grub2, ai duhet të riinstalohet, p.sh., nga dega/stabili testues etj.).
Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

*Në varësi të mënyrës se si e keni konfiguruar sistemin (shih paragrafin B4.4/4.5), pasi të keni futur fjalëkalimin e saktë për të zhbllokuar imazhin /boot/initrd.img, do t'ju duhet një fjalëkalim për të ngarkuar kernelin/rrënjën e OS ose sekretin çelësi do të zëvendësohet automatikisht "ski", duke eliminuar nevojën për të rifutur frazën e kalimit.
Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar
(ekrani "zëvendësimi automatik i një çelësi sekret").

*Më pas do të vijojë procesi i njohur i ngarkimit të GNU/Linux me vërtetimin e llogarisë së përdoruesit.
Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

*Pas autorizimit të përdoruesit dhe hyrjes në OS, duhet të përditësoni përsëri /boot/initrd.img (shih B4.6).

update-initramfs -u -k all

Dhe në rast të linjave shtesë në menunë GRUB2 (nga marrja e OS-m me USB live) shpëtoj prej tyre

mount /dev/sda6 /mnt
grub-mkconfig -o /mnt/boot/grub/grub.cfg

Një përmbledhje e shpejtë e kriptimit të sistemit GNU/Linux:

  • GNU/Linuxinux është plotësisht i koduar, duke përfshirë /boot/kernel dhe initrd;
  • çelësi sekret është i paketuar në initrd.img;
  • skema aktuale e autorizimit (futja e fjalëkalimit për të zhbllokuar initrd; fjalëkalimi/çelësi për të nisur OS; fjalëkalimi për autorizimin e llogarisë Linux).

Kriptimi i sistemit "Simple GRUB2 Configuration" i ndarjes së bllokut ka përfunduar.

C6. Konfigurimi i avancuar GRUB2. Mbrojtja e ngarkuesit me nënshkrim dixhital + mbrojtje nga vërtetimiGNU/Linux është plotësisht i koduar, por ngarkuesi i nisjes nuk mund të kodohet - kjo gjendje diktohet nga BIOS. Për këtë arsye, një çizme e koduar me zinxhirë e GRUB2 nuk është e mundur, por një çizme e thjeshtë me zinxhirë është e mundur/disponueshme, por nga pikëpamja e sigurisë nuk është e nevojshme [shih P. F].
Për GRUB2 "të pambrojtur", zhvilluesit zbatuan një algoritëm të mbrojtjes së ngarkuesit të "nënshkrimit/autentifikimit".

  • Kur ngarkuesi i ngarkimit mbrohet nga "nënshkrimi i tij dixhital", modifikimi i jashtëm i skedarëve ose një përpjekje për të ngarkuar module shtesë në këtë ngarkues, do të çojë në bllokimin e procesit të nisjes.
  • Kur mbroni ngarkuesin me vërtetim, për të zgjedhur ngarkimin e një shpërndarjeje ose për të futur komanda shtesë në CLI, do t'ju duhet të vendosni hyrjen dhe fjalëkalimin e superpërdoruesit-GRUB2.

C6.1. Mbrojtja e vërtetimit të ngarkuesitKontrolloni që jeni duke punuar në një terminal në një OS të koduar

ls /<Tab-Tab> #обнаружить файл-маркер

krijoni një fjalëkalim superpërdoruesi për autorizim në GRUB2

grub-mkpasswd-pbkdf2 #введите/повторите пароль суперпользователя. 

Merrni hash fjalëkalimin. Diçka si kjo

grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8

montoni ndarjen GRUB

mount /dev/sda6 /mnt 

modifikoni konfigurimin

nano -$ /mnt/boot/grub/grub.cfg 

kontrolloni kërkimin e skedarit që nuk ka flamuj askund në "grub.cfg" ("-i pakufizuar" "-user",
shtoni në fund (përpara rreshtit ### FUND /etc/grub.d/41_custom ###)
"vendos superpërdoruesit = "rrënjë"
fjalëkalimi_pbkdf2 hash rrënjë."

Duhet të jetë diçka e tillë

# Ky skedar ofron një mënyrë të thjeshtë për të shtuar hyrje të personalizuara në menu. Thjesht shkruani
# hyrje në meny që dëshironi të shtoni pas këtij komenti. Kini kujdes të mos ndryshoni
# rreshti 'bishti i ekzekutimit' sipër.
### FUND /etc/grub.d/40_custom ###

### FILLO /etc/grub.d/41_custom ###
nëse [ -f ${config_directory}/custom.cfg ]; pastaj
burimi ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; pastaj
burimi $prefiks/custom.cfg;
fi
vendos superpërdoruesit = "rrënjë"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### FUND /etc/grub.d/41_custom ###
#

Nëse përdorni shpesh komandën "grub-mkconfig -o /mnt/boot/grub/grub.cfg" dhe nuk dëshironi të bëni ndryshime në grub.cfg çdo herë, shkruani rreshtat e mësipërm (Hyrja: Fjalëkalimi) në skriptin e përdoruesit GRUB në fund

nano /etc/grub.d/41_custom 

cat <<EOF
vendos superpërdoruesit = "rrënjë"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
Eof

Kur gjenerohet konfigurimi "grub-mkconfig -o /mnt/boot/grub/grub.cfg", linjat përgjegjëse për vërtetimin do të shtohen automatikisht në grub.cfg.
Ky hap përfundon konfigurimin e vërtetimit të GRUB2.

C6.2. Mbrojtja e ngarkuesit me nënshkrim dixhitalSupozohet se ju tashmë keni çelësin tuaj personal të enkriptimit pgp (ose krijoni një çelës të tillë). Sistemi duhet të ketë të instaluar softuerin kriptografik: gnuPG; kleopatra/GPA; Kali i detit. Softueri kripto do ta bëjë jetën tuaj shumë më të lehtë në të gjitha çështjet e tilla. Seahorse - version i qëndrueshëm i paketës 3.14.0 (versionet më të larta, për shembull, V3.20, janë me defekt dhe kanë gabime të konsiderueshme).

Çelësi PGP duhet të gjenerohet/lansohet/shtohet vetëm në mjedisin su!

Gjeneroni çelësin personal të kriptimit

gpg - -gen-key

Eksporto çelësin tënd

gpg --export -o ~/perskey

Montoni diskun logjik në OS nëse nuk është montuar tashmë

mount /dev/sda6 /mnt #sda6 – раздел GRUB2

pastroni ndarjen GRUB2

rm -rf /mnt/

Instaloni GRUB2 në sda6, duke vendosur çelësin tuaj privat në imazhin kryesor të GRUB "core.img"

grub-install --force --modules="gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" -k ~/perskey --root-directory=/mnt /dev/sda6

opsione
* --force - instaloni ngarkuesin, duke anashkaluar të gjitha paralajmërimet që ekzistojnë gjithmonë (flamuri i kërkuar).
* —modules="gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" - udhëzon GRUB2 të ngarkojë paraprakisht modulet e nevojshme kur kompjuteri të fillojë.
* -k ~/perskey -rruga për në "çelësin PGP" (pas paketimit të çelësit në imazh, ai mund të fshihet).
* --root-directory -vendos direktorinë e nisjes në rrënjën e sda6
/dev/sda6 - ndarja juaj sdaX.

Gjenerimi/përditësimi i grub.cfg

grub-mkconfig  -o /mnt/boot/grub/grub.cfg

Shtoni rreshtin "trust /boot/grub/perskey" në fund të skedarit "grub.cfg" (përdorni me forcë tastin pgp.) Meqenëse kemi instaluar GRUB2 me një grup modulesh, duke përfshirë modulin e nënshkrimit "signature_test.mod", kjo eliminon nevojën për të shtuar komanda si "vendos check_signatures=eforce" në konfigurim.

Duhet të duket diçka si kjo (përfundoni rreshtat në skedarin grub.cfg)

### FILLO /etc/grub.d/41_custom ###
nëse [ -f ${config_directory}/custom.cfg ]; pastaj
burimi ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; pastaj
burimi $prefiks/custom.cfg;
fi
besim /boot/grub/perskey
vendos superpërdoruesit = "rrënjë"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### FUND /etc/grub.d/41_custom ###
#

Rruga për në "/boot/grub/perskey" nuk ka nevojë të drejtohet në një ndarje specifike të diskut, për shembull hd0,6; për vetë ngarkuesin, "root" është shtegu i paracaktuar i ndarjes në të cilën është instaluar GRUB2. (shih grupin kalb=..).

Nënshkrimi i GRUB2 (të gjithë skedarët në të gjitha drejtoritë /GRUB) me çelësin tuaj "perskey".
Një zgjidhje e thjeshtë se si të nënshkruani (për nautilus/caja explorer): instaloni shtesën "kali i detit" për Explorer nga depoja. Çelësi juaj duhet të shtohet në mjedisin su.
Hapni Explorer me shenjën sudo “/mnt/boot” – RMB. Në ekran duket kështu

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Vetë çelësi është "/mnt/boot/grub/perskey" (kopjo në drejtorinë grub) duhet të nënshkruhet edhe me nënshkrimin tuaj. Kontrolloni që nënshkrimet e skedarëve [*.sig] të shfaqen në drejtori/nëndirektoritë.
Duke përdorur metodën e përshkruar më sipër, nënshkruani "/boot" (kerneli ynë, initrd). Nëse koha juaj vlen, atëherë kjo metodë eliminon nevojën për të shkruar një skript bash për të nënshkruar "shumë skedarë".

Për të hequr të gjitha nënshkrimet e ngarkuesit (nëse diçka shkoi keq)

rm -f $(find /mnt/boot/grub -type f -name '*.sig')

Për të mos nënshkruar bootloader pas përditësimit të sistemit, ne ngrijmë të gjitha paketat e përditësimit që lidhen me GRUB2.

apt-mark hold grub-common grub-pc grub-pc-bin grub2 grub2-common

Në këtë hap <mbro bootloader me nënshkrim dixhital> përfundon konfigurimi i avancuar i GRUB2.

C6.3. Provë-test i ngarkuesit GRUB2, i mbrojtur nga nënshkrimi dixhital dhe vërtetimiGRUB2. Kur zgjidhni ndonjë shpërndarje GNU/Linux ose kur hyni në CLI (linja e komandës) Do të kërkohet autorizimi i superpërdoruesit. Pasi të keni futur emrin e saktë të përdoruesit/fjalëkalimin, do t'ju duhet fjalëkalimi i tretë

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar
Pamja e ekranit të vërtetimit të suksesshëm të superpërdoruesit GRUB2.

Nëse ngatërroni ndonjë nga skedarët GRUB2/bëni ndryshime në grub.cfg, ose fshini skedarin/nënshkrimin, ose ngarkoni një modul.mod keqdashës, do të shfaqet një paralajmërim përkatës. GRUB2 do të ndalojë ngarkimin.

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar
Pamja e ekranit, një përpjekje për të ndërhyrë në GRUB2 "nga jashtë".

Gjatë nisjes "normale" "pa ndërhyrje", statusi i kodit të daljes nga sistemi është "0". Prandaj, nuk dihet nëse mbrojtja funksionon apo jo (d.m.th., "me ose pa mbrojtje të nënshkrimit të ngarkuesit" gjatë ngarkimit normal statusi është i njëjtë "0" - kjo është e keqe).

Si të kontrolloni mbrojtjen e nënshkrimit dixhital?

Një mënyrë e papërshtatshme për të kontrolluar: falsifikoni/hiqni një modul të përdorur nga GRUB2, për shembull, hiqni nënshkrimin luks.mod.sig dhe merrni një gabim.

Mënyra e duhur: shkoni te ngarkuesi CLI dhe shkruani komandën

trust_list

Si përgjigje, duhet të merrni një gjurmë gishti "perskey"; nëse statusi është "0", atëherë mbrojtja e nënshkrimit nuk funksionon, kontrolloni dy herë paragrafin C6.2.
Në këtë hap, përfundon konfigurimi i avancuar "Mbrojtja e GRUB2 me nënshkrim dixhital dhe vërtetim".

C7 Metoda alternative e mbrojtjes së ngarkuesit GRUB2 duke përdorur hashingMetoda "CPU Boot Loader Protection/Authentication" e përshkruar më sipër është një klasik. Për shkak të papërsosmërive të GRUB2, në kushte paranojake është i ndjeshëm ndaj një sulmi të vërtetë, të cilin do ta jap më poshtë në paragrafin [F]. Përveç kësaj, pas përditësimit të OS/kernelit, ngarkuesi duhet të ri-nënshkruhet.

Mbrojtja e ngarkuesit GRUB2 duke përdorur hashing

Përparësitë ndaj klasikëve:

  • Niveli më i lartë i besueshmërisë (hashimi/verifikimi kryhet vetëm nga një burim lokal i koduar. E gjithë ndarja e alokuar nën GRUB2 kontrollohet për çdo ndryshim dhe gjithçka tjetër është e koduar; në skemën klasike me mbrojtjen/Vërtetimin e ngarkuesit të CPU, kontrollohen vetëm skedarët, por jo të lirë hapësirë, në të cilën mund të shtohet "diçka" diçka e keqe").
  • Regjistrimi i koduar (një regjistër personal i koduar i lexueshëm nga njeriu i shtohet skemës).
  • Shpejtësi (mbrojtja/verifikimi i një ndarjeje të tërë të caktuar për GRUB2 ndodh pothuajse menjëherë).
  • Automatizimi i të gjitha proceseve kriptografike.

Disavantazhet ndaj klasikëve.

  • Falsifikimi i nënshkrimit (teorikisht, është e mundur të gjesh një përplasje të caktuar të funksionit hash).
  • Niveli i rritur i vështirësisë (në krahasim me klasiken, kërkohen pak më shumë aftësi në OS GNU/Linux).

Si funksionon ideja e hashimit të GRUB2/partition

Ndarja GRUB2 është "nënshkruar"; kur niset OS, ndarja e ngarkuesit të nisjes kontrollohet për pandryshueshmëri, e ndjekur nga regjistrimi në një mjedis të sigurt (të koduar). Nëse ngarkuesi i ngarkimit ose ndarja e tij është komprometuar, përveç regjistrit të ndërhyrjeve, hapet edhe më poshtë:

Gjë.Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Një kontroll i ngjashëm ndodh katër herë në ditë, gjë që nuk ngarkon burimet e sistemit.
Duke përdorur komandën "-$ check_GRUB", një kontroll i menjëhershëm ndodh në çdo kohë pa regjistrim, por me daljen e informacionit në CLI.
Duke përdorur komandën "-$ sudo signature_GRUB", ngarkuesi/ndarja e nisjes GRUB2 ri-nënshkruhet menjëherë dhe regjistrimi i tij i përditësuar (e nevojshme pas përditësimit të OS/boot), dhe jeta vazhdon.

Zbatimi i një metode hashing për ngarkuesin dhe seksionin e tij

0) Le të nënshkruajmë ngarkuesin/ndarjen GRUB duke e montuar fillimisht në /media/username

-$ hashdeep -c md5 -r /media/username/GRUB > /podpis.txt

1) Ne krijojmë një skript pa një shtrirje në rrënjën e OS të koduar ~/podpis, zbatojmë të drejtat e nevojshme 744 të sigurisë dhe mbrojtjen e pagabueshme për të.

Plotësimi i përmbajtjes së tij

#!/bin/bash

#Проверка всего раздела выделенного под загрузчик GRUB2 на неизменность.
#Ведется лог "о вторжении/успешной проверке каталога", короче говоря ведется полный лог с тройной вербализацией. Внимание! обратить взор на пути: хранить ЦП GRUB2 только на зашифрованном разделе OS GNU/Linux. 
echo -e "******************************************************************n" >> '/var/log/podpis.txt' && date >> '/var/log/podpis.txt' && hashdeep -vvv -a -k '/podpis.txt' -r '/media/username/GRUB' >> '/var/log/podpis.txt'

a=`tail '/var/log/podpis.txt' | grep failed` #не использовать "cat"!! 
b="hashdeep: Audit failed"

#Условие: в случае любых каких-либо изменений в разделе выделенном под GRUB2 к полному логу пишется второй отдельный краткий лог "только о вторжении" и выводится на монитор мигание gif-ки "warning".
if [[ "$a" = "$b" ]] 
then
echo -e "****n" >> '/var/log/vtorjenie.txt' && echo "vtorjenie" >> '/var/log/vtorjenie.txt' && date >> '/var/log/vtorjenie.txt' & sudo -u username DISPLAY=:0 eom '/warning.gif' 
fi

Ekzekutoni skriptin nga su, hashing-i i ndarjes GRUB dhe ngarkuesi i saj do të kontrollohet, ruajeni regjistrin.

Le të krijojmë ose kopjojmë, për shembull, një "skedar me qëllim të keq" [virus.mod] në ndarjen GRUB2 dhe të ekzekutojmë një skanim/test të përkohshëm:

-$ hashdeep -vvv -a -k '/podpis.txt' -r '/media/username/GRUB

CLI duhet të shohë një pushtim të -kështjellës- tonë#Trimmed log in CLI

Ср янв  2 11::41 MSK 2020
/media/username/GRUB/boot/grub/virus.mod: Moved from /media/username/GRUB/1nononoshifr
/media/username/GRUB/boot/grub/i386-pc/mda_text.mod: Ok
/media/username/GRUB/boot/grub/grub.cfg: Ok
hashdeep: Audit failed
   Input files examined: 0
  Known files expecting: 0
          Files matched: 325
Files partially matched: 0
            Files moved: 1
        New files found: 0
  Known files not found: 0

#Siç mund ta shihni, shfaqet "Skedarët u zhvendosën: 1 dhe Auditimi dështoi", që do të thotë se kontrolli dështoi.
Për shkak të natyrës së ndarjes që po testohet, në vend të "Skedarët e rinj u gjetën" > "Skedarët u zhvendosën"

2) Vendosni gif-in këtu > ~/warning.gif, vendosni lejet në 744.

3) Konfigurimi i fstab për të montuar automatikisht ndarjen GRUB në nisje

-$ sudo nano /etc/fstab

LABEL=GRUB /media/username/GRUB ext4 parazgjedhjet 0 0

4) Rrotullimi i regjistrit

-$ sudo nano /etc/logrotate.d/podpis 

/var/log/podpis.txt {
përditë
rrotullohen 50
madhësia 5M
dataext
ngjesh
vonesa
olddir /var/log/old
}

/var/log/vtorjenie.txt {
mujor
rrotullohen 5
madhësia 5M
dataext
olddir /var/log/old
}

5) Shto një punë në cron

-$ sudo crontab -e

reboot '/abonim'
0 */6 * * * '/podpis

6) Krijimi i pseudonimeve të përhershme

-$ sudo su
-$ echo "alias подпись_GRUB='hashdeep -c md5 -r /media/username/GRUB > /podpis.txt'" >> /root/.bashrc && bash
-$ echo "alias проверка_GRUB='hashdeep -vvv -a -k '/podpis.txt' -r /media/username/GRUB'" >> .bashrc && bash

Pas përditësimit të OS -$ apt-get upgrade ri-nënshkruani ndarjen tonë GRUB
-$ подпись_GRUB
Në këtë pikë, mbrojtja hash e ndarjes GRUB është e plotë.

[D] Fshirja - shkatërrimi i të dhënave të pakriptuara

Fshini skedarët tuaj personalë aq plotësisht sa "as Zoti nuk mund t'i lexojë ato", sipas zëdhënësit të Karolinës së Jugut, Trey Gowdy.

Si zakonisht, ka “mite të ndryshme dhe legjendat", në lidhje me rikthimin e të dhënave pasi ato janë fshirë nga një hard disk. Nëse besoni në magjinë kibernetike, ose jeni anëtar i komunitetit të internetit të Dr dhe nuk keni provuar kurrë rikuperimin e të dhënave pasi ato janë fshirë/shkruar (për shembull, rikuperimi duke përdorur R-studio), atëherë metoda e propozuar nuk ka gjasa t'ju përshtatet, përdorni atë që është më afër jush.

Pas transferimit të suksesshëm të GNU/Linux në një ndarje të koduar, kopja e vjetër duhet të fshihet pa mundësinë e rikuperimit të të dhënave. Metoda universale e pastrimit: softuer për softuer GUI pa Windows/Linux BleachBit.
shpejt formatoni seksionin, të dhënat mbi të cilat duhet të shkatërrohen (nëpërmjet Gparted) lëshoni BleachBit, zgjidhni "Pastroni hapësirën e lirë" - zgjidhni ndarjen (sdaX-i juaj me një kopje të mëparshme të GNU/Linux), do të fillojë procesi i zhveshjes. BleachBit - fshin diskun me një kalim - kjo është ajo që "na duhet", Por! Kjo funksionon vetëm në teori nëse e keni formatuar diskun dhe e keni pastruar në softuerin BB v2.0.

Kujdes! BB fshin diskun, duke lënë meta të dhënat; emrat e skedarëve ruhen kur të dhënat eliminohen (Ccleaner - nuk lë metadata).

Dhe miti për mundësinë e rikuperimit të të dhënave nuk është plotësisht një mit.Bleachbit V2.0-2 ish-paketë e paqëndrueshme e OS Debian (dhe çdo softuer tjetër i ngjashëm: sfill; wipe-Nautilus - u vunë re gjithashtu në këtë biznes të ndyrë) në fakt kishte një defekt kritik: funksionin "pastrimi i hapësirës së lirë". funksionon gabimisht në disqet HDD/Flash (ntfs/ext4). Softueri i këtij lloji, kur pastron hapësirën e lirë, nuk mbishkruan të gjithë diskun, siç mendojnë shumë përdorues. Dhe disa (shumë) të dhënat e fshira OS/softueri i konsideron këto të dhëna si të dhëna jo të fshira/përdoruesi dhe kur pastron “OSP” i anashkalon këto skedarë. Problemi është se pas një kohe kaq të gjatë, pastrimi i diskut "skedarët e fshirë" mund të rikuperohen edhe pas 3+ kalimeve të fshirjes së diskut.
Në GNU/Linux në Bleachbit 2.0-2 Funksionet e fshirjes së përhershme të skedarëve dhe drejtorive funksionojnë në mënyrë të besueshme, por jo duke pastruar hapësirën e lirë. Për krahasim: në Windows në CCleaner funksioni "OSP për ntfs" funksionon siç duhet, dhe Zoti me të vërtetë nuk do të jetë në gjendje të lexojë të dhënat e fshira.

Dhe kështu, për të hequr tërësisht "kompromis" të dhëna të vjetra të pakriptuara, Bleachbit ka nevojë për qasje të drejtpërdrejtë në këto të dhëna, më pas, përdorni funksionin "fshini përgjithmonë skedarët/drejtoritë".
Për të hequr "skedarët e fshirë duke përdorur mjete standarde OS" në Windows, përdorni CCleaner/BB me funksionin "OSP". Në GNU/Linux mbi këtë problem (fshini skedarët e fshirë) ju duhet të praktikoni vetë (fshirja e të dhënave + një përpjekje e pavarur për t'i rikthyer ato dhe nuk duhet të mbështeteni në versionin e softuerit (nëse jo një faqerojtës, atëherë një gabim)), vetëm në këtë rast do të mund të kuptoni mekanizmin e këtij problemi dhe të shpëtoni plotësisht nga të dhënat e fshira.

Unë nuk e kam testuar Bleachbit v3.0, problemi mund të jetë rregulluar tashmë.
Bleachbit v2.0 funksionon me ndershmëri.

Në këtë hap, fshirja e diskut ka përfunduar.

[E] Rezervimi universal i sistemit operativ të koduar

Secili përdorues ka metodën e tij të rezervimit të të dhënave, por të dhënat e koduara të Sistemit OS kërkojnë një qasje paksa të ndryshme ndaj detyrës. Softueri i unifikuar, si Clonezilla dhe softuer të ngjashëm, nuk mund të punojnë drejtpërdrejt me të dhëna të koduara.

Deklarata e problemit të kopjimit të pajisjeve të bllokut të koduar:

  1. universaliteti - i njëjti algoritëm/softuer rezervë për Windows/Linux;
  2. aftësia për të punuar në tastierë me çdo GNU/Linux të drejtpërdrejtë USB pa pasur nevojë për shkarkime shtesë softuerësh (por gjithsesi rekomandoj GUI);
  3. siguria e kopjeve rezervë - “imazhet” e ruajtura duhet të jenë të koduara/të mbrojtura me fjalëkalim;
  4. madhësia e të dhënave të koduara duhet të korrespondojë me madhësinë e të dhënave aktuale që kopjohen;
  5. nxjerrja e përshtatshme e skedarëve të nevojshëm nga një kopje rezervë (nuk ka kërkesë për të deshifruar të gjithë seksionin në fillim).

Për shembull, bëni kopje rezervë/rivendosje përmes programit "dd".

dd if=/dev/sda7 of=/путь/sda7.img bs=7M conv=sync,noerror
dd if=/путь/sda7.img of=/dev/sda7 bs=7M conv=sync,noerror

Ai korrespondon me pothuajse të gjitha pikat e detyrës, por sipas pikës 4 nuk i përballon kritikat, pasi kopjon të gjithë ndarjen e diskut, përfshirë hapësirën e lirë - jo interesante.

Për shembull, një kopje rezervë GNU/Linux nëpërmjet arkivuesit [tar" | gpg] është i përshtatshëm, por për kopjen rezervë të Windows duhet të kërkoni një zgjidhje tjetër - nuk është interesante.

E1. Rezervimi universal i Windows/Linux. Lidhja rsync (Grsync) + vëllimi VeraCryptAlgoritmi për krijimin e një kopje rezervë:

  1. duke krijuar një enë të koduar (vëllimi/skedari) VeraCrypt për OS;
  2. transferoni/sinkronizoni sistemin operativ duke përdorur softuerin Rsync në kontejnerin e kriptove VeraCrypt;
  3. nëse është e nevojshme, ngarkoni vëllimin e VeraCrypt në www.

Krijimi i një kontejneri të koduar VeraCrypt ka karakteristikat e veta:
duke krijuar një vëllim dinamik (krijimi i DT është i disponueshëm vetëm në Windows, mund të përdoret gjithashtu në GNU/Linux);
duke krijuar një vëllim të rregullt, por ekziston një kërkesë e një "karakteri paranojak" (sipas zhvilluesit) – formatimi i kontejnerit.

Një vëllim dinamik krijohet pothuajse menjëherë në Windows, por kur kopjoni të dhëna nga GNU/Linux > VeraCrypt DT, performanca e përgjithshme e operacionit rezervë zvogëlohet ndjeshëm.

Krijohet një vëllim i rregullt 70 GB Twofish (le të themi, me fuqinë mesatare të PC) në HDD ~ në gjysmë ore (mbishkrimi i të dhënave të ish-kontejnerit me një kalim është për shkak të kërkesave të sigurisë). Funksioni i formatimit të shpejtë të një vëllimi gjatë krijimit të tij është hequr nga VeraCrypt Windows/Linux, kështu që krijimi i një kontejneri është i mundur vetëm përmes "rishkrimit me një kalim" ose krijimit të një vëllimi dinamik me performancë të ulët.

Krijo një vëllim të rregullt VeraCrypt (jo dinamik/ntfs), nuk duhet të ketë probleme.

Konfiguro/krijo/hap një kontejner në VeraCrypt GUI> GNU/Linux live usb (vëllimi do të montohet automatikisht në /media/veracrypt2, vëllimi i Windows OS do të montohet në /media/veracrypt1). Krijimi i një kopje rezervë të koduar të Windows OS duke përdorur GUI rsync (grsync)duke kontrolluar kutitë.

Kriptimi i plotë i diskut i sistemeve të instaluara Windows Linux. Multi-boot i koduar

Prisni që procesi të përfundojë. Pasi të përfundojë kopjimi, do të kemi një skedar të koduar.

Në mënyrë të ngjashme, krijoni një kopje rezervë të GNU/Linux OS duke hequr kutinë e zgjedhjes "Përputhshmëria e Windows" në rsync GUI.

Kujdes! krijoni një kontejner Veracrypt për "GNU/Linux backup" në sistemin e skedarëve ext4. Nëse bëni një kopje rezervë në një kontejner ntfs, atëherë kur të rivendosni një kopje të tillë, do të humbni të gjitha të drejtat/grupet për të gjitha të dhënat tuaja.

Të gjitha operacionet mund të kryhen në terminal. Opsionet bazë për rsync:
* -g -grupet ruaj;
* -P — progres — statusi i kohës së kaluar duke punuar në skedar;
* -H - kopjoni lidhjet e forta siç janë;
* -a -modaliteti i arkivit (flamuj të shumtë rlptgoD);
* -v -verbalizimi.

Nëse dëshironi të montoni një "volum të Windows VeraCrypt" përmes konsolës në softuerin e kriptetup, mund të krijoni një pseudonim (su)

echo "alias veramount='cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sdaX Windows_crypt && mount /dev/mapper/ Windows_crypt /media/veracrypt1'" >> .bashrc && bash

Tani komanda "veramount pictures" do t'ju kërkojë të futni një frazë kalimi dhe vëllimi i koduar i sistemit Windows do të montohet në OS.

Harta/montoni volumin e sistemit VeraCrypt në komandën e cryptsetup

cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sdaX Windows_crypt
mount /dev/mapper/Windows_crypt /mnt

Harta / montoni ndarjen / kontejnerin VeraCrypt në komandën cryptsetup

cryptsetup open --veracrypt --type tcrypt /dev/sdaY test_crypt
mount /dev/mapper/test_crypt /mnt

Në vend të pseudonimit, ne do të shtojmë (një skript për fillimin) një vëllim sistemi me Windows OS dhe një disk ntfs të koduar logjik në fillimin e GNU/Linux

Krijoni një skript dhe ruajeni në ~/VeraOpen.sh

printf 'Ym9i' | base64 -d | cryptsetup open --veracrypt --tcrypt-system --type tcrypt /dev/sda3 Windows_crypt && mount /dev/mapper/Windows_crypt /media/Winda7 #декодируем пароль из base64 (bob) и отправляем его на запрос ввода пароля при монтировании системного диска ОС Windows.
printf 'Ym9i' | base64 -d | cryptsetup open --veracrypt --type tcrypt /dev/sda1 ntfscrypt && mount /dev/mapper/ntfscrypt /media/КонтейнерНтфс #аналогично, но монтируем логический диск ntfs.

Ne shpërndajmë të drejtat "korrekte":

sudo chmod 100 /VeraOpen.sh

Krijo dy skedarë identikë (të njëjtin emër!) në /etc/rc.local dhe ~/etc/init.d/rc.local
Plotësimi i skedarëve

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will «exit 0» on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

sh -c "sleep 1 && '/VeraOpen.sh'" #после загрузки ОС, ждём ~ 1с и только потом монтируем диски.
exit 0

Ne shpërndajmë të drejtat "korrekte":

sudo chmod 100 /etc/rc.local && sudo chmod 100 /etc/init.d/rc.local 

Kjo është e gjitha, tani kur ngarkojmë GNU/Linux nuk kemi nevojë të fusim fjalëkalime për të montuar disqe të koduara ntfs, disqet montohen automatikisht.

Një shënim shkurtimisht rreth asaj që përshkruhet më sipër në paragrafin E1 hap pas hapi (por tani për OS GNU/Linux)
1) Krijoni një vëllim në fs ext4 > 4gb (për skedar) Linux në Veracrypt [Cryptbox].
2) Rinisni për të jetuar USB.
3) ~$ kriptetup hap /dev/sda7 Lunux #mapping ndarje të koduar.
4) ~$ montoni /dev/mapper/Linux /mnt #montoni ndarjen e koduar në /mnt.
5) ~$ mkdir mnt2 #krijimi i një drejtorie për një kopje rezervë të ardhshme.
6) ~$ cryptsetup hapur —veracrypt — shkruani tcrypt ~/CryptoBox CryptoBox && montoni /dev/mapper/CryptoBox /mnt2 #Hartëzojeni një vëllim Veracrypt të quajtur “CryptoBox” dhe montoni CryptoBox në /mnt2.
7) ~$ rsync -avlxhHX — progres /mnt /mnt2/ #funksionim rezervë i një ndarjeje të koduar në një vëllim të koduar Veracrypt.

(p/s/ Kujdes! Nëse po transferoni GNU/Linux të koduar nga një arkitekturë/makinë në tjetrën, për shembull, Intel > AMD (d.m.th., duke vendosur një kopje rezervë nga një ndarje e koduar në një ndarje tjetër të koduar Intel > AMD), mos harro Pas transferimit të sistemit operativ të koduar, modifikoni çelësin zëvendësues sekret në vend të fjalëkalimit, ndoshta. çelësi i mëparshëm ~/etc/skey - nuk do të përshtatet më një ndarje tjetër të koduar dhe nuk këshillohet të krijohet një çelës i ri "cryptsetup luksAddKey" nga poshtë chroot - një defekt është i mundur, vetëm në ~/etc/crypttab specifikoni në vend të “/etc/skey” përkohësisht “asnjë” “, pas ribotimit dhe hyrjes në sistemin operativ, rikrijoni përsëri çelësin tuaj sekret të shkronjës).

Si veteranë të TI-së, mos harroni të bëni veçmas kopje rezervë të titujve të ndarjeve të koduara të Windows/Linux OS, përndryshe kriptimi do të kthehet kundër jush.
Në këtë hap, kopjimi i sistemit operativ të koduar përfundon.

[F] Sulmi në ngarkuesin GRUB2

DetaletNëse e keni mbrojtur ngarkuesin tuaj të ngarkimit me një nënshkrim dixhital dhe/ose vërtetim (shih pikën C6.), atëherë kjo nuk do të mbrojë nga aksesi fizik. Të dhënat e koduara do të jenë ende të paarritshme, por mbrojtja do të anashkalohet (rivendos mbrojtjen e nënshkrimit dixhital) GRUB2 lejon një horr kibernetik të injektojë kodin e tij në ngarkuesin e ngarkimit pa ngjallur dyshime (përveç nëse përdoruesi monitoron manualisht gjendjen e ngarkuesit, ose vjen me kodin e tij të fuqishëm të skriptit arbitrar për grub.cfg).

Algoritmi i sulmit. Ndërhyrës

* Ndez PC-në nga USB live. Çdo ndryshim (shkelës) skedarët do të njoftojnë pronarin e vërtetë të PC-së për ndërhyrjen në ngarkuesin. Por një riinstalim i thjeshtë i GRUB2 duke mbajtur grub.cfg (dhe aftësia pasuese për ta modifikuar) do të lejojë një sulmues të modifikojë çdo skedar (në këtë situatë, kur ngarkoni GRUB2, përdoruesi i vërtetë nuk do të njoftohet. Statusi është i njëjtë <0>)
* Monton një ndarje të pakriptuar, ruan “/mnt/boot/grub/grub.cfg”.
* Riinstalon ngarkuesin (duke hequr "perskey" nga imazhi core.img)

grub-install --force --root-directory=/mnt /dev/sda6

* Kthen “grub.cfg” > “/mnt/boot/grub/grub.cfg”, e modifikon nëse është e nevojshme, për shembull, duke shtuar modulin tuaj “keylogger.mod” në dosjen me module loader, në “grub.cfg” > rreshti "insmod keylogger". Ose, për shembull, nëse armiku është dinak, atëherë pasi të riinstaloni GRUB2 (të gjitha nënshkrimet mbeten në vend) ai ndërton imazhin kryesor GRUB2 duke përdorur "grub-mkimage me opsionin (-c)." Opsioni "-c" do t'ju lejojë të ngarkoni konfigurimin tuaj përpara se të ngarkoni "grub.cfg" kryesore. Konfigurimi mund të përbëhet nga vetëm një rresht: ridrejtimi në çdo "modern.cfg", i përzier, për shembull, me ~ 400 skedarë (module+nënshkrime) në dosjen "/boot/grub/i386-pc". Në këtë rast, një sulmues mund të fusë kode arbitrare dhe të ngarkojë module pa ndikuar "/boot/grub/grub.cfg", edhe nëse përdoruesi aplikon "hashsum" në skedar dhe e shfaq përkohësisht në ekran.
Një sulmues nuk do të ketë nevojë të hakojë hyrjen/fjalëkalimin e superpërdoruesit të GRUB2; ai thjesht do të duhet të kopjojë rreshtat (përgjegjës për vërtetimin) "/boot/grub/grub.cfg" në "modern.cfg" tuaj

vendos superpërdoruesit = "rrënjë"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8

Dhe pronari i PC-së do të jetë ende i vërtetuar si superpërdorues GRUB2.

Ngarkimi i zinxhirit (bootloader ngarkon një bootloader tjetër), siç shkrova më lart, nuk ka kuptim (është menduar për një qëllim tjetër). Ngarkuesi i koduar nuk mund të ngarkohet për shkak të BIOS (Nisja e zinxhirit rinis GRUB2 > GRUB2 i koduar, gabim!). Sidoqoftë, nëse ende përdorni idenë e ngarkimit të zinxhirit, mund të jeni i sigurt se është ai i koduar që po ngarkohet. (jo i modernizuar) "grub.cfg" nga ndarja e koduar. Dhe kjo është gjithashtu një ndjenjë e rreme sigurie, sepse gjithçka që tregohet në "grub.cfg" të koduar (ngarkimi i modulit) shton modulet që ngarkohen nga GRUB2 i pakriptuar.

Nëse dëshironi ta kontrolloni këtë, atëherë ndani/shifroni një ndarje tjetër sdaY, kopjoni GRUB2 në të (operacioni i instalimit të grub-it në një ndarje të koduar nuk është i mundur) dhe në "grub.cfg" (konfigurim i pakriptuar) ndryshoni linja si këto

menuentry 'GRUBx2' -- class papagall --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-382111a2-f993-403c-aa2e-292b5eac4780' {
load_video
insmod gzio
nëse [x$grub_platforma = xxen ]; pastaj insmod xzio; insmod lzopio; fi
insmod part_msdos
kriptodisku insmod
insmod lux
insmod gcry_twofish
insmod gcry_twofish
insmod gcry_sha512
insmod ext2
cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838
set root=’cryptouuid/15c47d1c4bd34e5289df77bcf60ee838′
normale /boot/grub/grub.cfg
}

telave
* insmod - ngarkimi i moduleve të nevojshme për të punuar me një disk të koduar;
* GRUBx2 - emri i linjës që shfaqet në menunë e nisjes GRUB2;
* cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838 -shih. fdisk -l (sda9);
* set root - instalo root;
* normal /boot/grub/grub.cfg - skedar konfigurimi i ekzekutueshëm në një ndarje të koduar.

Besimi se është ngarkuar "grub.cfg" i koduar është një përgjigje pozitive për futjen e fjalëkalimit/zhbllokimin e "sdaY" kur zgjidhni rreshtin "GRUBx2" në menunë GRUB.

Kur punoni në CLI, për të mos u ngatërruar (dhe kontrolloni nëse ndryshorja e mjedisit "set root" funksionoi), krijoni skedarë bosh token, për shembull, në seksionin e koduar "/shifr_grub", në seksionin e pakriptuar "/noshifr_grub". Kontrollimi në CLI

cat /Tab-Tab

Siç u përmend më lart, kjo nuk do të ndihmojë kundër shkarkimit të moduleve me qëllim të keq nëse module të tilla përfundojnë në kompjuterin tuaj. Për shembull, një keylogger që do të jetë në gjendje të ruajë goditjet e tasteve në një skedar dhe ta përziejë atë me skedarë të tjerë në "~/i386" derisa të shkarkohet nga një sulmues me qasje fizike në PC.

Mënyra më e lehtë për të verifikuar që mbrojtja e nënshkrimit dixhital po funksionon në mënyrë aktive (nuk rivendoset), dhe askush nuk e ka pushtuar ngarkuesin, futni komandën në CLI

list_trusted

si përgjigje ne marrim një kopje të "perskey" tonë, ose nuk marrim asgjë nëse sulmohemi (ju duhet gjithashtu të kontrolloni "vendos check_signatures=eforce").
Një disavantazh i rëndësishëm i këtij hapi është futja e komandave me dorë. Nëse e shtoni këtë komandë në "grub.cfg" dhe mbroni konfigurimin me një nënshkrim dixhital, atëherë dalja paraprake e fotografisë së tastit në ekran është shumë e shkurtër në kohë dhe mund të mos keni kohë për të parë daljen pas ngarkimit të GRUB2 .
Nuk ka njeri në veçanti për të bërë pretendime: zhvilluesi në të tij dokumentacionin deklaron zyrtarisht klauzola 18.2

“Vini re se edhe me mbrojtjen me fjalëkalim GRUB, vetë GRUB nuk mund të parandalojë dikë me akses fizik në makinë që të ndryshojë konfigurimin e firmuerit të asaj makine (p.sh. Coreboot ose BIOS) për të shkaktuar nisjen e makinës nga një pajisje tjetër (e kontrolluar nga sulmuesi). GRUB është në rastin më të mirë vetëm një hallkë në një zinxhir të sigurt boot."

GRUB2 është shumë i mbingarkuar me funksione që mund të japin një ndjenjë sigurie të rreme, dhe zhvillimi i tij tashmë ka tejkaluar MS-DOS-in për sa i përket funksionalitetit, por është thjesht një ngarkues. Është për të qeshur që GRUB2 - "nesër" mund të bëhet OS dhe makina virtuale bootable GNU/Linux për të.

Një video e shkurtër se si rivendosja mbrojtjen e nënshkrimit dixhital GRUB2 dhe deklarova ndërhyrjen time tek një përdorues i vërtetë (Të kam frikësuar, por në vend të asaj që tregohet në video, mund të shkruani një kod arbitrar jo të padëmshëm/.mod).

Konkluzione:

1) Bllokimi i enkriptimit të sistemit për Windows është më i lehtë për t'u zbatuar dhe mbrojtja me një fjalëkalim është më e përshtatshme sesa mbrojtja me disa fjalëkalime me kriptim të sistemit të bllokut GNU/Linux, për të qenë të drejtë: ky i fundit është i automatizuar.

2) E shkrova artikullin si relevant dhe të detajuar i thjeshtë një udhëzues për enkriptimin në diskun e plotë VeraCrypt/LUKS në një makinë në një shtëpi, e cila është deri tani më e mira në RuNet (IMHO). Udhëzuesi është i gjatë > 50 mijë karaktere, kështu që nuk ka mbuluar disa kapituj interesantë: kriptografët që zhduken/mbahen në hije; për faktin se në libra të ndryshëm GNU/Linux shkruajnë pak/nuk shkruajnë për kriptografinë; në lidhje me nenin 51 të Kushtetutës së Federatës Ruse; O licencimi/ndalim kriptimi në Federatën Ruse, se pse duhet të kriptoni "root/boot". Udhëzuesi doli të ishte mjaft i gjerë, por i detajuar. (duke përshkruar edhe hapa të thjeshtë), nga ana tjetër, kjo do t'ju kursejë shumë kohë kur të arrini te "kriptimi i vërtetë".

3) Kriptimi i plotë i diskut është kryer në Windows 7 64; GNU/Linux Parrot 4x; GNU/Debian 9.0/9.5.

4) Zbatuar një sulm të suksesshëm në e tij Ngarkuesi GRUB2.

5) Tutoriali u krijua për të ndihmuar të gjithë njerëzit paranojakë në CIS, ku puna me kriptim lejohet në nivel legjislativ. Dhe kryesisht për ata që duan të hapin enkriptimin e plotë të diskut pa prishur sistemet e tyre të konfiguruara.

6) Ripërpunova dhe përditësova manualin tim, i cili është i rëndësishëm në 2020.

[G] Dokumentacion i dobishëm

  1. Udhëzuesi i përdoruesit TrueCrypt (shkurt 2012 RU)
  2. Dokumentacioni VeraCrypt
  3. /usr/share/doc/cryptsetup(-run) [burim lokal] (dokumentacion zyrtar i detajuar mbi konfigurimin e enkriptimit GNU/Linux duke përdorur kriptetup)
  4. FAQ zyrtare konfigurimi i kripteve (dokumentacion i shkurtër mbi konfigurimin e enkriptimit GNU/Linux duke përdorur kriptetup)
  5. Kriptimi i pajisjes LUKS (dokumentacioni archlinux)
  6. Përshkrimi i detajuar i sintaksës së kriptetup (faqe njeriu i harkut)
  7. Përshkrimi i detajuar i crypttab (faqe njeriu i harkut)
  8. Dokumentacioni zyrtar GRUB2.

Etiketa: kriptimi i plotë i diskut, kriptimi i ndarjeve, kriptimi i plotë i diskut Linux, kriptimi i plotë i sistemit LUKS1.

Vetëm përdoruesit e regjistruar mund të marrin pjesë në anketë. Hyni, te lutem

A jeni duke enkriptuar?

  • 17,1%Unë kodoj gjithçka që mundem. jam paranojak.14

  • 34,2%Unë enkriptoj vetëm të dhëna të rëndësishme.28

  • 14,6%Herë enkriptohem, herë harroj.12

  • 34,2%Jo, unë nuk enkriptoj, është e papërshtatshme dhe e shtrenjtë.28

82 përdorues votuan. 22 përdorues abstenuan.

Burimi: www.habr.com

Shto një koment