Professional Documents
Culture Documents
T
Miesięcznik Linux+ (12 numerów w roku) ak mógłby stwier- policji) ze względu na reputację poszkodo-
jest wydawany przez
dzić przypadko- wanego. W takim świecie żyjemy.
Software-Wydawnictwo Sp. z o. o.
wy internauta, gdy- Czy możemy coś poradzić na to?
Redaktor naczelny: Krzysztof Krawczyk, bym zapytał go, czy Oczywiście, dlatego ten numer Linux+ jest
krzysiek@lpmagazine.org boi się włamania do skoncentrowany na zagadnieniach bezpie-
Redaktorzy: swojego komputera. czeństwa. Piotrek Machej w swoich arty-
Piotr Truszkowski, Marek Bettman, Michał Niwicki
Zbyt pewny siebie? kułach stara się udzielić kilku dobrych rad.
Kierownik produkcji: Marta Kurpiewska,
marta@software.com.pl Zdecydowanie. Bardzo Zachęcam do zastosowania się do nich.
Opracowanie CD/DVD: Krzysztof Krawczyk, prosto włamać się do Raz wprowadzone w życie mają szansę
Piotr Truszkowski kogoś, kto jest na stałe podłączony do stać się zwyczajem.
Dział reklamy: Łukasz Łukaszewicz, Sieci i nie dba o bezpieczeństwo swojego Na płytach DVD zamieściliśmy dwie
reklama@lpmagazine.org,
systemu. To tak, jakby nie zamykał drzwi najpopularniejsze europejskie dystrybucje
tel.: (22) 860 18 18
Prenumerata: Marzena Dmowska, do własnego mieszkania czy samochodu. Linuksa: Auroksa 10.1 (mocno poprawiony
pren@software.com.pl, Ilość błędów związanych z bezpie- względem poprzedniego wydania: gorąco
tel.: (22) 860 17 67 czeństwem, które są wykrywane każde- polecam, gdyż sam używam w pracy) oraz
Projekt graficzny okładki: go miesiąca, jest zatrważająca. Wystar- Mandrakelinuksa 10.1 (używam w domu).
Agnieszka Marchocka
czy zapoznać się bliżej z jednym z nich, Przy okazji pragnę zawiadomić, że po-
Projekt graficzny pisma: Marcin Ziółkowski,
marcin@software.com.pl poszukać eksploita lub napisać go samo- szukujemy autorów artykułów, więc zain-
Skład: Marcin Ziółkowski, dzielnie, a następnie znaleźć potencjalną teresowane osoby proszę o zgłoszenie się
marcin@software.com.pl ofiarę. Zdziwilibyście się, jak bardzo admi- do mnie pod adresem krzysiek@lpmaga-
nistratorzy serwerów internetowych zanie- zine.org.
Adres korespondencyjny: dbują swoje obowiązki – nie uaktualnia- Zachęcam do lektury tego numeru.
Software-Wydawnictwo Sp. z o. o., ją oprogramowania, nie przeglądają logów
00-190 Warszawa, systemowych i nie analizują własnych sys-
ul. Lewartowskiego 6
e-mail: redakcja@lpmagazine.org,
temów. Wiele z przestępstw internetowych Krzysztof Krawczyk
tel. (22) 860 18 18 nie jest upubliczniane (czytaj: zgłaszane Redaktor Naczelny Linux+
prenumeraty.
płyt CD/DVD
Wszystkie znaki firmowe zawarte w piśmie Piotr Truszkowski, Michał Niwicki
są własnością odpowiednich firm i zostały
użyte wyłącznie w celach informacyjnych. Aktualności:
Druk: Stella Maris 16 Newsy
Witold Kieraś
Redakcja używa systemu
automatycznego składu
18 Jądro Linux
debian
4 styczeń 2005
Spis treści
www.lpmagazine.org 5
aktualności
opis CD/DVD CD A / DVD B
8 styczeń 2005
aktualności
opis CD/DVD CD B / DVD B
10 styczeń 2005
opis DVD DVD A
N
a początku grudnia zakoń- Pierwsze wrażenie
czono prace związane z wy- Nieczęsto spotykamy się z sytuacją, w której
Wymagania systemowe:
Wymagania minimalne Auroksa 10.1dla
daniem nowej wersji Aurok- jakiś produkt zachwyca nas od samego
pracy w trybie tekstowym:
sa o nazwie kodowej początku. Tak właśnie jest z nowym Aurok-
Quicksilver. Jak się okazało, ta dystrybu- sem! Już na wstępie naszym oczom uka- • procesor zgodny z Pentium, zaleca-
cja, bazująca w dużym stopniu na Fedo- zuje się instalator komunikujący się z nami ny 200 MHz lub lepszy
rze, wyprzedziła ją pod wieloma wzglę- w dowolnym europejskim języku. Prosta • pamięć 64 MB
dami, stając się w coraz większym stop- procedura instalacyjna i równie łatwa kon-
Do pracy w trybie graficznym są potrzebne:
niu niezależnym produktem. Usunięto figuracja szybko pozwala nam rozpocząć
wiele błędów, wykorzystano nową wersję pracę z nowym systemem. • procesor: zalecany 400 MH
instalatora (Anaconda 10) oraz zaktuali- Standardowo, do dyspozycji mamy Pentium II lub lepszy
zowano lub dodano wiele nowych pakie- szereg aplikacji przydatnych do pracy • pamięć: minimum 128 MB,
tów. Część oprogramowania zastąpiono w biurze (OpenOffice.org, Evolution, prze- zalecane 256 MB
w pełni funkcjonalnymi odpowiednika- glądarka Firefox), liczne programy eduka-
Niezbędne wolne miejsce na dysku:
mi, bez ograniczeń patentowych narzu- cyjne (KmPilot, Kalzium) i rozrywkowe
canych w USA. Jednocześnie programiści (Ziemniaczany facet). Dodatkowo, w Auro- • instalacja minimalna: 1 GB
Auroksa dodali wiele skryptów ułatwia- ksie 10.1 znajdziemy wiele programów mul- • serwer: minimum 1.1 GB
jących instalację dodatkowych sterow- timedialnych, służących do słuchania i kom- • biuro, szkoła i dom: 3 GB
ników, których nie można było włączyć ponowania muzyki (GLAME, Audacity), • stacja robocza: 3,5 GB
do standardowej procedury instalacyjnej oglądania filmów (MPlayer, Xine) oraz • wszystkie pakiety: 8 GB
(NVidia, ATI). pracy z plikami graficznymi (GIMP). Miłym
Dodatkowo wymagane jest miejsce
W nowym Auroksie poprawiono zaskoczeniem jest łatwa instalacja dodatko-
na dane użytkownika.
także wszelkie błędy związane z prawi- wych programów i sterowników.
dłową detekcją sprzętu. Dzięki zastąpieniu
statycznego deva dynamicznym udevem Instalacja dodatkowych nie instalowanym środowiskiem graficz-
oraz dodaniem szeregu aplikacji, które pakietów nym jest X.org. Użytkownik ma także do
z nim współpracują (hotplug, hal, gamin Twórcy Auroksa postarali się o to, aby wyboru dwa popularne środowiska graficz-
oraz gnome-volume-manager), możliwe użytkownik systemu nie miał najmniej- ne: KDE 3.3.1 oraz GNOME 2.8.1. Dodatko-
jest automatyczne dodawanie i konfigura- szych kłopotów z instalacją sterowników wo, możliwe jest skorzystanie z lekkich
cja urządzeń, takich jak np. aparaty cyfro- kart graficznych (Nvidia, ATI), modemów, menedżerów okien typu FluxBox czy Win-
we czy zewnętrzne karty pamięci. obsługi partycji NTFS, czy uruchomieniem dowMaker. Do dyspozycji mamy również
Dużym atutem Auroksa jest łatwość aplikacji Flash i Java. Specjalnie przygo- pakiet biurowy OpenOffice.org 1.1.2 oraz
instalacji, konfiguracji oraz prostota obsłu- towane skrypty pozwolą jednym polece- program do poczty elektronicznej i zarzą-
gi systemu. W efekcie, osobom przyzwy- niem dodać najbardziej potrzebne biblio- dzania kalendarzem/kontaktami – Evolu-
czajonym do używania innych syste- teki i programy, dzięki czemu nawet osoby tion 2.0.2.
mów operacyjnych, migracja na Linuk- stawiające pierwsze kroki w Linuksie usły-
sa nie powinna sprawić trudności. Co szą z głośników dźwięk w formacie mp3 Podsumowanie
więcej, programistom udało się z suk- i obejrzą filmy avi. Jak cię widzą, tak cię piszą – brzmi popu-
cesem stworzyć platformę nadającą się larne powiedzenie. Koledzy z Auroksa
zarówno dla użytkowników stawiających Co jest w środku? przygotowali naprawdę ładną, łatwą, pro-
pierwsze kroki w świecie Linuksa, jak Dystrybucja Aurox Linux 10.1 pracuje pod fesjonalną i w pełni funkcjonalną dystrybu-
i dla ludzi, którzy tę fazę mają już za sobą kontrolą jądra w wersji 2.6.9-10. W związ- cję Linuksa. Polecamy ją wszystkim Czytel-
– Aurox 10.1 to nie tylko programy biuro- ku ze zmianami licencyjnymi XFree86, nikom Linux+. Na płycie DVD znajduje się
we. ale także szereg aplikacji sieciowych wiele dystrybucji nie chce dołączać naj- pełna wersja dystrybucji Linuksa, pakiety
i narzędziowych. nowszych wersji tego serwera, a domyśl- dodatkowe oraz źródła.
12 styczeń 2005
aktualności
opis DVD DVD B
Linux+ Live
Mandrakelinux 10.1 Official
Najpopularniejsza dystrybucja
Linuksa na świecie, szczególnym
uznaniem ciesząca się wśród
L inux+ Live to dystrybucja Linuksa zna-
na Czytelnikom Linux+DVD, urucha-
miana z płyty DVD i nie wymagająca in-
początkujących użytkowników stalacji na dysku twardym. W tym miesiącu
Linuksa. Aby zainstalować
Mandrakelinux 10.1 Official, przekazujemy w Wasze ręce garść progra-
uruchom komputer z płytki mów związanych z bezpieczeństwem sieci:
DVD B, wpisz linux i naciśnij [Enter].
Jeśli podczas – Nmap – popularny skaner portów,
instalacji dodatkowego
oprogramowania system poprosi dzięki któremu wykryjecie słabe punk-
Cię o pierwszą, drugą bądź ty serwerów;
trzecią płytę CD, nie przejmuj – Ettercap – bardzo rozbudowany sniffer, Linux+ Live po uruchomieniu
się – wystarczy nasza płytka DVD, czyli podsłuchiwacz danych krążących
na której zawarte są dane wszystkich
trzech płytek instalacyjnych. Dobrej w zamkniętych sieciach LAN (posia- nia jest następująca: z każdym wysła-
zabawy! da dużą liczbę różnych wtyczek, które nym pakietem związany jest pewien
http://www.mandrakelinux.com/ czynią z niego prawdziwie szpiegow- licznik zawierający ,,czas życia''; jest on
DD_Rescue 1.10 ską maszynę); zmniejszany o jeden podczas przejścia
Program służący do odzyskiwania – Ethereal – kolejny sniffer, ale w prze- przez każdy router; gdy osiągnie zero,
danych. ciwieństwie do wymienionego przed pakiet jest zwracany do nadawcy jako
http://www.garloff.de/kurt/linux/
ddrescue/
chwilą Ettercapa, działa w trybie gra- ,,przeterminowany'').
ficznym i posiada mniejszą liczbę wty-
G4L 0.14
czek (idealny dla początkujących); Patrząc od strony technicznej, Linux+ Live
Ghost For Linux, czyli klon
znanego posiadaczom Windows – Airsnort – jeszcze jeden sniffer, ale jest oparty o jądro 2.6.7 i KDE 3.2.3. Dzię-
programu Norton Ghost. tym razem zupełnie inny od wymie- ki temu, wymienione wcześniej oprogra-
Dzięki niemu zrobisz nionych wcześniej, gdyż działa w za- mowanie wykorzystają również mniej za-
w łatwy sposób kopię swojej partycji.
mkniętych sieciach WLAN; awansowani użytkownicy.
http://freshmeat.net/projects/g4l/
– Ping – program wysyłający pakiet in- Pamiętajcie o jednym – jeśli chcecie
Freerails 20041011 formacji i żądający odesłania go do wykorzystać Ettercapa, Ethereala czy Air-
Klon kultowej gry Railroad.
Budujemy własną kolej. wysyłającego (pozwala zbadać istnie- snorta, spytajcie najpierw o zgodę admini-
http://freerails.sourceforge.net/ nie połączenia między komputerami, stratorów Waszej sieci. Podsłuchiwanie jest
drogę między nimi, czas potrzebny na nielegalne. Redakcja nie odpowiada za ja-
Aktualizacje
Aktualizacje dla systemu przejście pakietu oraz sprawdzać, czy kiekolwiek szkody wyrządzone przez wy-
Mandrakelinux 10.1. dany komputer pracuje w sieci); mienione oprogramowanie. Życzymy do-
http://www.mandrakelinux.com/ – Traceroute – program posiadający brej, a przede wszystkim rozważnej za-
WINE 20041019 funkcje podobne do tych oferowanych bawy!
Środowisko API Win32 przez program Ping (idea jego działa- http://live.lpmagazine.org/
na Linuksie.
http://www.winehq.org/
RIP 11.4 Damn Small Linux 0.8.3
System ratunkowy, uruchamiany
z płyty, zbliżony do System Rescue Bootowalna dystrybucja Linuksa, miesz-
CD. Zawiera oprogramowanie cząca się na płytce o wielkości karty kre-
przydatne każdemu posiadaczowi dytowej, zawierająca środowisko graficz-
komputera. ne i wiele przydatnych aplikacji? Cze-
Ballsmacker 1.0.0 mu nie. Z przyjemnością przedstawiam
Wirtualny bilard w środowisku 3D. Damn Small Linux – jedną z najmniej-
http://ballsmacker.sf.net/
szych dystrybucji Linuksa. Aż dziw bie-
Q DVD-Author 0.0.8 rze, jak wiele można zmieścić na prze-
Zamierzasz uwiecznić jakieś
strzeni 50 MB. Znajdziecie tutaj odtwa-
wydarzenie w postaci filmu na płycie
DVD? rzacz multimedialny XMMS, klienta pocz-
Dzięki Q DVD-Author uzyska on ty elektronicznej, klienta FTP, przeglądar- Kieszonkowy Linux
eleganckie menu. kę internetową, arkusz kalkulacyjny, edy-
http://qdvdauthor.sourceforge.net/
tor tekstu, komunikator internetowy oraz sposób na to, aby mieć swój ulubiony sys-
GIMP 2.2-pre2 menedżera plików. Jeśli dodamy do tego tem zawsze przy sobie. Nagrany na spe-
Najnowsza wersja najpopularniejszego możliwość instalacji na dysku twardym cjalnie przygotowanej płytce, zmieści się
programu graficznego w świecie
Open Source.
i urządzeniu PenDrive, wychodzi nam do portfela czy kieszeni. Rewelacja. Sys-
http://www.gimp.org/ obraz dystrybucji idealnej dla słabszych tem został umieszczony na płycie w for-
komputerów, wyposażonych w proceso- mie obrazu ISO.
ry 486 i wczesne Pentium. To wspaniały http://www.damnsmalllinux.org/
14 styczeń 2005
aktualności
aktualności news
News 3 x Novell
OpenBSD 3.6
Oczekiwana wersja 3.6 systemu
OpenBSD w końcu ujrzała światło
O statnio często, w różnych kontekstach,
wspomina się o firmie Novell, któ-
ra w stosunkowo niedługim czasie, dzięki
dzienne. Główne nowości w stosunku
do poprzedniej wersji to wsparcie swojej zdecydowanej strategii na rynku IT,
dla nowej platformy sprzętowej stała się linuksowym potentatem.
luna88k, obsługa wielu procesorów na Nic dziwnego, że to właśnie Novell po-
platformach i386 i amd64, zwiększona czuł się w obowiązku odeprzeć zarzuty
wydajność i funkcjonalność NFS oraz
zwiększona funkcjonalność Border wystosowane przez Microsoft przeciwko Li-
Gateway Protocol Daemon. nuksowi w kampanii Get the Facts (Poznaj
http://www.openbsd.org/36.html fakty – przechrzczonej szybko przez śro- Novell na swojej stronie internetowej
Bristol na Open Source? dowisko Open Source na Get the FUD, od prostuje “fakty”
Władze miejskie Bristolu planują Fear, Uncertainty, Doubt, czyli Strach, Nie-
wyposażyć 5000 komputerów pewność i Zwątpienie). Specjalnie stworzo- dem SUSE wydaje się być całkiem dobrą al-
w oprogramowanie Open Source.
na w tym celu strona już w pierwszych sło- ternatywą.
Ostateczne decyzje zostaną pojęte
dopiero po debacie na posiedzeniu rady wach nie pozostawia wątpliwości co do te- Kilka dni po premierze strony interneto-
miasta. Zmiany miałyby objąć 5000 go, że Novell nie ma zamiaru łatwo odda- wej odpierającej zarzuty Microsoftu, w ser-
komputerów, na których pojawiłby się wać pola: W ostatnim czasie opublikowano wisach linuksowych znów pojawiła się na-
zintegrowany pakiet StarOffice 7 firmy
opinie podważające przydatność systemu zwa firmy Novell. Niejakim zaskoczeniem
Sun Microsystems, zamiast dotychczas
używanych programów Corel Word Linux do zastosowań w przedsiębiorstwach. dla wielu była informacja o odejściu jedne-
Perfect, Lotus 1-2-3 oraz Microsoft Office. Informacje zebrane w tym miejscu pomogą go z jej głównych menedżerów, Chrisa Sto-
Zgodnie z wyliczeniami urzędników, lepiej zrozumieć motywację, jaka stoi za ty- ne'a, który, jak mówi, postanowił poświęcić
przejście na oprogramowanie Open
mi opiniami, i właściwie ocenić rzeczywi- się teraz innym wyzwaniom zawodowym.
Source pozwoliłoby zaoszczędzić ponad
milion funtów w ciągu najbliższych stą wartość Linuksa dla sieci korporacyjnej. Chris był głównym autorem strategii linuk-
pięciu lat. Zaraz po tym autorzy przechodzą do rze- sowej Novella – to głównie dzięki jego sta-
http://www.computerweekly.com/ czy – w pięciu kolejnych rozdziałach, za- raniom i pracy Novell przejął najpierw fir-
articles/article.asp?liArticleID=134508&
tytułowanych kolejno: Dlaczego lepiej wy- mę Ximian, producenta oprogramowania
liArticleTypeID=1&liCategoryID=6&liC
hannelID=1&liFlavourID=1&sSearch= brać Linuksa, a nie Windows, O czym Mi- Open Source, a następnie SUSE, producen-
&nPage=1 crosoft nie mówi, Nadeszła pora na Linuk- ta znanej komercyjnej dystrybucji Linuksa.
Koders.com sa, Chodzi o swobodę wyboru oraz Dlacze- To właśnie za kadencji Stone'a Novell stał
Pod adresem Koders.com można znaleźć go jeśli Linux, to Novell?, punkt po punk- się potentatem na rynku oprogramowania
nowy projekt będący wyszukiwarką cie podważają argumentację firmy z Red- Open Source, wykorzystując pewne nie-
źródeł oprogramowania Open Source.
mond, zawartą w jej (nie)sławnej kampanii zdecydowanie ze strony konkurencji, głów-
Ma ona ułatwić pracę programistom,
którzy będą mogli porównać, jak dany informacyjnej. Novell przekonuje, że Linux, nie Sun Microsystems. Dzięki swojej platfor-
problem, który napotkali w swojej to nie tylko niskie koszty, ale również bez- mie opartej na SUSE i Ximianie, Novell rzu-
pracy, rozwiązali inni. Oprócz słów pieczeństwo i przyszłość. Firma nie omiesz- cił rękawicę Microsoftowi na rynku korpo-
kluczowych, kryterium wyszukiwania
kała przy tym wspomnieć o swoim progra- racyjnym. Nie wydaje się, aby odejście Sto-
może być język programowania
i licencja, na której kod jest dostępny. mie zabezpieczenia klientów przed roszcze- ne'a miało wpłynąć na zmianę strategii fir-
Serwis Newsforge przeprowadził niami patentowymi. Oczywiście, linuksową my – Novell w każdym razie zdecydowanie
wywiad z twórcą tego projektu, alternatywą dla platformy Microsoftu jest zapowiada kontynuację.
Darrenem Rushem
w tym dokumencie niemal zawsze komer- Trzecia informacja dotyczącą Novella
http://www.newsforge.com/
article.pl?sid=04/11/01/1927212 cyjna dystrybucja SUSE, przejęta niedawno jest chyba najbardziej interesująca dla samej
przez Novella. Trudno się temu dziwić – za- firmy. Na drugiej dorocznej imprezie Tech
Novell Linux Desktop
Novell ogłosił niedawno, że jego nowy równo kampania Microsoftu, jak i kontratak Innovators czasopismo VARBusiness przy-
produkt, oparty na SUSE 9 Novell Novella, są skierowane przede wszystkim znało Novellowi nagrodę "Największy in-
Linux Desktop 9, jest już dostępny. Jest do klienta korporacyjnego, który potrzebu- nowator w dziedzinie sytemu Linux w ro-
to system przeznaczony dla klienta je rozwiązań sprawdzonych w warunkach ku 2004" (2004 Top Innovator Award for Li-
korporacyjnego i dostępny jest wraz
ze wsparciem technicznym, a także produkcyjnych oraz wsparcia techniczne- nux) za jej system SUSE LINUX Enterpri-
szkoleniami dla pracowników. Dostępny go ze strony producenta. Pod tym wzglę- se Server 9. Pakiet SUSE LINUX Enterprise
ma być w sieci sprzedaży partnerów Server 9 znalazł się wśród 460 produktów
Novella. Jego sugerowana cena to $50 zgłoszonych do konkursu przez 50 dostaw-
wraz z rocznymi uaktualnieniami
i poprawkami. Za darmo dostępna jest ców produktów informatycznych dla przed-
trzydziestodniowa wersja próbna siębiorstw.
(trzy obrazy ISO). Oby więc Novell nie zwalniał tempa
http://www.novell.com/products/desktop/ – dla dobra Linuksa...
eval.html
Między innymi dzięki przejęciu firmy
SUSE, Novell stał się linuksowym http://www.novell.com/linux/truth/
potentatem
http://7thguard.net/news.php?id=4198
16 styczeń 2005
news@lpmagazine.org dział prowadzi: Witold Kieraś
cych na platformie linuksowej. W zasa- by zbyt wielu kupców. Jej zdaniem Linux Przeciwko patentom w Unii
dzie jedynym rodzynkiem jest Adobe Re- to bardzo ciekawy rynek, ale na razie je- Georg Greve, prezydent Free
Software Foundation Europe,
ader, ale i tutaj nie jest najlepiej – wersja dynie dla branży programistycznej. Klien- wystosował list otwarty do
dla Linuksa jest mocno spóźniona w sto- tów zainteresowanych tworzeniem grafiki desygnowanego niedawno nowego
sunku do wersji dla Windows i Mac OS X. pod Linuksem jest zbyt mało, aby firmie przewodniczącego Komisji
Być może w niedługiej przyszłości to się opłacało się tworzyć wersję dużych apli- Europejskiej José Manuel'a Barroso.
Powołuje się on na badania
zmieni. Firma Adobe Systems przystąpi- kacji na tę platformę. Dodatkowo, konku- przeprowadzone przez poważne
ła do konsorcjum przemysłowego Open rencja ze strony produktów darmowych, firmy, jak PricewaterhouseCoopers
Source Development Labs, które zatrud- jak choćby GIMP, również, zdaniem Dez- oraz Deutsche Bank, dotyczące
nia m.in. Linusa Torvaldsa. Adobe, zgod- iel, zniechęca do takich posunięć. szkodliwego wpływu na gospodarkę
jakie niesie za sobą przegłosowanie
nie z informacjami, jakie zdobyli dzien- Firma Adobe Systems jest bardzo ta- dyrektywy o możliwości
nikarze serwisu CNET News.com, działa jemnicza, gdyż oficjalnie potwierdzi- patentowania oprogramowania,
w konsorcjum w grupie roboczej zajmują- ła jedynie przystąpienie do konsorcjum oraz zachęca do sprzeciwu wobec
cej się Linuksem w zastosowaniach biur- OSDL. Nie ulega jednak wątpliwości, że wprowadzenia patentów na
"wynalazki realizowane za pomocą
kowych. zaczęła się interesować Linuksem i chce komputera".
Firma zaprzecza jakoby chciała stwo- stworzyć dla siebie strategię postępowa- http://fsfeurope.org/projects/swpat/
rzyć linuksowe wersje swoich flagowych nia na tym rynku. Z pewnością najbliż- letter-20041101.en.html
produktów, takich jak Photoshop czy Illu- sze tygodnie przyniosą nam ciekawe in- http://7thguard.net/
news.php?id=4194
strator, a jedynie zapowiada uaktualnienie formacje na ten temat.
Adobe Readera do wersji 6.0, czyli takiej
jak dla Windows i Mac OS X. Pam Deziel, http://www.linux.pl/?id=news&show=1715
www.lpmagazine.org 17
aktualności
aktualności jądro linux
18 styczeń 2005
kernel@lpmagazine.org dział prowadzi: Tomasz Torcz
www.lpmagazine.org 19
aktualności
aktualności debian
News SkoleLinux
Debian Stable zaktualizowany
Joey Schulze ogłosił kolejną, trzecią już
aktualizację gałęzi stabilnej Debiana.
W zamieszaniu związanym z po-
jawieniem się rewolucyjnego
Ubuntu niektórym mogło umknąć,
Od wydania ostatniej aktualizacji
że jest to jedna z wielu dystrybucji
w listopadzie 2003 roku zebrało się
sporo poprawek bezpieczeństwa. bazujących na Debianie. Dokładnie,
Obecna aktualizacja, o nazwie 3.0r3, jedną ze 115 pochodnych Debiana.
poprawia 212 błędów bezpieczeństwa Wśród nich znajduje się także Skole-
w pakietach. Nowe obrazy
Linux. Niedawno ukazała się jego no-
instalacyjnych płyt Debiana zawierają
już wszystkie poprawki. wa wersja.
http://lists.debian.org/debian- SkoleLinux jest wyspecjalizowa- Administracja SkoleLinuksem poprzez
announce/debian-announce-2004/ Webmina
ną dystrybucją, powstającą głównie
msg00000.html
w Norwegii, przeznaczoną przede
http://www.debian.org/News/2004/
20041026 wszystkim do użytku w szkołach. mowego, dodając wiele programów
W chwili obecnej zespół pracujący nad przydatnych uczniom.
Problematyczna wersja
shareware XChat SkoleLinux ściśle współpracuje z de-
Giacomo Catenazzi zauważył, że weloperami Debiana skupionymi wo- Ciekawym i praktycznym rozwiąza-
na stronie WWW aplikacji XChat kół projektu debian-edu, więc można niem jest zastosowanie pośrednich
dostępna jest binarna wersja
praktycznie postawić znak równości serwerów terminali (stacji roboczych),
shareware programu dla systemu
Windows. Aby odblokować wersję między tymi dwiema odmianami. umożliwiających odciążenie głównego
shareware, należy uiścić odpowiednią SkoleLinux jest mieszaniną pakie- serwera w przypadku większych sie-
opłatę, ale kod źródłowy, wydany tów pochodzących z Debiana Woody, ci. Dla średniej wielkości szkół (dys-
na licencji GPL, nie zawiera
Sarge, wydania niestabilnego, a nawet ponujących 3 pracowniami po 15 sta-
kodu odblokowującego. Istnieje
prawdopodobieństwo, że może to być z serwisu backports.org (m.in. Sam- cji) oznacza to w praktyce konieczność
źródłem kłopotów dla Debiana. ba). Zastosowanie wielu źródeł pakie- posiadania jedynie czterech wydaj-
http://lists.debian.org/debian-legal/ tów jest częstym zabiegiem w wielu po- nych komputerów. Mocniejsze kompu-
2004/10/msg00357.html
chodnych Debiana, gdyż pozwala na tery mogą jednocześnie pełnić rolę sta-
http://lists.debian.org/debian-legal/
2004/10/msg00373.html korzystanie z funkcji, które są nieobec- cji dla nauczycieli, przy czym termina-
ne w wydaniu stabilnym. Dystrybucja le korzystające z ich zasobów nadal do
Spowolnienie list
dyskusyjnych Debiana
została przystosowana do pracy w śro- autentykacji i składowania plików wy-
Pascal Hakim ogłosił, że listy dowisku sieciowym oraz zawiera scen- korzystują serwer centralny.
dyskusyjne Debiana cierpią tralizowane narzędzia autoryzacji użyt- Instalacja, opierająca się na no-
z powodu wielu serwerów poczty, kowników, składowania plików i admi- wym instalatorze z Sarge, sprowadza
które nie przetwarzają wiadomości
wystarczająco szybko. Sytuację
nistracji. Zarządzanie systemem odby- się do odpowiedzi na kilka nieskom-
pogarszają dodatkowo wiadomości wa się z poziomu interfejsu WWW (wy- plikowanych pytań oraz wyboru pro-
wysyłane na listę ogłoszeniową korzystano w tym celu zmodyfikowa- filu. W każdym przypadku, użytkow-
(debian-announce), która posiada ny pakiet Webmin). Współpraca końcó- nik po instalacji dysponuje systemem
ponad 28 tysięcy subskrybentów.
Pascal ogłosił również, że grupa
wek sieciowych odbywa się przy po- praktycznie gotowym do użycia. Więk-
administratorów list wzbogaciła się mocy narzędzia LTSP, zdobywające- szość czynności administracyjnych od-
o osobę Corda Beermanna. go coraz większą popularność, co po- bywa się z wykorzystaniem specjalnie
http://www.redellipse.net/stuff/ zwala na wykorzystanie starych kom- dostosowanego Webmina. Aktualizacja
Debian/Lists/debian-announce_and_
thundering_herds.story
puterów, będących często na wyposa- oprogramowania z zastosowaniem me-
http://lists.debian.org/debian- żeniu szkół. chanizmów Debiana (apt) jest również
announce/debian-announce-2004/ SkoleLinux posiada cztery profile dziecinnie łatwa.
msg00000.html możliwe do zainstalowania: SkoleLinux ze względu na swoją
Aktualizacja Sarge elastyczność, niskie koszty wdrożenia
Frank Lichtenheld ogłosił – główny serwer – działają na nim oraz łatwość administracji, nawet dla
rezultaty swojej pierwszej aktualizacji
usługi autentykacji, DHCP, DNS itp. początkujących użytkowników, wyda-
z Woodiego do Sarge na platformie
i386, a Andreas Barth podsumował oraz są składowane pliki użytkow- je się być idealną alternatywą dla go-
problemy dla wszystkich platform. ników; towych rozwiązań opartych o produk-
Niezgodność pomiędzy glibc – klient – terminal, korzystający z za- ty zamknięte i drogie, takich jak in-
i jądrem może sprawiać problemy
sobów innego komputera do uru- tensywnie promowany Small Business
również na architekturach hppa,
arm, sparc i mips(el). W przypadku chamiania swoich procesów; Server Microsoftu.
części z nich wystarczy najpierw – stacja robocza – umożliwia normal-
zaktualizować jądro. ną pracę i służy jednocześnie za http://www.skolelinux.org/
http://lists.debian.org/debian-kernel/
serwer aplikacji dla kilku klientów;
2004/10/msg00430.html
– komputer domowy – instaluje sys-
tem przeznaczony do użytku do-
20 styczeń 2005
debian@lpmagazine.org dział prowadzi: T. Napierała, B. Feński
Z
Aktualizacje Debiana
eszłomiesięczne wydanie dystrybu- ro osób uważa, że testowe wydania Debia-
przez BitTorrent
cji Ubuntu, czyli młodszego brata De- na są i tak bardziej stabilne niż finalne in- Arnaud Kyheng uruchomił dla Apta
biana, rozwijanego przez firmę Canonical nych dystrybucji. Taki projekt już istnieje serwer proxy do sieci Bittorrent. Ze
Inc., doprowadziło do szeregu dyskusji na i nazywa się Debian Desktop Distribution. względów bezpieczeństwa, wykaz
pakietów oraz pliki .torrent będą
temat modelu rozwoju samego Debiana. Jest rozwijany w ramach projektu Debian
ściągane ze stałego serwera HTTP,
Nikt nie ma wątpliwości, że Ubuntu to i właściwie realizuje wizję Clemensa po- tak jak zazwyczaj dzieje się to
spory krok naprzód względem orygina- przez rozluźnienie wymagań dla pakie- w przypadku pakietu, ale same
łu i naturalnym wydaje się ciekawość de- tów przechodzących z dystrybucji niesta- pakiety będą pobierane przez protokół
Bittorent i przekazywane do Apta.
weloperów i zadawanie sobie pytania, jak bilnej oraz przez plany regularnych wy-
http://lists.debian.org/debian-devel/
to możliwe, że kilkudziesięciokrotnie mniej dań. 2004/10/msg01715.html
ludzi (aniżeli wolontariuszy Debiana) było Marco d'Itri dla odmiany zaproponował
Jądro 2.6.9 w Sarge?
w stanie poczynić takie postępy w tak krót- usunięcie dystrybucji stabilnej i pozostawie- Andres Solomon ogłosił,
kim czasie. nie wydawania jej zewnętrznym firmom lub że w repozytorium przygotował
Z pewnością fakt, iż Canonical Inc. za- innym ludziom, którym nie brakuje entuzja- wymagane standardowe debianowe
trudnia programistów rozwijających dystry- zmu i motywacji. Ten pomysł jednak szyb- łatki dla jądra 2.6.9. W odpowiedzi
Christoph Hellwig zasugerował, aby
bucję (często również deweloperów Debia- ko upadł, bo stabilna linia to coś z czego najpierw zająć się doprowadzeniem
na) na pełny etat, nie pozostał bez znacze- Debian jest znany i za co jest ceniony. wersji 2.6.8 do lepszego stanu
nia. To oczywiste, że nie każdy poświę- Ubuntu wspiera trzy architektury, pod- dla Sarge. Gdy ten etap zostanie
ca tyle samo czasu na pracę, co na hob- czas gdy Debian wspiera ich aż 10, a pro- ukończony, to rozpocznie się etap
pracy nad 2.6.9.
by. Ale czy to jedyny powód dla którego wadzi prace nad przynajmniej dwoma ko- http://lists.debian.org/debian-kernel/
Ubuntu tak prężnie się rozwija? Jak zauwa- lejnymi. Sporo komentarzy dotyczyło ak- 2004/10/msg00355.html
żył Jérôme Marant, deweloperzy Debiana tywności członków projektu. Debian ma Nowy Skolelinux
używają głównie dystrybucji niestabilnej, co prawda ponad 1300 wolontariuszy, Petter Reinholdtsen przedstawił nowy
a z tego powodu często nie wiedzą, jaki ale część z nich to martwe dusze, a jesz- obraz CD Skolelinux. Zawiera on
jest stan testowej. Deweloperzy Ubuntu na- cze większa część jest co prawda aktyw- ostatnio wprowadzone aktualizacje
bezpieczeństwa, nowsze jądro
tomiast korzystają z dystrybucji, która przy- na, ale w stopniu, który ma raczej niewiel- i trochę nowych tłumaczeń. Baza
gotowywana jest do wydania, a więc sa- ki wpływ na postępy zbliżające wszystkich rozpoznawanego sprzętu również
mi mają okazję przekonać się o jej błędach, do kolejnego wydania stabilnego. została zaktualizowana.
a tym samym szybciej je poprawić. Do jakich wniosków doprowadziła http://www.skolelinux.org/portal/
index_html
Z tej dyskusji powstało kilka różnych ta dyskusja? Do takich samych, jak każ-
koncepcji. Jedną z nich było porzucenie da tak rozbudowana dysputa od ostat- Duży klaster Opteronów
działający na Debianie
dystrybucji testing w Debianie i mrożenie nich kilku miesięcy, a mianowicie, aby
Thomas Lange poinformował
dystrybucji niestabilnej. Część dewelope- skupić się na wydaniu Sarge, a na zmiany o nowym klastrze o nazwie Sarek,
rów sądzi, że to bardziej motywowałoby przyjdzie czas później. Reasumując, zmia- zbudowanym na procesorach AMD
ludzi do pracy, ale takie rozwiązanie było ny zapewne nastąpią, ale jak bardzo ra- Opteron i działającym na uniwersytecie
Umel. Składa się ze 192 węzłów
już kiedyś stosowane i niestety, działało na- dykalne będą, tego dzisiaj nie wie nikt,
(384 procesory), a pracuje na nim
wet gorzej niż obecne. bo i nie czas skupiać się na tym w chwi- 64-bitowa wersja Debiana GNU/Linux
Clemens Schwaighofer zaproponował, li obecnej. Cieszy natomiast fakt, że De- na amd64 z jądrem 2.6. Klaster został
aby oprócz linii testing, która w zamierze- bian mimo tego, że jego ostatnie stabil- w czerwcu 2004 roku sklasyfikowany
na miejscu 165 w rankingu TOP 500.
niu ma stać się wersją stabilną, stosować ne wydanie ujrzało światło dzienne po-
http://www.hpc2n.umu.se/resources/
migawki (ang. snapshots), które miałyby się nad 2 lata temu, nadal może być bazą dla sarek.html
pojawiać raz na pół roku. Z pewnością nie tak obiecujących projektów, jak Ubun-
GNOME 2.8 w Sarge?
oferowałyby one takiego bezpieczeństwa tu. Jeszcze bardziej pocieszające jest to, W imieniu zespołu GNOME, Jordi
i stabilności, jak choćby w tym momencie że już w tym momencie zaczęto część Mallach zapytał, czy może wgrać
Woody, ale byłyby aktualne. Ponadto, spo- zmian poczynionych przez Canonical Inc. GNOME w wersji 2.8 do unstable
przenosić do Debiana, a kilku ich pra- – wersja ta została wydana już we
wrześniu, gdy Sarge miał zostać
cowników zostało oddelegowanych, aby zamrożony. Ponieważ od tamtej
wspierać rozwój Ubuntu poprzez popra- pory omawiany zbiór pakietów
wianie niedociągnięć w samym Debianie. był poddawany testom i wielu
Wygląda na to, że powstanie omawia- użytkowników już go używa, wydaje
się być gotowy do włączenia do
nej dystrybucji przyniesie korzyści zarów- nowej wersji stabilnej Debiana. Grupa
no użytkownikom, którzy mogą już teraz zarządzająca wydaniem zgodziła się na
spróbować “doszlifowanej” wersji Debiana, włączenie GNOME 2.8.1 do unstable,
jak i macierzystemu projektowi, który prę- skąd może zostać przeniesiony
(częściowo lub w całości) do Sarge.
dzej czy później wchłonie te poprawki. http://lists.debian.org/debian-release/
Ubuntu – młodszy brat Debiana 2004/11/msg00067.html
http://www.ubuntulinux.org/
www.lpmagazine.org 21
aktualności
aktualności mandrakelinux mandrakelinux@lpmagazine.org dział prowadzi: Daniel Koć
22 styczeń 2005
ktualności
aktualności aurox aurox@lpmagazine.org dział prowadzi: Karol Kozimor
AmaroK w Auroksie
www.lpmagazine.org 23
aktualności
aktualności gentoo gentoo@lpmagazine.org dział prowadzi: Witold Kieraś
24 styczeń 2005
bezpieczeństwo
Bezpieczne
łączenie się
z Internetem
Piotr Machej
J
eśli ktoś jeszcze wierzy, że w dzisiej-
szych czasach jego komputer podłą-
czony do Internetu nie jest zagrożo-
ny, to powinien natychmiast zdjąć
różowe okulary. Korzystając z ogólno-
światowej pajęczyny, nie jesteśmy samot-
ni – wraz z nami jest tam wiele osób
o bardzo różnych charakterach i potrze-
bach. Dlatego warto podjąć środki ostroż-
ności. Pozwoli nam to żeglować po Inter-
Rysunek 1. Na stronach serwisu SANS
necie ze spokojem, że nasze dane nie są
możemy znaleźć obszerne wskazówki
łatwe do wykradzenia lub zniszczenia.
dotyczące wykrywania intruzów
Planowanie zabezpieczeń
Absolutnie nie powinniśmy podłączać Dobre określenie naszych celów
do Internetu komputera, który nie został i potrzeb pozwoli nam lepiej wykorzy-
jeszcze zabezpieczony. Może wydawać stać zawarte w tym artykule informacje.
się nam, że jeśli podłączymy się tylko Mając ciągle na myśli nasz cel, z łatwo-
na chwilkę, to nic się nie stanie. Jest to ścią wybierzemy zabezpieczenia, które
jednak bardzo złudne wrażenie. Włamy- musimy zastosować, i pominiemy te,
wacze bardzo często automatyzują swoją z których możemy (lub nawet powinni-
pracę, uruchamiając skrypty okresowo śmy) zrezygnować.
sprawdzające adresy sieciowe kompu-
terów. Poszukują w ten sposób maszyn Wykorzystywane usługi
wrażliwych na znane im metody ataków Generalna zasada mówi, aby uruchamiać
(np. posiadających bardzo proste hasła). tylko niezbędne usługi. Tak naprawdę
Może zdarzyć się, że nasz system zostanie powinniśmy posunąć się nieco dalej i w
spenetrowany już w minutę po zalogowa- ogóle nie instalować niepotrzebnego opro-
niu do sieci. Z tego powodu jak najwię- gramowania. Praktycznie każda z dystry-
cej czynności zabezpieczających powin- bucji podczas instalacji pozwala nam na
niśmy dokonać jeszcze przed skorzysta- wybór pojedynczych pakietów, z których
niem z Internetu. chcemy korzystać. Warto poświęcić trochę
Zanim zabierzemy się za umacnia- czasu na lekturę opisów poszczególnych
nie zabezpieczeń, dobrze jest dokładnie pakietów i wybranie tylko tych, które na
zastanowić się, co chcemy osiągnąć. Czy pewno nam będą potrzebne.
chcemy zrobić z naszego komputera nie- Zysk z takiego postępowania jest
zdobytą twierdzę? A może tylko chcemy podwójny. Po pierwsze, oszczędzamy
ochronić nasze zdjęcia z igraszek na łonie miejsce na dysku. Po drugie, zmniejsza-
natury? Istotne jest też, czy będziemy my liczbę zainstalowanego oprogramo-
chcieli udostępniać jakieś zasoby innym wania. Dzięki temu łatwiej nam będzie
użytkownikom Internetu. Jeśli kompu- kontrolować zmiany w systemie, a w
ter będzie przeznaczony dla wielu anoni- dodatku możemy uniknąć instalacji pro-
Na płycie CD/DVD mowych użytkowników (np. jako anoni- gramów znanych z problemów z bez-
Na płycie CD/DVD znajduje się mowy serwer FTP), to zastosujemy inne pieczeństwem. Warto zastanowić się
oprogramowanie omawiane zabezpieczenia niż wtedy, gdy do kom- nad tym, który program wykorzystamy
w artykule. putera będziemy chcieli mieć dostęp do realizacji konkretnego celu. Przykła-
tylko my, razem z wybranymi kolegami. dowo, jeśli jest nam potrzebny serwer
26 styczeń 2005
bezpieczny internet bezpieczeństwo
www.lpmagazine.org 27
bezpieczeństwo
28 styczeń 2005
bezpieczny internet bezpieczeństwo
www.lpmagazine.org 29
bezpieczeństwo
(np. poczty czy Samby). Należy pamię- łów dostępnych z CPAN: Net::RawIP, Net: lizatory integralności systemu) pewną
tać, że tak zbudowana zapora nie będzie :PcapUtils i NetPacket. Możemy je zainsta- wielką wadę – dzięki niemu dowiadu-
w stanie zablokować możliwości łączenia lować poleceniem perl -MCPAN -e 'in- jemy się o ataku, który już doszedł do
się z naszym serwerem, jeśli zostanie na stall Net::RawIP' (odpowiednio zmie- skutku. Cała sztuka polega na tym, aby
nim zainstalowana jakaś tylna furtka (back- niając nazwę modułu). Na komputerze, wykryć atak jeszcze w czasie jego prze-
door). Wybór metody tworzenia zapory gdzie mamy zainstalowaną zaporę siecio- prowadzania i odpowiednio go zablo-
zależy więc tylko od naszych chęci i umie- wą, należy uruchomić polecenie ./ftestd kować.
jętności. -i eth0 (gdzie eth0 to nazwa interfejsu Jednym z najlepszych programów
Podczas projektowania zapory pamię- łączącego nas z siecią). Spowoduje to uru- przeznaczonych do tego celu jest Snort.
tajmy o tym, aby zablokować możli- chomienie sniffera nasłuchującego pakie- Program nasłuchuje na wskazanych inter-
wość łączenia się z naszym kompute- tów wysyłanych przez klienta. Klienta naj- fejsach sieciowych, analizując pojawiające
rem z maszyn o adresach sieci lokalnej za lepiej uruchomić na komputerze znajdu- się tam pakiety. Analizowane są one pod
pośrednictwem interfejsu łączącego nas jącym się bezpośrednio za zaporą siecio- kątem informacji istotnych dla bezpie-
z Internetem. Zapobiegnie to przynajm- wą – służy do tego polecenie ./ftest -f czeństwa lub sprawnego funkcjonowania
niej części prób ataków przez podszywa- ftest.conf. Najpierw jednak należy przy- sieci. Dzięki skonfigurowaniu odpowied-
nie (spoofing). gotować odpowiedni plik konfiguracyjny, nich preprocesorów, możemy polecić
Jeśli nie odpowiada nam ręczne wpi- w którym wskażemy, jakie testy mają być Snortowi wyszukiwanie informacji o pró-
sywanie regułek, możemy skorzystać wykonywane. Przykładowy plik ftest.conf bach skanowania portów, atakach zwią-
z któregoś z interfejsów graficznych. jest dosyć dobrze opisany, więc nie powin- zanych z błędną fragmentacją pakietów
Jednym z ciekawszych jest Firewall Buil- niśmy mieć problemów z dostosowa- IP, czy próby ukrycia ataków poprzez
der, którego wersja 2.0.2 była niedawno niem go do własnych potrzeb. Zwróćmy zakodowanie adresów HTTP URI.
opisywana w Linux+. Program ten można uwagę, że możemy korzystać zarówno Następnie pakiety są przekazywane
pobrać ze strony domowej projektu (http:// z pojedynczych pakietów, np. 192.168.0.5: do modułu, który porównuje je z regu-
www.fwbuilder.org/ ) lub z płyty dołączo- 1025:192.168.0.1:21:A:TCP:0, jak i z symu- łami opisującymi różne znane metody
nej do gazety. lowania połączeń: connect=192.168.0.5: ataków (tzw. sygnaturami ataków). Do
1025:192.168.0.1:22:AP:TCP:0. Każdy test nas należy wybranie sygnatur, które
Testowanie zapory powinniśmy kończyć sygnałem zatrzy- będą potrzebne w naszym systemie. Sam
Po zbudowaniu zapory sieciowej najważ- mania: stop_signal=192.168.0.5:80: Snort nie potrafi określić, czy w naszej
niejsze jest jej dokładne przetestowanie. 192.168.0.1:1025:S:TCP:0. Ważne, aby ten sieci połączenie na konkretny port jest
Niestety, IPTables nie obsługuje opcje -C, ostatni pakiet na pewno przeszedł przez legalne, czy też powinien je traktować
znanej z IPChains, pozwalającej na łatwe zaporę. W innym przypadku, jeśli na czas jako próbę włamania – o tym my decy-
testowanie reguł. Musimy więc radzić testów zmienialiśmy ustawienia TTL, to w dujemy podczas konfiguracji. Jeśli zosta-
sobie łącząc się z zaporą z różnych maszyn przypadku przerwania działania skryptu nie wykryty atak, Snort może zareago-
umieszczonych w Internecie i sieci lokal- przed otrzymaniem sygnału stop, będzie- wać na wiele różnych sposobów. Oprócz
nej lub korzystając z innego oprogramo- my musieli przywracać ustawienia ręcz- powiadomienia administratora i zapisa-
wania. Przykładowe programy, które mogą nie. Po zakończeniu testu należy skopio- nia informacji o ataku, może również
okazać się bardzo pomocne przy testowa- wać pliki ftest.log z klienta i ftestd.log z ser- podjąć środki zaradcze, np. przerywa-
niu zapory, to HPing i Firewall Tester. O wera w jedno miejsce, a następnie wyko- jąc połączenie z komputerem potencjal-
programie HPing można było niedawno nać polecenie ./freport ftest.log fte- nego włamywacza, a nawet odpowiednio
przeczytać w Linux+, więc zapoznajmy się std.log. W jego wyniku otrzymamy zesta- zmieniając zaporę sieciową.
z drugim z programów. wienie pakietów, które przeszły lub zostały Z takim zabezpieczaniem należy
Firewall Tester to zestaw skryptów zablokowane przez zaporę sieciową. uważać, gdyż może to doprowadzić do
napisanych w Perlu, które można wyko- Podczas testowania zapory powinni- tego, że intruz zdezorganizuje naszą
rzystywać nie tylko do testowania jako- śmy pamiętać, aby sprawdzić ją bardzo pracę symulując przeprowadzanie ataków
ści zapory sieciowej, ale również syste- dokładnie. Jeśli w jakiejś regułce mamy zde- z sieci, na których nam zależy. Można to
mów wykrywania włamań. Do działania finiowany zakres adresów IP, to sprawdza- oczywiście obejść odpowiednio modyfi-
Firewall Tester potrzebuje trzech modu- my zachowanie zapory zarówno dla adre- kując nasze skrypty. Generalnie Snort nie
sów granicznych, jak i leżących wewnątrz jest może zbyt łatwy w konfiguracji, ale
i na zewnątrz zakresu. Warto przygoto- jeśli sobie z tym poradzimy, to uzyska-
wać sobie własne skrypty do testowania my narzędzie porównywalne z produkta-
zapory, dzięki czemu nie będziemy musieli mi komercyjnymi. Dzięki niemu nie tylko
wciąż powtarzać wpisywania tych samych będziemy mogli wykrywać ataki, ale
komend. Również wprowadzanie popra- również dowiadywać się o innych pro-
wek jest w takim przypadku łatwiejsze. blemach w naszej sieci, np. związanych
z błędami w oprogramowaniu.
Systemy wykrywania
włamań Instalacja i obsługa Snorta
Rysunek 5. Afick wydaje się być godnym
Zapoznaliśmy się już z programem Afick, Program Snort możemy pobrać ze strony
następcą sławnego Tripwire
ale posiada on (podobnie jak inne ana- domowej projektu (http://www.snort.org/ ),
30 styczeń 2005
bezpieczny internet bezpieczeństwo
www.lpmagazine.org 31
bezpieczeństwo
Odzyskiwanie danych
– sposoby i przegląd
narzędzi
Michał Niwicki
N
a pewno każdy z Was sta- tykamy się z fizycznym uszkodzeniem
nął lub stanie przed proble- jednej z optycznych warstw na skutek
mem odzyskania danych. zarysowania.
Zazwyczaj w momencie, W obu sytuacjach, gdy dochodzi do
w którym uświadamiamy sobie, że stra- utraty części (kilku lub kilkudziesię-
ciliśmy istotne pliki, nie widzimy szansy ciu bajtów) pliku lub systemu plików,
na ich odratowanie i nie podejmuje- system komunikuje nam, że odczyt
my żadnych działań. Spotykamy się z urządzenia jest niemożliwy i zaprze-
z dwiema sytuacjami. Pierwsza wiąże staje dalszych prób dostępu do danych.
się z fizycznym uszkodzeniem nośni- Spróbujmy zilustrować przykładem
ka danych (twardego dysku, dyskiet- zaistniały problem. Posiadamy płytę,
ki, płyty CD/DVD), co uniemożliwia na której znajduje się dwugodzinny film
nam prawidłowe odczytanie zawarto- w pliku o łącznej objętości 690 mega-
ści całego pliku. Druga to taka, w której bajtów. Na skutek fizycznego uszkodze-
umyślnie lub nieumyślnie skasowaliśmy nia (przypadkowe zarysowanie płyty)
z dysku potrzebny nam plik i chcemy go nie jest możliwy odczyt kilku ostatnich
odzyskać. W obu przypadkach istnieją bajtów pliku, w efekcie czego program
sposoby i narzędzia pozwalające na cał- odtwarzający przerywa działanie przed
kowite lub częściowe odzyskanie utra- najciekawszym fragmentem filmu.
conych danych. Wiemy lub domyślamy się, że uszko-
W niniejszym artykule dokonamy dzeniu uległo jedynie kilka sekund cen-
przeglądu kilku popularnych aplika- nego nagrania, natomiast kilkanaście
cji służących do odzyskiwania danych pozostałych minut nadal znajduje się na
– uszkodzonych bądź usuniętych płycie. Stajemy przed problemem, jak
z naszego komputera. zmusić program do odtworzenia tego,
co znajduje się za uszkodzonym obsza-
Fizyczne uszkodzenie rem. Innymi słowy, chcemy, aby pro-
nośnika gram nie przerywał działania w przypad-
Zanim przejdziemy do omówienia spo- ku, w którym nie może odczytać zapisa-
sobu odzyskania utraconych danych nych danych.
z uszkodzonego nośnika, wytłumaczy-
my najpierw, jak dochodzi do uszkodze- DD_rescue
nia nośnika i jaki ma to wpływ znajdu- Gdy próba przekopiowania uszkodzone-
jące się na nim dane. go pliku standardową metodą nie skutku-
Tradycyjnie, wszystkie magnetycz- je (tak dzieje się, gdy używamy standar-
ne nośniki danych – dyskietki, twarde dowej komendy cp), z pomocą przycho-
dyski, taśmy – mogą ulec częściowe- dzi nam program DD_rescue.
mu rozmagnesowaniu na skutek kon- Jego zasada działania jest prosta
Na płycie CD/DVD taktu z różnymi urządzeniami wytwa- – próbuje odzyskać uszkodzone bajty
Na płycie CD/DVD znajduje się rzającymi duże pole elektromagnetycz- pliku, a w przypadku, gdy nie może ich
oprogramowanie omawiane ne (magnesy, bramki kontrolne na lot- odczytać, nie przerywa swego działania,
w artykule. nisku, telefony komórkowe). W przy- nie ucina uszkodzonego pliku i kontynu-
padku płyt CD/DVD najczęściej spo- uje proces kopiowania.
32 styczeń 2005
narzędzia data recovery bezpieczeństwo
Jeśli w wyniku działania komen- wyniku operacji kasowania (plików lub osiągnięciu x błędów
• -s s – rozpoczyna kopiowanie pliku
dy dd_rescue plik_a plik_b program partycji) straciliśmy część lub wszystkie
od s bajta
skopiuje pliki bez napotkania na błędy, nasze dane. Mogłoby się wydawać, że
• -m m – kopiuje jedynie m bajtów
powinien wyświetlić się komunikat wszystko stracone, ale i na takie przy-
• -d – wykorzystuje bezpośredni
podobny do poniższego: padki jest rada. W najlepszym razie dostęp do urządzenia blokowego
może okazać się, że dane są w 100% (z pominięciem pamięci cache)
dd_rescue: (info): plik_a (0.8k): EOF odzyskiwalne, ale najczęściej spotkamy
Summary for plik_a -> plik_b: się z sytuacją, w której odzyskamy jedy- wały się na nim przed zamazaniem tabli-
dd_rescue: (info): ipos: 0.8k,S nie mniejszy lub większy procent ska- cy partycji. Problem w tym, że takimi
opos: 0.8k, xferd: 0.8k sowanych zbiorów. Paradoksalnie, to co informacjami większość użytkowników
errs:0, errxfer: 0.0k, succxfer: 0.8k wygląda bardzo groźnie, może okazać nie dysponuje. Tu z pomocą przycho-
+curr.rate: 15kB/s, avg.rate: 15kB/s,S się łatwe w naprawie. Najczęstszym dzi Gpart – narzędzie, którego działanie
avg.load: 0.0% omawianym wyżej przypadkiem jest wydaje się być proste: program analizu-
zamazanie tablicy partycji dysku twar- je dane zapisane na dysku (jeszcze nie
Jeśli podczas procesu kopiowania przytra- dego (tracimy wszystko) lub skasowa- skasowane) i na ich podstawie próbuje
fią się błędy odczytu, pojawi się dodatko- nie pliku/plików komendą rm. Narzę- odbudować tablicę partycji dysku.
wa informacja dotycząca ilości uszkodzo- dzia, jakich można użyć w obu przy-
nych bajtów i miejsca ich występowania. padkach, przedstawię poniżej. Praca z narzędziem Gpart
Dodatkowe przydatne opcje progra- Ponieważ po skasowaniu partycji nie
mu to kopiowanie piku od określonej Namierzanie partycji programem mamy dostępu do żadnych danych, które
pozycji (w bajtach), kopiowanie zbioru Gpart się na dysku znajdują, nie możemy rów-
danych od końca do początku, wyświe- Jeśli z pewnych powodów zamazaliśmy nież uruchomić Gparta. W takiej sytu-
tlanie pełnej informacji o procesie tablicę partycji dysku twardego (dzieje acji powinniśmy skorzystać z ratunko-
odczytywania i zapisywania przetwa- się tak przykładowo podczas nieuważ- wej dystrybucji Linuksa – RIP. Po wło-
rzanych danych oraz określenie górnej nego dzielenia dysku na partycje), mimo żeniu do napędu CD/DVD bootowalnej
granicy ilości błędów, po osiągnięciu że dysk wygląda tak, jakby nic na nim się płyty i ponownym uruchomieniu kom-
której praca programu jest przerywana. nie znajdowało, nasze dane wciąż na nim putera, naszym oczom ukaże się ascetycz-
Pewnym ułatwieniem w korzystaniu są. Proces przywracania struktury dysku nie wyglądające okno terminala. Po zalo-
z programu DD_rescue jest skrypt napi- do pierwotnej postaci wymaga od użyt- gowaniu się na konto administratora sys-
sany z BASH-u – DD_rhelp. Jego działa- kownika wiedzy na temat tego, jakiej temu (root) mamy do dyspozycji kilkadzie-
nie opiera się na programie DD_rescue, wielkości i jakiego typu partycje znajdo- siąt programów służących do odzyskiwa-
R E K L A M A
www.lpmagazine.org 33
bezpieczeństwo
34 styczeń 2005
ZAMÓWIENIE PRENUMERATY
Prosimy wypełnić czytelnie i przesłać faksem na numer: (22) 860 17 71
lub listownie na adres: Software-Wydawnictwo Sp. z o.o.,
Lewartowskiego 6, 00-190 Warszawa,
e-mail: pren@software.com.pl
Przyjmujemy też zamówienia telefoniczne: (22) 860 17 67
ID kontrahenta*
* jeżeli jesteś już klientem firmy Software-Wydawnictwo Sp. z o.o. – wystarczy, że podasz swój numer ID kontrahenta; jeżeli nie posiadasz takiego numeru, podaj swe dane teleadresowe
Upoważniam firmę Software-Wydawnictwo Sp. z o.o. do wystawienia faktury VAT bez podpisu odbiorcy
Nazwa firmy
Dokładny adres
W sumie
(liczba prenumerat x cena)
www.stock.com.pl
UWAGA: Nadesłanie zamówienia jest jednocześnie zobowiązaniem do zapłaty.
Linux+ 05/2004 Linux+ 06/2004 Linux+ 07/2004
(DVD, CD, bez CD) (DVD, CD, bez CD) (DVD, CD, bez CD)
Numery archiwalne
Prosimy o przesłanie kuponu pocztą lub faksem.
Prosimy w odpowiednim polu zakreślić numery, które Państwo chcą zamówić.
1 2 3 4 5 6 7 8 9 10 11 12
Linux+ 11/2004
(DVD, CD, bez CD) 2000
2001
2002
2003
2004
2004
2004
Linux+ 12/2004
(DVD, CD, bez CD) pieczątka i podpis
Wywiad
z Przemysławem Tołpą,
menedżerem sprzedaży
firmy Adaptec
Krzysztof Krawczyk: Na począt- zobaczyć na stronach projektu Linux1394
ku prosiłbym, abyś krótko przedstawił się pod adresem http://www.linux1394.org/
naszym Czytelnikom. hcl.php?class_id=2, jest wiele produktów
Przemysław Tołpa: Jestem mene- serii Adaptec FireWire, które współpracu-
dżerem sprzedaży w firmie Adaptec ją z tym sterownikiem.
i jestem odpowiedzialny za rejon Europy KK: Zgadza się, ale użytkownik
Wschodniej i Bliskiego Wschodu, czyli Linuksa mimo wszystko musi sam poszu-
także Polski i Czech. kać rozwiązania. A kto zajmuje się two-
KK: Jaki jest wasz stosunek do syste- rzeniem nowych wersji sterowników? Czy
mu Linux oraz w ogólności do oprogra- macie jakąś wydzieloną komórkę linuk-
mowania Open Source? sową w ramach firmy?
PT: Dla firmy Adaptec system Linux PT: Nasze wsparcie jest wymagane
jest bardzo ważny – większość produk- zarówno przez naszych klientów OEM-
tów sieciowych i rozwiązań pamięci owych, jak również nasze kanały dys-
masowej firmy Adaptec jest wspierana trybucyjne. Mamy różne zespoły inży-
na Linuksie. W wielu przypadkach ste- nierskie w różnych miejscach na świecie,
rowniki dla naszych produktów są już skoncentrowanych wyłącznie lub częścio-
zawarte w jądrze systemu Linux. Zdaje- wo na tworzeniu linuksowych sterowni-
my sobie sprawę z potrzeby funkcjono- ków dla kontrolerów Adapteca. Wiemy,
wania i dalszego rozwoju oprogramowa- że istnieje duże zapotrzebowanie na nie
Przemysław Tołpa
nia Linux jako systemu operacyjnego dla dla systemów SUSE i Red Hat.
przedsiębiorstw. KK: Wróćmy do rozwiązań serwero-
KK: Jakie wsparcie dla systemów wych. Jak wygląda wsparcie dla kontrole- pamięci masowej. Dla przykładu podam
linuksowych posiadają wasze produkty? rów Serial ATA dla Linuksa? urządzenie pamięci masowej iSA 1500
PT: Praktycznie wszystkie produk- PT: Wszystkie kontrolery naszej firmy iSCSI-to-SATA, w której została ona
ty firmy Adaptec, zarówno sieciowe, jak posiadają wsparcie dla systemu Linux. wykorzystana.
i przeznaczone do pamięci masowych, Pełna lista sterowników jest zamieszczo- KK: Z jakimi producentami systemów
włączając produkty ATA, Serial ATA, na na naszej stronie internetowej: http:// linuksowych współpracujecie?
RAID, SCSI, iSCSI oraz TOE/NAC, posia- www.adaptec.com/support/ lub http:// PT: Współpracujemy ze wszystkimi
dają wsparcie dla systemu Linux i w wielu www.adaptec.pl/. Przykładowo, kontrole- najważniejszymi dystrybutorami rozwi-
przypadkach sterowniki do nich są zawar- ry Adaptec SATA dwu- i cztero-portowe, jającymi system Linux na świecie, włą-
te w jądrze systemu Linux. Jedynie część modele 1210SA oraz 2410SA, wspierają czając Red Hat, SUSE, TurboLinux i wielu
produktów firmy Adaptec, tych przezna- odpowiednio SUSE oraz Red Hat Linux. innych.
czonych na podstawowy rynek konsu- Również najnowsze kontrolery 8- i 16- KK: Jak oceniacie rynek klastrów
mencki, oferujemy jedynie ze wsparciem portowe współpracują z tymi systemami. linuksowych na świecie? Czy mogą one
dla systemu Windows oraz Mac. Nowe sterowniki oraz najnowsze wersje konkurować z dużymi superkomputera-
KK: Chciałbym jeszcze trochę skupić jądra będą nadal zamieszczane na stro- mi i w jaki sposób?
się na tym zagadnieniu. Jakiś czas temu nach internetowych w momencie, gdy PT: Jesteśmy przekonani, że kla-
kupiłem kontroler FireWire do swojego będą ogólnie dostępne. stry oparte na oprogramowaniu Linux
notebooka. Otrzymałem wraz z nim płytę KK: Czy jakieś wasze produkty wyko- mają przed sobą znakomitą przy-
CD z oprogramowaniem, ale nie znala- rzystują Linuksa, tak jak przykładowo szłość, a rynek klastrów linuksowych
złem tam pakietów na Linuksa. serwer NAS firmy Raidtec? ma zdecydowanie duży potencjał. Nawet
PT: Użytkownicy Linuksa mają PT: Używamy dostosowanej wersji obecnie klastry linuksowe konkurują
dostęp do sterownika OHCI. Jak można systemu Linux w wielu urządzeniach z superkomputerami – więcej na ten
38 styczeń 2005
wywiad z Przemysławem Tołpą wywiad
temat można znaleźć na stronach CERN gę stosu TCP/IP na poziomie sprzętu, ptec TOE NAC 7711 jest rozwiązaniem
pod adresem http://ajt.iki.fi/writings/ na karcie, rozwiązanie TOE NAC firmy przyspieszającym działanie sieci, obni-
cern/index_eng.html oraz http://www. Adaptec umożliwia eliminację wąskie- żającym poziom zaistniałych opóźnień
interex.org/pubcontent/enterprise/mar00/ go gardła podczas przetwarzania TCP oraz redukującym stopień zużywania
11ntrad.html. oraz pozwala procesorowi kompute- procesora. Technologia NAC zawiera
KK: Pod koniec zeszłego roku opra- ra poświęcić więcej cykli na przetwa- specjalizowany układ scalony ASIC kie-
cowaliście technologię NAC, która wydała rzanie procesów aplikacji oraz umożli- rujący TCP/IP oraz rozładowujący prze-
mi się dość interesująca. Jak jest zasada wia zwiększenie szybkości obsługi sieci twarzanie TCP/IP z hosta i jest najszyb-
jej działania? i wydajności systemu. Aplikacje, do któ- ciej pracującym i najbardziej wytrzy-
PT: Ethernet Networking ewolu- rych jest przeznaczone rozwiązanie NAC, małym rozwiązaniem dostępnym na
ował od 10 Mb/na sekundę (Ethernet), to m.in. aplikacje serwera danych, wyso- rynku. Technologia NAC redukuje
przez 100 Mb/na sekundę (Fast Ether- kowydajne komputery przeznaczone do w znaczącym stopniu obciążenie w sieci
net), do 1,000 Mb/na sekundę (Giga- zadań technicznych, intensywnie wyko- LAN, przedłużając czas działania serwe-
bit Ethernet) oraz TCP/IP Offload Engi- rzystywane bazy danych, kopie zapaso- rów oraz maksymalizując ich wydaj-
nes (rozwiązanie TOE) – są to kolejne we oparte o LAN, pamięć masowa NAS ność.
generacje technologii sieciowej Ethernet. oraz rozwiązania wideo. KK: Dziękuję za rozmowę.
Firma Adaptec wprowadziła na rynek KK: Jak może zostać zastosowana
produkty technologii TOE pod nazwą technologia NAC? W Internecie:
NAC (Network Accelerator Card – sie- PT: Technologia NAC jest idealna dla
ciowa karta przyspieszająca), np. GigE wysokowydajnego środowiska informa- – Strona domowa firmy Adaptec:
NAC 7711C (oparty na rozwiązaniu mie- tycznego, włączając klastry oraz udo- http://www.adaptec.com/
dzianym) oraz GigE NAC 7711F (oparty stępnianie plików na rynkach werty- – Strona firmy Adaptec poświęcona
zagadnieniom Linuksa:
na światłowodzie). Oba produkty zosta- kalnych, takich jak np. bio-informaty-
http://linux.adaptec.com/
ły zaprojektowane, aby maksymalizo- ka, informatyka działająca na potrze-
– Polski oddział firmy Adaptec:
wać wydajność sieci oraz obniżyć zuży- by nauki, wydobycie ropy i gazu oraz http://www.adaptec.pl/
cie samego procesora. Poprzez obsłu- sektor obronności. Produkt firmy Ada-
R E K L A M A
www.lpmagazine.org 39
aktualności
oprogramowanie gnome
Dvd::rip
– ripper płyt DVD
Witold Kieraś
40 grudzień 2004
GNOME News
www.lpmagazine.org 41
aktualności
oprogramowanie kde
KGpg
– menedżer kluczy
szyfrujących
Witold Kieraś
42 styczeń 2005
KDE News
www.lpmagazine.org 43
aktualności
oprogramowanie linuxfresh
Gubed
– debugger skryptów w PHP
Piotr Machej
44 styczeń 2005
FRESH News
www.lpmagazine.org 45
aktualności
oprogramowanie linuxfresh
Cssed
– edytor arkuszy stylów CSS
Piotr Machej
46 styczeń 2005
FRESH News
CbrPager 0.9.4
CbrPager to jeden z programów
Inną przydatną funkcją są znaczniki. ustawić domyślne wartości dla każdego
pozwalających przeglądać archiwa CBR,
Podczas edycji dużych plików są one po dokumentu. Warto zaznaczyć opcje View w których coraz częściej rozprowadzane
prostu nieocenione. Jeśli podczas edycji line numbers i Enable autocompletion. są w sieci komiksy i mangi. Co prawda
często skaczemy pomiędzy konkretny- W zakładce Font ustawiamy odpowiada- nie jest to program na miarę CDisplay,
znanego z Windows, ale autor wciąż
mi liniami poprawiając wartości, to wy- jącą nam czcionkę i zatwierdzamy ją przy-
dodaje nowe funkcje. Program pozwala
starczy kliknąć na marginesie po lewej ciskiem Apply. Pozostaje jeszcze zakładka przeglądać pliki JPG, GIF i PNG. Oprócz
stronie każdej z tych linii. Powinny po- Highlighting. Tutaj możemy dokładnie podstawowych funkcji powiększania
jawić się tam białe znaczniki. Teraz mo- określić, jakie kolory powinny być uży- i zmniejszania widoku, posiada kilka
ciekawych opcji konfiguracyjnych
żemy poruszać się pomiędzy nimi ko- te do podświetlania w konkretnych przy-
(np. możemy określić, czy przy przejściu
rzystając ze strzałek Previous Bookmark padkach. do kolejnej strony ma być wyświetlona
i Next Bookmark, widocznych na pasku Trzeba przyznać, że Cssed zapowia- jej górna lub dolna część, czy też raczej
narzędzi. da się interesująco. Już w tej chwili jest ta, którą właśnie wyświetlaliśmy).
Najnowsza wersja programu pozwala
W dolnej części ekranu mamy dwie przyjemnym edytorem CSS, a autor sta-
także określić, czy panel nawigacyjny
zakładki – Program output i Scratch Pad ra się jeszcze bardziej rozbudować je- ma być wyświetlany poziomo czy
/ Static Pad. Pierwsza z nich zawiera wy- go możliwości. Wśród najbardziej intere- pionowo.
niki zwracane przez program, np. komu- sujących planów można wymienić moż- http://freshmeat.net/projects/cbrpager/
nikaty o błędach. Szczególnie przydatna liwość przeglądania strony WWW z na- Player vs. Player Gaming
jest podczas testowania poprawności ko- łożonym stylem w zewnętrznej przeglą- Network 1.6.6
du, czego dokonujemy wybierając z menu darce oraz (uwaga!) możliwość tworze- PvPGN to darmowe oprogramowanie
emulujące serwer Battle.net. Dzięki
pozycję Tools–> Validate only. Warto przy nia arkusza stylu na podstawie dokumen- niemu można w sieci lokalnej
tym mieć włączone numerowanie linii tu HTML. Chodzi tu o przetworzenie sta- uruchomić serwer i pograć w takie
(Document–>View line numbers), gdyż rych znaczników HTML (np. <font>) na gry, jak Diablo II czy Starcraft.
dzięki temu łatwiej zlokalizować błąd ich odpowiedniki w kaskadowych arku- Dostępne są statystyki gier, możliwość
organizowania turniejów, jak również
w większym pliku. Druga zakładka za- szach stylów. drabinki punktowe. W najnowszej
wiera dwa okna, które możemy wyko- W najnowszej wersji programu znacz- wersji poprawiono szereg wykrytych
rzystać na notatki. Mogą się one również nie ulepszono wsparcie dla różnych ko- błędów oraz dodano kilka nowych
przydać jako schowek – zaznaczony tekst dowań znaków. Dodano też schematy opcji, np. opcję pozwalającą ograniczyć
dostęp do wybranych klientów.
można tu przeciągnąć z dokumentu, a na- podświetleń dla innych języków, takich http://freshmeat.net/projects/pvpgn/
stępnie wkleić go do innego dokumentu jak HTML, PHP, skrypty powłoki, Python
HTML Forms generation and
(przeciągając go ponownie). i inne. Stworzono interfejs rozbudowywa-
validation 2004.10.13
Jeśli Cssed spodoba się nam, warto ny wtyczkami i od razu udostępniono kil- Twórcy stron WWW piszący
zmienić jego domyślne ustawienia. Każ- ka wtyczek: panel przeglądania plików, w PHP wcześniej lub później stają
dorazowe ustawianie opcji w menu Do- okno terminala VTE, a także panel wy- przed problemem stworzenia
formularzy wraz z ich obsługą.
cument może być męczące. Zamiast te- szukiwania tekstu w plikach.
Opisywana klasa PHP pozwala na
go wybieramy Edit–>Preferences. Tutaj, generowanie takich formularzy wraz
w zakładce Document settings, możemy http://freshmeat.net/projects/cssed/ z odpowiednią obsługą z klawiatury
oraz sprawdzaniem poprawności
danych (zarówno po stronie serwera,
jak i klienta). Jej funkcjonalność
może być rozszerzana poprzez
dodawanie klas-wtyczek. Wygląd
wynikowych formularzy może być
definiowany szablonami z użyciem
PHP, zagnieżdżonego w HTML-u lub
też silnika Smarty. Najnowsza wersja
niesie ze sobą kilka poprawek, m.in.
poprawiono działanie klasy przy
wyłączonej opcji register_globals.
http://freshmeat.net/projects/htmlformsg
enerationandvalidation/
Getmail 4.2.2
Pojawiła się nowa wersja programu
Getmail, który w zamierzeniu autora
ma być prostą i bezpieczną alternatywą
dla popularnego programu Fetchmail.
Zmiany dotyczą poprawionej obsługi
uszkodzonych plików oldmail,
jak również zmiany prawdziwego
i efektywnego identyfikatora
użytkownika i grupy potomnego
procesu odpowiedzialnego za
dostarczanie poczty.
Rysunek 2. Oprócz Cssed, autor oferuje również kilka innych narzędzi pomocnych przy
http://freshmeat.net/projects/getmail/
edycji arkuszy stylów
www.lpmagazine.org 47
aktualności
oprogramowanie linuxfresh
Vuurmuur
– konfigurator zapór
sieciowych
Piotr Machej
48 styczeń 2005
FRESH News
FreeRails 0.2.5
Miłośnicy klasycznej już gry Railroad
Tycoon z pewnością ucieszą się,
że pojawiła się kolejna wersja gry
FreeRails. Ta darmowa gra została
zainspirowana dziełem niezrównanego
Sida Meiera. Chociaż gra jest w fazie
Alpha, z każdą wersją pojawia się
w niej więcej funkcji. Tym razem
m.in. dodano opcję automatycznego
rozkładu jazdy, który może wybrać
odpowiednie wagony zależnie od
rodzaju ładunku oczekującego na stacji
początkowej i zapotrzebowania na
stacji docelowej.
http://freshmeat.net/projects/freerails/
GTorrentViewer 0.2a
Ten program pozwala na sprawdzenie
i zmodyfikowanie plików .torrent
bez konieczności rozpoczynania
pobierania. Możliwe jest sprawdzenie
plików (ile zostało do pobrania,
na ile części są podzielone), jak
również pobranie informacji
z trackera. Można też sprawdzić
Rysunek 2. Na domowej stronie projektu można przeczytać dokładny opis systemu stref, liczbę osób udostępniających pliki
sieci, grup i usług i je pobierających. W ostatnich
wersjach wprowadzono obsługę
tu przypisać. W tym celu wciskamy icmp-port-unreachable) i już możemy drag&drop, jak również usunięto
zależności od bibliotek libglade i libssl.
klawisz [F6 ], następnie [Insert ] i wska- wyjść do spisu reguł klawiszem [F10 ]. Poprawiono także szereg błędów.
zujemy nasz interfejs. W miarę potrzeb Przy okazji warto zauważyć, że użyli- http://freshmeat.net/projects/
możemy też ustawić inne opcje doty- śmy tu oznaczenia komputera firewall. gtorrentviewer/
czące sieci, po czym ustawiamy war- Jest to specyficzne oznaczenie, gdyż Childsplay 0.72
tość opcji Active na Yes. określa komputer, na którym zainsta- Childsplay to zestaw gier dla dzieci,
Gdy dodamy inne sieci do pozosta- lowana jest zapora. Wszystkie regułki zgodny z dewizą: bawiąc – uczy,
ucząc – bawi. Program posiada
łych stref (np. naszą sieć osiedlową), z jego udziałem dotyczą połączeń przy-
wbudowane dwie gry (Memory
należy do nich dodać konkretne adresy chodzących i wychodzących, podczas i wprowadzanie liter) – pozostałe gry
komputerów (Hosts). Komputery może- gdy pozostałe dotyczą połączeń prze- dostępne są w osobnym pakiecie.
my także łączyć w grupy (Groups), np. syłanych (forwarded ). Dostępne gry są przeznaczone dla
młodszych dzieci, które mogą tu
w celu określenia wspólnych reguł dla Gdy już wszystko mamy skonfigu-
poćwiczyć rozpoznawanie liter,
wszystkich serwerów pocztowych lub rowane, możemy uruchomić właści- podstawowe działania arytmetyczne,
dla nielubianych kolegów. Wszystkie te wy program na kilka różnych sposo- a także rozpoznawanie obrazków
czynności mają na celu dokładne opi- bów. Do wyboru mamy uczynienie i dźwięków. W najnowszej wersji
poprawiono szereg błędów i dodano
sanie naszej sieci, dzięki czemu później z niego demona (jest to zalecana opcja),
nową grę do zestawu. Niektóre gry
będziemy mogli łatwo tworzyć odpo- jednorazowe uruchomienie w celu za- wykorzystują obecnie zlokalizowane
wiednie regułki. Ta wstępna konfigu- ładowania reguł oraz wygenerowa- pliki dźwiękowe.
racja jest dokładniej opisana na stro- nie skryptu powłoki tworzącego reguł- http://freshmeat.net/projects/childsplay/
nie domowej programu, w sekcji User ki. Odpowiednie opcje można znaleźć Aviascene 2
Manual. po uruchomieniu polecenia /usr/bin/ Czy przed wybraniem się w dalszą
wyprawę nie chcielibyśmy mieć
Następnie możemy przejść do do- vuurmuur -h. W katalogu /usr/share/
możliwości zapoznania się z rzeźbą
dawania regułek (Rules w głównym vuurmuur/scripts/ można znaleźć przy- terenu? Program Aviascene nam
menu). I tutaj właśnie mamy najprzy- kładowe skrypty startowe oraz odpo- to umożliwia, ale na razie tylko
jemniejszą część zadania. Po wciśnię- wiadające za rotację logów. dla niektórych rejonów Stanów
Zjednoczonych. Dane o topografii
ciu [Insert ], w większości pól możemy W najnowszej wersji dodano wy-
terenu są wykorzystywane do
użyć klawisza spacji w celu wyświetle- godny skrypt instalacyjny, funkcję po- zrenderowania obrazu. Następnie
nia możliwych wartości. Tak więc, je- mocy w interfejsie graficznym, wspar- możemy udać się w wycieczkę
śli chcemy zablokować koledze połą- cie dla wirtualnych interfejsów, komen- pojazdem kołowym lub nawet
samolotem. Możemy nawet
czenie HTTP z naszym serwerem, to tarze dla regułek oraz różne ulepsze-
wykorzystać współrzędne GPS do
ustawiamy kolejno: (w polu Action) Re- nia interfejsu GUI. Oprócz tego, reguł- ustalania punktów kontrolnych. Jeśli
ject (Service) http (From) komputerkole- ki z włączonym logowaniem mogą mieć nie zamierzamy wybierać się na
gi (To) firewall. W nawiasach są umiesz- ustawione ograniczenia, co powinno wyprawę, zawsze możemy polatać
sobie samolotem nad rzeczywistymi
czone nazwy pól, w których należy utrudnić część ataków typu odmowa
terenami.
umieszczać następujące po nich war- usługi (DoS – Denial of Service). http://freshmeat.net/projects/aviascene/
tości. Jeszcze w polu Reject type usta-
wiamy odpowiedni typ odmowy (np. http://freshmeat.net/projects/vuurmuur/
www.lpmagazine.org 49
aktualności
oprogramowanie gry
Simutrans
– gra ekonomiczna
Marek Bettman
50 styczeń 2005
GAMES News
www.lpmagazine.org 51
dla początkujących
Nessus – skaner
bezpieczeństwa
Piotr Machej
G
dy podłączamy nasz kom- puter jednego z nich padł ofiarą ataku.
puter do Internetu, uzysku- Jak się okazało, zainstalował on Linuk-
jemy dostęp do nieprzebra- sa i będąc święcie przekonany, że to
nych zasobów. Równocze- bezpieczny system, nie podjął żadnych
śnie nasz komputer staje się dostępny dla dodatkowych kroków w celu jego zabez-
innych użytkowników. Nie wszyscy z nich pieczenia. Oczywiście, gdy w wyniku
są nastawieni pokojowo. Trudno zresztą na ataku script-kiddies stracił dane na dysku,
to liczyć, biorąc pod uwagę wciąż rosną- był pełen pretensji do naszego ulubione-
cą liczbę mieszkańców globalnej wioski. go systemu. Wytłumaczyliśmy mu, że
Z tego powodu bardzo ważne jest, aby system dopiero wtedy jest bezpieczny,
zdawać sobie sprawę z zagrożeń, które gdy się o to samemu zadba. I że nie ma
mogą na nas czekać. Jeszcze ważniejsze tu większego znaczenia, czy jest to Linux,
jest, aby potrafić się przed nimi ochronić. czy Windows. Przy okazji postanowili-
W łataniu powszechnie znanych luk śmy sprawdzić, który z naszych kompute-
bezpieczeństwa znacznie mogą nam rów jest lepiej zabezpieczony. Do testów
pomóc wszelkiego typu skanery bezpie- wykorzystaliśmy Nessusa i okazało się, że
czeństwa. Programy takie mają za zada- mój system zajął dopiero trzecie miejsce
nie przetestowanie, czy system jest podat- (na pięć możliwych). Jak to mówią, leni-
ny na określoną metodę ataku. Powinni- stwo nie popłaca. Oczywiście, od razu
śmy skorzystać ze skanera (lub kilku ska- załatałem najgroźniejsze ze znalezionych
nerów) bezpieczeństwa zaraz po zain- luk bezpieczeństwa i obiecałem sobie,
stalowaniu systemu. Później powinni- że będę częściej kontrolował system.
śmy powtarzać tę czynność co jakiś
czas (np. co miesiąc). Pozwoli to wykryć Analiza zabezpieczeń
znane już luki, więc będziemy mieli moż- Przede wszystkim musimy odpowie-
liwość załatać je zanim wykorzysta je wła- dzieć sobie na pytanie, czy nasz system
mywacz. Pamiętajmy bowiem, że rów- jest dobrze zabezpieczony. Odpowiedź
nież "czarne charaktery" mogą korzystać nie jest taka prosta. Włamywacz ma do
z takiego oprogramowania. dyspozycji szereg różnych technik, z któ-
Jednym z bardziej uniwersalnych rych warto wymienić wykorzystanie sła-
(a przy tym otwartym i bezpłatnym) ska- bych haseł, dziur w oprogramowaniu lub
nerem jest Nessus. Jego wielką zaletą błędów w konfiguracji. Nie należy rów-
jest aktualność oraz łatwość rozbudowy. nież zapominać o tym, że zwykle najsłab-
Opiera się na wtyczkach, dzięki czemu szym ogniwem jest człowiek – to my sami
możemy dodać do niego własne testy.
Oprócz tego, możemy automatycznie uak-
tualniać listę wtyczek, dzięki czemu zosta-
ną one dołączone od razu po udostępnie-
niu. Niniejszy artykuł ma na celu popro-
wadzenie Czytelników przez instalację
i konfigurację Nessusa, a także zwróce-
nie uwagi na różne aspekty bezpieczeń-
Na płycie CD/DVD stwa systemu.
Na płycie CD/DVD zamieścili-
Rysunek 1. Nowe wersje Nessusa
śmy oprogramowanie omawiane Przykład użycia
w artykule. pozwalają przeprowadzać również testy
Około rok temu, rozmawiając ze znajo-
lokalne i przyrostowe
mymi na IRC, dowiedziałem się, że kom-
52 styczeń 2005
nessus dla początkujących
www.lpmagazine.org 53
dla początkujących
adresu komputera. W jego miejsce pod- gdzie możemy zapoznać się ze wszyst-
stawiany jest adres komputera, z którego kimi dostępnymi wtyczkami. Biorąc pod
łączy się użytkownik korzystający z Nes- uwagę, że jest ich obecnie sporo ponad 5
susa. Dzięki temu łatwo można pozwolić tysięcy, mamy lekturę na dłuższy czas. Na
użytkownikowi tylko na testowanie jego szczęście, jeśli chcemy przeprowadzić
własnego komputera. Odpowiednie reguł- kompletny test, nie musimy czytać opisu
ki wyglądają następująco: wszystkich wtyczek (opisy są dostęp-
ne po wskazaniu konkretnej wtyczki).
accept client_ip W górnej części znajduje się spis grup,
Rysunek 3. Te systemy wymagają default deny natomiast w dolnej spis wtyczek nale-
wprowadzenia jeszcze kilku zabezpieczeń żących do danej grupy. Możemy zazna-
Wpisywanie regułek kończymy znaną już czyć wszystkie wtyczki wciskając przy-
domyślnych. Po przeczytaniu informa- kombinacją [Ctrl]+[d]. Wprowadzone dane cisk Enable all. Należy zwrócić uwagę, że
cji o nazwach plików, w których zosta- potwierdzamy wpisując y. niektóre testy mają na celu destabilizację
ły zapisane poszczególne certyfikaty, Przed uruchomieniem serwera warto testowanego systemu (tzw. ataki odmowy
możemy wcisnąć [Enter]. sprawdzić, czy nie pojawiły się nowe usługi). Jeśli wolimy nie przeprowadzać
Teraz musimy dodać użytkownika, wtyczki. Wydajemy polecenie /usr/local/ aż tak niebezpiecznych testów, możemy
który będzie mógł korzystać z Nessusa. sbin/nessus-update-plugins – jeśli zosta- je wyłączyć przyciskiem Enable all but
Nie opuszczając konta użytkownika root, ną znalezione nowe wtyczki, program je dangerous plugins. Dodatkowo możemy
wydajemy polecenie /usr/local/sbin/ zainstaluje. Oczywiście, do wykonania wyłączyć całą grupę testów związanych
nessus-adduser. Podajemy nazwę użyt- tego polecenia potrzebujemy połączenia z odmową usługi (Denial of Service).
kownika, a następnie wybieramy sposób z Internetem. Oczywiście, nic nie stoi na przeszko-
uwierzytelniania. Prostsze jest korzysta- Teraz możemy już uruchomić serwer dzie, aby przeprowadzić tylko pojedyn-
nie z hasła niż z certyfikatu, więc wybie- Nessusa poleceniem /usr/local/sbin/ cze, wybrane testy. W tym celu wystar-
ramy tę pierwszą metodę (pass). Oczywi- nessusd -D. Pojawi się informacja o łado- czy najpierw wcisnąć przycisk Disable
ście, należy też podać nasze hasło. Pamię- waniu wtyczek (ang. plugins). Jeśli nie all, a następnie ze spisu wybrać potrzeb-
tajmy jednak, aby nie było to takie samo zadbaliśmy o skompilowanie Nessusa ne nam wtyczki. Warto przy tym zazna-
hasło, jak do któregoś z naszych kont. Jeśli z obsługą OpenSSL, to może pojawić się czyć opcję Enable dependencies at runti-
wybraliśmy metodę uwierzytelniania za kilka ostrzeżeń. Jeśli zainstalowaliśmy me, dzięki czemu w razie potrzeby zosta-
pomocą certyfikatu, to będziemy musieli wcześniej wspomniany pakiet openssl- ną zaznaczone inne potrzebne wtyczki
odpowiedzieć na te same pytania, co przy devel, to powinniśmy zobaczyć napis All (jeśli są potrzebne do działania wybra-
tworzeniu certyfikatu Nessusa (a oprócz plugins loaded. Klienta Nessusa urucha- nych przez nas testów). Dostępny przycisk
tego, na dwa dodatkowe – o nazwisko miamy już z konta zwykłego użytkownika Filter pozwala nam na wyświetlenie tylko
i imię oraz o adres e-mail). poleceniem /usr/local/bin/nessus. wtyczek spełniających określone kryteria
Tworząc użytkownika możemy od (np. w nazwie lub opisie zawierających
razu nałożyć na niego ograniczenia. Doty- Konfiguracja Nessusa słowo ssh).
czą one adresów komputerów, które Po uruchomieniu pokazuje się nam okno Następne dwie zakładki (Prefs.
może testować dany użytkownik. Jeśli programu z kilkoma zakładkami. Na i Scan options) służą do ustawie-
nie chcemy ustalać żadnych ograniczeń, razie interesuje nas tylko pierwsza, gdyż nia dokładniejszych opcji. Możemy tu
to po prostu możemy wcisnąć kombi- musimy połączyć się z serwerem Nessu- zdecydować, jaka technika skanowa-
nację klawiszy [Ctrl]+[d]. W innym przy- sa. W polu Nessusd Host wpisujemy nazwę nia portów ma być zastosowana, jakie
padku możemy wpisać szereg reguł komputera, na którym jest uruchomiony
(po jednej w każdej linii), np.: serwer. Jeśli jest uruchomiony na kompu-
terze, z którego korzystamy, możemy po Ostrzeżenie
Skaner systemowy możemy stosować
accept 192.168.100.0/24 prostu wpisać localhost. Pole Port pozo-
tylko względem systemów komputero-
accept 192.168.5.1 stawiamy bez zmian – Nessus standardo-
wych i sieci, które należą do nas lub co
default deny wo nasłuchuje na porcie 1241. W polach
do których uzyskaliśmy stosowną zgodę.
Login i Password wpisujemy nazwę i hasło Niezastosowanie się do tej zasady może
Powyższe linie pozwalają użytkow- użytkownika Nessusa (te, które wpisywa- grozić niezbyt przyjemnymi konsekwen-
nikowi na testowanie komputerów liśmy po wydaniu polecenia nessus-addu- cjami, z odpowiedzialnością karną włącz-
w sieci 192.168.100.0/24 oraz kompute- ser). Teraz wystarczy wcisnąć przycisk Log nie. O ile bowiem trudno podstawowe
ra 192.168.5.1. Żadnego innego kompu- in. Przy pierwszym uruchomieniu pojawi skanowanie jednoznacznie uznać za
tera nie będzie mógł przetestować, gdyż się informacja o certyfikacie. Sprawdzamy, próbę ataku, o tyle niektórzy administra-
domyślna reguła odmawia mu dostępu czy jest on poprawny, tzn. wyświetlone torzy są na tym punkcie mocno przewraż-
(default deny). Oczywiście, reguły można wartości zgadzają się z tym, co podawali- liwieni. Ponadto, niektóre testy mogą
doprowadzić do zawieszenia niektórych
zbudować inaczej – zabronić dostępu do śmy podczas jego tworzenia, a następnie
usług, a to w przypadku systemów pro-
określonych komputerów i pozwolić do zatwierdzamy go wciskając Yes.
dukcyjnych nie może już być traktowane
wszystkich pozostałych. Ciekawostką jest Po zalogowaniu się zostaniemy prze-
w kategorii żartu.
możliwość użycia słowa client_ip zamiast niesieni do drugiej zakładki (Plugins),
54 styczeń 2005
nessus dla początkujących
R E K L A M A
www.lpmagazine.org 55
dla początkujących
dowolnie zmieniać, dzięki czemu znaj- nowszej. Dalej możemy dowiedzieć się,
dywać luki w inny sposób. Przykłado- jak duże ryzyko (Risk factor) jest związane
wo, warto zamienić miejscami pola Port z danym błędem. W tym przypadku
i Severity, ale również inne kombina- ryzyko jest wysokie (High). Najlepiej jak
cje mogą dać ciekawe efekty – wszystko najszybciej uaktualnić oprogramowanie.
zależy od tego, jakie informacje bardziej W przypadku innych ostrzeżeń, ryzyko
nas interesują. może być średnie (Medium) lub niskie
Istotne jest, abyśmy zapoznali się (Low), a w przypadku informacji o bez-
ze wszystkimi informacjami zawartymi pieczeństwie – nawet zerowe (None). Nie-
w głównym oknie. W przypadku ostrzeżeń mniej, powinniśmy zapoznać się ze wszy- Rysunek 5. W serwisie SecurityFocus
i powiadomień o lukach w bezpieczeń- stkimi informacjami, gdyż każda z nich możemy wyszukiwać informacje o lukach
stwie otrzymujemy opis zagrożenia. Przy- może być istotna. Przykładowo, może na podstawie różnych kryteriów
kładowo, w sytuacji wykrycia przez Nes- okazać się, że jedna z usług, pomimo
susa serwera WWW Apache w wersji star- naszych starań, nadal jest dostępna z Inter-
szej niż 2.0.51, jesteśmy powiadamiani o netu, a nie tylko z sieci lokalnej. Nie należy Dodatkowe
jego wrażliwości na zdalny atak odmowy od razu podejmować czynności opisanych oprogramowanie
usługi (DoS – Denial of Service). Wersje w Solution bez zapoznania się z całym Nessus, oprócz własnych wewnętrz-
te są również podatne na atak z wyko- opisem problemu. Może bowiem okazać nych testów, może wykorzystywać kilka
rzystaniem przepełnienia bufora. Oprócz się, że w ten sposób zablokujemy sobie innych programów. Przykładowo, pro-
takiego opisu, możemy też zobaczyć usługę, na której nam zależało, a co do gram Nmap może być użyty do skano-
kilka dodatkowych rubryk. Adres podany której tylko dostaliśmy pewne pouczenie wania portów i wielu bardziej zaawan-
w See also pozwala nam zapoznać się (jak ma to miejsce w przypadku zainstalo- sowanych operacji, takich jak rozpozna-
z szerszym opisem błędu. Najważniej- wanego oidentd, potrzebnego do łączenia wanie systemu operacyjnego. Jeśli zależy
sza dla nas jest zawartość rubryki Solu- z niektórymi serwerami IRC). nam na przeprowadzeniu testów odpor-
tion, gdyż opisuje ona możliwe rozwiąza- Jeśli chcemy uzyskać jeszcze więcej ności haseł na złamanie, możemy zain-
nie problemu. W przypadku wspomnia- informacji na temat błędu, możemy sko- stalować program Hydra. Pozwoli on na
nego błędu rozwiązaniem jest uaktualnie- rzystać z wartości podanych w rubrykach wykonanie prób brutalnego złamania
nie serwera Apache do wersji 2.0.51 lub CVE i BID. Pierwsza z nich podaje sym- haseł (bruteforce attack) w takich usłu-
bole, według których możemy wyszuki- gach, jak Telnet, WWW, POP3, IMAP
wać informacje na stronie Common Vul- i inne. Oprócz tego, można wykorzy-
Fałszywe alarmy nerabilities and Exposures (pod adre- stać program Nikto – zapewnia on obsłu-
Należy pamiętać, że Nessus przepro- sem http://www.cve.mitre.org/cve/index gę specyficznych ataków i testów doty-
wadza analizę na podstawie dostępnych .html wpisujemy symbol w polu CVE czących serwerów WWW i usług skryp-
informacji. Może się okazać, że będą
Name). Druga podaje identyfikator błędu tów CGI.
one niewystarczające lub doprowadzą do
na liście BugTraq (możemy go wpisać O ile program Nmap możemy zna-
błędnych wniosków. Z tego powodu część
w polu Bugtraq ID na stronie http:// leźć w większości dystrybucji Linuksa,
ostrzeżeń, a nawet powiadomień o lukach
w zabezpieczeniach, może okazać się fał- www.securityfocus.com/bid/bugtraqid/ ). o tyle pozostałe programy raczej
szywa. Raport ze skanu możemy zapisać na musimy zainstalować osobno. Nie są
Może się tak przykładowo zdarzyć dysku korzystając z przycisku Save report. one niezbędne do działania Nessusa,
w sytuacji, gdy Nessus jest w stanie roz- Do wyboru mamy kilka różnych forma- ale zwiększają jego funkcjonalność.
poznać oprogramowanie nasłuchujące tów zapisu danych. Jeśli zdecydujemy się Adresy ich stron domowych znajdują się
na określonym porcie, ale nie umie usta- zapisać raport w formacie NBE, to później w ramce W Internecie.
lić jego wersji. W tym przypadku może będziemy mogli go ponownie otworzyć
ostrzec o błędach, które dotyczą wcze- w kliencie Nessusa. Jeśli natomiast chcemy Przykładowe testy
śniejszych wersji tego programu niż zain-
później obejrzeć raport wraz z różnymi W rozdziale Analiza wyników mogliśmy
stalowana w naszym systemie.
wykresami i zestawieniami w przeglądar- zapoznać się ze sposobem odczytywania
Inna sytuacja, gdy ostrzeżenie może
ce internetowej, to powinniśmy wybrać wyników testów. Spróbujmy teraz zoba-
być fałszywe, to przypadek, gdy błąd
sam w sobie jest groźny, ale ze wzglę- format HTML with Pies and Graphs. czyć kilka wyników z prawdziwego ska-
du na podjęte przez nas inne czynności Wyniki skanowania zależą od tego, nowania i zastanowić się, jak je trakto-
(np. odpowiedni podział dysku na party- jakie opcje dobierzemy. Warto zapoznać wać. Analizie został poddany kompu-
cje), w naszym systemie okazuje się być się z obszerną dokumentacją dostępną ter z dosyć dawno instalowanym sys-
nieszkodliwy. na stronie domowej Nessusa, aby lepiej temem, tylko w razie potrzeby uzupeł-
Nie da się wyliczyć wszystkich sytu- poznać jego możliwości i zastosowa- nianym nowymi pakietami, więc zgło-
acji, gdy Nessus może zwrócić fałszy- nie poszczególnych opcji konfiguracyj- szeń błędów było dosyć dużo (7 luk, 18
we alarmy. Dobrze jest uważnie czytać nych. Z pewnością sprawi to, że będzie- ostrzeżeń i 39 informacji). Raport został
opisy zgłoszeń i starannie je analizować.
my mogli lepiej dobierać ustawienia do zapisany w formacie HTML with Pies and
Nessus zwraca stosunkowo mało fałszy-
naszych potrzeb, co w rezultacie pozwo- Graphs.
wych alarmów, ale nie należy mu ufać
li skuteczniej zwiększyć bezpieczeństwo Na pierwszej stronie raportu został
bezgranicznie.
systemu i sieci. przedstawiony w formie graficznej pro-
56 styczeń 2005
nessus dla początkujących
centowy udział poszczególnych pozio- Obie te luki umożliwiają atak zaporze sieciowej możemy po prostu
mów ryzyka. Ponieważ poziomy High z zewnątrz, więc należą do najbardziej wyłączyć SWAT (o ile go nie potrze-
i Medium uzyskały odpowiednio po niebezpiecznej grupy. O ile w przypad- bujemy).
11% i 28%, to odpowiednie kroki ku pierwszej z nich nie potwierdzono Jak widać, w celu wyrobienia sobie
powinno podjąć się jak najszybciej. Naj- istnienia działających eksploitów, o tyle obrazu tego, co musimy zrobić, powin-
bardziej zagrożonymi usługami oka- w przypadku drugiej taki kod istnieje. niśmy zapoznać się ze wszystkimi opi-
zały się CVSpserver i usługa działają- Oprócz nich, Nessus zgłosił dwa sami błędów, ostrzeżeniami, a nawet
ca na porcie 5432 (zidentyfikowana ostrzeżenia dotyczące serwera CVS. zwykłymi informacjami. W przypad-
później jako PostgreSQL). co przedsta- Pierwszy z nich (http://cgi.nessus.org/ ku, gdy chodzi o bezpieczeństwo, nie
wił kolejny wykres. W celu uzyskania plugins/dump.php3?id=11947) dotyczy powinniśmy pozwalać sobie na nie-
dokładniejszych informacji powinniśmy błędu sprawdzania wprowadzanych dbałość. Poza tym, szkoda naszej pracy
przejść do części drugiej raportu, wska- danych, mogącego pozwolić intruzo- – gdybyśmy działali od razu po przeczy-
zując nazwę testowanego komputera. wi na tworzenie katalogów i plików taniu każdej informacji, to serwer CVS
Tu możemy zobaczyć listę otwar- w głównym katalogu systemu plików uaktualnialibyśmy w najgorszym przy-
tych portów. Okazuje się, że jest ich przechowującego drzewo CVS. Drugi padku cztery razy.
aż 34, z czego na pięciu Nessus zna- z kolei (http://cgi.nessus.org/plugins/
lazł luki bezpieczeństwa (CVSpserver, dump.php3?id=12212) może pozwalać Zakończenie
MySQL, HTTPS, Microsoft-ds i port na pobieranie plików RCS nawet spoza Zabezpieczanie komputerów i sieci to
5432, wykorzystywany przez Postgre- głównego katalogu CVS. Do poprawie- wyścig bez końca. Należy pamiętać, że
SQL), a dla sześciu wyświetlił ostrzeże- nia tych błędów powinno wystarczyć istnieje pewna granica, której podczas
nia. Poza tym jedenaście portów zosta- uaktualnienie CVS do wersji 1.11.15 lub zabezpieczania nie możemy lub nie
ło opatrzonych informacjami, a pozo- wyższej. powinniśmy przekroczyć. Jest to grani-
stałe zostały tylko zakomunikowane Korzystając z informacji zawartych ca wygody naszej lub naszych klientów
jako nasłuchujące. Zapoznajmy się naj- we wszystkich czterech zgłoszeniach, w korzystaniu z systemu lub sieci.
pierw z dwoma lukami dotyczącymi ostatecznie powinniśmy się zdecydo- Nie ulega bowiem wątpliwości, że nie
serwera CVS. wać na wersję 1.11.17 lub wyższą. ma sensu zabezpieczać komputera do
Pierwsza z nich została wykryta Warto zwracać uwagę na komuni- tego stopnia, że nikt nie będzie chciał
przez wtyczkę opisaną na stronie katy informacyjne. Właśnie odnośnie z niego korzystać. Jakie dane będzie-
http://cgi.nessus.org/plugins/dump.php3?id serwera CVS został wyświetlony jeden my wtedy chronić? Znalezienie kom-
=11970. Do opisów wtyczek prowadzą taki komunikat (http://cgi.nessus.org/ promisu pomiędzy wygodą i bezpie-
odnośniki umieszczone w polu Nessus plugins/dump.php3?id=10051). Sugeruje czeństwem to właśnie nasze zada-
ID. Jest to ostrzeżenie przed błędem ist- on, aby zablokować dostęp z zewnątrz nie. Należy do niego nie tylko zabez-
niejącym w CVS do wersji 1.11.10, mogą- dla portu CVS. Jest to mądre, i o ile pieczenie sprzętu i oprogramowania,
cym pozwolić intruzowi na wykonywa- tylko nie musimy udostępniać serwera ale również odpowiednie wychowa-
nie w systemie poleceń z uprawnienia- CVS osobom z sieci, powinniśmy dopi- nie użytkowników. Pamiętajmy zawsze
mi użytkownika root. Ponieważ Nessus sać odpowiednią regułkę w zaporze sie- o tym, że łańcuch zabezpieczeń jest
nie był w stanie określić numeru wyko- ciowej. Jeśli koniecznie musimy udo- tak silny, jak jego najsłabsze ogniwo.
rzystywanej wersji CVS, pojawiło się stępnić serwer, to powinniśmy przy- A najsłabszym ogniwem bardzo często
ostrzeżenie, że może to być fałszywy najmniej ograniczyć liczbę komputerów, okazuje się człowiek.
alarm. Niestety, sprawdzenie w testowa- które mogą się z nim łączyć. Warto też
nym systemie (rpm -q cvs) wykazało, że zauważyć, że powinno to automatycz-
jednak jest on narażony na atak – zain- nie zniwelować możliwość wykorzysta-
stalowana wersja CVS to 1.11.2-10. Zale- nia przez włamywacza wymienionych W Internecie:
canym przez Nessusa (i w zasadzie naj- wcześniej luk.
• Strona domowa programu Nessus:
lepszym) rozwiązaniem jest aktualiza- Innym przykładem portu, który
http://www.nessus.org/
cja oprogramowania do wersji co naj- powinien być odfiltrowany na zapo- • Strona domowa programu Nmap:
mniej 1.11.11. rze sieciowej, jest port 901, należą- http://www.insecure.org/nmap/
Zanim to zrobimy, zapoznajmy się cy do programu SWAT. O ile bowiem index.html
z opisem drugiej luki. Ta została wykry- błąd przedstawiony w ostrzeżeniu • Strona domowa programu Hydra:
ta przez wtyczkę opisaną na stro- (http://cgi.nessus.org /plugins /dump. http://www.thc.org/releases.php
nie http://cgi.nessus.org/plugins/dump. php3?id=10273) dotyczy dosyć starej • Strona domowa programu Nikto:
php3?id=12265. Również ta luka nie wersji 2.0.7 (więcej informacji na stro- http://www.cirt.net/code/nikto.shtml
jest mała – ze względu na brak termi- nie http://www.securityfocus.com/bid/ • Wprowadzenie do Nessusa (artykuł
natora NULL w źle sformatowanych cią- 1872). o tyle rzeczywiście możliwe jest autorstwa Harry'ego Andersona):
http://www.securityfocus.com/
gach tekstowych, intruz może wykony- wykonanie brutalnego ataku na tę
infocus/1741
wać pewne polecenia w naszym sys- usługę. Może to być szczególnie nie-
• Lista BugTraq:
temie. Zalecana jest aktualizacja aż do bezpieczne, jeśli hasła Samby są zsyn- http://www.securityfocus.com/
wersji 1.11.17, a więc wyższej niż przy chronizowane z hasłami systemowymi. archive/1
poprzedniej luce. Oczywiście, zamiast filtrować port na
www.lpmagazine.org 57
dla początkujących
Sztuczki i kruczki
Grzegorz Niewęgłowski
Synchronizowanie czasu i daty gar. Synchronizacja zmienia tylko Listing 1. Przykładowa sekcja “Files”
z serwerami w Internecie zegar Linuksa, ale nadal działa nie-
Wygodnym sposobem ustawiania skorygowany zegar płyty głównej. Section "Files"
daty systemowej jest synchronizowa- Dlatego, aby zmiana była stała, należy
nie jej ze specjalnymi serwerami czasu. po synchronizacji zegara zapisać jego FontPath "/usr/lib/X11/fonts/misc"
Dzięki temu mamy poprawnie działa- ustawienia w zegarze płyty głów- FontPath "/usr/lib/X11/fonts/S
jący, co do sekundy, zegar systemo- nej. Wykonamy to programem /sbin/ 100dpi”
wy i na dodatek nie musimy przepro- hwclock, który wchodzi w skład Util- FontPath "/usr/lib/X11/fonts/75dpi"
wadzać tej operacji ręcznie – wystar- linux : FontPath "/usr/lib/X11/fonts/Type1"
czy tylko znaleźć adres odpowiednie- FontPath "/usr/share/fonts/S
go serwera. Najpopularniejsze są pole- # /sbin/hwclock –systohc FantasyTTF"
cenia rdate i ntpdate (odpowiednio EndSection
z pakietów rdate i ntp). Do normal- Wiele dystrybucji Linuksa (choć nie
nych zastosowań wystarcza rdate, ale wszystkie) wykonują taką czynność
dla osób potrzebujących precyzji idącej automatycznie przy wyłączaniu kompu-
w milisekundy, ntpdate będzie lep- tera, ale jeśli nie mamy co do tego pew- konale radzi sobie z obsługą fontów
szym wyborem. ności, to lepiej samodzielnie zapisać bitmapowych i skalowalnych (w tym
Dobrym źródłem aktualnego czasu ustawienia zegara po synchronizacji. ■ TrueType). Można więc zrezygnować
jest ntp.task.gda.pl. Najpierw warto z osobnego serwera fontów, wyłą-
sprawdzić, czy możemy połączyć się X-Server i dostęp do fontów czając jego proces i zdając się na
z serwerem i czy jego czas jest popraw- Wiele razy spotykam się z pytaniem: mechanizmy wbudowane w same X-y.
ny. Zdalny czas odczytujemy tymi pole- „A po co jest ten cały xfs ?”, w odniesie- Oszczędzi to trochę zasobów, a uru-
ceniami: niu do tajemniczego programu potrzeb- chamianie X-ów stanie się prostsze
nego X-om do pracy. Xfs jest serwe- (nie trzeba będzie najpierw urucha-
# rdate ntp.task.gda.pl rem fontów. To oznacza, że w opar- miać xfs).
# ntpdate -q ntp.task.gda.pl ciu o swój plik konfiguracyjny, defi- Zmian dokonujemy w pliku kon-
niujący, gdzie położone są fonty, udo- figuracyjnym X-ów, czyli /etc/X11/
Jeśli podawany czas jest popraw- stępnia je X-om. Ma naturę sieciową XF86Config (lub xorg.conf ). Najpierw
ny, możemy zsynchronizować według i może obsługiwać wielu klientów, musimy poprawić sekcję Files, usu-
niego własny komputer. Ten krok więc możliwe jest uruchomienie poje- wając z niej wiersz FontPath "unix/:
wymaga już uprawnień superużytkow- dynczego serwera Xfs w sieci lokalnej 7100" (lub podobny). Zamiast niego
nika, bo przestawieniu ulegnie zegar i takie skonfigurowanie X-ów na wpisujemy bezpośrednio ścieżki dostę-
systemowy Linuksa: innych maszynach, aby wszystkie pu do katalogów z fontami – można
pobierały od niego fonty. Pozwa- posiłkować się zawartością konfigu-
# rdate -s ntp.task.gda.pl la to zaoszczędzić miejsce na dysku racji Xfs, zwykle w /etc/X11/fs/config.
# ntpdate ntp.task.gda.pl (wielu klientów ma wspólne repozy- Powinniśmy wpisać te katalogi do
torium fontów) i często ominąć pewne sekcji Files tak, aby wyglądała po-
Taka korekta zniknie jednak zapew- restrykcje licencyjne samych fontów dobnie do tej z Listingu 1 (oczy-
ne po restarcie komputera. Jest to spo- (korzysta się z pojedynczej kopii wiście, katalogi z fontami mogą być
wodowane istnieniem dwóch osob- fontów). inne).
nych zegarów – jeden z nich to zegar Ale czy ma to sens w przypad- Oprócz tego, konieczne może być
utrzymywany przez Linuksa w trak- ku typowej stacji roboczej, gdy fonty skorygowanie sekcji Module. W zależ-
cie jego pracy, a drugi jest wbudowany leżą na lokalnym dysku? Kiedyś ności od używanych fontów, musimy
w płytę główną i podtrzymywany owszem, gdyż miało to swoje uzasad- włączyć odpowiednie moduły:
bateryjką po wyłączeniu maszyny. nienie – tylko zewnętrzne serwery
Przy uruchamianiu, Linux odczytuje fontów umiały udostępniać fonty True- Load "freetype"
jego ustawienia i bazując na nich Type. Obecnie sam X-Server (nieważne, Load "type1"
zaczyna prowadzić swój własny ze- czy wersja XFree86, czy X.org) dos- Load "bitmap"
58 styczeń 2005
sztuczki i kruczki dla początkujących
Moduł freetype odpowiada za fonty w jądrze zabrakło obsługi jakiegoś wywać się jak typowa linuksowa apli-
TrueType (*.ttf ). Moduł type1 obsługuje specyficznego urządzenia. W tym kacja. Oczywiście, możemy użyć
fonty Adobe Type1 (*.afm, *.pfm, *.pfb), przypadku chodzi o urządzenie typu dowolnej innej ścieżki, ale ~/.Choices
a niezbędny moduł bitmap fonty bit- char (urządzenie znakowe), o głów- wydaje się być naturalnym wybo-
mapowe (zwykle w plikach *.bdf ). Jeśli nym (major) numerze równym 10 rem. ■
nie mamy zamiaru używać np. fontów oraz pobocznym (minor) równym 135.
Type1, to możemy pominąć ładowanie Na szczęście, ten kod da się prze- Położenie katalogu ze źródłami
odpowiedniego modułu. ■ łożyć na język zrozumiały dla zwy- jądra
kłego użytkownika – odpowiedzi mo- Umieszczasz swoje źródła jądra w /usr/
Dlaczego mój Aterm/Eterm żna znaleźć w pliku /usr/src/linux/ src/linux ? A ktoś mówi, że to zły
nie jest przezroczysty? Documentation/devices.txt (jest on nawyk? Pora to wyjaśnić, bo dooko-
Nowi użytkownicy terminali obsługu- częścią dokumentacji jądra). Znajdu- ła miejsca, w którym trzyma się źródła
jących przezroczystość (np. Aterm lub ją się w nim szczegółowe tabele opi- jądra, narosło już dość nieporozu-
Eterm) często ze zdziwieniem zauwa- sujące kombinacje numerków i typów. mień.
żają, że tło, zamiast oczekiwanej prze- Najpierw musimy znaleźć rozpiskę Tak naprawdę chodzi nie o jądro,
zroczystości, jest całkiem czarne. dla głównego numeru 10 urządzeń lecz bibliotekę glibc. Zawsze integruje
Wyjaśnienie jest proste – aby prze- znakowych. Szukanie ciągu 10 char się ona z nagłówkami jądra, na którym
zroczystość mogła zadziałać, potrzeb- od razu zaprowadzi nas tam, gdzie jest kompilowane, również z częścią
na jest jakaś tapeta na pulpicie. Nie trzeba. Teraz wystarczy odszukać nagłówków Linuksa. I to o te nagłów-
jest to jedyny warunek, gdyż oprócz pozycję z numerem pobocznym 135. ki chodzi. Po instalacji glibc powinny
tego, tapeta musi być ustawiana Oto jak wygląda ten fragment doku- się one znajdować w /usr/include/
specjalnym programem, przystoso- mentacji: linux i /usr/include/asm (oraz /usr/
wanym do wykonywania w pamię- include/asm-generic na nowszych sys-
ci operacyjnej specjalnej kopii tapety (...) temach). Do tych katalogów odwołują
na użytek przezroczystości. Takimi 134 = /dev/apm_bios Advanced PowerS się nagłówki glibc i w katalogach tych
programami są przykładowo Esetroot Management BIOS powinny zawsze znajdować się kawał-
(zwykle rozprowadzany razem z Eter- 135 = /dev/rtc Real Time Clock ki tego jądra, na którym glibc skom-
mem) oraz Habak (używany w silnie 139 = /dev/openprom SPARC OpenBootS pilowano.
zorientowanym na efekty przezroczy- PROM Aby zaoszczędzić miejsce na dysku,
stości projekcie Fvwm Crystal ). Uży- wiele dystrybucji, zamiast kopiować
wając odpowiedniego narzędzia do Jak widać, numer 135 przypisany pliki do /usr/include/linux, po prostu
ładowania tapety, bez problemu osią- jest urządzeniu /dev/rtc, czyli Real robiło tam dowiązania symbolicz-
gniemy np. takiego Aterma jak na Time Clock. Z tymi informacjami ne od źródeł jądra w /usr/src/linux.
Rysunku 1. ■ już wiadomo, której funkcjonalności Dzięki temu nie dublowało się plików,
jądra brakuje i co musimy dokompi- ale dochodziło do potencjalnie nie-
Co znaczą symbole typu lować. ■ bezpiecznej sytuacji – w momen-
char-major-10-135 w logach? cie aktualizacji źródeł jądra, poprzez
Czasem w logach jądra, zwłaszcza po ROX-Filer i katalog ~/Choices dowiązania symboliczne dochodzi-
pierwszych w życiu próbach samodziel- Nietypowe położenie katalogu ~/Choices ło też do aktualizacji części nagłów-
nej kompilacji, pojawiają się komunika- może być irytujące. Tradycyjnie, apli- ków glibc – tyle, że samo glibc nic
ty dotyczące niemożności załadowania kacje linuksowe przechowują swoje o tym nie wiedziało. W efekcie mogło
modułu np. dla char-major-10-135. Co prywatne dane (zapisaną konfigura- dojść przez to do konfliktów nagłów-
oznacza ten zapis? cję) w katalogach ukrytych, o nazwach ków i trudnych do przewidzenia
Jest to sposób oznaczenia pliku zaczynających się od kropki. ROX-Filer awarii w nowo kompilowanych pro-
urządzenia w /dev, czyli zapewne wyłamuje się z tej konwencji, a obec- gramach.
ność tego katalogu bezpośrednio Jeśli jesteśmy ciekawi, to sprawdź-
w $HOME może przeszkadzać. Z tego my, jak wyglądają nasze pliki /usr/
względu autorzy ROX-Filera wprowa- include/linux itp. – jeśli to prawdzi-
dzili możliwość przesunięcia tego kata- we katalogi, to spokojnie możemy
logu. Opcja ta nie jest dostępna w kon- trzymać źródła najnowszego jądra
figuratorze, gdyż jest sterowana przez w /usr/src/linux, bo nie powodu-
zmienną środowiskową CHOICESPATH. je to podmieniania nagłówków. Jeśli
Jeśli dodamy do swojego ~/.bashrc jednak /usr/include/linux to nie kata-
wiersz: log, a dowiązanie symboliczne prowa-
dzi gdzieś do /usr/src/linux, to lepiej
export CHOICESPATH=$HOME/.Choices nie zmieniajmy tam nic i źródła naj-
Rysunek 1. Aterm – uruchomiony nowszego jądra ściągniętego z http://
przez wywołanie polecenia: i zmienimy nazwę katalogu Choices na www.kernel.org rozpakowujmy w ja-
# aterm -tr -rv -fn 9x15bold -sh 70 .Choices, to ROX-Filer zacznie zacho- kimś innym miejscu. ■
www.lpmagazine.org 59
sprzęt
Programowy
RAID oraz LVM
Piotr Wolny
C
oraz więcej spośród naszych larnych rodzajów RAID można przeczytać
komputerów jest wyposażo- w ramce Poziomy RAID. Generalnie, RAID
nych w więcej niż jeden dysk umożliwia:
twardy. Tradycyjnie, zakłada-
my na tych dyskach kilka partycji, gdyż • zwiększenie bezpieczeństwa danych,
Linux umożliwia nam montowanie róż- jeśli stosujemy nadmiarowe dyski
nych części systemu plików (np. /usr czy (bez nadmiarowych dysków nasz
/home) z niezależnych urządzeń. Na tym RAID jest bardziej podatny na awarię
nie kończą się możliwości wykorzystania niż pojedyncze dyski);
dysków twardych w Linuksie. Od dawna • szybkość odczytu i zapisu danych
nasz system wspiera dwa bardziej zaawan- zwiększa się, jeśli tylko zastosujemy
sowane mechanizmy gromadzenia danych: rozdzielanie (ang. striping) danych
Software RAID oraz Logical Volume Mana- na dwa lub więcej niezależnych urzą-
ger. Przy ich pomocy możemy zwięk- dzeń fizycznych;
szyć wydajność pamięci masowej, a także • połączenie kilku niezależnych urzą-
poprawić bezpieczeństwo przechowy- dzeń w jeden system plików może
wanych danych. Choć zarówno Softwa- zwiększyć wygodę administracji sys-
re RAID, jak i Logical Volume Manager temem w pewnych konfiguracjach.
(LVM), kojarzą się często z wielkimi serwe-
rami, wyposażonymi w dziesiątki dysków, Pamiętajmy jednak, że RAID ma pewne
to z powodzeniem możemy je wykorzysty- ograniczenia:
wać również na domowych komputerach,
wyposażonych w dwa, trzy dyski twarde. • jedno utworzone urządzenie RAID nie
Ponadto, LVM jest również użyteczny może być dzielone na partycje, co cza-
z jednym dyskiem. sami powoduje konieczność konfigu-
rowania kilku RAID równocześnie;
RAID a LVM
Historycznie, starszym rozwiązaniem jest
DVD programowy RAID. Idea Redundant Arrays
Po uruchomieniu Linux+ Live of Inexpensive Disks nie jest taka stara, gdyż
DVD można przetestować oma-
pochodzi z 1987 roku. Opracowano wtedy
wiane zagadnienia.
koncepcję łączenia wielu tanich dysków
Na płycie CD/DVD w jedno duże i szybkie urządzenie. Aby
Na płycie CD/DVD znajduje się awaria jednego z połączonych dysków nie
oprogramowanie omawiane powodowała utraty danych na całej macie-
w artykule. rzy, w koncepcji ujęto dyski nadmiarowe
(ang. redundant), niezbędne do odtwo-
O autorze rzenia danych, w przypadku awarii. Tra-
Autor hobbistycznie i zawodo-
dycyjne RAID wykonuje się sprzętowo,
wo zajmuje się Linuksem mniej
najczęściej łącząc dyski SCSI, które, po
więcej od czasów jądra 2.0.20.
Obecnie pracuje w organiza- podłączeniu do komputera, są widocz-
cji społecznej. Poza Linuksem ne jako jedno urządzenie. Linux umożli-
fascynuje go rock progresywny. wia nam budowę RAID poprzez progra-
Rysunek 1. W Linuksie dyski różnego
Kontakt z autorem: mowe połączenie dysków w macierze
typu możemy łączyć w jedno urządzenie
autorzy@lpmagazine.org i mogą to być zarówno urządzenia SCSI,
RAID lub LVM
IDE, jak również SATA. Na temat popu-
60 styczeń 2005
software raid oraz logical volume manager sprzęt
Tworzymy programowy
RAID RAID i LVM podczas
Programowy RAID możemy założyć na instalacji dystrybucji
co najmniej dwóch dowolnych partycjach. Instalatory większości nowoczesnych dys-
Aby miał on jakikolwiek sens, partycje te trybucji umożliwiają utworzenie urządzeń
powinny znajdować się na osobnych dys- RAID i LVM już podczas instalacji Linuksa.
Przykładowo, w Aurox Linuksie wystarczy,
kach. Zakładanie RAID na dwóch party-
że wybierzemy Partycjonowanie ręczne
cjach jednego dysku nie zwiększy bezpie-
Disk Druidem i będziemy mogli utworzyć
czeństwa danych, ani nie przyspieszy ope-
RAID-a, LVM-a, a nawet LVM-a na RAID-
Rysunek 2. Sterowniki do RAID i LVM racji dyskowych. Możemy łączyć w jeden ie. W nowych wersjach Mandrakelinuksa
znajdziemy w jądrze Linuksa RAID partycje z całkiem różnych dysków, również musimy wybrać ręczny podział
np. IDE, SCSI czy SATA, ale z reguły taka na partycje, a później dodatkowo przełą-
• raz utworzony RAID nie może zostać hybryda będzie pracowała z prędko- czyć się na tryb zaawansowany. Instala-
rozszerzony na więcej dysków. ścią najwolniejszego spośród nich. Jeśli tor tej dystrybucji ma podobne możliwości,
chcemy łączyć dwa dyski IDE, powinny ale zdaje się, że nie pozwala na tworzenie
Dzięki RAID, to co komputer widzi jako one znajdować się na osobnych kanałach LVM-a na RAID-ie.
jedno urządzenie blokowe, może być IDE – gdy będą połączone jedną taśmą, Jeśli wiemy, jak działają urządze-
nia RAID oraz LVM, utworzenie ich przy
w istocie kombinacją kilku partycji na róż- zauważymy wyraźny spadek wydajności.
pomocy któregoś z tych instalatorów
nych dyskach twardych. Logical Volume Programowy RAID jest realizowany na
nie powinno stwarzać żadnych proble-
Manager idzie znacznie dalej. Udostęp- poziomie jądra systemu. Musimy posiadać
mów. Przykładowo, aby stworzyć RAID
niane przez niego urządzenia blokowe w jądrze wsparcie dla RAID. Przy konfi- w Aurox Linuksie, klikamy na RAID, wybie-
nie tylko mogą fizycznie znajdować się guracji jądra, w dziale Multi-device sup- ramy pierwszy z dysków i zaznaczamy
na dowolnej ilości dysków czy partycji, ale port (RAID and LVM), powinniśmy zazna- utworzyć partycję programowego RAID.
również możliwe jest ich łatwe powięk- czyć RAID support oraz potrzebne tryby Następnie to samo powtarzamy dla kolej-
szanie, zmniejszanie oraz przenoszenie. RAID (możemy wszystkie). Najwygodniej nych dysków. Na zakończenie, jeszcze raz
To tak, jakby jedna tablica partycji obej- jest wkompilować obsługę RAID na stałe klikamy na RAID i wybieramy utworzyć
mowała nie tylko kilka dysków, ale rów- do jądra. Możemy również nie kompilo- urządzenie programowego RAID. Wtedy
nież umożliwiała dodawanie/usuwanie, wać jądra samodzielnie i polegać na dys- będziemy mogli podać jego typ, punkt
zamontowania oraz system plików, który
zwiększanie/zmniejszanie partycji bez trybucyjnym – we wszystkich nowych
zostanie na nim utworzony. LVM tworzy-
żadnej przerwy w pracy systemu – czasem dystrybucjach znajdziemy moduły linear,
my podobnie – najpierw tworzymy jedną
nawet bez odmontowania partycji. Możli- raid0, raid5 itd., potrzebne do działa-
lub kilka partycji typu physical volume
we jest przy tym równie łatwe dokładanie nia naszej macierzy. Wystarczy polecenie LVM, a później klikamy na LVM i tworzymy
kolejnych dysków. Reasumując, dzięki LVM cat /proc/mdstat, aby dowiedzieć się, czy poszczególne woluminy logiczne.
otrzymujemy: nasze jądro posiada wsparcie dla Software Moje doświadczenia z tworzeniem
RAID. Jeśli zobaczymy komunikat o braku RAID-a oraz LVM-a przez instalatory
• całkowitą dowolność w przydzielaniu pliku, musimy skonfigurować i skompilo- dystrybucji nie są zachęcające. Polecam
poszczególnych fizycznych dysków czy wać nowe jądro własnoręcznie. instalację na tradycyjnych urządzeniach,
partycji jako urządzeń blokowych w sys- Programowy RAID jest dostępny w ją- a dopiero później stworzenie RAID-a czy
temie (np. urządzenie zamontowane drze Linuksa od bardzo dawna – jest stan LVM-a i przeniesienie na nie odpowiednich
katalogów.
jako /home może składać się z jedne- dardowo obecny w jądrach z serii 2.4.x
go dysku IDE i połowy dysku SCSI); i 2.6.x, ale istnieją łatki pozwalające używać
• możliwość łatwego zwiększania i zmnie- go z jądrami 2.2.x, a nawet 2.0.x. Wszystkie i hdd. Na obydwu tych dyskach utwo-
jszania (jeśli system plików umożliwia opisane tutaj czynności wykonywałem na rzyliśmy partycje, przy czym na RAID
to drugie) poszczególnych urządzeń jądrze 2.6.9 – powinny one wyglądać iden- mają być przeznaczone hda2 oraz hdd2.
widzianych przez system operacyjny tycznie w starszych wersjach jądra, włą- Zanim rozpoczniemy właściwą pracę,
oraz przenoszenia ich między dyskami cznie z serią 2.4.x. możemy przetestować szybkość działa-
(obejmuje to również łatwe dodawanie Poza wsparciem w jądrze systemu, nia tych dysków, przed zbudowaniem
i odejmowanie dysków z systemu); będziemy potrzebować jeszcze dwóch z nich macierzy. Jak na poważnie podejść
• rozdzielanie (ang. striping) danych na pakietów z oprogramowaniem: mdadm do testowania wydajności dysków, korzy-
dwa lub więcej niezależnych urządzeń oraz raidtools (w Debianie – raidtools2). stając z programu Bonnie++, opisuję
fizycznych, aby zwiększyć wydajność; Ten pierwszy zawiera narzędzie do akty- w ramce Jak testować dyski?. Przy pro-
• funkcję ułatwiającą wykonywanie wowania i zatrzymywania urządzeń jektowaniu systemu, w którym ważną
kopii bezpieczeństwa (snapshot). RAID, a drugi dostarcza podstawowych rolę odgrywa wydajność pamięci maso-
narzędzi do tworzenia macierzy. Znajdzie- wej, należy zawsze kierować się wskaza-
Wadą linuksowego LVM-a jest brak możli- my te pakiety we wszystkich popularnych niami programu Bonnie++ lub podobne-
wości stosowania nadmiarowych dysków, dystrybucjach Linuksa. go. W tym artykule, aby szybko i obrazo-
ale możemy połączyć go z programowym Załóżmy, że nasz system operacyj- wo pokazać różnice pomiędzy konfigura-
RAID-1, aby zapewnić sobie dodatkowe ny jest zainstalowany na dysku sda, a na cjami RAID, posłużę się programem dd.
zabezpieczenie. RAID chcemy przeznaczyć dyski IDE: hda Przykładowo, po utworzeniu na partycji
www.lpmagazine.org 61
sprzęt
hda2 systemu plików ext2, zamontowa- cia tej macierzy podczas uruchamiania Widzimy prawie dwukrotny wzrost pręd-
niu jej w /mnt/test/, wykonałem komendy: się jądra systemu; chunk-size określa w kości zapisu tego pliku (z 32,8 do 18,4
cd /mnt/test; dd if=/dev/zero of=ska- kilobajtach, na jakie najmniejsze jednost- sekundy). Podobna macierz, utworzo-
suj_mnie count=2000000.W efekcie otrzy- ki będą dzielone dane podczas zapisu na na w moim komputerze na dyskach
małem następującą prędkość zapisu linio- macierz (nie można jednoznacznie powie- SATA, poradziła sobie z tym zapisem
wego jednego dużego pliku: dzieć, jaka wartość spowoduje najlepszą w 14 sekund.
wydajność, ale wstępnie możemy przyjąć, W ten sposób otrzymaliśmy urzą-
1024000000 bytes transferred że będzie ona równa block size naszego dzenie, które powinno działać znacz-
in 28,490542 seconds systemu plików). Dalej wyliczamy i nume- nie szybciej od pojedynczego dysku,
(35941752 bytes/sec) rujemy wszystkie użyte partycje. zarówno przy operacjach odczytu, jak
Kolejnym krokiem jest zmiana przy i zapisu. Możemy zamontować je
Przy zastosowaniu systemu plików ext3 pomocy programu fdisk identyfikato- w dowolnym miejscu systemu plików,
czas potrzebny dla wykonania tej opera- rów partycji, na których będzie działa- w którym występuje intensywne użycie
cji urósł do 32,8 sekundy. ła macierz. Powinny one otrzymać typ dysku, np. w /var/www. Wystarczy tylko
fd, czyli Linux raid auto. Bez tej czynno- odpowiedni wpis w /etc/fstab i prze-
RAID-0 ści macierz będzie działać, ale nie zosta- niesienie starych danych na nowe urzą-
Najpierw wypróbujemy RAID-0. Aby nie automatycznie wykryta przez jądro dzenie. Jeśli chcemy używać macierzy
go utworzyć, musimy napisać plik /etc/ systemu. w kilku różnych miejscach systemu
raidtab. Na początek umieściłem tam Gdy wszystko jest gotowe, wykonu- plików, musimy dołożyć więcej dysków
następujące wpisy: jemy polecenie mkraid /dev/md0. Oczy- lub posiadane dyski podzielić na więcej
wiście, w jego wyniku utracimy wszyst- partycji, następnie zdefiniować w /etc/
raiddev /dev/md0 kie dane, które mieliśmy na partycjach raidtab kolejne urządzenia /dev/md1, md2
raid-level 0 wymienionych w /etc/raidtab. W rezulta- itd., wszystkie je zainicjować (mkraid), sfor-
nr-raid-disks 2 cie powinniśmy otrzymać coś takiego: matować oraz zamontować.
persistent-superblock 1 Jeśli prawidłowo zainstalowaliśmy
chunk-size 4 handling MD device /dev/md0 pakiety mdadmin oraz raidtools, skryp-
device /dev/hda2 analyzing super-block ty odpowiedzialne za zamykanie syste-
raid-disk 0 disk 0: /dev/hda2, 14659312kB, mu powinny zatrzymać macierz (wyko-
device /dev/hdd2 raid superblock at 14659200kB nać komendę raidstop z odpowiednim
raid-disk 1 disk 1: /dev/hdd2, 18922680kB, parametrem), zanim nasze dyski zostaną
raid superblock at 18922560kB odłączone od zasilania. W wielu dystry-
Jak widzimy, ten plik nie jest skompli- bucjach będzie również działało powia-
kowany. Pierwsza linia określa, które- Jak widzimy, mimo, że partycje te różnią damianie pocztą administratora systemu
go urządzenia dotyczy ta konfigura- się wielkością, macierz została utworzona. o awarii któregoś z dysków. Wspomnia-
cja. Poza md0 możemy mieć dowol- Teraz możemy sprawdzić ją komendą cat ne pakiety mają jeszcze sporo więcej moż-
nie dużą ilość innych urządzeń (oczy- /proc/mdstat. Powinniśmy zobaczyć np. liwości – warto przejrzeć ich pliki konfi-
wiście, powinny się one znajdować na coś takiego: guracyjne w katalogach /etc/default/ oraz
innych partycjach). Opcją raid-level /etc/mdadm/.
ustalamy rodzaj macierzy – w tym Personalities : [linear] [raid0]
przypadku RAID-0, czyli stripe. Jako nr- [raid1] [raid5] [raid6] [raid10] RAID-1
raid-diskpodajemy,ilepartycjimapracować md0 : active raid0 hdd2[1] hda2[0] Załóżmy, że postanowiliśmy zmienić swoją
w tym urządzeniu; persistent-superblock 33581760 blocks 4k chunks konfigurację, tworząc RAID-1 w miejsce
spowoduje, że w superbloku podanych unused devices: <none> RAID-0 – tak naprawdę dopiero RAID-1
dalej partycji zostaną zapisane informa- jest prawdziwym RAID, gdyż w RAID-0
cje potrzebne do automatycznego wykry- Od teraz urządzenie /dev/md0 traktujemy nie ma nadmiarowych dysków. Zanim
jak partycję dysku twardego. Możemy np. rozpoczniemy tworzenie nowego urzą-
wykonać polecenia: dzenia, musimy koniecznie dezakty-
wować poprzednie. Pierwszym kro-
# mkfs.ext3 /dev/md0 kiem jest odmontowanie systemu plików
# mount /dev/md0 /mnt/test/ zamontowanego na macierzy (np. umount
# cd /mnt/test/ /var/www). Następnie wykonujemy ko-
# dd if=/dev/zero of= mendę raidstop /dev/md0. Dopiero
skasuj_mnie count=2000000 wtedy możemy zmieniać układ partycji
na dyskach i tworzyć nowe macierze.
Na moim systemie ten szybki test pokazał: Jeśli pominiemy te kroki, ani konfigura-
Rysunek 3. Wszystkie potrzebne
cja nowej macierzy, ani zmiany w ukła-
informacje do zbudowania RAID
1024000000 bytes transferred dzie partycji nie będą skuteczne – co naj-
i LVM możemy znaleźć po angielsku
in 18,410448 seconds wyżej mogą doprowadzić do bezpowrot-
w odpowiednich HOWTO
(55620591 bytes/sec) nej utraty danych.
62 styczeń 2005
software raid oraz logical volume manager sprzęt
www.lpmagazine.org 63
sprzęt
64 styczeń 2005
software raid oraz logical volume manager sprzęt
www.lpmagazine.org 65
sprzęt
volume group "dyski_IDE" now active. Co nie 256). Woluminy logiczne (LV), podob-
ważne, od tego momentu skrypty, odpo- nie jak grupy woluminów (VG), mogą
wiadające za start i zamykanie systemu, mieć dowolne nazwy, wymyślone przez
które zainstalowaliśmy razem z pakietem nas.
lvm2, będą opiekowały się naszym wolu- Przeanalizujmy przykładowe polece-
minem, czyli aktywowały go przy starcie nie, tworzące LV: lvcreate -l3000 -nka-
i dezaktywowały przy zamykaniu syste- talogi_domowe dyski_IDE. Ta komenda
mu. utworzyła LV o nazwie „katalogi_domowe”
Po aktywacji VG możemy uzyskać cie- i rozmiarze 3000 PE, czyli na moim sys-
Rysunek 7. Wynik działania programu
kawe informacje na jego temat, wydając temie 12000 MB. Nowy wolumin logicz-
Bonnie++ po konwersji do html
komendę vgdisplay dyski_IDE. Wynik jej ny powstał na bazie grupy woluminów
działania na moim systemie zamieściłem o nazwie „dyski_IDE”. Domyślnie, dane
rozmiar PE – według HOWTO domyślną na Listingu 1. Widzimy, że nasz rozmiar zapisywane na tym woluminie będą zaj-
wartością jest 32 MB, ale na moim syste- PE wynosi 4 MB (PE Size), a do dyspozycji mowały po kolei dostępne miejsce na
mie vgcreate użył wartości 4 MB. Własną mamy 9540 PE. Zwróćmy uwagę, że w tym poszczególnych urządzeniach fizycznych.
wartość możemy podać przy pomocy przykładzie LVM widzi tylko jedno urzą- Dostęp do tego woluminu otrzymujemy
opcji -s, np. vgcreate -s 32 /dev/md0. dzenie fizyczne (jest nim /dev/md0), mimo przez plik urządzenia /dev/dyski_IDE/
Podana liczba (domyślnie w megabajtach) że faktycznie mamy dwa dyski. katalogi_domowe. Jeśli budujemy LVM-a
musi być potęgą dwójki. Zbliżamy się do końca. Teraz utwo- na bazie dwóch lub więcej niezależnych
Następny krok to aktywacja woluminu. rzymy woluminy logiczne. Jak wspomnia- urządzeń, możemy użyć opcji -i, aby sko-
Przeprowadzamy ją poleceniem vgchan- łem wcześniej, na jednym VG możemy rzystać z możliwości rozdzielania opera-
ge --available y dyski_IDE. Powinno utworzyć wiele woluminów logicznych cji dyskowych (stripe) na kilka urządzeń.
ono odpowiedzieć: 0 logical volume(s) in (w systemie może ich być maksymal- Polecenie lvcreate -i2 -l3000 -nnazwa_LV
nazwa_VG spowoduje, że dane będą roz-
66 styczeń 2005
software raid oraz logical volume manager sprzęt
Aby zapełnić całkowicie swój VG, two- Dodajemy dysk VG Size 74,52 GB
rząc ostatni wolumin logiczny, powinie- Załóżmy, że zabrakło miejsca na urzą- PE Size 4,00 MB
nem podać parametr -l3540, gdyż tyle dzeniu /dev/dyski_IDE/bazy_danych. Total PE 19078
zostało mi jednostek alokacji. Wiedzia- Do systemu dołożyliśmy nowy dysk Alloc PE / Size 9540 / 37,27 GB
łem jednak, że dobrze jest zostawić sobie i możemy z niego wykorzystać jedną Free PE / Size 9538 / 37,26 GB
trochę miejsca na snapshot'y, o których partycję – /dev/sda3. Oczywiście, nie
napiszę w dalszej części, więc wykonałem jest to najlepszy pomysł, bowiem nasze Możemy w tym momencie utworzyć cał-
polecenie lvcreate -l3490 -nbazy_danych wcześniejsze urządzenia znajdują się na kiem nowy wolumin logiczny na 9538
dyski_IDE. RAID-1, więc są zabezpieczone przed wolnych PE, ale nie o to nam przecież
W tym momencie jesteśmy gotowi, aby awarią jednego z dysków. Jeśli do całej chodzi, bo aktualnie zabrakło nam miej-
sformatować wszystkie utworzone urzą- grupy woluminów dodamy jedno urzą- sca na woluminie zamontowanym
dzenia. W moim systemie przykładowe dzenie fizyczne bez takiej ochrony, w /bazy. Po wykonaniu komendy df -h
komendy mogą wyglądać tak: w przypadku jego awarii stracimy aktualnie mamy:
wszystkie dane. W realnym świecie
mkfs.ext3 /dev/dyski_IDE/bazy_danych powinniśmy dodać przynajmniej dwie /dev/mapper/dyski_IDE-bazy_danych S
mkfs.ext3 /dev/dyski_IDE/katalogi_domowe partycje na różnych urządzeniach, two- 14G 13G 397M 98% /bazy
mkfs.ext3 /dev/dyski_IDE/logi_systemowe rząc na nich najpierw RAID-1. Na po-
trzeby demonstracji w tym artykule Aby dodać wszystkie 9538 wolne PE do
LVM w akcji posłużymy się jednak prostym przy- tego woluminu, wydajemy komendę:
W tym momencie zapewne wielu Czytel- kładem z jedną partycją.
ników zadaje sobie pytanie, po co wymy- Zaczynamy do zainicjowania partycji: lvextend -l +9538 /dev/dyski_IDE/S
ślono LVM? Jak na razie dosyć długi opis bazy_danych
doprowadził nas do sytuacji, w której # pvcreate /dev/sda3
mamy zwyczajny system. Co prawda jest Physical volume "/dev/sda3" successfullyS W ten sposób powiększyliśmy sam
on zabezpieczony przed awarią jednego created wolumin logiczny, co możemy spraw-
dysku twardego, ale to zasługa wyłącznie dzić poleceniem lvscan. Teraz musimy
RAID-1, a nie LVM. Dodatkowo, mamy Następnie rozszerzamy grupę wolumi- powiększyć system plików, aby obejmo-
spowolniony dostęp do dysku (prosty test nów o nowe urządzenie: wał miejsce na całym LV. Istnieją spe-
z komendą dd na LVM-ie działa u mnie cjalne łatki na jądro, które pozwalają na
o trzy sekundy dłużej niż na samym # vgextend dyski_IDE /dev/sda3 wykonanie tej operacji bez odmontowa-
tylko RAID-1). Oczywiście, LVM nie Volume group "dyski_IDE" successfullyS nia systemu plików, ale my na chwilkę
został stworzony po to, aby mieć fan- extended zróbmy umount /bazy/ i wydajmy pole-
tazyjne nazwy urządzeń. Zobaczmy, cenie resize2fs -p /dev/dyski_IDE/bazy
jak przy jego pomocy administrować Przy pomocy komendy vgdisplay spraw- danych. Program może nas popro-
miejscem na dysku i jak wygodnie wyko- dzamy efekt naszych działań. Fragment jej sić, abyśmy sprawdzili system plików
nywać kopie bezpieczeństwa danych. raportu u mnie wyglądał tak: przed zmianą jego rozmiaru, więc
R E K L A M A
www.lpmagazine.org 67
sprzęt
w takim przypadku napiszemy: e2fsck # lvreduce -L-1G /dev/dyski_IDE/S # xfs_freeze -f /home; lvcreate -L200MS
-f i wyda-
/dev/dyski_IDE/bazy_danych katalogi_domowe -s -n tylko_backup /dev/dyski_IDE/S
my komendę resize2fs ponownie. Pozo- # mount /home katalogi_domowe
staje nam teraz tylko zamontować
LV ponownie i sprawdzić, co pokaże W tym przypadku, jako parametr progra- W tym momencie możemy zamontować
df -h. U mnie otrzymałem: mu resize2fs, musieliśmy podać nową (tylko do odczytu) wolumin logiczny
wielkość systemu plików. o nazwie „tylko_backup”, który zawiera
/dev/mapper/dyski_IDE-bazy_S LVM zawiera również narzędzia do kopię woluminu „katalogi_domowe”:
danych 51G 13G 36G 27% /bazy przenoszenia grupy woluminów (VG)
na inne komputery, gdyż nie wystarczy # mount /dev/dyski_IDE/tylko_backupS
Operacja trwała bardzo krótko i zakoń- zwykłe przełożenie dysków. Powin- /mnt/backup/
czyła się sukcesem. Bez LVM koniecz- niśmy, po odmontowaniu systemu
na byłaby zapewne modyfikacja tablicy plików i dezaktywacji VG (vgchange -- Po zakończeniu wykonywania kopii
partycji na przynajmniej jednym dysku, activate n nazwa_VG), wykonać polece- bezpieczeństwa, wydajemy polecenie:
a następnie mozolne przenoszenie danych. nie vgexport nazwa_VG, a następnie po lvremove -f /dev/dyski_IDE/tylko_backup.
Wszystko to spowodowałoby znacznie przełożeniu dysku do nowego kompu- Musimy uważać, aby do tego czasu
dłuższą przerwę w pracy systemu. tera – vgimport nazwa_VG. zmiany na woluminie nie przekroczy-
Powiększanie systemu plików jest moż- ły rozmiaru snapshotu – w tym przy-
liwe nie tylko na ext2/ext3. Jeśli korzy- Snapshot kładzie 200 MB. Po przepełnieniu staje
stamy z reiserfs, w analogiczny sposób Wykonywanie kopii bezpieczeństwa się on bowiem bezużyteczny i podob-
używamy komendy resize_reiserfs -f. trwa dosyć długo, a nie każdy może nie trzeba traktować dane z niego sko-
W przypadku xfs mamy program xfs_ pozwolić sobie na zupełne zatrzymanie piowane.
growfs, ale istotna różnica polega w tym systemu na ten czas. Wtedy utrapieniem
przypadku na tym, że powinniśmy pozo- stają się pliki, które zostały zmodyfi- Zakończenie
stawić system plików zamontowany, a jako kowane w czasie wykonywania kopii. Stosowanie RAID-a i LVM-a może bardzo
parametr tego programu podać punkt LVM udostępnia nam specjalny mecha- ułatwić pracę administratora i zwiększyć
zamontowania (np. xfs_growfs /bazy). nizm, który pozwala na obejście tego bezpieczeństwo oraz wydajność systemu.
problemu. Rozwiązania te często powodują jednak,
Inne manipulacje dyskami Możemy utworzyć snapshot aktual- że czynności niegdyś proste (np. przenie-
W przypadku, gdy chcemy usunąć z sys- nego stanu któregoś z naszych wolumi- sienie dysku do innego komputera) stają
temu jeden dysk (np. hdb) i mamy na tyle nów logicznych. Snapshot jest dla admi- się znacznie bardziej skomplikowane, a w
dużo wolnego miejsca na pozostałych, nistratora systemu kolejnym wolumi- przypadku, gdy dochodzi już do awarii
aby zmieścić tam wszystkie dane, wyda- nem logicznym, zawierającym kopię któregoś z nich, odzyskanie danych jest
jemy polecenie: pvmove /dev/hdb. Teraz któregoś z LV. Kopia ta nie zmienia znacznie trudniejsze. Konieczne staje się
wszystkie dane z hdb zostały przenie- się, nawet jeśli na oryginale wyko- zaopatrzenie w odpowiednie narzędzia
sione na pozostałe dyski, w ramach tej nywane są operacje zapisu. Oczywi- do ratowania systemu, które będą potra-
samej grupy woluminów (VG). Następ- ście, przy tworzeniu snapshota dane na fiły sobie poradzić z systemami plików
nie vgreduce nazwa_VG /dev/hdb powo- nim zawarte nie są fizycznie kopiowa- na takich urządzeniach, np. mini-dys-
duje, że dysk nie jest już członkiem VG ne na nowy wolumin logiczny. Potrze- trybucja (R)ecovery (I)s (P)ossible Linux.
o nazwie nazwa_VG. bujemy trochę miejsca na danym VG, Innymi słowy, rozwiązując pewne proble-
Gdy do systemu dodaliśmy nowy dysk aby było gdzie zapisywać informacje my, dokładamy sobie często cały szereg
dodany (np. sdf ), na który chcemy prze- o plikach, które zmieniły się od czasu nowych.
nieść dane ze starego (np. hdb), wydaje- utrwalenia stanu woluminu logicznego.
my polecenia: Jeśli mamy katalog /home, w którym
znajduje się 20 GB danych, to wiemy, W Internecie:
# pvcreate /dev/sdf; vgextend dev /dev/sdf że zrobienie jego kopii bezpieczeństwa
• LVM HOWTO:
# pvmove /dev/hdb /dev/sdf; vgreduce dev zajmie 10 minut. Zakładamy, że w ciągu http://www.tldp.org/HOWTO/
/dev/hdb tych 10 minut na partycji z /home LVM-HOWTO/
użytkownicy utworzą lub zmodyfikują • Software RAID HOWTO:
Wcześniej powiększaliśmy wolumin lo- co najwyżej 200 MB danych. Tyle wła- http://www.tldp.org/HOWTO/
giczny. Oczywiście, jest możliwe równie śnie miejsca musimy mieć na danej Software-RAID-HOWTO.html
łatwe zmniejszenie go. Problem pojawia grupie woluminów. Snapshot tworzymy • Dystrybucja ratunkowa,
się ze zmniejszeniem systemu plików, poleceniem: m.in. dla RAID i LVM:
bowiem tylko ext2/ext3 oraz reiserfs http://www.tux.org/pub/people/
pozwalają na taką operację. Przykładowo: # lvcreate -L200M -s -n tylko_backupS
kent-robotti/looplinux/rip/
• Strona domowa dystrybucji
/dev/dyski_IDE/katalogi_domowe
(R)ecovery (I)s (P)ossible Linux:
# umount /home
http://www.tux.org/pub/people/
# resize2fs /dev/dyski_IDE/katalogi_S Jeśli używamy systemu plików xfs, pole- kent-robotti/looplinux/rip/
domowe 524288 cenie musi być nieco dłuższe:
68 styczeń 2005
dla programistów
Pyro i OpenSSL
– bezpieczny
komunikator internetowy
Marek Sawerwain
G
dy planujemy przesyłać isto- opisu interfejsu pochodzących z progra-
tne informacje poprzez Inter- mu Glade.
net, to wprowadzenie szy- Do poprawnego działania będzie
frowania danych w naszym wymagał, tak jak poprzednio, dwóch uru-
aplikacjach rozproszonych jest bardzo chomionych usług Pyro: serwera nazw
ważnym zagadnieniem. Istnieje wiele (usługę uruchamiamy poprzez wydanie
bibliotek wspomagających nas w tym polecenia ns) oraz serwera zdarzeń (usługę
temacie. Jedną z najbardziej znanych jest należy uruchomić wydając polecenie es).
OpenSSL. Jest ona dostępna we wszyst- Warto przedstawić sposób działa-
kich większych dystrybucjach Linuk- nia naszej aplikacji w postaci schema-
sa. Odpowiada za realizację bezpiecz- tu, który znajduje się na Rysunku 1. Jak
nych kanałów komunikacyjnych w opar- widać, mamy trzy specjalne serwery. Ser-
ciu o protokół SSL i jest wykorzystywana wery zdarzeń i nazw należą do systemu
przez wiele programów, w tym przeglą- Pyro, ale główny serwer, nazwany ser-
darki WWW. werem rozmów, musimy napisać samo-
Zastosowanie biblioteki OpenSSL naj- dzielnie, a raczej poprawić kod, doda-
lepiej pokazać na przykładzie. W nume- jąc obsługę SSL, bo przecież serwer już
rze Linux+ 10/2003 prezentowałem prosty wcześniej napisaliśmy.
komunikator na wzór bardzo popularne-
go Gadu-Gadu. Jedną z niedoskonało- Typowy serwer Pyro
ści tamtego programu była komunikacja Program komunikatora to wbrew pozo-
bez jakiegokolwiek szyfrowania danych. rom niewielka aplikacja. Łączny kod źró-
W tym artykule postaram się pokazać, dłowy serwera i klienta to tylko 7 kB
jak małym kosztem zmienić ten stan tekstu źródłowego w Pythonie. Zanim
rzeczy. wprowadzimy obsługę SSL do komunika-
tora, chciałbym przedstawić typową apli-
Kilka postanowień kację Pyro.
na początek Listing 1 zawiera kod klasy o nazwie
Najważniejszym zadaniem będzie doda- test_obj. Poprzez Pyro chcemy udostęp-
nie do komunikatora obsługi szyfrowa- nić tę klasę w sieci tak, aby inny użyt-
Na płycie CD/DVD nego kanału. Uprzedzając dalszą część kownicy Pythona mogli ją wykorzy-
Na płycie CD/DVD znajdują się artykułu, już teraz mogę zdradzić, iż jest stać we własnych programach. Pierwszą
wykorzystywane biblioteki, kod to zadanie łatwe do wykonania. Głównie czynnością jest definicja klasy (Listing 1),
źródłowy programu oraz wszyst- dlatego, iż Pyro znakomicie współpracu- którą zapisujemy w oddzielnym pliku
kie listingi z artykułu. je z biblioteką OpenSSL. o nazwie test_obj.py.
Aby w naszym komunikatorze znala- Istnieje kilka sposobów na napisanie
O autorze zła się obsługa SSL, wymagana jest jesz- serwera. Poniżej zaprezentuję sposób, który
Autor zajmuje się tworzeniem
oprogramowania dla WIN32
cze instalacja jednego pakietu o nazwie został użyty w komunikatorze. Pierwszym
i Linuksa. Zainteresowania: M2Crypt. Kilka uwag na ten temat zawiera elementem w implementacji serwera jest
teoria języków programowania ramka Kompilacja i instalacja pakietów. dołączenie odpowiednich pakietów:
oraz dobra literatura. Pozostałe założenia naszego progra-
Kontakt z autorem: mu pozostają niezmienione. Nadal jest import Pyro.core
autorzy@lpmagazine.org to program napisany w Pythonie. Będzie import Pyro.naming
korzystał z biblioteki GTK+ oraz z plików import test_obj
70 styczeń 2005
python/pyro/ssl dla programistów
Kompilacja oraz
instalacja pakietów
Nasza aplikacja to dość mały program.
Wielkość jest wynikiem zastosowania
kilku bibliotek, które pozwalają zaim-
plementować całkiem zgrabną apli-
kację minimalną ilością kodu. Z tego
powodu, aby nasz komunikator zadzia-
łał, potrzebny jest język programowa-
nia Python oraz pakiet OpenSSL. Sam
język, jak również bibliotekę, znajdzie-
my bez problemów w każdej dystrybucji
Linuksa. Autorzy biblioteki Pyro zale-
cają najnowszą wersję Pythona, naj-
lepiej 2.3.3, oraz wersję OpenSSL nie
starszą niż 0.9.7 (jeśli w dystrybucji jest
starsza wersja, to koniecznie trzeba
dokonać aktualizacji tego pakietu).
Biblioteki Pyro raczej nie znajdzie-
my, ale zanim przystąpimy do jej insta- Rysunek 1. Schemat działania komunikatora
lacji, należy zainstalować inną biblio-
tekę o nazwie M2Crypt. Będzie ona
obsługiwać połączenia szyfrowane Dwa pierwsze dotyczą Pyro, ale ostatni ma zainstalowanej sieci i jest dostępny tylko
SSL. Biblioteka M2Crypto ma również pakiet to nasza klasa, którą mamy zamiar adres lokalny 127.0.0.1.
swoje wymagania i do poprawnej kom- udostępnić. W tym celu w serwerze Następnym krokiem w implementa-
pilacji wymaga pakietu SWIG w wersji definiujemy specjalną klasę pośrednią cji serwera jest uzyskanie obiektu ser-
przynajmniej 1.3.21. Pakiet SWIG jest w następujący sposób: wera nazw:
oferowany przez niektóre dystrybucje,
ale gdy pojawi się konieczność jego class test_obj_classS ns=Pyro.naming.NameServerLocator().getNS()
kompilacji, to dzięki skryptowi confi- (Pyro.core.ObjBase, test_obj.test_obj):
gure sprawdza się ona do trzech pole- def __init__(self): Ostatnim obiektem do utworzenia jest
ceń: Pyro.core.ObjBase.__init__(self) daemon:
www.lpmagazine.org 71
dla programistów
import Pyro.util
Listing 1. Postać klasy test_obj
import Pyro.core
class test_obj:
Następnie inicjujemy klienta:
def m1(s, string):
print "Metoda m1 parametr:", string Pyro.core.initClient()
return "Długość ciągu znaków: "+str(len(string))
def m2(s, number): Później ustalamy parametry pomocnicze,
print "Metoda m2 parametr:", number takie jak adres komputera, na którym
return "Kwadrat liczby:"+str(number*number) znajduje się serwer nazw.
Gdy to zrobimy, możemy uzyskać
referencję do zdalnego obiektu. Wyko-
rzystujemy metodę getProxyForURI:
Listing 2. Pełny kod serwera oparty o protokół SSL
test = Pyro.core.getProxyForURIS
#! /usr/bin/env python ("PYRONAME://test_obj")
daemon=Pyro.core.Daemon(prtcol='PYROSSL') daemon=Pyro.core.Daemon(prtcol='PYROSSL')
daemon.setNewConnectionValidator(printCertValidator())
daemon.useNameServer(ns) W ten sposób nakazujemy stosowanie
protokołu SSL.
uri=daemon.connect( test_obj_class(), "test_obj") Następnie podłączamy klasę print-
CertValidator, której zadaniem jest
print "Server is ready. Let's go!!!" sprawdzenie poprawności certyfikatu:
daemon.requestLoop()
daemon.setNewConnectionValidatorS
(printCertValidator())
72 styczeń 2005
python/pyro/ssl dla programistów
Kolejne czynności pozostają niezmie- Listing 3. Postać plików z certyfikatami dla protokołu SSL
nione w porównaniu do zwykłego ser-
wera. Plik z głównym certyfikatem:
Zajmijmy się teraz klasą printCert- -----BEGIN CERTIFICATE-----
Validator. Zawiera ona jedną metodę MIIDkjCCAvugAwIBAgIBA i tak dalej ....
– checkCertificate. Musi ona zwrócić -----END CERTIFICATE-----
pewne określone wartości. Jeśli chcemy Plik client.pem:
zaakceptować certyfikat, to jako war- -----BEGIN CERTIFICATE-----
tość powrotną zwracamy parę (1,0). MIIDvzCCAyigAwIBAgIBATANBgkqh i tak dalej ....
W przypadku odrzucenia certyfikatu, -----END CERTIFICATE-----
za pomocą słowa return musimy -----BEGIN RSA PRIVATE KEY-----
przekazać parę (0, kod_błędu). Przez MIICXQIBAAKBgQC7ixGOs2Sq i tak dalej ...
kod_błędu rozumiemy jedną z poniż- -----END RSA PRIVATE KEY-----
szych wartości: Plik server.pem:
-----BEGIN CERTIFICATE-----
• Pyro.constants.DENIED_UNSPECIFIED MIIDvzCCAyigAwIBAgIBATANBgkqh i tak dalej ....
– dowolny powód błędu; -----END CERTIFICATE-----
• Pyro.constants.DENIED_SERVERTOOBUSY -----BEGIN RSA PRIVATE KEY-----
– serwer jest zbyt zajęty; MIICXQIBAAKBgQC7ixGOs2Sq i tak dalej ...
• Pyro.constants.DENIED_HOSTBLOCKED -----END RSA PRIVATE KEY-----
– blokada komputera;
• Pyro.co nst ant s.DENIED _ SECURIT Y
– błąd związany z bezpieczeństwem. Program klienta test1 = Pyro.core.getProxyForURIS
W programie serwera najważniej- ("PYRONAME://test_obj")
Na Listingu 2, gdy nie ma certyfikatu, szą zmianą było dodanie w kon-
zwracamy parę (0,3), co oznacza błąd struktorze obiektu daemon informacji Jeśli jednak chcemy jawnie określić
związany z bezpieczeństwem. o tym, że będziemy korzystać z pro- komputer oraz fakt użycia przez nas pro-
Jak widzimy, dodanie obsługi SSL tokołu SSL. W kliencie nie musimy tokołu SSL, to możemy w wywołaniu
wymaga dołączenia jednej klasy oraz wykonywać żadnych zmian! Bibliote- metody getProxyForURI podać pełne
kosmetycznych zmian w kodzie. Oprócz ka Pyro samodzielnie wykryje fakt, że dane w następujący sposób:
serwera, musimy wygenerować certyfi- serwer korzysta z protokołu SSL i klient
katy dla serwera i klienta. Informacje o samoczynnie przełączy się na komu- test2 = Pyro.core.getProxyForURI
tym, jak tego dokonać, podam w dal- nikację poprzez SSL. Z tego powodu ("PYROLOCSSL://localhost/test_obj")
szej części artykułu. Teraz zajmiemy się uzyskanie referencji do obiektu nadal
klientem. możemy wykonywać w ten sposób: Ostatni składnik w adresie to nazwa obie-
ktu, którą podaliśmy w drugim argu-
mencie metody connect podczas rejestro-
wania naszej klasy w serwerze.
Jak widać, siłą Pyro jest automaty-
zacja wielu operacji. Istotne zmiany,
które należy wprowadzić, aby zwięk-
szyć bezpieczeństwo aplikacji Pyro,
wykonujemy tylko po stronie serwe-
ra. Uzbrojeni w tę wiedzę w bardzo
łatwy sposób możemy dokonać zmian
w naszym komunikatorze.
Generowanie certyfikatów
Bezpieczeństwo komunikacji ściśle zależy
od utworzonych certyfikatów. Z tego
powodu, zanim zaczniemy modyfiko-
wać nasz program, wygenerujemy sto-
sowne certyfikaty. Nie jest to trudne,
ale musimy znać obsługę programu
openssl. Możemy ułatwić sobie zada-
nie, jeśli będziemy korzystać ze skryp-
tu pomocniczego, dostępnego w kodzie
źródłowym pakietu OpenSSL. Potrzeb-
Rysunek 2. Nasza aplikacja podczas rozmowy
ny skrypt można odnaleźć wtedy
www.lpmagazine.org 73
dla programistów
74 styczeń 2005
python/pyro/ssl dla programistów
Dla tych z czytelników, którzy nie czyli nasze certyfikaty będą ważne z SSL zostały już omówione przy okazji
mieli styczności z takimi plikami, Li- przez 365 dni od momentu utworzenia. poprzedniego przykładu, więc musimy
sting 3 przedstawia schematycznie postać Jeśli chcemy to zmienić, wystarczy podać tylko zadbać, aby pliki z certyfikata-
poszczególnych plików. Przenosimy wyra- inną liczbę dni. mi znalazły się w podkatalogu certs,
żenia znajdujące się pomiędzy liniami: widocznym z poziomu programu ser-
Poprawiamy komunikator wera oraz klienta.
-----BEGIN CERTIFICATE----- Wiemy, jak wygenerować certyfikat oraz Podobna sytuacja pojawia się w pro-
-----END CERTIFICATE----- w jaki sposób należy napisać progra- gramie klienta – nie zmieniamy ele-
my serwera i klienta. Oznacza to, że mentów związanych z interfejsem
bądź bez żadnych kłopotów możemy zmo- graficznym, a sposób implementa-
dyfikować naszego komunikatora. cji klienta jest zgodny z przykłada-
-----BEGIN RSA PRIVATE KEY----- Zobaczmy, jak wygląda serwer. Isto- mi, które podałem na początku tego
-----END RSA PRIVATE KEY----- tne dla nas fragmenty zawiera Listing 4. artykułu.
Klasa printCertValidator pozostała nie
w przypadku klucza prywatnego. Mam zmieniona w stosunku do poprzed- OpenSSL w C/C++
nadzieje, że podane informacje pomogą nich przykładów, podobnie jak klasa Gdy chcemy pisać program bezpośred-
we własnym tworzeniu certyfikatów. TalkSrv. Poszczególne metody klasy ser- nio w języku C/C++, to sposób korzysta-
Certyfikaty z płyty CD/DVD są ważne wera również nie podlegają żadnym nia z OpenSSL nie jest znacznie bardziej
do listopada 2005 roku. Okres waż- zmianom. Jak widać z Listingu 4, pro- skomplikowany. Ogólny schemat two-
ności certyfikatów może być inny. gram serwera nie różni się niczym rzenia programu klienta wygląda wtedy
W pliku CA.sh po początkowych komen- specjalnym od programu z Listingu 2. następująco:
tarzach natrafiamy na zmienną DAYS: Włączenie obsługi SSL następuje
w momencie utworzenia obiektu /* utworzenie uchwytu SSL */
DAYS="-days 365" daemon. Wszystkie detale związane con=(SSL *)SSL_new();
R E K L A M A
www.lpmagazine.org 75
dla programistów
import gobject
/* utworzenie uchwytu SSL */
import gtk
import gtk.glade con=(SSL *)SSL_new();
/* otwieramy zwykłe gniazdko
your_nick='' do komunikacji sieciowej */
talks={}
/* kojarzymy uchwyt gniazda
76 styczeń 2005
aktualności
księgozbiór piotrt@lpmagazine.org dział prowadzi: Piotr Truszkowski
Bestsellery Merlina
Lista najlepiej sprzedających się książek informatycznych
w sklepie internetowym www.merlin.pl, w miesiącu listopadzie:
1. Optymalizacja systemu Windows – J. Ballew, J. Duntemann, Wyd. Helion, 2004
2. Thinking in Java. Wydanie 3. Edycja polska – B. Eckel, Wyd. Helion, 2004
3. ABC fotografii cyfrowej – Ł. Oberlan, Wyd. Helion, 2004
4. Photoshop CS. Ćwiczenia z ... , Wyd. Mikom, 2004
5. Krótki kurs architektury i organizacji komputerów – W. Komorowski, Wyd. Mikom, 2004
6. Programowanie Asembler IBM PC – P. Abel , Wyd. Read Me, 2004
7. Microsoft Exchange Server 2003 - Vademecum Administratora - W. R. Stanek, Wyd. APN Promise, 2004
8. Grafika 3D. Modelowanie i rendering od podstaw, Wyd. Axel Springer, 2004
9. Systemy operacyjne. Szkoła programowania – W. Stallings, Wyd. Robomatic, 2004
10. Mój pierwszy komputer, Wyd. Help, 2004
www.lpmagazine.org 77
testy
YOPY YP3700
Michał Niwicki
G
dy do redakcji przyniesio-
no nowego palmtopa YOPY,
a naczelny wskazał palcem
na mnie i powiedział “ten
sprzęt testujesz ty”, mojej radości nie było
końca. Rzuciłem szybko okiem na specy-
fikację techniczną i wiedziałem, że mam
do czynienia ze sprzętem z górnej półki.
Imponowały nie tylko wysokie parame-
try urządzenia, ale przede wszystkim to,
że palmtop pracował pod kontrolą sys-
temu operacyjnego Linux. Radość nie
trwała jednak długo; mój entuzjazm malał
na każdym kroku – począwszy od wyję-
cia urządzenia z pudełka, a skończywszy
na podłączeniu go do komputera.
Co w środku?
Pod obudową urządzenia znajduje się 32-
bitowy procesor Strong ARM RISC, pra-
cujący z częstotliwością 206 MHz. Palm-
top posiada 128 MB pamięci RAM oraz 32
MB ROM. Ponad 40 MB jest używane
78 styczeń 2005
yopy testy
ego z użytkownikiem nie jest ani trochę słowem nie wspomniano o możliwości
Alternatywne spojrzenie intuicyjna, osoby, które po raz pierwszy podłączenia palmtopa do naszego ulu-
Piotra Truszkowskiego mają do czynienia z palmtopem, mogą bionego Linuxa. W efekcie, skorzystanie
Główną zaletą tego przyjemnego urządze- czuć się lekko zagubione. z rozszerzeni znajdujących się na płycie
nia mobilnego jest jego serce, czyli system CD może sprawiać problemy początkują-
Linux. Nie ukrywam, że już na samym Zwykła praca cym użytkownikom urządzenia.
początku Yopy zrobił na mnie dobre wra-
YOPY posiada wszystkie programy, które
żenie. Może dlatego, że uwielbiam Linuk-
sa, a wszystko, co z nim związane, witam
powinny znaleźć się na każdym przy- Podsumowanie
z otwartymi rękami, a może dlatego, że
zwoitym palmtopie. Mamy typowe apli- YOPY 3700 jest niewątpliwie palmtopem
Yopy to po prostu bardzo dobry palmtop. kacje PIM – kalendarz, zadania, listy o ogromnych możliwościach. Nieste-
Bardzo dobry, ale nie doskonały. Może dnia, kontakty oraz całą gamę dodat- ty, zlekceważenie przez producenta pol-
najpierw o wadach, ponieważ nic tak nie kowych aplikacji multimedialnych oraz skiego klienta (chociażby brak instruk-
motywuje producentów sprzętu do stwo- biurowych. Potęgę urządzenia podkre- cji obsługi w języku polskim), dyskwa-
rzenia lepszego produktu, niż wyliczenie śla kompilator, znajdujący się na płycie lifikuje urządzenie na rodzimym rynku.
wad na łamach poczytnego czasopisma. CD, umożliwiający pisanie na kompute- Zaskakuje również brak wsparcia dla
Yopy jest słabo wykonany. Klapka lata na rze stacjonarnym własnych programów systemu operacyjnego Linux. Ostatecz-
wszystkie strony, jakby zaraz miała odle- działających na YOPY-m. nie, biorąc pod uwagę wysoką cenę
cieć, materiały są niskiej jakości, a pod-
Mimo, że na palmtopie zainstalowa- YOPY-ego (ponad 2500 zł), nie zdziwił-
czas wybierania opcji za pomocą rysika,
ny jest system operacyjny Linux, standar- bym się, gdyby konsument wybrał urzą-
cały ekran odchyla sie tak mocno do tyłu,
jakby miał się za chwilę złamać. Do tego
dowo, urządzenie współpracuje jedynie dzenia firm konkurencyjnych.
dochodzi instrukcja w języku angielskim, z Windowsami. W instrukcji obsługi ani Ocena: 3/5
brak polskiego interfejsu, braki w obsłudze
urządzenia pod Linuksem (co jest istnym R E K L A M A
paradoksem – Yopiego wyposażonego
w system Linux łatwiej zmusić do pracy
w środowisku Windows!), a jeśli już czepiać
się wszystkiego, to brakuje również głośni-
ków stereo. Skoro Yopy posiada obsłu-
gę plików MP3, dlaczego musimy słuchać
mono? Dobrze. Koniec narzekań. Yopy to
bardzo fajny palmtop. Jeśli jesteście użyt-
kownikami Linuksa, poczujecie się jak ryba
w wodzie. Pod maską szybki (206 MHz) pro-
cesor, dużo pamięci (128 RAM/32 ROM),
dobrej jakości wyświetlacz LCD, potrafią-
cy cieszyć nasze oczy paletą 65 tysięcy
kolorów, bardzo dobra bateria, która potrafi
wytrzymać do 8 godzin ciągłej pracy, oraz
klawiatura w standardzie QWERTY. Dzięki
goszczącej w środku dystrybucji Lupy,
możemy skorzystać z ogromnego repo-
zytorium pakietów dla Linuksa. Na płytce
zawarto oprogramowanie, dzięki które-
mu na naszym domowym pececie skom-
pilujemy sobie program i zainstalujemy go
w Yopim. Prawda, że miłe? Z naszym palm-
topem możemy komunikować się poprzez
podczerwień, gniazdo MMC i USB. Reasu-
mując, polecam Yopiego wszystkim użyt-
kownikom Linuksa i tym, którzy chcą mieć
dobrego palmtopa, z solidnym systemem,
który na wszelkiego rodzaju wirusy reagu-
je wyciągnięciem ostrzegawczego znaku
“Stop – tutaj nie macie czego szukać”.
Ładny, stabilny, o dobrym stosunku jakości
do ceny. Warto go chociaż zobaczyć.
Ocena: 4/5
www.lpmagazine.org 79