Nasze logo
YahooAltaVistaLycos
Google Netsprint  Hotbot


Szukaj terminu:
Zaczyna się od Zawiera Dokładny wyraz
 
Po wpisaniu nazwy lub pierwszej litery należy wybrać
rodzaj kategorii w której powinien znajdować się szukany plik.
Wpisz wyszukiwane słowo:
Zapraszamy na blogi Chat Forum Słownik Download Filmy Mobil Radio Gry Ekologia Lotnictwo
Na
PromujNewsLetterPartnerzyCzaty/GościePorównania-TestyTłumaczeniaTopXmlHtml4cmsBlogMapaSymantec
skróty
AntySpywareE-mail programySzukaj w SieciProgramowanieBadania InternetoweCSSJava DownloadKatalog DniaekoEnergia
Reklama i pozycjonowanieCMSy i dla webmasterówPodręcznik PHPAccessibility standardCentrum RSSFirewall'eMetaSearchCzasSport
MotoryzacjaWirusy Top RankingStandaryzacjaTweak-Windows-VistaSprzętAntywirusyHacking i BezpieczeństwoBanki/FinanseMedia

Partnerzy:
allegro symantec netsprint
stat mks_vir2k7  
  |   Blogi   |   Konkursy   |   Sondy   |   Blogsfera   |   Avatary Emotikony Ikony   |   Filmy   |  
 

Bezpieczeństwo GRUBA-a Email
04.11.2006.

Bezpieczeństwo GRUB-a. cd. Bootloader

Mając bezpośredni dostęp do powłoki GRUB, możemy bez problemu zmienić w systemie hasło konta root bez znajomości dotychczasowego.
Poniżej ciąg dalszy materiału opublikowanego z  Linux+ który znajdziecie TU.
 
Wystarczy modyfikacja parametrów przekazywanych do jądra (dodanie init=/bin/sh na końcu linijki kernel). Poza tym polecenie cat tejże powłoki nie respektuje ustawionych w systemie plików uprawnień i pokaże bez szemrania dowolnej osobie np. /etc/passwd czy /etc/shadow.

ZABEZPIECZENIE


Należałoby więc program rozruchowy zabezpieczyć.

GRUB daje możliwość ustawienia własnego hasła,  co pozwala na zarezerwowanie opcji interaktywnych wyłącznie dla administratora.


Robimy z hasła skrót (hash) md5:

<<LISTING lang=C++ posx=11;0l posy=b fit=W grow=H>>
Listing 6. Hasła skrótu (hash) md5
# grub
grub> md5crypt
Password: ***********
Encrypted: $1$mVk4b1$1ocssU8DMrqa.Fqh3lwZX0
grub> quit
Otrzymany skrót wstawiamy do sekcji globalnej (gdzieś na początek) pliku menu.lst:
password --md5 $1$mVk4b1$1ocssU8DMrqa.Fqh3lwZX0
<</LISTING>>

Dodatkowo hasło możemy sprawdzać także przed uruchomieniem określonego wpisu. W tym przykładzie Linux będzie dostępny tylko dla zaufanej osoby:

<<LISTING lang=C++ posx=12;0l posy=t fit=W grow=H>>
Listing 7. Wprowadzenie drugiego hasła
default 1
timeout 3
password --md5 $1$mVk4b1$1ocssU8DMrqa.Fqh3lwZX0
title Linux
lock
# (ta linijka wymusza podanie hasła przed uruchomieniem wpisu; powinna być
# zawsze zaraz za title)
root (hd0,0)
kernel /vmlinuz ro
title Windows
rootnoverify (hd0,1)
makeactive
chainloader +1
<</LISTING>>

SPLASHIMAGE


GRUB zamiast standardowego menu pozwala na wyświetlenie tzw. splashimage, czyli obrazka w rozdzielczości 640x480 w 14 kolorach. Sprawdźmy, czy nasza wersja posiada obsługę splashimage:

Pomysł przeszukiwania stage2 zaczerpnięty ze skryptu Luisa Rodrigueza.

# grep -iaq splashimage /boot/grub/stage2 && echo OK

Powinno wyświetlić się OK. Zwykłą grafikę jpg można przekonwertować do wymaganej postaci łatwo dzięki

ImageMagick:

$ convert obrazek.jpg -resize 640x480 -colors 14 obrazek.xpm
Sposób ten może jednak dawać niezadowalające rezultaty (szczególnie, jeżeli chodzi o kolory). Wtedy zaleca się użycie programu gimp (menu Obraz->tryb->indeksowany, opcja wygenerowana optymalna paleta, ustawić kolory na 14, dithering kolorów i dithering przezroczystości wyłączone). Teraz kompresujemy programem gzip i umieszczamy we właściwym katalogu:
$ gzip obrazek.xpm
# cp obrazek.xpm.gz /boot/grub/
Dodajemy odpowiedni wpis do menu.lst (sekcja globalna):
splashimage=(hd0,0)/grub/obrazek.xpm.gz
Mamy do dyspozycji jeszcze dwie dodatkowe opcje: ustawienie koloru napisów (foreground) i cienia (background).

TRYB INTERAKTYWNY


Większość opisanych słów kluczowych pliku konfiguracyjnego może być zastosowana w trybie interaktywnym GRUB-a. Standardowo po załadowaniu programu rozruchowego wyświetla się menu (chyba, że zostało schowane opcją hiddenmenu lub wystąpił błąd). Dowolny klawisz przerwie odliczanie czasu przed uruchomieniem domyślnego wpisu (opcja timeout). Strzałkami góra-dół wskazujemy kolejne wpisy, naciśnięcie enter powoduje uruchomienie, klawiszem 'e' przejdziemy do trybu edycji. W trybie tym możemy poprawić ustawienia zdefiniowane w pliku menu.lst. Pełną interaktywność uzyskujemy naciskając 'c'.

Posługując się znanymi już opcjami uruchamiamy jądro:

<<LISTING lang=C++ posx=14;0l posy=b fit=W grow=H>>
Listing 8. Uruchamianie jądra
grub> root (hd0,0)
 Filesystem type is ext2fs, partition type 0x83
grub> kernel /vmlinuz root=/dev/hda1 ro
   [Linux-bzImage, setup=0x1400, size=0x10a952]
grub> initrd /initrd.img
   [Linux-initrd @ 0xbac2000, 0x41e000 bytes]
grub> boot
<</LISTING>>

BŁĘDY


Co robić, gdy system przestał się uruchamiać? Posiadacze GRUB-a są często w lepszej sytuacji – gdyż bywa, że sam program rozruchowy ładuje się prawidłowo; z jego poziomu zaś możemy sterować uruchomieniem systemu operacyjnego. Najlepiej jednak zawsze posiadać dyskietkę rozruchową (uruchomieniową) z GRUB-em, wykonaną w opisany wcześniej sposób. W sytuacjach awaryjnych zaoszczędzi nam nerwów. Błędy zgłaszane przez GRUB możemy podzielić na trzy grupy – błędy stage1, stage1.5 oraz stage2.

Po ukazaniu się błędu stage1 pozostaje nam tylko jedno – Ctrl+Alt+Del. Program rozruchowy nie załadował najbardziej podstawowej składowej. Sprawdzamy, czy problem nie jest natury sprzętowej (odpowiednio podłączone taśmy dysków, dobre ustawienia w BIOS-ie) i restarujemy. Jeżeli nie pomoże, to musimy użyć dyskietki ratunkowej lub płyty live-cd.

Komunikaty błędów tego etapu:


Hard Disk Error – podczas wczytywania Stage1.5 lub Stage2 nie powiodła się próba pobrania podstawowych informacji o dysku – wielkości i geometrii;
Floppy Disk Error – błąd określenia wielkości i geometrii dyskietki, także podczas odczytu Stage1.5 lub Stage2;
Read Error – błąd odczytu Stage1.5 lub Stage2;
Geom Error – błąd geometrii – oznacza, że Stage1.5 lub Stage2 leży poza obszarem dysku, z którego może czytać bezpośrednio BIOS; rozwiązaniem może być np. ustawienie LBA w BIOS-ie lub przeniesienie partycji /boot na początek dysku.
Lista błędów Stage1.5 i Stage2 jest wspólna. Tutaj sytuacja wygląda odrobinę lepiej, gdyż mamy bardziej szczegółowe informacje o przyczynie błędu. Czasem jest możliwa dalsza praca GRUB-a.

Komunikaty i ich znaczenie:

- Filename must be either an absolute filename or blocklist – podana nazwa pliku zawiera błąd składniowy;
- Bad file or directory type – zamiast regularnego pliku wskazaliśmy katalog, link symboliczny, nazwany potok, itp.;
- Bad or corrupt data while decompessing file – błąd podczas dekompresji pliku, prawdopodobnie jest uszkodzony;
- Bad or incomptabile header in compressed file – błąd w nagłówku skompresowanego pliku; plik uszkodzony lub nieobsługiwany format kompresji;
- Partition table invalid or corrupt – błąd integralności tablicy partycji;
- Mismatched or corrupt version stage1/stage2 – wyłącznie podczas procesu instalacji, informuje o nieodpowiednich obrazach stage1 i stage2; w rzeczywistości nie jest w stanie stwierdzić uszkodzenia, lecz co najwyżej niezgodność wersji;
- Loading below 1MB is not supported – najniższy adres w jądrze jest poniżej granicy 1MB;
- Kernel must be loaded before booting – zanim polecisz uruchomić sekwencję rozruchową (komenda boot) musisz wskazać jądro (komenda kernel);
- Unkown boot failure – podczas próby rozruchu (boot) wystąpił błąd o nieznanej przyczynie;
- Unsupported Multiboot features requested – pojawia się, gdy nagłówek Multiboot wczytywanego jądra wymaga pewnych rozwiązań, których GRUB jeszcze nie obsługuje;
- Unrecognized device string – błąd składni w nazwie urządzenia;
- Invalid device requested – składnia nazwy urządzenia w porządku, jednak wystąpił inny błąd, np. urządzenie nie istnieje;
- Invalid or unsupported executable format – podany plik (polecenie kernel) jest w nieobsługiwanym formacie; powinien być typu Multiboot lub być jądrem Linux zImage, Linux bzImge, FreeBSD lub NetBSD;
- Filesystem comptability error, can't read whole file – GRUB implementuje niektóre systemy plików tak, że występuje ograniczenie wielkości pliku; właśnie próbujesz odczytać z takiego systemu plik większy niż ograniczenie;
- File not found – najczęstszy wśród początkujących błąd – określone urządzenie i partycja są poprawne, jednak plik nie istnieje; najczęściej zła nazwa po kernel, initrd lub złe ścieżki, ewentualnie źle wskazana partycja, do której ścieżki się odnoszą (polecenie root);
- Inconsistent filesystem structure – struktura systemu plików okazuje się inna, niż się spodziewano – zwykle oznacza uszkodzenie danego systemu plików;
- Cannot mount selected partition – wskazana partycja istnieje, lecz GRUB nie potrafi obsłużyć znajdującego się na niej systemu plików – także częsty błąd, zwykle oznacza źle wskazaną partycję główną (polecenie root i rootnoverify); do partycji z np. NTFS zamiast root warto używać rootnoverify;
- Selected cylinder exceeds maximum supported by BIOS – adres liniowy odczytywanego bloku wypada poza obszarem obsługiwanym przez BIOS; zwykle pomaga utworzenie partycji /boot na początku dysku, a przynajmniej poniżej jego ósmego gigabajta;
- Linux kernel must be loaded before initrd – użyto komendy initrd przed wskazaniem jądra za pomocą polecenia kernel;
- Multiboot kernel must be loaded before modules – użyto komendy modules przed wczytaniem jądra Multiboot;
- Selected disk does not exist – podano nazwę urządzenia, jego części (np. partycji) lub pliku, która odnosi się do urządzenia w danej chwili nierozpoznawalnego przez BIOS (np. urządzenie fizycznie nie istnieje);
- No such partition – podana nazwa odnosi się do nieistniejącej na określonym dysku partycji;
- Error while parsing number – GRUB spodziewał się liczby, dostał inne dane;
- Attempt to acces block outside partition – liniowy adres odnosi się do bloku, który wypada poza partycją – możliwe przyczyny to uszkodzenie systemu plików lub błąd w implementacji tego systemu w GRUB-ie;
- Disk read error – błąd odczytu z dysku;
- Too many symbolic links – obecnie obsługiwanych jest pięć głębokości zapętlenia w linkach symbolicznych; została przekroczona ta liczba;
- Unrecognized command – podana komenda nie istnieje, przyczyną może być np. literówka w pliku konfiguracyjnym;
- Selected item cannot fit into memory – dane nie mieszczą się w pamięci (np. plik jądra, initrd);
- Disk write error – błąd zapisu na dysku, występuje właściwie wyłącznie podczas instalacji GRUB-a (poleceniem setup, install) lub uaktywnienia partycji (makeactive);
- Invalid argument – komenda wymaga innego argumentu, niż podano;
- File is not sector aligned – plik wskazany przez zapis blokowy (np. w poleceniu install) nie jest w jednym kawałku; jeżeli używasz systemu plików reiserfs powinieneś montować go z opcją notail (mount -o notail);
- Must be authenticated – nieuprawniony dostęp do zablokowanego (opcją lock) wpisu; musisz podać poprawne hasło;
- Serial device not configured – występuje podczas próby zmiany terminala na szeregowy przed inicjalizacją urządzenia szeregowego;
- No spare sectors on the disk – brak wolnej przestrzeni na dysku; np. stage1.5 jest domyślnie zapisywany w nieużywanych standardowo sektorach bezpośrednio za MBR, jednak w egzotycznych sytuacjach może się zdarzyć, że ten obszar jest przez coś wykorzystywany.

PODSUMOWANIE


GRUB posiada jeszcze więcej możliwości, np. uruchamianie komputera przez sieć, czy wykorzystanie terminala szeregowego. Wszystkie są wzorowo udokumentowane. Nawet jeżeli jesteśmy zadowoleni z obecnego systemu, warto zapoznać się z tym rozbudowanym programem rozruchowym. Poświęcony czas na naukę konsoli GRUB-a zaprocentuje w sytuacjach awaryjnych. Wówczas poradzimy sobie dalece łatwiej, niż użytkownicy LILO, a dzięki splashimage, nasze menu wyboru systemów będzie bardziej reprezentacyjne i o wiele ładniejsze.
---
Autor: Adam Becmer
 
« poprzedni artykuł   następny artykuł »

Konkursy

breakdance by małolat dzicko tanczy braekdance

Dzieciak będzie kiedyś niezły
Wpadka Van Damme'a Erekcja Van Damme'a

Czyżby nie wytrzymał napięcia ?

Uzależniona od seksu mandaryna & policjant

Oo lizaczek ... :P
Hackowanie na ekranie haker

Gorion - włamuje się do bazy danych Policji i NFZ
Problem bezpieczeństwa w sieci Konferencja google na temat bezpieczeństwa

Konferencja Google na temat bezpieczeństwa w sieci
Tańczący niedźwiedź miś

bansuj misiu, bansuj
umbro umbro

Chciał się poczuć jak footbolista.
Nokia Nokia - will you marry me

Ciekawa reklama Noki
Jak wytłumaczyć dziecku.. skąd się wziełam

... może lepiej by to zrobiła mamusia :P
Kobieta i guma Kobieta i gima
 
Zmiana koła w samochodzie może być niebezpieczna

Reklama wódki

W rosyjskich szpitalach opieka nad pacjentem jest naj ...
Citreon Transformer Citrone transformer

Parodia reklamy Citroena
Sex tutorial sex tutorial

film instruktażowy jak używać prezerwatywy


Polonez z FSO Polonez

Poloneza za 1.4 miliona
NIEMOŻLIWE   :P
Erotyczny football sexy footbal

Na taki mecz wybrał by się każdy facet


 


POLECAMY:

Pobierz przeglądarkę: Aktualną wersję Java Inne przydatne programy:

opera
 
GetJava Download Button

PRZYJACIELE:

Bo nie jesteśmy sami w internecie...


Wspieramy i korzystamy
  |   redakcja   |   partnerzy   |   polityka prywatności   |   zasady korzystania   |   reklama   |   pomoc   |  
© Dzień e-mail - Internauty 2005-08.