Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon
Posodobljen lasten vodnik za šifriranje celotnega diska v RuNet V0.2.

Kavbojska strategija:

[A] Windows 7 šifriranje sistemskega bloka nameščenega sistema;
[B] Sistemsko šifriranje blokov GNU/Linux (Debian) nameščen sistem (vključno z /boot);
[C] Konfiguracija GRUB2, zaščita zagonskega nalagalnika z digitalnim podpisom/avtentikacijo/zgoščevanjem;
[D] odstranjevanje—uničenje nešifriranih podatkov;
[E] univerzalna varnostna kopija šifriranega OS;
[F] napad <na postavko [C6]> cilj - zagonski nalagalnik GRUB2;
[G]koristna dokumentacija.

╭───shema #sobe 40# :
├──╼ Nameščen Windows 7 - popolno sistemsko šifriranje, ni skrito;
├──╼ Nameščen GNU/Linux (Debian in izpeljane distribucije) — popolno sistemsko šifriranje, ni skrito(/, vključno z /boot; zamenjava);
├──╼ neodvisni zagonski nalagalniki: zagonski nalagalnik VeraCrypt je nameščen v MBR, zagonski nalagalnik GRUB2 je nameščen na razširjeni particiji;
├──╼ni potrebna namestitev/ponovna namestitev OS;
└──╼uporabljena kriptografska programska oprema: VeraCrypt; Cryptsetup; GnuPG; Morski konjiček; Hashdeep; GRUB2 je brezplačen/brezplačen.

Zgornja shema delno rešuje problem "oddaljenega zagona z bliskovnega pogona", omogoča uporabo šifriranega OS Windows/Linux in izmenjavo podatkov prek "šifriranega kanala" iz enega OS v drugega.

Vrstni red zagona računalnika (ena od možnosti):

  • vklop stroja;
  • nalaganje zagonskega nalagalnika VeraCrypt (vnos pravilnega gesla bo nadaljeval z zagonom sistema Windows 7);
  • s pritiskom na tipko "Esc" se naloži zagonski nalagalnik GRUB2;
  • Zagonski nalagalnik GRUB2 (izberi distribucijo/GNU/Linux/CLI), zahteva avtentikacijo superuporabnika GRUB2 <prijava/geslo>;
  • po uspešni avtentikaciji in izbiri distribucije boste morali vnesti geslo za odklepanje »/boot/initrd.img«;
  • po vnosu gesel brez napak bo GRUB2 "zahteval" vnos gesla (tretjič, geslo za BIOS ali geslo za uporabniški račun GNU/Linux – ni upoštevano) za odklepanje in zagon OS GNU/Linux ali samodejno zamenjavo skrivnega ključa (dve gesli + ključ ali geslo + ključ);
  • zunanji vdor v konfiguracijo GRUB2 bo zamrznil zagonski proces GNU/Linux.

Težaven? V redu, pojdimo avtomatizirati procese.

Pri particioniranju trdega diska (tabela MBR) Računalnik ima lahko največ 4 glavne particije ali 3 glavne in eno razširjeno ter nedodeljeno območje. Razširjeni razdelek, za razliko od glavnega, lahko vsebuje pododdelke (logični pogoni=razširjena particija). Z drugimi besedami, »razširjena particija« na trdem disku nadomešča LVM za trenutno nalogo: popolno sistemsko šifriranje. Če je vaš disk razdeljen na 4 glavne particije, morate uporabiti lvm ali transform (z oblikovanjem) razdelek od glavnega do naprednega ali pametno uporabite vse štiri razdelke in pustite vse tako, kot je, da dobite želeni rezultat. Tudi če imate na disku eno particijo, vam bo Gparted pomagal particionirati trdi disk (za dodatne razdelke) brez izgube podatkov, vendar še vedno z majhno kaznijo za takšna dejanja.

Shema postavitve trdega diska, glede na katero bo verbaliziran celoten članek, je predstavljena v spodnji tabeli.

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon
Tabela (št. 1) particij 1TB.

Tudi ti bi moral imeti nekaj podobnega.
sda1 - glavna particija št. 1 NTFS (šifrirano);
sda2 - oznaka razširjenega odseka;
sda6 - logični disk (ima nameščen zagonski nalagalnik GRUB2);
sda8 - zamenjava (šifrirana izmenjalna datoteka/ne vedno);
sda9 - preskus logičnega diska;
sda5 - logični disk za radovedneže;
sda7 - GNU/Linux OS (prenesen OS na šifriran logični disk);
sda3 - glavna particija št. 2 z operacijskim sistemom Windows 7 (šifrirano);
sda4 - glavni del št. 3 (vseboval je nešifriran GNU/Linux, uporabljen za varnostno kopiranje/ne vedno).

[A] Šifriranje sistemskega bloka Windows 7

A1. VeraCryptŠifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Nalaganje od uradna spletna stran, ali iz ogledala sourceforge namestitvena različica kriptografske programske opreme VeraCrypt (v času objave članka v1.24-Update3 prenosna različica VeraCrypt ni primerna za sistemsko šifriranje). Preverite kontrolno vsoto prenesene programske opreme

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

in primerjajte rezultat s CS, objavljenim na spletni strani za razvijalce VeraCrypt.

Če je nameščena programska oprema HashTab, je še lažje: RMB (VeraCrypt Setup 1.24.exe)-properties - zgoščena vsota datotek.

Za preverjanje podpisa programa morata biti v sistemu nameščena programska oprema in razvijalčev javni ključ pgp gnuPG; gpg4win.

A2. Namestitev/zagon programske opreme VeraCrypt s skrbniškimi pravicamiŠifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

A3. Izbira sistemskih parametrov šifriranja za aktivno particijoVeraCrypt – Sistem – Šifriraj sistemsko particijo/disk – Normalno – Šifriraj sistemsko particijo Windows – Večkratni zagon – (opozorilo: “Neizkušenim uporabnikom odsvetujemo uporabo te metode” in to drži, strinjamo se z “Da”) – Zagonska disketa ("da", tudi če ni tako, še vedno "da") – Število sistemskih diskov “2 ali več” – Več sistemov na enem disku “Da” – Zagonski nalagalnik, ki ni Windows “Ne” (pravzaprav "Da", vendar zagonski nalagalniki VeraCrypt/GRUB2 ne bodo delili MBR-ja med seboj; natančneje, le najmanjši del kode zagonskega nalagalnika je shranjen v MBR/zagonski sledi, njen glavni del pa ki se nahaja znotraj datotečnega sistema) – Multiboot – Nastavitve šifriranja…

Če odstopate od zgornjih korakov (šifrirne sheme blokirnega sistema), potem bo VeraCrypt izdal opozorilo in vam ne bo dovolil šifriranja particije.

V naslednjem koraku k ciljni zaščiti podatkov izvedite »Test« in izberite algoritem šifriranja. Če imate zastarel CPE, bo najverjetneje najhitrejši šifrirni algoritem Twofish. Če je procesor zmogljiv, boste opazili razliko: šifriranje AES bo glede na rezultate testa nekajkrat hitrejše od njegovih kripto konkurentov. AES je priljubljen šifrirni algoritem; strojna oprema sodobnih procesorjev je posebej optimizirana za "skrivno" in "hekanje".

VeraCrypt podpira možnost šifriranja diskov v kaskadi AES(Dve ribi)/in druge kombinacije. Na starem jedrnem procesorju Intel izpred desetih let (brez strojne podpore za AES, A/T kaskadno šifriranje) Zmanjšanje učinkovitosti je v bistvu neopazno. (za procesorje AMD iste dobe/~parametrov je zmogljivost rahlo zmanjšana). OS deluje dinamično in poraba virov za transparentno šifriranje je nevidna. Nasprotno, na primer, opazno zmanjšanje zmogljivosti zaradi nameščenega preskusnega nestabilnega namiznega okolja Mate v1.20.1 (ali v1.20.2 se ne spomnim točno) v GNU/Linuxu ali zaradi delovanja telemetrične rutine v sistemu Windows7↑. Običajno izkušeni uporabniki pred šifriranjem opravijo teste delovanja strojne opreme. Na primer, v Aida64/Sysbench/systemd-analyze krivdo primerjajo z rezultati istih testov po šifriranju sistema, s čimer zase ovržejo mit, da je »sistemsko šifriranje škodljivo«. Upočasnitev stroja in nevšečnost je opazna pri varnostnem kopiranju/obnavljanju šifriranih podatkov, saj se sama operacija “backup sistemskih podatkov” ne meri v ms, dodajajo pa se ti isti <decrypt/encrypt on fly>. Navsezadnje vsak uporabnik, ki mu je dovoljeno, da se ukvarja s kriptografijo, uravnoteži šifrirni algoritem z zadovoljstvom pri opravljanju nalog, svojo stopnjo paranoje in enostavnostjo uporabe.

Bolje je, da parameter PIM pustite kot privzetega, tako da vam pri nalaganju operacijskega sistema ni treba vsakič vnašati natančnih vrednosti iteracije. VeraCrypt uporablja ogromno število iteracij za ustvarjanje resnično "počasnega zgoščevanja". Napad na takšnega "kripto polža" z metodo Brute force/rainbow tables je smiseln le s kratkim "preprostim" geslom in žrtvinim osebnim seznamom znakov. Cena za moč gesla je zamuda pri vnosu pravilnega gesla pri nalaganju operacijskega sistema. (nameščanje nosilcev VeraCrypt v GNU/Linux je bistveno hitrejše).
Brezplačna programska oprema za izvajanje napadov s surovo silo (izvleček gesla iz glave diska VeraCrypt/LUKS) Hashcat. John the Ripper ne ve, kako "razbiti Veracrypt", in pri delu z LUKS ne razume kriptografije Twofish.

Zaradi kriptografske moči šifrirnih algoritmov neustavljivi cypherpunki razvijajo programsko opremo z drugačnim vektorjem napada. Na primer, ekstrahiranje metapodatkov/ključev iz RAM-a (napad hladnega zagona/neposrednega dostopa do pomnilnika), Za te namene obstaja specializirana brezplačna in neprosta programska oprema.

Po zaključku nastavitve/generiranja »edinstvenih metapodatkov« šifrirane aktivne particije bo VeraCrypt ponudil ponovni zagon računalnika in preizkus funkcionalnosti njegovega zagonskega nalagalnika. Po ponovnem zagonu/zagonu sistema Windows se bo VeraCrypt naložil v stanju pripravljenosti, vse kar ostane je potrditi postopek šifriranja - Y.

V zadnjem koraku šifriranja sistema bo VeraCrypt ponudil ustvarjanje varnostne kopije glave aktivne šifrirane particije v obliki »veracrypt rescue disk.iso« - to je treba storiti - v tej programski opremi je taka operacija obvezna (v LUKS-u kot pogoj - to je žal izpuščeno, je pa poudarjeno v dokumentaciji). Reševalni disk bo prav prišel vsem, nekaterim pa večkrat. Izguba (prepis glave/MBR) varnostna kopija glave bo trajno zavrnila dostop do dešifrirane particije z OS Windows.

A4. Ustvarjanje reševalnega USB/diska VeraCryptVeraCrypt privzeto ponuja zapisovanje »~2-3 MB metapodatkov« na CD, vendar vsi ljudje nimajo diskov ali pogonov DWD-ROM in ustvarjanje zagonskega bliskovnega pogona »VeraCrypt Rescue disk« bo za nekatere tehnično presenečenje: Rufus /GUIDd-ROSA ImageWriter in druga podobna programska oprema ne bo kos nalogi, ker morate poleg kopiranja metapodatkov o odmiku na zagonski bliskovni pogon kopirati/prilepiti sliko zunaj datotečnega sistema pogona USB, skratka, pravilno kopirajte MBR/road v keychain. Zagonski bliskovni pogon lahko ustvarite iz operacijskega sistema GNU/Linux s pomočjo pripomočka »dd«, če pogledate ta znak.

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Ustvarjanje reševalne diskete v okolju Windows je drugačno. Razvijalec VeraCrypt rešitve te težave ni vključil v uradno dokumentacijo z »reševalnim diskom«, vendar je predlagal rešitev na drugačen način: na svojem forumu VeraCrypt je objavil dodatno programsko opremo za ustvarjanje »usb reševalnega diska« za brezplačen dostop. Arhivar te programske opreme za Windows »ustvarja reševalni disk usb veracrypt«. Po shranjevanju reševalnega diska.iso se bo začel proces šifriranja blokovnega sistema aktivne particije. Med šifriranjem se delovanje OS ne ustavi, ponovni zagon računalnika ni potreben. Po zaključku operacije šifriranja postane aktivna particija v celoti šifrirana in jo je mogoče uporabljati. Če se zagonski nalagalnik VeraCrypt ne prikaže, ko zaženete računalnik, in operacija obnovitve glave ne pomaga, potem preverite zastavico »boot«, ki mora biti nastavljena na particijo, kjer je prisoten Windows (ne glede na šifriranje in druge OS, glej tabelo št. 1).
S tem je zaključen opis šifriranja blokovnega sistema z operacijskim sistemom Windows.

[B]LUKS. Šifriranje GNU/Linux (~Debian) nameščen OS. Algoritem in koraki

Če želite šifrirati nameščeno distribucijo Debian/izpeljano različico, morate pripravljeno particijo preslikati v navidezno blokovno napravo, jo prenesti na preslikan disk GNU/Linux in namestiti/konfigurirati GRUB2. Če nimate golega strežnika in cenite svoj čas, potem morate uporabiti GUI in večina terminalskih ukazov, opisanih spodaj, je namenjena izvajanju v "načinu Chuck-Norris".

B1. Zagon računalnika z živega usb GNU/Linux

»Izvedite kripto test za zmogljivost strojne opreme«

lscpu && сryptsetup benchmark

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Če ste srečni lastnik zmogljivega avtomobila s strojno podporo AES, bodo številke videti kot desna stran terminala, če ste srečni lastnik, vendar s starinsko strojno opremo, bodo številke videti kot leva stran.

B2. Particioniranje diska. namestitev/formatiranje fs logičnega diska HDD v Ext4 (Gparted)

B2.1. Ustvarjanje šifrirane glave particije sda7Imena particij bom opisal tukaj in naprej v skladu z mojo zgoraj objavljeno particijsko tabelo. Glede na vašo postavitev diska morate zamenjati imena particij.

Preslikava šifriranja logičnega pogona (/dev/sda7 > /dev/mapper/sda7_crypt).
#Enostavna izdelava “LUKS-AES-XTS particije”

cryptsetup -v -y luksFormat /dev/sda7

Opcije:

* luksFormat - inicializacija glave LUKS;
* -y -geslo (ne ključ/datoteka);
* -v -verbalizacija (prikaz informacij v terminalu);
* /dev/sda7 - vaš logični disk iz razširjene particije (kjer je predviden prenos/šifriranje GNU/Linux).

Privzeti algoritem šifriranja <LUKS1: aes-xts-plain64, ključ: 256 bitov, zgoščevanje glave LUKS: sha256, RNG: /dev/urandom> (odvisno od različice cryptsetup).

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

Če na CPU ni strojne podpore za AES, bi bila najboljša izbira ustvariti razširjeno »LUKS-Twofish-XTS-particijo«.

B2.2. Napredno ustvarjanje “LUKS-Twofish-XTS-particije”

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

Opcije:
* luksFormat - inicializacija glave LUKS;
* /dev/sda7 je vaš bodoči šifriran logični disk;
* -v verbalizacija;
* -y geslo;
* -c izberite algoritem za šifriranje podatkov;
* -s velikost šifrirnega ključa;
* -h algoritem zgoščevanja/kripto funkcija, uporabljen RNG (--uporabi-naključno) za ustvarjanje edinstvenega ključa za šifriranje/dešifriranje za glavo logičnega diska, sekundarni ključ glave (XTS); edinstven glavni ključ, shranjen v glavi šifriranega diska, sekundarni ključ XTS, vsi ti metapodatki in rutina šifriranja, ki z uporabo glavnega ključa in sekundarnega ključa XTS šifrira/dešifrira vse podatke na particiji (razen naslova razdelka) shranjen v ~3 MB na izbrani particiji trdega diska.
* -i ponovitve v milisekundah, namesto "količina" (časovni zamik pri obdelavi gesla vpliva na nalaganje OS in kriptografsko trdnost ključev). Če želite ohraniti ravnovesje kriptografske moči, morate s preprostim geslom, kot je »rusko«, povečati vrednost -(i); s kompleksnim geslom, kot je »?8dƱob/øfh«, lahko vrednost zmanjšate.
* —use-urandom generator naključnih števil, ustvari ključe in sol.

Po preslikavi razdelka sda7 > sda7_crypt (operacija je hitra, saj se ustvari šifrirana glava s ~3 MB metapodatkov in to je vse), morate formatirati in namestiti datotečni sistem sda7_crypt.

B2.3. Primerjava

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

opcije:
* odprto - ujemanje razdelka "z imenom";
* /dev/sda7 -logični disk;
* sda7_crypt - preslikava imen, ki se uporablja za namestitev šifrirane particije ali njeno inicializacijo, ko se OS zažene.

B2.4. Formatiranje datotečnega sistema sda7_crypt v ext4. Namestitev diska v OS(Opomba: v Gpartedu ne boste mogli delati s šifrirano particijo)

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

opcije:
* -v -verbalizacija;
* -L - oznaka pogona (ki je prikazana v Raziskovalcu med drugimi pogoni).

Nato bi morali v sistem namestiti navidezno šifrirano blokovno napravo /dev/sda7_crypt

mount /dev/mapper/sda7_crypt /mnt

Delo z datotekami v mapi /mnt samodejno šifrira/dešifrira podatke v sda7.

Bolj priročno je preslikati in namestiti particijo v Raziskovalcu (nautilus/caja GUI), bo particija že na seznamu za izbiro diska, ostane le še vnos gesla za odpiranje/dešifriranje diska. Ujemajoče se ime bo izbrano samodejno in ne »sda7_crypt«, ampak nekaj podobnega /dev/mapper/Luks-xx-xx ...

B2.5. Varnostna kopija glave diska (~3 MB metapodatkov)Eden najbolj pomembno operacije, ki jih je treba opraviti brez odlašanja - varnostna kopija glave “sda7_crypt”. Če prepišete/poškodujete glavo (na primer namestitev GRUB2 na particijo sda7 itd.), bodo šifrirani podatki popolnoma izgubljeni brez možnosti obnovitve, ker bo nemogoče ponovno generirati iste ključe, ključi so ustvarjeni enolično.

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

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

opcije:
* luksHeaderBackup —header-backup-file -ukaz backup;
* luksHeaderRestore —ukaz header-backup-file -restore;
* ~/Backup_DebSHIFR - varnostna kopija datoteke;
* /dev/sda7 - particija, katere varnostna kopija glave šifriranega diska naj bo shranjena.
Na tem koraku je <ustvarjanje in urejanje šifrirane particije> končano.

B3. Prenos GNU/Linux OS (sda4) na šifrirano particijo (sda7)

Ustvarite mapo /mnt2 (Opomba - še vedno delamo z live usb, sda7_crypt je nameščen na /mnt), in namestite naš GNU/Linux v /mnt2, ki mora biti šifriran.

mkdir /mnt2
mount /dev/sda4 /mnt2

Pravilen prenos OS izvedemo s programsko opremo Rsync

rsync -avlxhHX --progress /mnt2/ /mnt

Možnosti Rsync so opisane v odstavku E1.

Poleg tega morajo defragmentirajte particijo logičnega diska

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

Naj bo pravilo: občasno naredite e4defrag na šifriranem GNU/LInuxu, če imate trdi disk.
Prenos in sinhronizacija [GNU/Linux > GNU/Linux-šifrirano] sta v tem koraku končana.

NA 4. Nastavitev GNU/Linux na šifrirani particiji sda7

Po uspešnem prenosu OS /dev/sda4 > /dev/sda7 se morate prijaviti v GNU/Linux na šifrirani particiji in izvesti nadaljnjo konfiguracijo (brez ponovnega zagona računalnika) glede na šifriran sistem. Se pravi, biti v živo usb, vendar izvajati ukaze "glede na koren šifriranega OS." "chroot" bo simuliral podobno situacijo. Za hitro prejemanje informacij o tem, s katerim OS trenutno delate (šifrirano ali ne, ker so podatki v sda4 in sda7 sinhronizirani), desinhronizirajte OS. Ustvarite v korenskih imenikih (sda4/sda7_crypt) prazne označevalne datoteke, na primer /mnt/encryptedOS in /mnt2/decryptedOS. Hitro preverite, kateri OS uporabljate (tudi za prihodnost):

ls /<Tab-Tab>

B4.1. “Simulacija prijave v šifriran OS”

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

B4.2. Preverjanje, ali se delo izvaja v šifriranem sistemu

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

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

B4.3. Ustvarjanje/konfiguriranje šifrirane zamenjave, urejanje crypttab/fstabKer je izmenjalna datoteka formatirana vsakič, ko se OS zažene, nima smisla zdaj ustvariti in preslikati zamenjavo na logični disk ter vnesti ukaze kot v odstavku B2.2. Za Swap bodo ob vsakem zagonu samodejno ustvarjeni lastni začasni šifrirni ključi. Življenjski cikel izmenjalnih ključev: odpenjanje/odpenjanje izmenjalne particije (+čiščenje RAM-a); ali znova zaženite OS. Nastavitev zamenjave, odpiranje datoteke, odgovorne za konfiguracijo blokovno šifriranih naprav (analogno datoteki fstab, vendar odgovorno za kripto).

nano /etc/crypttab 

urejamo

#"target name" "source device" "key file" "options"
swap /dev/sda8 /dev/urandom swap,cipher=twofish-xts-plain64,size=512,hash=sha512

Možnosti
* swap - preslikano ime pri šifriranju /dev/mapper/swap.
* /dev/sda8 - uporabite svojo logično particijo za zamenjavo.
* /dev/urandom - generator naključnih šifrirnih ključev za zamenjavo (z vsakim novim zagonom OS se ustvarijo novi ključi). Generator /dev/urandom je manj naključen kot /dev/random, navsezadnje se /dev/random uporablja pri delu v nevarnih paranoičnih okoliščinah. Pri nalaganju operacijskega sistema /dev/random upočasni nalaganje za nekaj ± minut (glejte systemd-analyze).
* swap,cipher=twofish-xts-plain64,size=512,hash=sha512: -particija ve, da je swap in je “ustrezno” formatirana; šifrirni algoritem.

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

urejamo

# swap je bil med namestitvijo vklopljen / dev / sda8
/dev/mapper/swap none swap sw 0 0

/dev/mapper/swap je ime, ki je bilo nastavljeno v crypttab.

Alternativna šifrirana zamenjava
Če se iz nekega razloga ne želite odpovedati celotni particiji za izmenjalno datoteko, potem lahko izberete alternativno in boljšo pot: ustvarite izmenjalno datoteko v datoteki na šifrirani particiji z 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 будет постоянный

Nastavitev izmenjalne particije je končana.

B4.4. Nastavitev šifriranega GNU/Linux (urejanje datotek crypttab/fstab)Datoteka /etc/crypttab, kot je zapisano zgoraj, opisuje šifrirane blokovne naprave, ki so konfigurirane med zagonom sistema.

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

če ste ujemali razdelek sda7>sda7_crypt kot v odstavku B2.1

# "ciljno ime" "izvorna naprava" "ključna datoteka" "možnosti"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none luks

če ste ujemali razdelek sda7>sda7_crypt kot v odstavku B2.2

# "ciljno ime" "izvorna naprava" "ključna datoteka" "možnosti"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 none cipher=twofish-xts-plain64,size=512,hash=sha512

če ste ujemali razdelek sda7>sda7_crypt kot v odstavku B2.1 ali B2.2, vendar ne želite znova vnesti gesla za odklepanje in zagon OS, potem lahko namesto gesla nadomestite skrivni ključ/naključno datoteko

# "ciljno ime" "izvorna naprava" "ključna datoteka" "možnosti"
sda7_crypt UUID=81048598-5bb9-4a53-af92-f3f9e709e2f2 /etc/skey luks

Opis
* brez - poroča, da je pri nalaganju operacijskega sistema potreben vnos skrivnega gesla za odklepanje korena.
* UUID - identifikator particije. Če želite izvedeti svoj ID, vnesite terminal (opomnik, da od tega trenutka naprej delate v terminalu v chroot okolju in ne v drugem živem usb terminalu).

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»

ta vrstica je vidna, ko zahtevate blkid iz terminala USB v živo z nameščenim sda7_crypt).
UUID vzamete iz svojega sdaX (ne sdaX_crypt!, UUID sdaX_crypt - bo samodejno opuščen pri generiranju konfiguracije grub.cfg).
* cipher=twofish-xts-plain64,size=512,hash=sha512 -luks šifriranje v naprednem načinu.
* /etc/skey - datoteka s skrivnim ključem, ki se samodejno vstavi za odklepanje zagona OS (namesto vnosa 3. gesla). Določite lahko katero koli datoteko do 8 MB, vendar bodo podatki prebrani <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 

Videti bo nekako takole:

(naredite sami in se prepričajte sami).

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

/etc/fstab vsebuje opisne informacije o različnih datotečnih sistemih.

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

# "file system" "mount point" "type" "options" "dump" "pass"
# / je bil med namestitvijo na / dev / sda7
/dev/mapper/sda7_crypt / ext4 errors=remount-ro 0 1

možnost
* /dev/mapper/sda7_crypt - ime preslikave sda7>sda7_crypt, ki je navedena v datoteki /etc/crypttab.
Nastavitev crypttab/fstab je končana.

B4.5. Urejanje konfiguracijskih datotek. Ključni trenutekB4.5.1. Urejanje konfiguracije /etc/initramfs-tools/conf.d/resume

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

in komentiraj (če obstaja) "#" vrstica "nadaljevanje". Datoteka mora biti popolnoma prazna.

B4.5.2. Urejanje konfiguracije /etc/initramfs-tools/conf.d/cryptsetup

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

bi se moralo ujemati

# /etc/initramfs-tools/conf.d/cryptsetup
CRYPTSETUP=da
izvoz CRYPTSETUP

B4.5.3. Urejanje /etc/default/grub config (ta konfiguracija je odgovorna za možnost generiranja grub.cfg pri delu s šifriranim /boot)

nano /etc/default/grub

dodajte vrstico »GRUB_ENABLE_CRYPTODISK=y«
vrednost 'y', bosta grub-mkconfig in grub-install preverila šifrirane pogone in ustvarila dodatne ukaze, potrebne za dostop do njih ob zagonu (insmods ).
mora obstajati podobnost

GRUB_DEFAULT = 0
GRUB_TIMEOUT = 1
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=prodajalec"
GRUB_CMDLINE_LINUX="tiho brskanje noautomount"
GRUB_ENABLE_CRYPTODISK=y

B4.5.4. Urejanje konfiguracije /etc/cryptsetup-initramfs/conf-hook

nano /etc/cryptsetup-initramfs/conf-hook

preverite, ali je linija komentiral <#>.
V prihodnosti (in tudi zdaj ta parameter ne bo imel nobenega pomena, vendar včasih moti posodabljanje slike initrd.img).

B4.5.5. Urejanje konfiguracije /etc/cryptsetup-initramfs/conf-hook

nano /etc/cryptsetup-initramfs/conf-hook

dodati

KEYFILE_PATTERN=”/etc/key”
UMASK=0077

To bo zapakiralo skrivni ključ "skey" v initrd.img, ključ je potreben za odklepanje korena, ko se OS zažene (če ne želite več vnesti gesla, se namesto avta uporablja ključ "skey").

B4.6. Posodobi /boot/initrd.img [različica]Če želite zapakirati skrivni ključ v initrd.img in uporabiti popravke cryptsetup, posodobite sliko

update-initramfs -u -k all

pri posodabljanju initrd.img (kot pravijo "Možno je, ni pa gotovo") pojavila se bodo opozorila, povezana s cryptsetup, ali na primer obvestilo o izgubi modulov Nvidia - to je normalno. Po posodobitvi datoteke preverite, ali je bila dejansko posodobljena, poglejte čas (glede na okolje chroot./boot/initrd.img). Opozorilo! pred [update-initramfs -u -k all] obvezno preverite, ali je nastavitev kriptovalut odprta /dev/sda7 sda7_crypt - to je ime, ki se pojavi v /etc/crypttab, sicer bo po ponovnem zagonu prišlo do napake busybox)
Na tem koraku je nastavitev konfiguracijskih datotek končana.

[C] Namestitev in konfiguracija GRUB2/Protection

C1. Po potrebi formatirajte namensko particijo za zagonski nalagalnik (particija potrebuje vsaj 20 MB)

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

C2. Namestite /dev/sda6 v /mntTorej delamo v chroot, potem v korenu ne bo imenika /mnt2 in mapa /mnt bo prazna.
namestite particijo GRUB2

mount /dev/sda6 /mnt

Če imate nameščeno starejšo različico GRUB2, v imeniku /mnt/boot/grub/i-386-pc (možna je druga platforma, na primer ne "i386-pc") brez kripto modulov (skratka, mapa mora vsebovati module, vključno s temi .mod: cryptodisk; luks; gcry_twofish; gcry_sha512; signature_test.mod), v tem primeru je treba GRUB2 pretresti.

apt-get update
apt-get install grub2 

Pomembno! Ko posodabljate paket GRUB2 iz repozitorija, morate na vprašanje "o izbiri", kam namestiti zagonski nalagalnik, zavrniti namestitev (razlog - poskus namestitve GRUB2 - v “MBR” ali na live usb). V nasprotnem primeru boste poškodovali glavo/nalagalnik VeraCrypt. Po posodobitvi paketov GRUB2 in preklicu namestitve je treba zagonski nalagalnik ročno namestiti na logični disk in ne v MBR. Če ima vaše skladišče zastarelo različico GRUB2, poskusite nadgradnja je z uradne spletne strani - nisem preveril (deluje z najnovejšimi zagonskimi nalagalniki GRUB 2.02 ~BetaX).

C3. Namestitev GRUB2 v razširjeno particijo [sda6]Imeti morate nameščeno particijo [element C.2]

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

opcije
* —force - namestitev zagonskega nalagalnika, mimo vseh opozoril, ki skoraj vedno obstajajo in blokirajo namestitev (obvezna zastavica).
* --root-directory - namestitev imenika do korena sda6.
* /dev/sda6 - vaša particija sdaX (ne spreglejte <presledka> med /mnt /dev/sda6).

C4. Ustvarjanje konfiguracijske datoteke [grub.cfg]Pozabite na ukaz "update-grub2" in uporabite ukaz za generiranje celotne konfiguracijske datoteke

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

po zaključku generiranja/posodabljanja datoteke grub.cfg mora izhodni terminal vsebovati vrstico(e) z operacijskim sistemom, najdenim na disku (»grub-mkconfig« bo verjetno našel in prevzel OS iz živega usb-ja, če imate multiboot bliskovni pogon z Windows 10 in kopico živih distribucij - to je normalno). Če je terminal "prazen" in datoteka "grub.cfg" ni ustvarjena, potem je to isti primer, ko so v sistemu napake GRUB (in najverjetneje nalagalnik iz testne veje repozitorija), ponovno namestite GRUB2 iz zaupanja vrednih virov.
Namestitev »preproste konfiguracije« in nastavitev GRUB2 sta končani.

C5. Dokazni preizkus šifriranega OS GNU/LinuxPravilno zaključimo kripto misijo. Previdno zapustite šifrirani GNU/Linux (zapustite okolje chroot).

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

Po ponovnem zagonu računalnika bi se moral naložiti zagonski nalagalnik VeraCrypt.
Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

*Vnos gesla za aktivno particijo bo začel nalagati Windows.
*Če pritisnete tipko "Esc", boste nadzor prenesli na GRUB2, če izberete šifriran GNU/Linux - za odklepanje /boot/initrd.img bo potrebno geslo (sda7_crypt) (če grub2 zapiše uuid "not found" - to je težava z zagonskim nalagalnikom grub2, ga je treba znova namestiti, npr. iz testne veje/stabilnega itd.).
Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

*Odvisno od tega, kako ste konfigurirali sistem (glejte odstavek B4.4/4.5), boste po vnosu pravilnega gesla za odklepanje slike /boot/initrd.img potrebovali geslo za nalaganje jedra/korena OS ali skrivnost ključ bo samodejno nadomeščen z " skey ", s čimer se odpravi potreba po ponovnem vnosu gesla.
Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon
(zaslon “samodejna zamenjava skrivnega ključa”).

*Nato bo sledil znani postopek nalaganja GNU/Linuxa z avtentikacijo uporabniškega računa.
Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

*Po avtorizaciji uporabnika in prijavi v OS morate znova posodobiti /boot/initrd.img (glejte B4.6).

update-initramfs -u -k all

In v primeru dodatnih vrstic v meniju GRUB2 (iz prevzema OS-m z live usb) znebite se jih

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

Kratek povzetek sistemskega šifriranja GNU/Linux:

  • GNU/Linuxinux je v celoti šifriran, vključno z /boot/kernel in initrd;
  • tajni ključ je zapakiran v initrd.img;
  • trenutno shemo dovoljenj (vnos gesla za odklepanje initrd; geslo/ključ za zagon OS; geslo za avtorizacijo računa Linux).

Sistemsko šifriranje blokovne particije "Simple GRUB2 Configuration" je končano.

C6. Napredna konfiguracija GRUB2. Zaščita zagonskega nalagalnika z digitalnim podpisom + zaščita avtentikacijeGNU/Linux je popolnoma šifriran, vendar zagonskega nalagalnika ni mogoče šifrirati - ta pogoj narekuje BIOS. Zaradi tega verižno šifriran zagon GRUB2 ni mogoč, preprost verižni zagon pa je možen/na voljo, vendar z varnostnega vidika ni potreben [glejte P. F].
Za "ranljiv" GRUB2 so razvijalci uvedli algoritem za zaščito zagonskega nalagalnika "podpis/avtentikacija".

  • Ko je zagonski nalagalnik zaščiten z »lastnim digitalnim podpisom«, bo zunanja sprememba datotek ali poskus nalaganja dodatnih modulov v ta zagonski nalagalnik povzročila blokiranje postopka nalaganja.
  • Pri zaščiti zagonskega nalagalnika z avtentikacijo boste morali za izbiro nalaganja distribucije ali vnos dodatnih ukazov v CLI vnesti prijavo in geslo superuporabnika-GRUB2.

C6.1. Zaščita avtentikacije zagonskega nalagalnikaPreverite, ali delate v terminalu na šifriranem operacijskem sistemu

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

ustvarite geslo superuporabnika za avtorizacijo v GRUB2

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

Pridobite zgoščeno vrednost gesla. Nekaj ​​podobnega

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

namestite particijo GRUB

mount /dev/sda6 /mnt 

uredi konfiguracijo

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

preverite pri iskanju datotek, da ni nobenih zastavic nikjer v “grub.cfg” (“-unrestricted” “-user”,
dodajte čisto na koncu (pred vrstico ### END /etc/grub.d/41_custom ###)
"nastavi superuporabnike="root"
root hash password_pbkdf2."

Moralo bi biti nekaj takega

# Ta datoteka ponuja enostaven način za dodajanje vnosov menija po meri. Preprosto vnesite
# vnos menija, ki ga želite dodati po tem komentarju. Pazite, da se ne spremenite
# zgornja vrstica 'exec tail'.
### KONEC /etc/grub.d/40_custom ###

### ZAČETEK /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg]; potem
vir ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; potem
vir $prefix/custom.cfg;
fi
nastavi superuporabnike="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### KONEC /etc/grub.d/41_custom ###
#

Če pogosto uporabljate ukaz “grub-mkconfig -o /mnt/boot/grub/grub.cfg” in ne želite vsakič spreminjati grub.cfg, vnesite zgornje vrstice (Prijava: Geslo) v uporabniškem skriptu GRUB čisto na dnu

nano /etc/grub.d/41_custom 

mačka <<EOF
nastavi superuporabnike="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
EOF

Pri generiranju konfiguracije »grub-mkconfig -o /mnt/boot/grub/grub.cfg« bodo vrstice, odgovorne za preverjanje pristnosti, samodejno dodane v grub.cfg.
Ta korak zaključi nastavitev preverjanja pristnosti GRUB2.

C6.2. Zaščita zagonskega nalagalnika z digitalnim podpisomPredpostavlja se, da že imate svoj osebni šifrirni ključ pgp (ali ustvarite tak ključ). Sistem mora imeti nameščeno kriptografsko programsko opremo: gnuPG; kleopatra/GPA; Morski konjiček. Programska oprema za kriptovalute vam bo olajšala življenje v vseh takih zadevah. Seahorse - stabilna različica paketa 3.14.0 (višje različice, na primer V3.20, so okvarjene in imajo precejšnje napake).

Ključ PGP je treba generirati/zagnati/dodati samo v okolju su!

Ustvarite osebni šifrirni ključ

gpg - -gen-key

Izvozite svoj ključ

gpg --export -o ~/perskey

Namestite logični disk v OS, če še ni nameščen

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

očistite particijo GRUB2

rm -rf /mnt/

Namestite GRUB2 v sda6 in vstavite svoj zasebni ključ v glavno sliko GRUB "core.img"

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

opcije
* --force - namestite zagonski nalagalnik, tako da obidete vsa opozorila, ki vedno obstajajo (obvezna zastavica).
* —modules="gcry_sha256 gcry_sha512 signature_test gcry_dsa gcry_rsa" - naroči GRUB2, naj prednaloži potrebne module ob zagonu računalnika.
* -k ~/perskey -pot do “ključa PGP” (po pakiranju ključa v sliko ga lahko izbrišete).
* --root-directory -nastavi zagonski imenik na koren sda6
/dev/sda6 - vaša particija sdaX.

Ustvarjanje/posodabljanje grub.cfg

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

Dodajte vrstico »trust /boot/grub/perskey« na konec datoteke »grub.cfg« (prisilna uporaba ključa pgp.) Ker smo GRUB2 namestili z nizom modulov, vključno s podpisnim modulom »signature_test.mod«, to odpravlja potrebo po dodajanju ukazov, kot je »set check_signatures=enforce« v konfiguracijo.

Moralo bi izgledati nekako takole (končne vrstice v datoteki grub.cfg)

### ZAČETEK /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg]; potem
vir ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; potem
vir $prefix/custom.cfg;
fi
zaupajte /boot/grub/perskey
nastavi superuporabnike="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8
### KONEC /etc/grub.d/41_custom ###
#

Ni treba, da pot do »/boot/grub/perskey« kaže na določeno diskovno particijo, na primer hd0,6; za sam zagonski nalagalnik je »root« privzeta pot particije, na kateri je nameščen GRUB2 (glej set rot=..).

Podpis GRUB2 (vse datoteke v vseh imenikih /GRUB) z vašim ključem "perskey".
Preprosta rešitev, kako se podpisati (za nautilus/caja explorer): namestite razširitev »seahorse« za Explorer iz repozitorija. Vaš ključ morate dodati v okolje su.
Odprite Raziskovalec s sudo “/mnt/boot” – RMB – znak. Na zaslonu je videti takole

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Sam ključ je »/mnt/boot/grub/perskey« (kopiraj v imenik grub) mora biti podpisan tudi z lastnim podpisom. Preverite, ali so podpisi datoteke [*.sig] prikazani v imeniku/podimenikih.
Z uporabo zgoraj opisane metode podpišite »/boot« (naše jedro, initrd). Če je vaš čas kaj vreden, potem ta metoda odpravlja potrebo po pisanju bash skripta za podpis "veliko datotek."

Za odstranitev vseh podpisov zagonskega nalagalnika (če je šlo kaj narobe)

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

Da ne bi podpisali zagonskega nalagalnika po posodobitvi sistema, zamrznemo vse posodobitvene pakete, povezane z GRUB2.

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

Na tem koraku <zaščiti zagonski nalagalnik z digitalnim podpisom> je napredna konfiguracija GRUB2 zaključena.

C6.3. Preizkus zagonskega nalagalnika GRUB2, zaščiten z digitalnim podpisom in avtentikacijoGRUB2. Ko izberete katero koli distribucijo GNU/Linux ali vstopite v CLI (ukazna vrstica) Zahtevana bo avtorizacija superuporabnika. Ko vnesete pravilno uporabniško ime/geslo, boste potrebovali geslo initrd

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon
Posnetek zaslona uspešne avtentikacije superuporabnika GRUB2.

Če posegate v katero koli od datotek GRUB2/spremenite grub.cfg ali izbrišete datoteko/podpis ali naložite zlonamerni module.mod, se prikaže ustrezno opozorilo. GRUB2 bo začasno ustavil nalaganje.

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon
Posnetek zaslona, ​​poskus vmešavanja v GRUB2 "od zunaj".

Med "normalnim" zagonom "brez vdora" je status izhodne kode sistema "0". Zato ni znano, ali zaščita deluje ali ne (to je "z ali brez zaščite podpisa zagonskega nalagalnika" med običajnim nalaganjem je stanje enako "0" - to je slabo).

Kako preveriti zaščito digitalnega podpisa?

Neprijeten način preverjanja: ponaredite/odstranite modul, ki ga uporablja GRUB2, na primer odstranite podpis luks.mod.sig in dobite napako.

Pravilen način: pojdite na CLI zagonskega nalagalnika in vnesite ukaz

trust_list

Kot odgovor bi morali prejeti prstni odtis »perskey«; če je status »0«, potem zaščita podpisa ne deluje, dvakrat preverite odstavek C6.2.
Na tem koraku je napredna konfiguracija »Zaščita GRUB2 z digitalnim podpisom in avtentikacijo« zaključena.

C7 Alternativna metoda zaščite zagonskega nalagalnika GRUB2 z zgoščevanjemZgoraj opisana metoda "Zaščita/preverjanje pristnosti zagonskega nalagalnika procesorja" je klasična. Zaradi nepopolnosti GRUB2 je v paranoičnih pogojih dovzeten za resničen napad, ki ga bom navedel spodaj v odstavku [F]. Poleg tega je treba po posodobitvi OS/jedra znova podpisati zagonski nalagalnik.

Zaščita zagonskega nalagalnika GRUB2 z zgoščevanjem

Prednosti pred klasiko:

  • Višja stopnja zanesljivosti (zgoščevanje/preverjanje poteka samo iz šifriranega lokalnega vira. Celotna dodeljena particija pod GRUB2 je nadzorovana za morebitne spremembe, vse ostalo pa je šifrirano; v klasični shemi z zaščito nalagalnika CPU/avtentikacijo so nadzorovane samo datoteke, vendar ne proste prostor, v katerega je mogoče dodati »nekaj« nekaj zloveščega«).
  • Šifrirano beleženje (shemi je dodan človeku berljiv osebni šifriran dnevnik).
  • Hitro (zaščita/preverjanje celotne particije, dodeljene za GRUB2, se zgodi skoraj v trenutku).
  • Avtomatizacija vseh kriptografskih procesov.

Slabosti pred klasiko.

  • Ponarejanje podpisa (teoretično je mogoče najti kolizijo dane zgoščene funkcije).
  • Povečana težavnostna stopnja (v primerjavi s klasičnim je potrebno malo več znanja GNU/Linux OS).

Kako deluje ideja zgoščevanja GRUB2/particije

Particija GRUB2 je "podpisana"; ko se OS zažene, se particija zagonskega nalagalnika preveri glede nespremenljivosti, čemur sledi prijava v varno (šifrirano) okolje. Če je zagonski nalagalnik ali njegova particija ogrožena, se poleg dnevnika vdorov zažene še naslednje:

Stvar.Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Podobno preverjanje se izvede štirikrat na dan, kar ne obremenjuje sistemskih virov.
Z uporabo ukaza “-$ check_GRUB” se kadar koli izvede takojšnje preverjanje brez beleženja, vendar z izhodom informacij v CLI.
Z ukazom “-$ sudo signature_GRUB” je zagonski nalagalnik/particija GRUB2 takoj ponovno podpisana in posodobljeno beleženje (potrebno po posodobitvi operacijskega sistema/zagona) in življenje gre naprej.

Implementacija metode zgoščevanja za zagonski nalagalnik in njegov razdelek

0) Podpišimo zagonski nalagalnik/particijo GRUB tako, da ga najprej namestimo v /media/username

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

1) Ustvarimo skript brez razširitve v korenu šifriranega OS ~/podpis, uporabimo potrebne varnostne pravice 744 in varno zaščito.

Polnjenje njegove vsebine

#!/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

Zaženite skript iz su, bo preverjeno zgoščevanje particije GRUB in njenega zagonskega nalagalnika, shranite dnevnik.

Ustvarimo ali kopirajmo na primer »zlonamerno datoteko« [virus.mod] na particijo GRUB2 in zaženimo začasno skeniranje/test:

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

CLI mora videti invazijo na našo -citadel-#Obrezan dnevnik v 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

#Kot lahko vidite, se prikaže »Datoteke premaknjene: 1 in revizija ni uspela«, kar pomeni, da preverjanje ni uspelo.
Zaradi narave particije, ki se preskuša, namesto »Najdene nove datoteke« > »Datoteke premaknjene«

2) GIF postavite sem > ~/warning.gif, nastavite dovoljenja na 744.

3) Konfiguriranje fstab za samodejno namestitev particije GRUB ob zagonu

-$ sudo nano /etc/fstab

LABEL=GRUB /media/uporabniško ime/GRUB ext4 privzeto 0 0

4) Vrtenje hloda

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

/var/log/podpis.txt {
vsak dan
zavrtite 50
velikost 5M
dateext
stiskanje
delaycompress
olddir /var/log/old
}

/var/log/vtorjenie.txt {
mesečno
zavrtite 5
velikost 5M
dateext
olddir /var/log/old
}

5) Dodajte opravilo v cron

-$ sudo crontab -e

odmevajoč '/naročnina'
0 */6 * * * '/podpis

6) Ustvarjanje trajnih vzdevkov

-$ 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

Po posodobitvi OS -$ apt-get upgrade znova podpišite našo particijo GRUB
-$ подпись_GRUB
Na tej točki je zaščita pred zgoščevanjem particije GRUB končana.

[D] Brisanje - uničenje nešifriranih podatkov

Izbrišite svoje osebne datoteke tako popolnoma, da jih "niti bog ne more prebrati," pravi tiskovni predstavnik Južne Karoline Trey Gowdy.

Kot ponavadi obstajajo različni »miti in legende", o obnavljanju podatkov, potem ko so bili izbrisani s trdega diska. Če verjamete v kibernetsko čarovništvo ali ste član spletne skupnosti Dr in še nikoli niste poskusili obnoviti podatkov, potem ko so bili izbrisani/prepisani (na primer obnovitev z R-studio), potem vam predlagana metoda verjetno ne bo ustrezala, uporabite tisto, kar vam je najbližje.

Po uspešnem prenosu GNU/Linux na šifrirano particijo je treba staro kopijo izbrisati brez možnosti obnovitve podatkov. Univerzalna metoda čiščenja: programska oprema za Windows/Linux brezplačna programska oprema GUI BleachBit.
Hitro formatirajte razdelek, katere podatke je treba uničiti (prek Gparted) zaženite BleachBit, izberite »Počisti prosti prostor« - izberite particijo (vaš sdaX s prejšnjo kopijo GNU/Linux), se bo začel postopek odstranjevanja. BleachBit - obriše disk v enem prehodu - to je tisto, kar "potrebujemo", Ampak! To teoretično deluje le, če ste disk formatirali in očistili v programski opremi BB v2.0.

Pozornost! BB pobriše disk in pusti metapodatke; imena datotek se ohranijo, ko se podatki odstranijo (Ccleaner - ne pušča metapodatkov).

In mit o možnosti obnovitve podatkov ni povsem mit.Bleachbit V2.0-2 nekdanji nestabilni OS Debian paket (in vsa druga podobna programska oprema: sfill; wipe-Nautilus - so bili tudi opaženi v tem umazanem poslu) dejansko je imel kritično napako: funkcijo "čiščenja prostega prostora". deluje nepravilno na HDD/Flash pogonih (ntfs/ext4). Tovrstna programska oprema pri čiščenju prostega prostora ne prepiše celotnega diska, kot mislijo mnogi uporabniki. In nekaj (veliko) izbrisani podatki OS/programska oprema obravnava te podatke kot neizbrisane/uporabniške podatke in pri čiščenju »OSP« te datoteke preskoči. Težava je v tem, da po tako dolgem času čiščenje diska "izbrisane datoteke" je mogoče obnoviti tudi po 3+ prehodih brisanja diska.
Na GNU/Linux pri Bleachbitu 2.0-2 Funkcije trajnega brisanja datotek in imenikov delujejo zanesljivo, ne pa tudi čiščenja prostega prostora. Za primerjavo: v sistemu Windows v CCleanerju funkcija "OSP za ntfs" deluje pravilno in Bog res ne bo mogel brati izbrisanih podatkov.

In tako, temeljito odstraniti "kompromitiranje" stari nešifrirani podatki, Bleachbit potrebuje neposreden dostop do teh podatkov, nato pa uporabite funkcijo »trajno izbriši datoteke/imenike«.
Če želite odstraniti »izbrisane datoteke s standardnimi orodji OS« v sistemu Windows, uporabite CCleaner/BB s funkcijo »OSP«. V GNU/Linux nad to težavo (izbriši izbrisane datoteke) vaditi se moraš sam (brisanje podatkov + neodvisen poskus obnovitve in ne smete se zanašati na različico programske opreme (če ne zaznamek, potem napaka)), le v tem primeru boste lahko razumeli mehanizem te težave in se popolnoma znebili izbrisanih podatkov.

Nisem preizkusil Bleachbit v3.0, težava je morda že odpravljena.
Bleachbit v2.0 deluje pošteno.

Na tem koraku je brisanje diska končano.

[E] Univerzalna varnostna kopija šifriranega OS

Vsak uporabnik ima svoj način varnostnega kopiranja podatkov, vendar šifrirani podatki sistemskega OS zahtevajo nekoliko drugačen pristop k nalogi. Poenotena programska oprema, kot je Clonezilla in podobna programska oprema, ne more delovati neposredno s šifriranimi podatki.

Izjava o problemu varnostnega kopiranja šifriranih blokovnih naprav:

  1. univerzalnost - enak algoritem/programska oprema za varnostno kopiranje za Windows/Linux;
  2. možnost dela v konzoli s katerim koli živim usb GNU/Linux brez potrebe po dodatnih prenosih programske opreme (vendar vseeno priporočam GUI);
  3. varnost varnostnih kopij - shranjene "slike" morajo biti šifrirane/zaščitene z geslom;
  4. velikost šifriranih podatkov mora ustrezati velikosti dejanskih podatkov, ki se kopirajo;
  5. priročno pridobivanje potrebnih datotek iz varnostne kopije (ni zahteve po dešifriranju celotnega odseka).

Na primer varnostno kopiranje/obnovitev s pripomočkom »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

Ustreza skoraj vsem točkam naloge, vendar glede na točko 4 ne zdrži kritike, saj kopira celotno particijo diska, vključno s prostim prostorom - ni zanimivo.

Na primer varnostna kopija GNU/Linux prek arhivarja [tar" | gpg] je priročno, vendar morate za varnostno kopiranje sistema Windows poiskati drugo rešitev - ni zanimivo.

E1. Univerzalna varnostna kopija Windows/Linux. Povežite nosilec rsync (Grsync)+VeraCryptAlgoritem za ustvarjanje varnostne kopije:

  1. ustvarjanje šifriranega vsebnika (nosilec/datoteka) VeraCrypt za OS;
  2. prenesite/sinhronizirajte OS s programsko opremo Rsync v kripto vsebnik VeraCrypt;
  3. po potrebi prenos nosilca VeraCrypt na www.

Ustvarjanje šifriranega vsebnika VeraCrypt ima svoje značilnosti:
ustvarjanje dinamičnega volumna (ustvarjanje DT je ​​na voljo samo v sistemu Windows, lahko se uporablja tudi v GNU/Linux);
ustvarjanje običajne glasnosti, vendar obstaja zahteva po "paranoičnem značaju" (po navedbah razvijalca) – oblikovanje vsebnika.

Dinamični nosilec je v sistemu Windows ustvarjen skoraj v trenutku, vendar se pri kopiranju podatkov iz GNU/Linux > VeraCrypt DT splošna zmogljivost operacije varnostnega kopiranja znatno zmanjša.

Ustvarjen je običajni nosilec Twofish velikosti 70 GB (recimo le, pri povprečni moči računalnika) na trdi disk ~ v pol ure (prepis prejšnjih podatkov vsebnika v enem prehodu je posledica varnostnih zahtev). Funkcija hitrega formatiranja nosilca pri ustvarjanju je bila odstranjena iz VeraCrypt Windows/Linux, tako da je ustvarjanje vsebnika mogoče le s »prepisovanjem z enim prehodom« ali ustvarjanjem nizko zmogljivega dinamičnega nosilca.

Ustvarite običajni nosilec VeraCrypt (ni dinamično/ntfs), ne bi smelo biti nobenih težav.

Konfigurirajte/ustvarite/odprite vsebnik v VeraCrypt GUI> GNU/Linux live usb (nosilec bo samodejno nameščen v /media/veracrypt2, nosilec OS Windows bo nameščen v /media/veracrypt1). Ustvarjanje šifrirane varnostne kopije operacijskega sistema Windows z uporabo GUI rsync (grsync)tako da potrdite polja.

Šifriranje celotnega diska nameščenih sistemov Windows Linux. Šifriran večkratni zagon

Počakajte, da se postopek zaključi. Ko je varnostna kopija končana, bomo imeli eno šifrirano datoteko.

Podobno ustvarite varnostno kopijo operacijskega sistema GNU/Linux, tako da počistite potrditveno polje »Združljivost z Windows« v GUI rsync.

Pozornost! ustvarite vsebnik Veracrypt za »varnostno kopijo GNU/Linux« v datotečnem sistemu ext4. Če naredite varnostno kopijo v vsebnik ntfs, potem ko obnovite takšno kopijo, boste izgubili vse pravice/skupine za vse svoje podatke.

Vse operacije lahko izvajate v terminalu. Osnovne možnosti za rsync:
* -g -shrani skupine;
* -P —napredek — status časa, porabljenega za delo na datoteki;
* -H - kopiraj trde povezave, kot so;
* -a -arhivski način (več zastavic rlptgoD);
* -v -verbalizacija.

Če želite priklopiti »nosilec Windows VeraCrypt« prek konzole v programski opremi za nastavitev kriptovalut, lahko ustvarite vzdevek (su)

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

Zdaj vas bo ukaz »veramount pictures« pozval, da vnesete geslo, in šifrirana nosilnost sistema Windows bo nameščena v OS.

Preslikaj/vklopi sistemski nosilec VeraCrypt v ukazu cryptsetup

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

Preslikaj/pripni particijo/vsebnik VeraCrypt v ukazu cryptsetup

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

Namesto vzdevka bomo v zagon GNU/Linux dodali (skript za zagon) sistemski nosilec z OS Windows in logično šifrirano disketo ntfs

Ustvarite skript in ga shranite v ~/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.

Distribuiramo "pravilne" pravice:

sudo chmod 100 /VeraOpen.sh

Ustvarite dve enaki datoteki (z istim imenom!) v /etc/rc.local in ~/etc/init.d/rc.local
Polnjenje datotek

#!/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

Distribuiramo "pravilne" pravice:

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

To je to, zdaj nam pri nalaganju GNU/Linuxa ni treba vnašati gesel za namestitev šifriranih diskov ntfs, diski se montirajo samodejno.

Kratka opomba o tem, kar je opisano zgoraj v odstavku E1 korak za korakom (vendar zdaj za OS GNU/Linux)
1) Ustvarite nosilec v fs ext4 > 4gb (za datoteko) Linux v Veracrypt [Cryptbox].
2) Znova zaženite v živo usb.
3) ~$ cryptsetup odprta /dev/sda7 Lunux #mapping šifrirana particija.
4) ~$ mount /dev/mapper/Linux /mnt #mount šifrirano particijo v /mnt.
5) ~$ mkdir mnt2 #ustvarjanje imenika za prihodnjo varnostno kopijo.
6) ~$ cryptsetup open —veracrypt —type tcrypt ~/CryptoBox CryptoBox && mount /dev/mapper/CryptoBox /mnt2 #Preslikajte nosilec Veracrypt z imenom »CryptoBox« in namestite CryptoBox v /mnt2.
7) ~$ rsync -avlxhHX —napredek /mnt /mnt2/ #operacija varnostnega kopiranja šifrirane particije na šifriran nosilec Veracrypt.

(p/s/ Pozornost! Če prenašate šifriran GNU/Linux iz ene arhitekture/stroja v drugega, na primer Intel > AMD (to je uvajanje varnostne kopije z ene šifrirane particije na drugo šifrirano particijo Intel > AMD), Ne pozabi Po prenosu šifriranega operacijskega sistema morda uredite skrivni nadomestni ključ namesto gesla. prejšnji ključ ~/etc/skey - ne bo več ustrezal drugi šifrirani particiji in ni priporočljivo ustvariti novega ključa "cryptsetup luksAddKey" izpod chroot - možna je napaka, samo v ~/etc/crypttab podajte namesto “/etc/skey” začasno “brez” ", po ponovnem zagonu in prijavi v operacijski sistem znova ustvarite svoj skrivni nadomestni ključ).

Kot veterani IT ne pozabite posebej narediti varnostne kopije glav šifriranih particij OS Windows/Linux, sicer se bo šifriranje obrnilo proti vam.
Na tem koraku je varnostno kopiranje šifriranega OS končano.

[F] Napad na zagonski nalagalnik GRUB2

PodrobnostiČe ste svoj zagonski nalagalnik zaščitili z digitalnim podpisom in/ali avtentikacijo (glej točko C6.), potem to ne bo zaščitilo pred fizičnim dostopom. Šifrirani podatki bodo še vedno nedostopni, vendar bo zaščita zaobšla (ponastavi zaščito digitalnega podpisa) GRUB2 omogoča kibernetskemu zlobnežu, da vbrizga svojo kodo v zagonski nalagalnik, ne da bi vzbudil sum (razen če uporabnik ročno spremlja stanje zagonskega nalagalnika ali si izmisli lastno robustno kodo poljubnega skripta za grub.cfg).

Algoritem napada. Vsiljivec

* Zažene računalnik z živega USB-ja. Vsaka sprememba (kršitelj) datoteke bodo pravega lastnika računalnika obvestili o vdoru v zagonski nalagalnik. Toda preprosta ponovna namestitev GRUB2 obdrži grub.cfg (in kasnejša možnost urejanja) bo napadalcu omogočil urejanje katere koli datoteke (v tej situaciji pri nalaganju GRUB2 pravi uporabnik ne bo obveščen. Stanje je enako <0>)
* Priklopi nešifrirano particijo, shrani »/mnt/boot/grub/grub.cfg«.
* Ponovno namesti zagonski nalagalnik (odstranitev "perskey" iz slike core.img)

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

* Vrne “grub.cfg” > “/mnt/boot/grub/grub.cfg”, po potrebi ga uredi, na primer doda vaš modul “keylogger.mod” v mapo z moduli za nalaganje v “grub.cfg” > vrstica "insmod keylogger". Ali na primer, če je sovražnik zvit, potem po ponovni namestitvi GRUB2 (vsi podpisi ostanejo na mestu) zgradi glavno sliko GRUB2 z uporabo "grub-mkimage z možnostjo (-c)." Možnost "-c" vam bo omogočila nalaganje vaše konfiguracije pred nalaganjem glavnega "grub.cfg". Konfiguracija je lahko sestavljena iz samo ene vrstice: preusmeritev na kateri koli »modern.cfg«, pomešan na primer s ~400 datotekami (moduli+podpisi) v mapi "/boot/grub/i386-pc". V tem primeru lahko napadalec vstavi poljubno kodo in naloži module, ne da bi vplival na »/boot/grub/grub.cfg«, tudi če je uporabnik v datoteko uporabil »hashsum« in jo začasno prikazal na zaslonu.
Napadalcu ne bo treba vdreti v prijavo/geslo superuporabnika GRUB2; le kopirati bo moral vrstice (odgovoren za avtentikacijo) "/boot/grub/grub.cfg" v vaš "modern.cfg"

nastavi superuporabnike="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.DE10E42B01BB6FEEE46250FC5F9C3756894A8476A7F7661A9FFE9D6CC4D0A168898B98C34EBA210F46FC10985CE28277D0563F74E108FCE3ACBD52B26F8BA04D.27625A4D30E4F1044962D3DD1C2E493EF511C01366909767C3AF9A005E81F4BFC33372B9C041BE9BA904D7C6BB141DE48722ED17D2DF9C560170821F033BCFD8

In lastnik osebnega računalnika bo še vedno overjen kot superuporabnik GRUB2.

Nalaganje verige (zagonski nalagalnik naloži drug zagonski nalagalnik), kot sem napisal zgoraj, nima smisla (namenjen je drugemu namenu). Šifriranega zagonskega nalagalnika ni mogoče naložiti zaradi BIOS-a (verižni zagon znova zažene GRUB2 > šifriran GRUB2, napaka!). Vendar, če še vedno uporabljate idejo verižnega nalaganja, ste lahko prepričani, da se nalaga šifrirano. (ni posodobljen) "grub.cfg" iz šifrirane particije. In to je tudi lažen občutek varnosti, saj vse, kar je navedeno v šifriranem "grub.cfg" (nalaganje modula) sešteje module, ki so naloženi iz nešifriranega GRUB2.

Če želite to preveriti, dodelite/šifrirajte drugo particijo sdaY, vanjo kopirajte GRUB2 (operacija grub-install na šifrirani particiji ni mogoča) in v "grub.cfg" (nešifrirana konfiguracija) spremenite takšne vrstice

menuentry 'GRUBx2' --class parrot --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-382111a2-f993-403c-aa2e-292b5eac4780' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; nato insmod xzio; insmod lzopio; fi
insmod part_msdos
kriptodisk insmod
insmod lux
insmod gcry_twofish
insmod gcry_twofish
insmod gcry_sha512
insmod ext2
cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838
set root=’cryptouuid/15c47d1c4bd34e5289df77bcf60ee838′
običajno /boot/grub/grub.cfg
}

linije
* insmod - nalaganje potrebnih modulov za delo s šifriranim diskom;
* GRUBx2 - ime vrstice, prikazane v zagonskem meniju GRUB2;
* cryptomount -u 15c47d1c4bd34e5289df77bcf60ee838 -glej. fdisk -l (sda9);
* nastavite root - namestite root;
* običajno /boot/grub/grub.cfg - izvedljiva konfiguracijska datoteka na šifrirani particiji.

Zaupanje, da je naložen šifriran »grub.cfg«, je pozitiven odgovor na vnos gesla/odklepanje »sdaY«, ko izberete vrstico »GRUBx2« v meniju GRUB.

Pri delu v CLI, da ne bi prišlo do zmede (in preverite, ali je spremenljivka okolja »set root« delovala), ustvarite prazne datoteke žetonov, na primer v šifriranem razdelku »/shifr_grub«, v nešifriranem razdelku »/noshifr_grub«. Preverjanje v CLI

cat /Tab-Tab

Kot je navedeno zgoraj, to ne bo pomagalo pri nalaganju zlonamernih modulov, če se ti moduli znajdejo v vašem računalniku. Na primer, keylogger, ki bo lahko shranil pritiske tipk v datoteko in jo pomešal z drugimi datotekami v »~/i386«, dokler je ne prenese napadalec s fizičnim dostopom do računalnika.

Najlažji način za preverjanje, ali zaščita digitalnega podpisa aktivno deluje (ni ponastavljen)in nihče ni vdrl v zagonski nalagalnik, vnesite ukaz v CLI

list_trusted

kot odgovor prejmemo kopijo našega "perskeyja" ali pa ne prejmemo ničesar, če smo napadeni (obkljukati morate tudi "set check_signatures=enforce").
Bistvena pomanjkljivost tega koraka je ročno vnašanje ukazov. Če dodate ta ukaz v »grub.cfg« in zaščitite konfiguracijo z digitalnim podpisom, je predhodni izpis posnetka ključa na zaslonu časovno prekratek in morda ne boste imeli časa videti izhoda po nalaganju GRUB2 .
Nikomur ni posebej očitati: razvijalec v svojem dokumentacijo klavzula 18.2 uradno izjavlja

»Upoštevajte, da tudi z zaščito z geslom GRUB sam GRUB ne more preprečiti nekomu s fizičnim dostopom do stroja, da bi spremenil konfiguracijo vdelane programske opreme tega stroja (npr. Coreboot ali BIOS), da bi povzročil zagon stroja iz druge (napadalčeve) naprave. GRUB je v najboljšem primeru le en člen v varni zagonski verigi."

GRUB2 je preveč preobremenjen s funkcijami, ki lahko dajejo občutek lažne varnosti, njegov razvoj pa je po funkcionalnosti že prehitel MS-DOS, a je le zagonski nalagalnik. Smešno je, da lahko GRUB2 - "jutri" postane OS in zanj zagonski virtualni stroji GNU/Linux.

Kratek video o tem, kako sem ponastavil zaščito digitalnega podpisa GRUB2 in svoj vdor prijavil pravemu uporabniku (Prestrašil sem vas, ampak namesto tega, kar je prikazano v videu, lahko napišete neškodljivo poljubno kodo/.mod).

Sklepi:

1) Šifriranje blokovnega sistema za Windows je lažje implementirati, zaščita z enim geslom pa je bolj priročna kot zaščita z več gesli s šifriranjem blokovnega sistema GNU/Linux, po pravici povedano: slednje je avtomatizirano.

2) Članek sem napisal kot ustrezen in podroben preprosto vodnik za šifriranje celotnega diska VeraCrypt/LUKS na enem domačem računalniku, ki je daleč najboljše v RuNetu (IMHO). Vodnik je dolg > 50k znakov, zato ni zajel nekaj zanimivih poglavij: kriptografi, ki izginejo/ostanejo v senci; o tem, da v raznih knjigah o GNU/Linuxu malo/ne pišejo o kriptografiji; o členu 51 Ustave Ruske federacije; O licenciranje/prepoved šifriranje v Ruski federaciji, zakaj morate šifrirati »root/boot«. Vodič se je izkazal za precej obsežnega, a podrobnega. (opis celo preprostih korakov), pa vam bo to prihranilo veliko časa, ko boste prišli do »pravega šifriranja«.

3) Šifriranje celotnega diska je bilo izvedeno v sistemu Windows 7 64; GNU/Linux Parrot 4x; GNU/Debian 9.0/9.5.

4) Izveden uspešen napad na njegov GRUB2 zagonski nalagalnik.

5) Vadnica je bila ustvarjena za pomoč vsem paranoičnim ljudem v CIS, kjer je delo s šifriranjem dovoljeno na zakonodajni ravni. In predvsem za tiste, ki želijo uvesti šifriranje celotnega diska, ne da bi porušili svoje konfigurirane sisteme.

6) Predelal in posodobil moj priročnik, ki je pomemben v letu 2020.

[G] Uporabna dokumentacija

  1. Uporabniški priročnik za TrueCrypt (februar 2012 RU)
  2. Dokumentacija VeraCrypt
  3. /usr/share/doc/cryptsetup(-run) [lokalni vir] (uradna podrobna dokumentacija o nastavitvi šifriranja GNU/Linux z uporabo cryptsetup)
  4. Uradna pogosta vprašanja o namestitvi kriptovalut (kratka dokumentacija o nastavitvi šifriranja GNU/Linux z uporabo cryptsetup)
  5. Šifriranje naprave LUKS (dokumentacija za archlinux)
  6. Podroben opis sintakse cryptsetup (stran arch man)
  7. Podroben opis crypttab (stran arch man)
  8. Uradna dokumentacija GRUB2.

Oznake: šifriranje celotnega diska, šifriranje particij, šifriranje celotnega diska Linux, šifriranje celotnega sistema LUKS1.

V anketi lahko sodelujejo samo registrirani uporabniki. Prijaviti se, prosim.

Ali šifrirate?

  • 17,1%Šifriram vse, kar lahko. Sem paranoičen.14

  • 34,2%Šifriram samo pomembne podatke.28

  • 14,6%Včasih šifriram, včasih pozabim.12

  • 34,2%Ne, ne šifriram, je neprijetno in drago.28

Glasovali so 82 uporabniki. 22 uporabniki so se vzdržali.

Vir: www.habr.com

Dodaj komentar