Ak si kúpim počítač so systémom Windows 8 a bezpečným zavádzaním, môžem stále nainštalovať Linux?
Nový systém UEFI Secure Boot v systéme Windows 8 priniesol viac než len spravodlivý podiel zmätku, najmä medzi duálnymi bojovníkmi. Čítajte ďalej, keď objasňujeme nesprávne predstavy o duálnom zavedení systému Windows 8 a Linux.
Dnešná relácia otázok a odpovedí sa k nám pridelí zdvorilosťou SuperUser - podskupiny Stack Exchange, zoskupenia webových stránok typu Q & A.
Otázka
Čítačka SuperUser Harsha K je zvedavá o novom systéme UEFI. On píše:
Počul som veľa o tom, ako spoločnosť Microsoft implementuje systém UEFI Secure Boot v systéme Windows 8. Zrejme zabraňuje spusteniu "neautorizovaných" bootloaderov na počítači, aby sa zabránilo škodlivému softvéru. Existuje kampaň nadácie Free Software Foundation proti bezpečnému zavádzaniu a mnohí ľudia hovoria on-line, že Microsoft je "silným grabom" na "odstránenie voľných operačných systémov".
Ak získam počítač s predinštalovaným systémom Windows 8 a Secure Boot, budem môcť nainštalovať Linux (alebo iný OS) neskôr? Alebo počítač s funkciou Secure Boot funguje iba s Windows?
Takže čo je dohoda? Sú duálne posily skutočne zo šťastia?
Odpoveď
Sponzor SuperUser Nathan Hinkle ponúka fantastický prehľad toho, čo je a nie je UEFI:
Po prvé, jednoduchá odpoveď na vašu otázku:
- Ak máte tablet ARM Windows RT (napr. Surface RT alebo Asus Vivo RT), potom nebudete môcť vypnúť funkciu Secure Boot alebo inštalovať iné operačné systémy. Rovnako ako mnohé iné tablety ARM, tieto zariadenia budú iba spustite OS, s ktorým prichádzajú.
- Ak máte počítač bez ARM Windows 8 (ako je Surface Pro alebo niektorý z nespočetných ultrabookov, stolných počítačov a tabletov s procesorom x86-64), potom môžete úplne deaktivovať funkciu Secure Boot, alebo si môžete nainštalovať vlastné kľúče a podpísať svoj vlastný bootloader. Tak aj tak, môžete nainštalovať operačný systém tretej strany ako distribučný systém Linux alebo FreeBSD alebo DOS alebo čokoľvek iné.
Teraz, na podrobnosti o tom, ako to celé funguje bezpečne zavádzač: Je veľa dezinformácie o Secure Boot, najmä od Nadácie slobodného softvéru a podobných skupín. Je to ťažké nájsť informácie o tom, čo skutočne robí Secure Boot, a tak sa pokúsim vysvetliť čo najlepšie. Všimnite si, že nemám žiadne osobné skúsenosti s vývojom bezpečných zavádzacích systémov alebo niečím podobným; to je práve to, čo som sa naučil od čítania online.
Po prvé, Zabezpečené zavádzanie je nie niečo, čo Microsoft prišiel. Sú to prví, ktorí to široko implementovali, ale nevymysleli to. Je to súčasť špecifikácie UEFI, ktorá je v podstate novšia náhrada starého systému BIOS, s ktorým ste pravdepodobne zvyknutí. UEFI je v podstate softvér, ktorý hovorí medzi operačným systémom a hardvérom. Normy UEFI vytvára skupina s názvom Fórum UEFI, ktoré tvoria zástupcovia počítačového priemyslu vrátane spoločnosti Microsoft, Apple, Intel, AMD a niekoľkých výrobcov počítačov.
Druhý najdôležitejší bod, keď má zapnuté zabezpečené spustenie v počítači nie znamená, že počítač nikdy nespúšťa žiadny iný operačný systém. Vlastné požiadavky spoločnosti Microsoft na certifikáciu hardvéru spoločnosti Microsoft uvádzajú, že pre systémy, ktoré nie sú súčasťou systému ARM, musíte zakázať funkciu Secure Boot a zmeniť kľúče (ak chcete povoliť iné operačné systémy). Viac o tom neskôr.
Čo robí Secure Boot?
V podstate zabraňuje napadnutiu škodlivého softvéru počítačom prostredníctvom zavádzacej sekvencie. Malware, ktorý vstupuje cez bootloader, môže byť veľmi ťažké odhaliť a zastaviť, pretože môže preniknúť do nižších úrovní funkcií operačného systému, čím sa stáva neviditeľným pre antivírusový softvér. Všetko, čo služba Secure Boot naozaj robí, je overiť, či je bootloader z dôveryhodného zdroja a či nebol narušený. Premýšľajte o tom ako o vyskakovacích uzáveroch na fľašiach, ktoré hovoria: "Neotvárajte, ak sa vysunie veko alebo je pečať poškodená".
Na najvyššej úrovni ochrany máte kľúč na platforme (PK). Na každom systéme je iba jedno zariadenie PK a výrobca OEM ho inštaluje počas výroby. Tento kľúč slúži na ochranu databázy KEK. Databáza KEK obsahuje kľúčové kľúče Exchange, ktoré slúžia na úpravu ostatných zabezpečených databáz. Môže existovať viacero KEK. Potom existuje tretia úroveň: autorizovaná databáza (db) a zakázaná databáza (dbx). Obsahujú informácie o certifikačných autoritách, dodatočných kryptografických kľúčoch a obrázkoch zariadení UEFI, ktoré umožňujú alebo zablokujú. Aby bootloader mohol bežať, musí byť kryptograficky podpísaný s kľúčom je v db, a nie je v dbx.
Obrázok z budovy Windows 8: Ochrana prostredia pre OS pred UEFI
Ako to funguje na skutočnom systéme Windows 8 Certified
Výrobca OEM generuje vlastné PK a spoločnosť Microsoft poskytuje KEK, ktorý OEM musí predbežne načítať do databázy KEK. Spoločnosť Microsoft potom podpíše Bootloader systému Windows 8 a používa svoj KEK na vloženie tohto podpisu do autorizovanej databázy. Keď UEFI spustí počítač, overí PK, overí KEK spoločnosti Microsoft a potom overí bootloader. Ak všetko vyzerá dobre, operačný systém sa môže zaviesť.
Obrázok z budovy Windows 8: Ochrana prostredia pre OS pred UEFIKde prichádzajú operačné systémy tretích strán, ako napríklad Linux?
Po prvé, akýkoľvek distribučný systém Linux by sa mohol rozhodnúť vygenerovať KEK a požiadať OEM, aby ho predvolene zaradili do databázy KEK. Oni by potom mali každý bit toľko kontroly nad procesom zavádzania ako Microsoft. Problémy s tým, ako to vysvetlil Matthew Garrett z Fedory, spočívajú v tom, že a) by bolo ťažké dostať každého výrobcu PC do Fedoryho kľúča a b) by to bolo nespravodlivé pre iné distribučné systémy Linux, pretože ich kľúč by nebol zahrnutý , pretože menšie distribúcie nemajú toľko partnerov OEM.
Čo sa Fedora rozhodla urobiť (a ostatné rozdiely sú nasledovné) je používať podpisové služby spoločnosti Microsoft. Tento scenár vyžaduje zaplatenie verisignu vo výške 99 dolárov (certifikačnej autority, ktorú spoločnosť Microsoft používa) a umožňuje vývojárom podpísať svoj bootloader pomocou KEK spoločnosti Microsoft. Vzhľadom na to, že spoločnosť KEK spoločnosti Microsoft už bude vo väčšine počítačov, umožní im to, aby podpísali svoj bootloader, aby používali funkciu Secure Boot, bez toho, aby vyžadovali vlastné KEK. Výsledkom je, že je viac kompatibilný s viacerými počítačmi a stojí oveľa menej ako riešenie vytvorenia vlastného kľúčového podpisovacieho a distribučného systému. Existuje niekoľko podrobností o tom, ako to bude fungovať (pomocou modulov GRUB, podpísaných modulov jadra a ďalších technických informácií) vo vyššie uvedenom blogovom príspevku, ktoré odporúčam čítať, ak vás zaujímajú takéto veci.
Predpokladajme, že nechcete riešiť problém s registráciou systému Microsoft, alebo nechcete platiť 99 dolárov, alebo máte len závidenia voči veľkým spoločnostiam, ktoré začínajú s M. Existuje ďalšia možnosť stále používať Secure Boot a spustite operačný systém iný ako Windows. Certifikácia hardvéru spoločnosti Microsoft vyžaduje že výrobcovia OEM dovoľujú používateľom zadať svoj systém do "vlastného" režimu UEFI, kde môžu manuálne upravovať databázy Secure Boot a PK. Systém môže byť vložený do režimu nastavenia UEFI, kde môže používateľ dokonca určiť vlastnú PK a samotné bootloadery podpisovať.
Okrem toho vlastné požiadavky na certifikáciu od spoločnosti Microsoft vyžadujú, aby výrobcovia OEM zahrnuli metódu na zakázanie funkcie Secure Boot na systémoch, ktoré nie sú súčasťou systému ARM. Zabezpečené zavádzanie môžete vypnúť! Jediné systémy, v ktorých nemožno zakázať funkciu Secure Boot, sú systémy ARM so systémom Windows RT, ktoré fungujú podobne ako iPad, kde nie je možné načítať vlastné operačné systémy. Aj keď by som chcel, aby bolo možné zmeniť operačný systém na zariadeniach ARM, je spravodlivé povedať, že spoločnosť Microsoft dodržiava štandardné štandardy pre tablety.
Takže bezpečná topánka nie je vo svojej podstate zlá?
Tak ako môžete dúfajme vidieť, Secure Boot nie je zlé a nie je obmedzené len na použitie s Windows. Dôvod, prečo je FSF a iní tak rozrušený, je to, že pridáva ďalšie kroky k používaniu operačného systému tretej strany. Linux distros nemusia platiť za používanie kľúčov spoločnosti Microsoft, ale je to najjednoduchší a najefektívnejší spôsob, ako získať funkciu Secure Boot pre Linux. Našťastie je ľahké zapnúť zabezpečené zavádzanie a je možné pridávať rôzne kľúče, čím sa zabráni potrebe zaobchádzať so spoločnosťou Microsoft.
Vzhľadom na množstvo čoraz pokročilejších malware sa Secure Boot zdá byť rozumným nápadom. Neznamená to, že je to zlý sprisahanie, ktoré by prevzalo svet a je oveľa menej hrozné, ako niektorí veriaci.
Ďalšie čítanie:
- Požiadavky na certifikáciu hardvéru spoločnosti Microsoft
- Budovanie systému Windows 8: Ochrana pred OS prostredím s UEFI
- Prezentácia spoločnosti Microsoft o nasadení a správe kľúčov zabezpečeného zavádzania
- Implementácia zabezpečenia UEFI Secure Boot vo Fedore
- Prehľad bezpečného zavádzania služby TechNet
- Článok Wikipedia o UEFI
TL; DR: Zabezpečené zavádzanie zabraňuje infikovaniu vášho systému na malú, nedetekovateľnú úroveň počas zavádzania. Ktokoľvek môže vytvoriť potrebné kľúče na to, aby fungoval, ale je ťažké presvedčiť výrobcov počítačov, aby distribuovali tvoj kľúče pre každého, takže si môžete alternatívne zvoliť zaplatiť Verisign, aby použil kľúč spoločnosti Microsoft na podpísanie vašich zavádzacích zariadení a aby ich fungoval. Môžete tiež vypnúť zabezpečené spustenie akýkoľvek počítač bez počítača ARM.
Posledná myšlienka, pokiaľ ide o kampaň FSF proti Secure Boot: Niektoré ich obavy (to znamená, že to robí ťažšie na inštaláciu bezplatných operačných systémov) do určitého bodu. Povedal, že obmedzenia "zabránia komukoľvek, aby zavádzali čokoľvek iné ako Windows", je preukázateľne nepravdivé, a to z vyššie uvedených dôvodov. Kampaň proti technológii UEFI / Secure Boot ako technológii je krátkozračná, nesprávne informovaná a je nepravdepodobné, že by bola efektívna. Je dôležitejšie zabezpečiť, aby výrobcovia skutočne dodržiavali požiadavky Microsoftu, ktoré umožňujú používateľom zakázať zabezpečené zavádzanie alebo zmeniť kľúč, ak si to želajú.
Máte niečo doplniť vysvetlenie? Vyjadrite sa v komentároch. Chcete sa dozvedieť viac odpovedí od iných používateľov technickej úrovne Stack Exchange? Pozrite sa na celý diskusný príspevok tu.