gFreedom, konta shell, darmowe konta shell


 BIFRÖST
   Strona główna

 ASGARD
   Kontakt

 VALHALLA
   O mnie
   Portfolio
   Poezja
   Wardriving

 GIMLE
   Zdjęcia
   Prasa
   Mitologia
   Skandynawska

Prasa - Gentoo Lightened

Na początku tego 'poradnika' czy 'artykułu' napisze, że oficjalnie nie istnieje coś takiego jak Gentoo Lightened (GL). Jest to nazwa wymyślona przeze mnie, która ma oznaczać bardzo ubogą wersję dystrybucji Gentoo Hardened (GH) przeznaczonej na serwery. Założeniem projektu Hardened jest zwiększenie bezpieczeństwa w systemie Gentoo poprzez dodanie do kernela Linux łatki grsecurity oraz PAX a także wbudowanie do kompilatora gcc opcji zabezpieczających przed przepełnieniami bufora oraz atakami na stos. Jako że Gentoo Hardened jest bardzo dobre na serwery (wiele razy testowałem) byłem bardzo ciekaw czy jako desktop też będzie takie rewelacyjne.

Jednak główny powód tego eksperymentu jest inny. Po przejściu z Gentoo 2007.1 na Gentoo 2008.0 z moim komputerem działy się różne rzeczy - od zawieszenia się systemu aż po nagłe restarty (jak sie później okazało, przyczyną był uszkodzony dysk w laptopie). Postanowiłem albo przejść z powrotem na wersje 2007.1 albo spróbować profilu Gentoo, który nie zmienia się co rok np. z 2008.0 na 2009.0. Jedynym takim profilem był Hardened więc na niego padło ;)

A więc do roboty... Po kilkugodzinnych kompilacjach system został postawiony. Wykorzystany został stage3 hardened oraz kernel gentoo-sources. Czytelnicy, którzy mieli styczność z GH napewno zadają sobie pytanie dlaczego nie został wykorzystany kernel hardened-sources. Odpowiedź jest bardzo prosta. System na desktop nie potrzebuje takich mechanizmów zabezpieczających jakie daje grsecurity czy PAX.
Po trzech godzinach, serwer X-ów wraz z fluxbox'em były już zainstalowane. Aby sprawdzić wydajność systemu zainstalowałem także otwarzacz Kaffeine gdyż jego używam najczęsciej, kadu w wersji 0.4.3 oraz firefox 3.0.1 (którego kompilowało chyba ze 2-3 godziny). Wreszcie nadszedł czas na testy...

Filmiki o rozdzielczości 320x262 strasznie przycinały a o filmach w wyższych rozdzielczościach nawet nie wspominam. Podczas korzystania z przeglądarki, otwieranie nowych stron stawało się koszmarem. Przełączanie się pomiędzy okienkami rozmów w kadu przyprawiało o dreszcze. Innymi słowy nie dało się z systemu normalnie korzystać. Laptop (na nim to testowałem) nie należy do słabych: Intel Core-Duo T2080 1.73 , 1GB RAMu , Intel GMA 945.

System różnił się od Gentoo Hardened tym, że w kernelu nie były włączone łatki grsecurity i PAX. Postanowiłem usunąć następne zabezpieczenie jakie daje Hardened - mowa o dwóch opcjach w gcc dotyczątych przepełnienia bufora oraz atakami na stos. Aby wyłączyć te opcje należało zmienić profil gcc (polecenie gcc-config) a następnie przekompliować cały system wraz programami które doinstalowałem (Kaffeine, FireFox, Kadu itp.). Zajeło mi to ok. 20 godzin ;)

Aby przekonać się czy tyle czasu nie poszło na marne wystarczyło właczyć jakiś filmik Kaffeine'em. Efekt był bardzo zaskakujący! Filmy w wysokich rozdzielczościach nie przycinały się. Otwieranie nowych stron w firefox'ie nie było już takie straszne a przełączanie między oknami rozmów w kadu bardzo przyjemne.

Podsumowując:
1) z systemu Gentoo Hardened zostały usunięte:
* grsecurity
* PAX
* opcja gcc dotycząca zabezpieczenia przez przepełnieniem bufora
* opcja gcc dotycząca zabezpieczenia przez atakami na stos
2) co nie zostało usunięte z Gentoo Hardened:
* opcja gcc '-fPIC' (szczerze powiem - nie znam się na tym ;) )
* flagi USE, które są podstawą profilu Hardened: hardened, pic

Systemu Gentoo Hardened stał się praktycznie zwykłym systemem Gentoo (bez zabezpieczeń). Cel, który chciałem osiągnąć został spełniony gdyż otrzymałem system, w którym profil się nie zmienia np. z 2008.0 na 2009.0. System nazwałem Gentoo Lightened


Jak zmodyfikować Gentoo Hardened na Gentoo Lightened?
* instalujemy Gentoo wg. dokumentacji tyle że zamiast stage3 ściągamy stage3 hardened
* po instalacji systemu sprawdzamy profil poleceniem: eselect profile list
* jeżeli profil jest inny niż hardened/x86/2.6 (nr 5) to zmieniamy profil: eselect profile set 5
* sprawdzamy czy dodane są flagi USE: hardened, pic (jeżeli profil został ustawiony to te flagi powinny być dodane)
* sprawdzamy jaki jest profil gcc: gcc-config -l
* zmieniamy profil gcc na vanilla: gcc-config i686-pc-linux-gnu-3.4.6-vanilla
* przebudowywujemy cały system poleceniem: emerge -e world

Jeżeli wszystko skończyło się pomyślnie to możemy cieszyć się systemem Gentoo Lightened ;)
UWAGA - autor nie odpowiada za jakiekolwiek szkody spowodowane zmodyfikowaniem Gentoo Hardened!