Jak uruchomić Linuksa na nowych „bezpiecznych” komputerach z Windows 8? Bez Microsoftu się nie obejdzie

Jak uruchomić Linuksa na nowych „bezpiecznych” komputerach z Windows 8? Bez Microsoftu się nie obejdzie

11.10.2012 20:47, aktualizacja: 12.10.2012 14:54

Jak głosi miejska legenda, Bill Gates miał powiedzieć w latach 90, że na świecie jest miejsce dla tylko jednego systemu operacyjnego. I w pewnym momencie wydawać się mogło, że miał rację – były czasy, gdy realnie istniał tylko Windows. Systemy Amigi i Atari ST zostały pogrzebane wraz z tymi maszynami, Macintosh istniał tylko symbolicznie i to tylko na kilku rynkach świata, uniksowe stacje robocze przestały się sprzedawać, a Linux... no cóż, Linux stawiał pierwsze kroki, nieprzyjazny dla użytkowników, niewystarczający dla biznesu. Windows było wszystkim, Windows było całym światem komputerów osobistych.

Choć dzisiaj daleko nam do tego stanu rzeczy, triada Windows/Linux/OS X jest rozpoznawana jako kluczowe OS-y, dla których pisze się oprogramowanie (vide górne menu dobrychprogramów), koło telewizorów często stoi jakieś Playstation, ludzie bawią się tabletami i smartfonami, na których Windows praktycznie nie istnieje, to wciąż to Windows jest królem.

Powodów dominacji Windows na rynku desktopów jest wiele. Niektóre są techniczne, inne to efekt działań czysto marketingowych. Koronną rolę odgrywa w nich preinstalowanie tego systemu na większości sprzedawanych komputerów PC. Przykładowo w 2011 roku, na każde 100 sprzedanych pecetów, Microsoft sprzedał 68 licencji Windows 7. Pozostałe 30 pewnie dostało pirackie Windows, a pozostałe... no cóż, pozostałe doczekały się Ubuntu lub którejś z innych dystrybucji Linuksa. Czy w tej sytuacji Redmond ma się czego obawiać?

Windows 8 ma przynieść ze sobą wiele zmian, a jedną z najważniejszych jest rozstanie się z BIOS-em. Wszystkie nowe komputery z preinstalowaną „ósemką” będą musiały używać interfejsu UEFI (United Extensible Firmware Interface), dziś stosowanego głównie w maszynach serwerowych i Makach. Maszyny z Windows 8 mają obsługiwać bezpieczny start systemu, co oznacza, że bootloader wczytany zaraz po uruchomieniu komputera musi być podpisany kluczem zaufanego urzędu certyfikującego. Wszystko oczywiście w imię walki ze szkodliwym oprogramowaniem – w tak zabezpieczonym bootloaderze nie będzie można przemycić żadnych rootkitów.

Obraz

Wszystko pięknie – ale też tak zabezpieczona maszyna będzie mogła uruchamiać tylko Windows 8, żaden inny system operacyjny nie będzie mógł być na niej uruchomiony. Zamierzony efekt uboczny? Firmware'u nie da się podmienić na niepodpisany, gdyż jak Redmond poinformowało w wytycznych dla producentów sprzętu, Windows ma być podpisane kluczem Microsoftu, a publiczna część tego klucza znajdzie się w firmware komputerów PC, albo też OEM-y będą podpisywały swoimi kluczami preinstalowane wersje Windows, których z takich maszyn już się nie będzie mogło usunąć i zastąpić czymś innym. Ostatecznie okazało się, że w całości te restrykcje obejmą tylko komputery z procesorami ARM, w maszynach z procesorami x86 taki bezpieczny tryb uruchamiania można będzie wyłączyć – choć już wtedy Windows 8 na nich się nie uruchomi.

O zagrożeniu tym, odkrytym przed Matthew Garreta z Red Hata, wiadomo już od ponad roku. Przez ten czas wydawcy linuksowych dystrybucji – co by nie mówić jedynej dziś alternatywy dla Windows na PC (OSX 86 to raczej hobby wciąż), szukali wyjścia z tej, co by nie mówić, kryzysowej sytuacji. Problem nie był łatwy do rozwiązania. Kto miałby podpisywać jądra Linuksa i jak? Licencja aktualnie najczęściej stosowanego bootloadera GRUB2 wymaga publikowania kluczy stosowanych do podpisu, a i starsza wersja GRUB-a nie jest tu wcale łatwa do wykorzystania.

Na horyzoncie widać już jednak zarysy rozwiązania. The Linux Foundation przedstawiła właśnie swoje plany, które powinny umożliwić instalowanie Linuksa na nowych komputerach. Z grubsza wygląda to tak: Fundacja kupi od Microsoftu klucz i podpisze za jego pomocą mały wstępny bootloader, który będzie kolejno ładował, bez jakiegokolwiek już sprawdzania sygnatury, dany bootloader (np. GRUB2), który następnie załaduje Linuksa. Taki wstępny bootloader będzie mógł być wykorzystany zarówno do uruchamiania instalatorów z nośnika optycznego czy pendrive'a, jak i dystrybucji typu LiveCD. Zaraz po nabyciu klucza Microsoftu, The Linux Foundation opublikuje podpisany nim wstępny bootloader na swoich stronach.

Kod tego preloadera jest już dostępny, zainteresowani mogą sklonować sobie repozytorium gita: git://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git (Loader.c). Oczywiście pożytku z niego, do momentu gdy Fundacja Linuksa nie pozyska microsoftowego klucza, raczej nie będzie. Jak widać, jest to maleństwo, które całą pracę przerzuca na normalny bootloader i samo z siebie nie zapewnia żadnych mechanizmów zabezpieczeń względem uruchomienia Linuksa z wyłączoną opcją bezpiecznego startu. Więcej o rozwiązaniu znaleźć można na blogu Jamesa Bottomleya.

Nie jest to jedyne proponowane wyjście z sytuacji. Canonical chciał swego czasu zrezygnować z GRUB-a i sięgnąć po bootloader Intela, który mógłby samodzielnie podpisać kluczem Microsoftu (i oczywiście klucza tego nie udostępniać już dalej). Idealiści od Fedory mówili o konieczności stworzenia klucza dla Linuksa, który posłużyłby do podpisywania bootloaderów we wszystkich dystrybucjach, bo przecież to trochę potworne, by pingwina Microsoft podpisywał (ale jak nakłonić OEM-ów, by zawarli ten klucz w firmware?). Swojego rozwiązania szuka społeczność Debiana. Jak jednak te rozwiązania wypalą w praktyce – tego chyba obecnie nikt nie wie.

Czy UEFI okaże się krzesłem, za pomocą którego Steve Ballmer dobije Linuksa?

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (185)