Linux+_2004 01_PL

March 24, 2018 | Author: chavog1 | Category: Linux, Linux Distribution, Computer Architecture, Areas Of Computer Science, Technology


Comments



Description

że żyjemy w państwie. Wszystkie znaki firmowe zawarte w piśmie są własnością odpowiednich firm i zostały użyte wyłącznie w celach informacyjnych.. z o.com. Taki obraz można było zobaczyć. jak w innych krajach Europy. A gdyby nie było to możliwe? W efekcie większość użytkowników komputerów spróbowałaby Linuksa. Godny uwagi jest także wywiad z Solar Designerem. Redakcja używa systemu automatycznego składu Druk: Stella Maris Płyty CD dołączone do magazynu przetestowano programem AntiVirenKit firmy G DATA Software Sp.com. marta@software. nie gwarantuje także poprawnego działania programów shareware. Lewartowskiego 6 e-mail: redakcja@linux. Wynika to zapewne z tego. piotrt@linux. 00-190 Warszawa. to warto zastanowić się. freeware i public domain. Piotr Truszkowski Dział reklamy: Dagmara Witkowska. slawekz@software. przykładowo. Ludzie dowiedzieli się.pl. nie tylko pozytywne. wśród których wybraliśmy dwa naszym zdaniem bardzo ciekawe: szyfrowanie systemów plików oraz wprowadzanie rozszerzeń do jądra. Zapraszam do lektury i czekam na opinie na temat pisma. z o. który chociażby w dziedzinie bezpieczeństwa prezentuje się lepiej od konkurencyjnych rozwiązań komercyjnych. marzenat@software. pren@software. dlaczego w Polsce Linux nie jest tak popularny.com. cenionym specjalistą od bezpieczeństwa komputerowego.pl Asystent redaktora: Piotr Truszkowski. marzenat@software. styczeń 2004 . w Empiku w Zielonej Górze pod koniec listopada. aby publikowane w piśmie i na towarzyszących mu nośnikach informacje i programy były poprawne. a akcja lubuskiej policji dotyczyła hurtowników komputerowych. którzy na masową skalę produkują i sprzedają nielegalne oprogramowanie.com. Redaktor naczelny: Krzysztof Krawczyk.Styczeń 2004 Linux a piractwo komputerowe D ługie kolejki po numery Linux+ Extra! z dystrybucjami Linuksa nie są fikcją.: (22) 860 17 67 Projekt graficzny okładki: Marzena Turek-Gaś. Sprzedaż aktualnych lub archiwalnych numerów pisma po innej cenie niż wydrukowana na okładce – bez zgody wydawcy – jest działaniem na jego szkodę i skutkuje odpowiedzialnością sądową.pl.pl.: (22) 860 18 79 Prenumerata: Marzena Dmowska.com. że istnieje niebezpieczeństwo odwiedzenia ich domów przez policję w celu sprawdzenia legalności wykorzystywanego przez nich oprogramowania.com.pl Projekt graficzny pisma: Marzena Turek-Gaś. Tematem przewodnim tego numeru Linux+ jest właśnie wzmacnianie zabezpieczeń Linuksa. w którym piractwo komputerowe jest powszechne – nielegalne kopie prawnie chronionych programów komputerowych można bardzo łatwo zdobyć.com. (22) 860 18 18 Redakcja dokłada wszelkich starań. Można to zrobić na wiele sposobów. o. Chociaż przeszukiwanie prywatnych mieszkań było tylko plotką. tel.com. krzysiek@linux. z o.pl Opracowanie CD: Krzysztof Krawczyk.pl Skład: Sławomir Zadrożny. Uszkodzone podczas wysyłki płyty wymienia dział prenumeraty. o.com. jednakże nie bierze odpowiedzialności za efekty wykorzystania ich. tel. ul. 4 Opis zawartości płyt CD Piotr Truszkowski Aktualności 10 Newsy Krzysztof Krawczyk Linux 12 Jądro Maja Królikowska 14 Debian Grzegorz Prokopski 16 Aurox Robert Główczyński 18 RPM Daniel Koć 20 GNOME Zbigniew Chyla 22 KDE Paweł Biliński 24 LinuxFresh Piotr Machej Krzysztof Krawczyk Redaktor Naczelny Linux+ Miesięcznik Linux+ (12 numerów w roku) jest wydawany przez Software-Wydawnictwo Sp.o. tel.pl Producent: Marta Kurpiewska. [email protected] 2 Adres korespondencyjny: Software-Wydawnictwo Sp. Ponadto. który można znaleźć w większości dystrybucji Linuksa. na której będą przechowywane kluczowe dane. który od kilku lat przygotowuje liczne narzędzia dla tego systemu w ramach projektu Openwall. Dla graczy Strike 66 Vega Krzysztof Wolski Jeżeli chcesz zostać pilotem statku kosmicznego. chociażby dlatego. Sprzęt i Smartmontools 52 Lm_sensors – czujniki naszego komputera Piotr Wolny Gdy system zaczyna działać niestabilnie. zwrócono w nim uwagę na poprawne zarządzanie pamięcią. pisząc własne programy. Jego podstawową zaletą jest szyfrowany kanał komunikacji. Ponieważ niedawno firma Novell wykupiła producenta tego systemu. które chcemy zabezpieczyć przed niepowołanym dostępem. postanowiliśmy przyjrzeć się nowej wersji tej dystrybucji Linuksa. Pakiet OpenSSH. takie jak tunelowanie połączeń. raczej nie jest popularna w Polsce. W artykule został przedstawiony proces nakładania takich łatek oraz nowe opcje konfiguracyjne jądra. że nie są dostępne jej obrazy ISO.pl Gdy chcemy popracować na odległym komputerze. wygodniejszym i pewniejszym rozwiązaniem jest przygotowanie specjalnej zaszyfrowanej partycji. Zanim to jednak nastąpi. Warto poznać jego liczne możliwości. aby nie powstawały niepoprawne konstrukcje. Można to zrobić chociażby przy pomocy GnuPG. twórcą projektu Openwall Krzysztof Krawczyk Osoby zainteresowane bezpieczeństwem Linuksa na pewno słyszały o Solar Designerze. a także wysoką grywalnością. Z najbardziej znanych jego produkcji można wymienić John The Rippera (wykrywa hasła łatwe do złamania). które korzystając z czujników wbudowanych w urządzenia. zawiera serwer i klienta tego oprogramowania. trzeba pilnować.0 Professional Dystrybucja Linuksa firmy SuSE. handlować towarem i walczyć z wrogimi statkami. www. Wprowadzane zmiany rzadko dotyczą bezpośrednio bezpieczeństwa. dlatego warto rozważyć skorzystanie z zestawu łatek Openwall lub GrSecurity. w tym mniej znane. Wyróżnia się ona bardzo dobrą grafiką i muzyką. Postanowiliśmy porozmawiać z nim na temat projektu Openwall oraz najbliższych planów. a mamy dostęp do niego poprzez sieć.com. chociaż jest bardzo ciekawym produktem. ale ciekawszym. Dla programistów bezpiecznych programów 58 Pisanie Marek Sawerwain Ataki przepełnienia bufora są bardzo niebezpieczne. Wygodniejszym rozwiązaniem jest skorzystanie z gotowych bibliotek. Wywiad z Alexandrem Peslyakiem 26 Wywiad (Solar Designerem). Przyczyną równie dobrze mogą być problemy sprzętowe. Taką rolę pełnią LM_Sensors (płyty główne) oraz SmartMonTools (dyski twarde). pomogłoby nam zdiagnozować niepoprawnie pracujący element komputera.Temat miesiąca Bezpieczeństwo Dla początkujących – szyfrowane systemy 30 Loop-AES plików z OpenSSH 44 Praca Piotr Machej Skarbimir Kwiatkowski Gdy posiadamy poufne informacje. możemy skorzystać z protokołu SSH. niekoniecznie musi to być wina oprogramowania. gdyż z ich pomocą można szybko przejąć kontrolę nad systemem. W artykule zostały opisane dwa takie rozwiązania: SCSL oraz Vstr. które robią to za programistę. warto je zaszyfrować. 38 Wzmacniamy jądro: Openwall i GrSecurity Michał Miszewski Jądra przygotowywane przez twórców dystrybucji Linuksa zazwyczaj mają już nałożone różne łatki rozszerzające ich możliwości lub poprawiające pewne funkcje. zagraj w grę Vega Strike. Z tego powodu. Z pomocą przychodzi nam wtedy moduł jądra o nazwie Loop-AES. Testy 42 Piotr Truszkowski SuSE Linux 9. w czym mogą być pomocne pakiety Memwatch oraz Libcwd.linux. sytuacja może się znacznie zmienić. łatki na jądro Linuksa oraz dystrybucję Owl. 3 . W takim przypadku warto posiadać oprogramowanie. wszystkie opisywane w numerze programy. na zdalną identyfikację systemu operacyjnego i działających na nim usług. co daje swoje odzwierciedlenie chociażby w ilości serwerów. jak i metody obrony przed nimi. • Vega Strike – kosmiczna gra handlowa. Uruchomienie tego systemu to wspaniała okazja ku temu.: • Ettercap – popularny sniffer. kontrolować ruch i robić wiele innych rzeczy. którymi posługują się internetowi włamywacze. m. mile widziane połączenie z siecią Internet. Linux od samego początku swojego istnienia jest systemem bardzo blisko związanym z siecią Internet. obsługa sieci jest tym. • Nessus – bardzo popularny skaner. łatki Openwall i GrSecurity i wiele innych. • PortSentry – narzędzie umożliwiające zablokowanie dostępu użytkownikowi skanującemu bądź próbującemu włamać się do naszego systemu. System został zoptymalizowany pod względem szybkiego uruchamiania i pracy. analizy powłamaniowej bądź po prostu nowym doświadczeniem dla osób marzących o karierze specjalisty do spraw zabezpieczeń. szybkość i popularność w kręgach administratorów sieci i programistów. z uwagi na jego małe wymagania sprzętowe. Zabronione jest używanie dołączonego oprogramowania na szkodę innych użytkowników.in. styczeń 2004 . aby poznać mechanizmy. w czym Linux sprawuje się naprawdę bardzo dobrze. na których z powodzeniem funkcjonuje. Linux+ Live po uruchomieniu Linux+ Live SecurityPak może okazać się niezbędnym narzędziem do przeprowadzenia testów bezpieczeństwa sieci.in. Obok Linux+ Live SecurityPak. który pozwoli Ci przeprowadzić audyt bezpieczeństwa systemu. Uwaga! Redakcja nie ponosi odpowiedzialności za ewentualne szkody powstałe w wyniku użytkowania opisywanego systemu i dołączonego do niego oprogramowania. minimum 128 MB pamięci RAM. które taką funkcję zamierzają w niedalekiej przyszłości pełnić.in.opis CD płyta A Linux+ Live SecurityPak L inux+ Live SecurityPak to specjalna wersja systemu Linux. • Nmap – bardzo popularny skaner sieci. najnowszą wersję jądra systemowego. pozwalający przechwytywać pakiety krążące po sieci lokalnej. • GKrellM – ciekawy program. bardzo przydatnych narzędzi. W omawianej edycji systemu – obok programów przedstawionych w obecnym wydaniu magazynu Linux+ – znajdziecie m. • Ethereal – popularny sniffer. • Iptraf – program ilustrujący ruch w sieci lokalnej. Dlatego też. napęd CD-ROM o prędkości minimum 32x. oraz osobom. na płytce znajdziecie m. które z pewnością przydadzą się każdemu administratorowi sieci. Minimalne wymagania sprzętowe: • • • • Linux+ Live w czasie pracy 4 procesor Pentium.in. • Hping2 – rozszerzona wersja popularnego programu Ping. ponad 50 narzędzi związanych z bezpieczeństwem sieci. Menedżerem okien w tej edycji Linux+ Live jest Fluxbox. Większość usług jest domyślnie wyłączona. Bardzo istotną kwestią – choć często lekceważoną przez początkujących administratorów – jest bezpieczeństwo sieci. pokazujący nam wiele istotnych informacji na temat naszego systemu operacyjnego. Wyposażyliśmy system Linux+ Live SecurityPak w zestaw narzędzi. uruchamiana bezpośrednio z napędu CD i nie wymagająca instalacji na dysku twardym. pozwalający m. a ich uruchomienie jest możliwe poprzez wybranie odpowiedniej opcji z menu menedżera okien. nakłada odpowiednie prawa dostępu do plików/katalogów i robi wiele innych rzeczy mających na celu ułatwienie życia administratorowi.60pre5 Narzędzie do zarządzania siecią. których w sieci jest dostępnych naprawdę bardzo wiele. POP. www. Pozwolą także dociekliwemu szefowi sprawdzić.linux.org/ FreeS/ WAN 2.9.9. mającą na celu lepsze zabezpieczenie tego kluczowego elementu systemu operacyjnego. VNC. W słabo zabezpieczonej sieci przy nieodpowiednim użyciu może spowodować załamanie ruchu internetowego. • zabijanie połączeń – sprawdzanie. FTP. http://www.com. które wykonują ich właściciele. http://www.6 Najnowsza wersja bardzo popularnego „łamacza” haseł. jest właśnie Ettercap. SMB.uni-stuttgart. który umożliwia takie działania. MSN oraz YMSG. które ma na celu przechwycenie naszych haseł. ICQ. • filtrowanie pakietów i usuwanie wybranych z nich – ustawianie filtrów. Za jego pomocą możemy podsłuchiwać ruch w sieciach osiedlowych. Nie każdy administrator zdaje sobie jednak sprawę z tego.3 Szyfrowanie plików i listów. Nie jest on przeznaczony dla początkujących użytkowników komputera.org/ Ethereal 0. bądź napisać własne. Quake 3.de/projects/ fwlogwatch/ GnuPG 1. NNTP. W tym miejscu ważna uwaga – Ettercap jest programem. • wykrywanie obecności innych snifferów – sprawdzanie.ethereal.sourceforge.pl Ettercap 0. czy jesteś bezpieczny w czasie podglądania ruchu w sieci.1 System autoryzacji szeroko wykorzystywany na świecie. zamykać otwarte na innych komputerach połączenia sieciowe oraz robić wiele innych rzeczy.1 Program ułatwiający zabezpieczenie systemu. czym zajmują się obecni w sieci ludzie oraz możliwość uruchomienia masowego zabijania połączeń dla danego użytkownika/ów. dzięki którym można podsłuchiwać ruch na podanych przez siebie portach z możliwością usuwania wybranych przez siebie pakietów.3. haseł oraz danych przesyłanych za pomocą tego protokołu. http://www.hping.com/ Ettercap po uruchomieniu • wsparcie dla HTTPS – podsłuchiwanie danych przesyłanych poprzez „bezpieczny” protokół SSL.fwbuilder. jak i graficznym (GTK).org/ John The Ripper 1. z którym należy obchodzić się bardzo rozsądnie i nie działać na szkodę innych użytkowników.bastille-linux. • pasywne skanowanie sieci LAN – zdobywanie informacji o komputerach obecnych w sieci lokalnej oraz wszystkich czynnościach. • zgadywanie systemu operacyjnego – sprawdzanie. http://ettercap. Napster.com/john/ Kerberos5 1. http://www. które w słabo zabezpieczonej sieci utrudniają życie każdemu administratorowi.płyta A dział prowadzi: Zbigniew Chyla gnome@linux. iż programy do podsłuchiwania ruchu w sieci mogą być także złotym środkiem na przeciążone przez oprogramowanie P2P sieci osiedlowe.org/ GrSecurity 2. IMAP 4. Wyłącza zbędne usługi.04 Program do tworzenia własnych sieci prywatnych. BGP. http://www. Wśród podstawowych funkcji Ettercapa możemy znaleźć: • wparcie dla SSH1 – podsłuchiwanie i przechwytywanie nazw użytkowników.freeswan.6b P odsłuchiwanie ruchu w sieci kojarzy się nam często z działaniem hakerów. czym aktualnie zajmuje się nowo przyjęty pracownik. http://www. Mogą również zapobiec wydostaniu się na zewnątrz ważnych dla firmy informacji. Pozwala tworzyć bardzo dokładne i zaawansowane konfiguracje. RIP. Half Life. NFS. SOCKS 5. SNMP.net/ Bastille 2. LDAP. danych bądź innych informacji.marko.5 Skaner pozwalający na identyfikację programów/usług działających na portach innych niż standardowych. http://www.net/cheops/ Firewall Builder Program do konfiguracji iptables. IRC. http://www.23 Łatka na jądro. SSH1.openwall. firmowe i inne. http://cert. MySQL. przydatnych do włamania na serwer. http://www. jakiego systemu operacyjnego używają inni użytkownicy twojej sieci.mit.gnupg. http://www. nawet poprzez PROXY.edu/kerberos/www/ 5 . Rlogin. X11. Jednym z programów.1. możemy nasz program powiększać o nowe moduły. Ettercap oferuje nam pracę zarówno w trybie tekstowym (środowisko NCurses). • podsłuchiwanie nazw użytkowników. haseł oraz danych wysyłanych poprzez Telnet. Dzięki modularnej budowie.grsecurity.2.3 Program analizujący logi firewalla i powiadamiający administratora o podejrzanej sytuacji.16 Program do podsłuchiwania ruchu w sieci.org/ Fwlogwatch 0. http://web.pl Amap 4.net/ HPing2 Rozszerzona o nowe możliwości wersja popularnego programu Ping.com. działający w środowisku graficznym.4.org/ Cheops 0. HTTP.thc. 7. błędnym ustawieniu praw dostępu do plików/katalogów bądź tysiącu innych drobnych spraw. informująca o plikach. pozwalająca połączyć się stacjom klienckim z centralnym serwerem Nmap.3. Wiadomo jednak.org/ Snor tSnar f 021111. Nie bez znaczenia jest fakt. Nessus składa się zarówno z klienta. BitDefender wyróżnia się zaskakująco niską ceną.mozillapl. Jest to popularny skaner zabezpieczeń serwera.net/ Snor t 2. Z pewnością warto go wypróbować – możemy na tym tylko zyskać. którzy z niej korzystają. Aby sprawdzić nasz system. TGZ) pasują do najpopularniejszych dystrybucji Linuksa obecnych na rynku.tripwire.nessus. Nessus jest bardzo przydatnym narzędziem dla każdego. którym pojęcie wirusów w sieci lokalnej nie jest obce.4.1 Program przedstawiający wyniki pracy programu Snort w czytelnej formie plików HTML http://www. xprobe.com/ styczeń 2004 . RPM. Specjalnie dla czytelników Linux+ na płytce CD umieszczamy. Co się jednak stanie. http://inner. Po wykonaniu tych czynności. nmap. którą przeprowadzamy w pliku /usr/ local/etc/nessus/nessusd.org/ Linux 2. Pozostaje nam jeszcze konfiguracja. że Nessus należy do grona programów Open Source i dostępny jest dla każdego bez jakichkolwiek opłat licencyjnych.org/ Mozilla Firebird 0. kto troszczy się o bezpieczeństwo swojej sieci i użytkowników.mozillapl.openssh. Z tłumu innych produktów tego typu dostępnych na rynku. http://www.snort. Pomimo bardzo wielu prób napisania dla tego systemu wirusa „z prawdziwego zdarzenia”.9 O dpowiednio zabezpieczony serwer jest swoistą wizytówką dobrego administratora sieci. Pakiety instalujemy za pomocą polecenia: rpm -ihv nazwa_pakietu. a na stacjach roboczych do niego podpiętych znajdują się systemy Microsoft Windows. musimy założyć na nim użytkownika uprawnionego do połączeń z naszym serwerem Nessusa. portsentry. libdnet. hping2. iplog.sourceforge. które uległy zmianie.4.0.conf.4. http://www. multi-gnome-terminal. Znajdziemy w nim opis tego. Przygotowane pakiety (DEB. Program dostępny jest w dwóch wersjach: chroniącej pocztę (integracja z serwerami Postfix.47 Aplikacja IDS.silicondefense. http://www. Jako wynik skanowania otrzymamy bardzo czytelny i szczegółowy raport. Qmail bądź Sendmail) oraz pliki (integracja z Sambą).net/opie/ Rnmap 0.6 Alfa PL Polska wersja językowa najpopularniejszej na świecie przeglądarki Open Source. nessus. http://rnmap. http://www.openwall.com/software/ snortsnarf/ TripWire 2. libnet.10 Odmiana programu Nmap.0.kernel.pl. FireWalk. do tej pory nie znalazł się śmiałek.1p2 Oprogramowanie umożliwiające prowadzenie szyfrowanych połączeń. nigdzie indziej niedostępną. gdy nasz komputer pełni rolę linuksowego serwera poczty bądź plików.4 Implementacja obsługi haseł jednorazowych. Wśród nich: ethereal.com. http://www. http://www. możemy uruchomić naszego klienta Nessusa i przeskanować system logując się za pomocą utworzonego wcześniej użytkownika i hasła.org/ OpenSSH 3. hydra.7 PL Najnowsza wersja przeglądarki opartej o Mozillę.5 Zaawansowany system detekcji intruzów (IDS).1. Jak zwykle czekamy na Wasze uwagi pod adresem e-mail: piotrt@linux. BitDefender – bo o nim tutaj mowa – jest nowo- czesnym oprogramowaniem antywirusowym przeznaczonym dla każdej grupy klientów.com/linux/ OPIE 2. libnids. że każdy z nas popełnia błędy i nie ma ludzi doskonałych. mająca na celu zwiększenie jego bezpieczeństwa. gkrellm. ettercap.23 Łatka na jądro systemowe. który by tego dokonał.5 W irusy komputerowe to temat zupełnie obcy użytkownikom Linuksa. który pozwoli zachować porządek wśród mnogości plików pracowników i ich poczty internetowej. Przedstawiona zostanie nam również propozycja jej załatania.23 Najnowsza stabilna edycja jądra systemowego z gałęzi 2. przygotowane przez redakcję. oszczędzając nam tym samym godzin czytania Security Focus i poszukiwania słabych ogniw systemu. Długie godziny spędzone przy mozolnym zabezpieczaniu serwera mogą pójść na marne w wyniku przeoczenia jakiegoś błędu przy konfiguracji usługi.opis CD Mozilla 1.x. które nie posiadają domyślnie żadnych zabezpieczeń przeciwko wirusom? Firma SoftWin SRL proponuje nam w takim przypadku wyposażenie swoich serwerów w system antywirusowy.bitdefender. http://www. jak i serwera. http://www. który pomoże w odkryciu błędów konfiguracji i poinformuje nas o ewentualnych niezałatanych błędach w oprogramowaniu. libnasl. nastawiona na szybkość działania i małą objętość.org/ BitDefender 1.org/ Aurox RPMS Pakiety RPM dla dystrybucji Aurox Linux 9. co nie podoba się naszemu skanerowi i jak niebezpieczna jest wykryta luka. iptraf. a następnie wystartowanie samego serwera poleceniem nessusd -D. Zastępca popularnego telnetu.org/ Openwall 2. Dokonujemy tego poleceniem: nessus-adduser. 6 płyta A Nessus 2. paketto. pmacct.5. http://www. 90-dniową wersję ewaluacyjną najnowszej wersji BitDefendera. Z pomocą w takim przypadku przychodzi Nessus. ngerp. . . • zestaw kompilatorów do wielu języków programowania.4. dzięki któremu przy starcie komputera będziemy mogli uruchomić nasz system. Po wykonaniu tych operacji. Z pewnością warto zapoznać się z Knoppiksem. • programy graficzne: GIMP. SuSE Live. GV. Instalacja na dysku twardym Mimo tego. być może tak bardzo przypadnie nam do gustu. że także osoba. • programy do analizy działania sieci i jej bezpieczeństwa. • łącznie ponad 800 pakietów oprogramowania.org 1. którym podąża coraz większa ilość dystrybucji Linuksa. że będziemy chcieli zainstalować go na naszym dysku twardym.płyta B Knoppix 3. która nie miała wcześniej kontaktu z Linuksem. KDevelop).knoppix. • wyrazić zgodę na formatowanie i wybrać odpowiadający nam system plików (np. podobnych jemu dystrybucji? Bez wątpienia innowacyjność. która – ze względu na podział poszczególnych elementów systemu na jak najdrobniejsze elementy – idealnie nadaje się do tworzenia tego typu oprogramowania. • zestaw aplikacji edukacyjnych. Ext3). • oprogramowanie multimedialne (XMMS. możliwość instalacji na dysku twardym. Knoppix ma bardzo liczne zastosowania. zostanie nam zadanych kilka pytań – czy chcemy uruchomić serwer pocztowy. Może być używany w charakterze systemu pokazującego możliwości Linuksa. • jądro systemowe w wersji 2. Knoppix bez wątpienia wytyczył szlak.net/ 9 . Xine). W skład opisywanej wersji Knoppiksa wchodzą: • środowisko graficzne KDE 3. którą zachwycają się setki tysięcy użytkowników. Sam autor nie raz przyznawał. http://www. • ustawić chociaż jedną z utworzonych partycji jako uruchomieniową (Bootable). Ostatnim krokiem będzie instalacja programu LILO. aby partycja / miała co najmniej 2. • zapisać tablicę partycji (Write) i wyjść z programu (Quit).com. Co wyróżnia Knoppiksa z tłumu innych. się z płytki CD. serwer sshd.linux. Dzieło Klausa Knoppera.1.3 D ystrybucje Linuksa uruchamiane bezpośrednio z płyty CD i nie instalujące się na dysku twardym komputera już na dobre zadomowiły się w świadomości użytkowników Linuksa. bardzo starannie dobrane oprogramowanie. że nie spodziewał się takiej popularności swojego rozwiązania. z jaką można uzyskać ewentualną pomoc.0.3. Wersje Live poszczególnych dystrybucji są bardzo dobrym materiałem promocyj- www. Wszystkie te składniki powodują. Paint. do odzyskiwania danych. • rozpocząć instalację wpisując knx-hdinstall. systemu ratunkowego służącego np. Prawidłowa odpowiedź na powyższe pytania pozwoli nam skonfigurować system tak. serwer CUPS oraz graficzne logowanie.22. • zestaw gier. • przeglądarki graficzne – Acrobat Reader. Wspomnieć w tym miejscu należy chociażby o PKD (Polish Knoppix Distribution). Następnie wpisujemy nazwę naszego komputera i konfigurujemy sieć.pl Knoppix po uruchomieniu nym i informacyjnym. Po instalacji. że Knoppix jest dystrybucją która uruchamia.4. Knoppix oparty jest na dystrybucji Debian GNU/ Linux.2 GB). • środowiska deweloperskie (Anjuta. • pakiet biurowy OpenOffice. • narzędzia do odzyskiwania danych i naprawy systemów operacyjnych (nie tylko uniksowych). aby spełnił nasze wymagania. serwer Samby. Zdecydowanie najbardziej uniwersalną z nich wszystkich jest Knoppix. • utworzyć partycje na swap i główny system plików (ważne. Może to zająć od 10 do 40 minut. W tym celu należy: • uruchomić system Knoppix z parametrem: knoppix lang = pl. będzie w stanie bliżej zapoznać się z tym systemem. szybkość działania oraz łatwość. przygotowane na początku jako system przeznaczony dla odwiedzających konferencję LinuxTag. jest w tej chwili dystrybucją. platformy programistycznej i wielu innych. Aurox Live czy właśnie zapoczątkowanym Mandrake Move. • oprogramowanie do konfiguracji sieci. Scribus. system poinformuje nas o kopiowaniu plików. platformy do gier. • uruchomić konsolę roota (K-> KNOPPIX-> Root Shell). denial of service).lx. Na początku Jean Jacques Apkarian (szef LX Polska) opowiedział krótko o firmie oraz jej najnowszej inicjatywie: sprzedaży produktów firmy Red Hat w Polsce. http://www. poza obecnością twórców dystrybucji Aurox.00 będzie można posłuchać o Linuksie oraz praktycznych możliwościach jego wykorzystania. aby całkowicie nie wycofać się z rynku stacji roboczych.45 Euro). Pierwszym prelegentem był Francois Lucatelli (Red Hat France).pl/ http://www. Captive radzi sobie z tym trochę na zasadzie Wine. Konferencję zakończyły wystąpienia Toma Boonena (IBM Belgium).ntfs-linux.iss.pl/wil2004/ GnomeMeeting Eugenia Loli-Queru. będące następcą systemu RealSecure. PKD czy Mandrake i Debian.html#ntfsdriver http://www.. ntoskrnl. który jak dotąd zapewnia właściwie tylko odczyt. decydując o wyborze przy każdym wywołaniu. Emuluje wymagany podsystem jądra Windows. Proventia to rozwiązanie typu IPS / IDS (Intrusion Prevention System / Intrusion Detection System). planujemy obecność deweloperów innych dystrybucji Linuksa.00-15. Podczas samych targów można będzie spotkać redakcję Linux+ na stoisku SoftwareWydawnictwo. Jest to pierwszy projekt wprowadzający do świata linuksowego przeźroczysty dostęp z możliwością zapisu do partycji NTFS.sourceforge. podczas targów Komputer Expo 2004.net/ status. Dotyczy to znanych. Opowiedział o strategii Red Hata i wyjaśnił. filia firmy LOGIX France. obsługę ALSA. jak przedstawia się przyszłość Red Hata w Polsce. i napisała o swoich doświadczeniach z tym programem. co jest w tej chwili dostrzegalnym trendem w serwerach typu network appliance.redhat.sys. podpora serwisu OSNews. zorganizowała 20 listopada 2003 roku konferencję „Linux i jego praktyczne zastosowania biznesowe”. Dzięki temu ataki będą skutecznie blokowane w czasie rzeczywistym bez ryzyka utraty pakietów.5 i pozwala między innymi na połączenia głosowe (czyli de facto sieciową telefonię) oraz kontakt z użytkownikami NetMeeting. http://www. z 6-miesięcznymi cyklami Beta.aktualności Linux+ na Komputer Expo 2004 Dnia 24 stycznia.com/ http://www.linuxnews. Nowa seria Red Hat Enterprise (właśnie została ogłoszona wersja 3) ma być wydawana co 12-18 miesięcy. Nimda czy Code Red. IBM. lepszą książkę adresową oraz asystenta konfiguracji. SQL Slammer. Najnowsza wersja ma numer 0. takich jak PLD. takimi jak MS Blaster.com/ http://hedera. producent tych zintegrowanych urządzeń zabezpieczających firmę. Artykuł zapowiada. Tym razem.exe. W środku urządzenia została wykorzystana odpowiednio zmodyfikowana dystrybucja Linuksa. że partnerzy nie nadążali z umieszczaniem Red Hata na swoich komputerach czy tworzeniem dla niego nowych wersji oprogramowania. oraz firma Veracomp S.linuxnews. czyli kolejne spotkanie z czytelnikami magazynu. oraz Mirosława Świniarskiego (Tech Data Polska). najbardziej rozbudowane rozwiązanie dla dużych firm). Firma Internet Security Systems (ISS). używając pliku z projektu ReactOS. Wśród uczestników rozlosujemy atrakcyjne nagrody. złośliwymi kodami i zagrożeniami hybrydowymi. który będzie wykorzystywany jako poligon doświadczalny. korzystając z oryginalnego sterownika z MS Windows ntfs. Altkom oraz Tech Data Polska.veracomp. Można je zainstalować w miejscach.98. Konferencja była na pewno ciekawa i wyjaśniła zebranym (około 100 osób). dlaczego zmienili politykę wydawania dystrybucji – zbyt częste publikowanie nowych wersji dystrybucji Linuksa powodowało. http://www. iż jest to projekt.0 będzie wyposażona w mechanizm wtyczek.html Captive i NTFS Na stronie projektu Captive znajduje się pakiet umożliwiający pełen dostęp do partycji NTFS pod Linuksem.php?news_ id=5280 http://hedera.reactos. ES (wersja dla małych serwerów) oraz WS (najprostsza wersja dla ma- łych serwerów lub stacji roboczych). zaprezentowały zasadę ich działania oraz dostępne możliwości.html 10 aktualności Konferencja „Linux i jego praktyczne zastosowania biznesowe” F irma LX Polska. W dalszej części konferencji firma Altkom opowiedziała o swoich autoryzowanych szkoleniach z Linuksa oraz przedstawiła przykład praktycznego wykorzystania produktów Red Hata we własnej infrastrukturze.com/story. który opowiedział o praktycznych aspektach wykorzystania Linuksa na sprzęcie IBM-a. Została ona podzielona na trzy elementy: AS (Advanced Server. http://www.com/ ISS Proventia P olska premiera nowej serii rozwiązań bezpieczeństwa sieciowego o nazwie Proventia miała miejsce 5 listopada w Warszawie. ich dystrybutor w Polsce. ale raczej chciał do niej zniechęcić niż się pochwalić – wskazywał. http://www. Ponadto. w ofercie pojawił się Red Hat Professional Workstation (za 88.linux. GnomeMeeting. redakcja Linux+ organizuje WIL 2004.jankratochvil. który opowiedział o zaangażowaniu swojej firmy w sprawy linuksowe. Partnerami tego wydarzenia były firmy: Red Hat. W godzinach 11.pl/_news/2003/ 12/03/_long/2351. że wersja 1. jak i nieznanych zagrożeń.pl/_news/2003/ 12/02/_long/2350.A. w odróżnieniu na przykład od LinuxNTFS.pl/ styczeń 2004 . łącznie z atakami typu odmowa dostępu (ang.osnews. Na końcu Francois wspomniał także o Fedorze. albo swojej własnej implementacji.com.net/project/ captive/ http://linux-ntfs. backdoor. wzięła na warsztat świetne narzędzie do telekonferencji przez komputer. przez które przechodzi cały ruch sieciowy.net/ http://www. zainicjowanego przez społeczność deweloperów w celu opracowania wersji Open Source platformy programistycznej Microsoft .pl/ Szkolenia z Linuksa od MENiS W czesną jesienią Ministerstwo Edukacji Narodowej i Sportu ogłosiło przetarg na przeszkolenie 750 nauczycieli różnych przedmiotów w posługiwaniu się Linuksem w dydaktyce swojego przedmiotu.pl/_news/2003/ 11/24/_long/2325. pojawi się oprogramowanie Mono 1.com.NET.NET. technologii katalogowej oraz zarządzania. Platforma Mono. Stosunkowo mniej uwagi poświęcono tradycyjnym operacjom uniksowym: pracy zdalnej. gdy napisany program kompiluje się. edukacyjnego i publikacji materiałów w sieci. aby narobić sobie apetytu na wypróbowanie go. spotkały się z olbrzymim zainteresowaniem: wszystkie miejsca zostały zajęte już pierwszego dnia rekrutacji.linuxnews. Serwis DevChannel przygotował artykuł wprowadzający w arkana użytkowania strace. OFEK. Artykuł przedstawia podstawy uruchamiania debuggera oraz uczy. działające w środowiskach RedHat Linux.com. Projekt ten jest stale rozwijany w celu odzwierciedlenia ewolucji architektury Microsoft . Scribus 1. że pojawił się w niej zaawansowany edytor tekstu.pl/_news/2003/ 11/27/_long/2335.org/ article. Scribus 1. Program został nastawiony na obsługę wybranej dystrybucji (tutaj Aurox – najlepiej znana edukatorom) w środowisku KDE oraz na wykorzystanie oprogramowania przydatnego w szkole: biurowego. statystycznego.dział prowadzi: Krzysztof Krawczyk newsy@linux. jak odczytywać komunikaty wyświetlane przez program. Użytkownik ma możliwość (przy pomocy podręcznego menu) wyboru odpowiedniej metody przetwarzania sygnału. http://www.net/ http://dscaler. to musi czuć rzeczywistą potrzebę nauczenia się korzystania z Linuksa. Według przedstawionego planu.html 11 . dzięki czemu z wydania na wydanie staje się to naprawdę coraz bardziej profesjonalne narzędzie do składu publikacji. Program przewiduje również demonstrację Knoppiksa oraz Polskiej Dystrybucji Edukacyjnej wraz ze wskazaniem podstawowych różnic między środowiskami wywodzącymi się z Debiana i Fedory (dawniej Red Hat). http://tools. drukowania. które służą do przekładania telewizyjnego sygnału z przeplotem na sygnał bez przeplotu (deinterlaced). Wysoką jakość uzyskano dzięki wykorzystaniu najlepszych algorytmów oferowanych przez DScaler. Tvtime 0. ale wystarczy tylko wspomnieć.com/ http://www. http://tvtime. Najtańszą ofertę przedstawiło konsorcjum polskich firm edukacyjnych.1.linuxnews.go-mono.linuxnews. zgodność mechanizmu wtyczek z Pythonem 2. http://web2.pl/_news/2003/ 12/01/_long/2342. może spotkać się z sytuacją. Kursy. w skład którego wchodzą firmy DC Edukacja.1). systemu Linux i środowiska GNOME. SuSE Enterprise Server oraz Aurox 9. jeśli więc zgłasza się na taki kurs.html Strace Każdy programista. Umożliwiłaby ona programistom korzystającym z systemów operacyjnych Linux i UNIX tworzenie i wdrażanie wieloplatformowych aplikacji zgodnych z architekturą .NET. językom skryptowym.org/ http://www. W tym momencie na scenę wchodzą narzędzia debugujące (debuggery). nieważne.12 przynosi głównie poprawki błędów związanych z XMLTV.pl Mono i Novell Nterprise Linux Services F irma Novell przedstawiła plan realizacji projektu Mono. a liczba zgłoszeń była ponad pięciokrotnie wyższa od liczby miejsc. a później jego kolejne wersje – to ważna informacja dla programistów korporacyjnych oraz niezależnych producentów oprogramowania. znacznie ułatwia tworzenie i wdrażanie aplikacji w systemach Linux i UNIX.pl cześć kosztów zakwaterowania. Na szkolenie nauczyciel musi poświęcić dwa weekendy i zapłacić znaczącą www. czy profesjonalny projektant. ale nie działa tak jak powinien. konwersja hiperłączy w eksporcie do PDF.9. OSI CompuTrain SA oraz Vulcan i jego oferta przyjęta została dla 11 województw (pozostałe przyznano firmie Altkom). Jest to rozwiązanie stanowiące pomost do wieloplatformowego środowiska NetWare 7. narzędziom używanym w konsoli tekstowej. czy domorosły magik.linux. co ma wpływ na zużycie procesora i jakość obrazu.pl?sid=03/10/24/2057246&mode =thread&tid=46&tid=57 http://www.de/fschmid/ http://www. Aplikacja zawiera wiele interesujących rozwiązań polepszających obraz pochodzący z kart telewizyjnych. działające na wielu platformach i pod kontrolą różnych systemów operacyjnych.1. opracowywana i testowana już od przeszło dwóch lat.0. obejmujące dwie sesje po trzy dni każda i trzy tygodnie pracy zdalnej (e-learning) między sesjami.NET.3 to wersja niestabilna. którzy zamierzają tworzyć aplikacje zgodne z architekturą . Ponadto.sourceforge.3 czy ustalanie wielkości czcionek z dokładnością do 1/10 punkta. w którym można będzie uruchamiać zaawansowane usługi sieciowe dla serwerów w środowisku Linux. firma Novell zaprezentowała pierwszą komercyjną wersję rozwiązania Novell Nterprise Linux Services (zintegrowane usługi w dziedzinie dostępu i przesyłania plików.altmuehlnet.novell. w pierwszej połowie 2004 r.html Tvtime Ukazała się kolejna wersja świetnego programu do oglądania telewizji pod Linuksem. Został on uznany na targach LinuxWorld Conference & Expo 2003 za „Najlepszy projekt oprogramowania o otwartym dostępie do kodu źródłowego” (Best Open Source Project). multimedialnego.devchannel.3 Franz Schmid i jego zespół przyłożyli się do pracy nad nową wersją Scribusa. 6 minęło już kilka miesięcy. ale raczej nie radzą sobie z nim inne elementy systemu.net/Articles/59507/ Wykr ywacz problemów Pod skrzydłami OSDL powstał nowy projekt.6.net/kernel-traffic/ kt20031201_143. przygotowuje swoje własne zestawy łatek oznaczane literami -mm. które mają szansę na to.org/node/view/1684 http://kerneltrap. aby jego aktywność obejmowała tylko jednolinijkowe drobne poprawki. Do tej pory była ona wykorzystywana w zasadzie jedynie przez SE Linux. że opiekunem nowej stabilnej serii zostanie Andrew Morton i to najprawdopodobniej on zdecyduje. a późniejsze. by trafić dopiero do wczesnych jąder 2. dlatego Larry McVoy prawie od razu zauważył próbę wprowadzenia backdoora do źródeł jądra przez bramkę CVS-ową. które powinny tam trafić. który wyświetla je w postaci strony WWW. Niedawno dzięki LSM została stworzona implementacja poziomów bezpieczeństwa przypominająca rozwiązanie z BSD.net zwrócił uwagę. Zmiana w źródłach wyglądała jak łatka wprowadzająca dodatkowe sprawdzanie błędu. że wszelkie bardziej istotne ulepszenia odkładane są na potem. którego założeniem jest pomoc deweloperom przy wykrywaniu błędów. Do tej ułomności Linuksa użytkownicy chyba muszą się przyzwyczaić. http://lwn. udostępniane są też bramki do innych systemów zarządzania wersjami.org/node/view/1584 Złap mnie. Tworzenie i utrzymywanie podobnych list stało się powszechne od czasu zeszłorocznego zamrożenia funkcjonalności. dotyczących na przykład bezpieczeństwa. może zostać podniesiony przez interfejs /proc. Projekt ten nazywa się Linux Kernel Tinderbox i bazuje mniej więcej na architekturze klient-serwer. a wyniki swoich poczynań kieruje do serwera. Konsekwentne stosowanie takiej polityki dało zamierzony efekt. Dzięki temu można używać kolejnych. http://kt. Twórca Linuksa wydaje się jednak wciąż nie do końca zadowolony – chciałby. mniej więcej do numeru pięć. Jest ono łatką na jądro. która przez wszystkich będzie uznawana już za stabilną. które naprawiają ewidentne błędy. Repozytoria te są bardzo ściśle chronione.net/Articles/59927 Poziomy bezpieczeństwa LSM jest łatką pozwalającą na używanie różnych polityk bezpieczeństwa w systemie. gdy jądro jest skonfigurowane jako wywłaszczalne. To może powodować pewne zachwiania stabilności w serii. przy okazji wydania 2.4.zork. w którym momencie obecne wersje jądra stracą przyrostek ‘-test’. must-fix. kernel panic). Kolejne wersje jądra nie są idealne i chyba nigdy nie będą. które powinny być rozwiązane. http://lwn.org/node/view/1667 styczeń 2004 . a repozytoriami zawiaduje firma BitMover. Zanim jednak to się stanie. że coś niedobrego dzieje się. choć niedoskonałych wersji nie czekając latami na wersję ostateczną.aktualności Tylnym wejściem Oficjalne źródła jądra Linux trzymane są w BitKeeperze. Zestawienia dołączone do -mm jednak istnieją i są zaskakująco długie. poprawione. że i tym razem będzie podobnie – coraz więcej zbiera się zmian. oraz wiele problemów. która uaktywnia się jedynie w przypadku paniki jądra (ang. że nie będzie więcej przyjmował łatek innych niż te. Serwis LWN. że wersje z zerem na końcu były stabilne. Tego zjawiska bynajmniej nie uznał za pozytywne. Problem nie dotyczy samego wywłaszczania. Wraz z łatkami pojawiły się dwie listy – pierwsza zawierająca pozycje. oznaczający brak jakiejkolwiek dodatkowej polityki bezpieczeństwa. domyślny poziom 0.html#15 12 jądro linuksa Linux 2. przeniesienie poprawek z 2. Po raz kolejny można się przekonać.net/Articles/58199 http://kerneltrap. Linus powrócił też do dawnego zwyczaju nazywania kolejnych wersji jąder. jednakże im bliżej wydania 2. że prawie trzy lata temu. Dzięki tej łatce wszystkie produkowane w takiej sytuacji informacje. Spośród konkretnych zastrzeżeń pojawiło się zdanie. między innymi do CVS. łatę firmowaną przez NSA. a potem znikają. że jądro Linux jest projektem wiecznie w fazie rozwoju. już mniej.6 O d czasu wydania pierwszej testowej wersji jądra Linux serii 2. zawiera między innymi zmiany likwidujące problemy z blokowaniem w wielu podsystemach. sam Torvalds zauważył występowanie zjawiska polegającego na tym. które muszą jeszcze trafić do stabilnej serii. Ważniejsza z list. Jakiś czas temu Linus Torvalds ogłosił.6. czyli do kolejnych stabilnych wersji jądra.net/Articles/57153 http://kerneltrap.0.0. a kolejna to beaver in detox (bóbr na odwyku). które mogą znaleźć się w jądrze i uniemożliwić jego zbudowanie w niektórych konfiguracjach. tym mniej sił i uwagi wkładano w ich utrzymywanie. między innymi Larry McVoy. zostają zapamiętane na dyskietce lub skierowane na port równoległy. Dzięki niej. coraz lepszych. Wydaje się jednak. jednakże przy porównaniu uid z 0 zamiast '==' pojawiło się '='. Wiadomo już. Wersja -test10 została nazwana stoned beaver (w wolnym tłumaczeniu „nawalony bóbr’’). a druga – rzeczy. które zwykle przetaczają się po ekranie. jednak cały czas powstają kolejne. Dopiero potem udawało się wrócić do stanu z początku serii stabilnej. Osoby śledzące drzewo jądra utrzymywane przez Linusa w BitKeeperze miały szansę zauważyć znaczny spadek rozmiaru zmian. http://lwn. jeśli potrafisz Deweloperzy Linuksa znacznie częściej niż inni użytkownicy doświadczają błędów jądra i głównie dla nich przeznaczone jest narzędzie Kmsgdump. http://lwn. Klient Tinderbox ściąga nowe zmiany i próbuje je kompilować. choć ich istnienie nie zakłóca w istotny sposób pracy systemu. Takie ograniczanie zmian powoduje jednak.4. Od wyników jego prac zależy. postanowił.org/node/view/1723 http://kerneltrap.0test6.zork. działający w przestrzeni użytkownika.html Winna jest do_brk() Pod koniec listopada i na początku grudnia głośno było o włamaniach na serwery projektów związanych z Linuksem i Wolnym Oprogramowaniem (debian. to między innymi brak obsługi ze strony sterowników urządzeń oraz brak obsługi devfs w initramfs. http://kerneltrap. jest jedynie doraźnym umożliwieniem skorzystania z nich.23.4 powinny dać sobie radę z dużą ilością pamięci RAM. http://kt. sterowników do swojego sprzętu. Stworzenie takiego modułu nie rozwiązuje bynajmniej problemu obsługi tych kart w Linuksie.org/debian-develannounce/2003/debian-devel-announce-200311/msg00012. co zostało już zrobione. Za część tych problemów jest odpowiedzialny niepozorny błąd w funkcji do_brk(). że nie są to cechy. był krytykowany przez prawie wszystkich.org/node/view/1700 http://kerneltrap.debian. Linus Torvalds wprowadził poprawkę w jądrze 2. Greg Kroah-Hartman. a Marcelo Tosatti kilka dni później w 2. czy XFS pojawi się w którejś kolejnej wersji serii 2. a XFS został włączony w trakcie rozwoju 2.4.4. Pojawiło się w niej kilka dość istotnych zmian.4 było więcej. savannah. zgodne z API Windows.pl/_news/2003/ 12/04/_long/2354. Błąd wynikł z przeoczenia: w jądrach 2..org/node/view/1727 Z braku laku Pontus Fuchs podesłał na listę linuxkernel informację o stworzonym przez siebie module jądra o nazwie Nidswrapper. Richard Gooch. Grono hakerów Linuksa z Jeffem Garzikiem na czele pracuje nad implementacją tego interfejsu dla jąder 2. musi zostać wykonana poza projektem. wciąż podsyła coraz nowsze wersje tego rozwiązania i wydaje się. twórca i pomysłodawca udev. eliminując jego wady i niedoskonałości.23 Macelo ogłosił swoje plany dotyczące dalszych prac nad rozwojem 2. których brakuje samemu udev – jego rozwiązanie można już stosować. a jedną z implementacji jest udev.gnu.org.edu/hypermail/ linux/kernel/0312.pl Udev J uż całkiem dawno temu Linux doczekał się systemu plików urządzeń w systemie. przeznaczony dla jąder nowej serii 2.org/node/view/1690 http://kerneltrap.4. w funkcjach wywołujących. Przyczyny.x. Zamierza rozwiązać wszystkie bieżące problemy www. Ze względu na zbliżające się wydanie 2. między innymi usunięto OOM killer. W jego przypadku były to karty WLAN.2.24 będzie ostatnią wersją.com.dział prowadzi: Maja Królikowska [email protected]. czy kod XFS ma jeszcze szansę trafić do oficjalnego drzewa 2. że nie miał takich zamiarów. czyli system plików urządzeń oparty o sysfs.6. Adrian Bunk w pewnym momencie podesłał na listę linux-kernel łatkę.net/kernel-traffic/ kt20031201_143.4. że znajduje ono zwolenników.linuxnews.4. która dokumentowała to. Przyznał jednak. -aa.6.6. Greg argumentował. Później będzie się już tylko zajmował utrzymaniem powierzonej mu serii jąder Linux. że 2.org.zork.23 i co dalej? D nia 28 listopada 2003 roku Marcelo Tosatti wydał kolejną wersję jądra serii 2.com. Jednakże sam pomysł systemu plików dla urządzeń nie umarł.4 trafiło też większość innych zmian w podsystemie pamięci wirtualnej firmowanych przez Andreę Arcangeli. którą należy wykonać przed zastąpieniem devfs przez udev. że prace zaszły już na tyle daleko. Stworzył ten moduł. pozwalający oszczędzić trochę baterię.4. że większość pracy.5. Jakiś czas temu przestał się udzielać. http://hedera.4. . Jeff uznał.linux.23-pre7. Ktoś zapytał. które chętnie widziałyby XFS jeszcze w 2. choć autor zmian wciąż zaleca używanie jego własnego drzewa.. wyjątkiem był tu Red Hat/Fedora. choć nie jest propozycją z gatunku jedynych słusznych.pl przed wydaniem kolejnego jądra.net/kernel-traffic/ kt20031201_143. Większość dystrybutorów nie zdecydowało się umieścić tej poprawki. ponieważ niektórzy producenci wciąż nie dostarczają nawet binarnych. Jej twórca. pozwalającym ładować sterowniki nids.html 13 . ponieważ 2.html http://www. Przyznał też. http://kerneltrap. http://kt. a co – jeszcze nie. inwazyjne zmiany oraz nowe sterowniki. że warto zacząć poszukiwać większej liczby testerów i podesłał na lkml dokument z dokładnym opisem tego. że nie bardzo ma ochotę na zajmowanie się tym kodem.ussg. który ma zastąpić dotychczas używany równoległy interfejs ATA. Ponieważ jednak osób. oraz dodano „tryb laptopowy”.html#5 2. Dzięki nim waniliowe jądra 2. a devfs w zasadzie poszedł w zapomnienie.0.org/node/view/1717 http://lists.0/0597. Kilka dni po publikacji 2. ale zgłosił się Christoph Hellwig.x sprawdzanie argumentów odbywało się wcześniej.iu. do której włączy poważniejsze. którego pierwsza implementacja miała głównie przeciwników.html#2 Serial ATA w Linuksie Serial ATA jest nowym interfejsem. Do tej wersji jądra 2. że jego „dziecku” brakuje dojrzałości i podkreślił. Był to devfs. Marcelo odparł. a wymienione problemy nie leżą po stronie twórców udev. przeznaczonych dla Linuksa. Zabrakło sprawdzenia poprawności zakresu argumentów tej funkcji. tak aby później wprowadzać do niego jedynie poprawki błędów krytycznych i związanych z bezpieczeństwem. bo go po prostu nie lubi i nie do końca w niego wierzy. zastępując go innym rozwiązaniem. Nikt nie sądził. że może mieć on poważne konsekwencje.6. dla których tak jest.). to rozpoczęły się poszukiwania osoby chętnej do przygotowania takiego włączenia. że udev nie jest jeszcze w pełni gotowy i nie może w pełni zastępować devfs.6 osiąga już stabilność i będzie można go wkrótce używać. Al Viro wykręcił się od tego. [ChkRootkit] http://www.org/ unstable/admin/aide. ale można też pobrać samodzielną łatkę ze strony projektu. Wystarczy zainstalować go i uruchomić. w GrSecurity (dostępna w Debianie). Ponadto. [PaX] http://pageexec. aby dostać się do serwera klecker. • z katalogów domowych użytkowników usunięto wszystkie klucze publiczne GPG i inne materiały.html 14 W listopadzie 2003 roku miało miejsce włamanie na serwery Debiana. archiwum security.fi/~rammer/ aide.org/ unstable/misc/chkrootkit.chkrootkit. które mogą (choć nie muszą) o tym świadczyć i trudno jest je wszystkie sprawdzić ręcznie. To tylko fikcja literacka. • 20.6). udało się ustalić. że zadajemy sobie pytanie.org.html [ExploitDSA] http://lists. Pewnego dnia dane zebrane przez AIDE mogą pozwolić zaoszczędzić wiele czasu i nerwów. gdyż strona główna Debiana nie została podmieniona • zweryfikowano.debian. dostępu. Profilaktycznie dostęp deweloperów do powłoki na wszystkich maszynach Debiana (serwerach. • wszystkie hasła użytkowników (deweloperów Debiana) w bazie LDAP zostały unieważnione. Przydatnym narzędziem może być Chkrootkit. murphy oraz gluck. czy mój system nie padł przypadkiem ofiarą włamania? Istnieje wiele symptomów.org/ testing/devel/kernel-patch-2.4. wyłączenie możliwości wykonywania dynamicznie stworzonego kodu (w segmentach danych) i inne techniki. Ustalono.virtualave. dzięki współpracy z inżynierami SUSE i Red Hata. wzorowanym na słynnym.com. że exploit wykorzystywał przepełnienie licznika używającego liczby całkowitej przy jednym z wywołań systemowych jądra. że ten drobny problem można w taki sposób wykorzystać.grsecurity. Jest też niemal pewne.org/ debian-security-announce/ debian-security-announce-2003/ msg00211.debian. stworzono kopie ich dysków do dalszej. że: • 19. Ponadto w pewnych przypadkach może zgłaszać fałszywe alarmy (np.tut.html Sprawdź swój system z Chkrootkit Słysząc o włamaniach naturalnym jest. listopada włamywacze użyli podsłuchanego hasła użytkownika (nie roota). adresy emailowe w domenie debian. iż /sbin/init został zmieniony (SuckIT podmienia /sbin/init podczas instalowania się.html PaX w Debianie Celem projektu PaX jest rozwój zabezpieczeń przeciw atakom polegającym m.cs.23. na wykonaniu kodu dostarczonego przez atakującego. Uwaga: Chkrootkit nie daje 100% pewnej odpowiedzi.net/ [GRSec] http://www. • wyłączono wszystkie cztery serwery (przestały działać listy dyskusyjne. m. • wstępne oględziny pozwoliły ustalić.in. Obecna implementacja obejmuje: randomizację stosu użytkownika i jądra.debian. który potrafi wykryć kilkanaście najbardziej rozpropagowanych rootkitów. Została włączona dopiero od jądra 2.debian. PaX jest obecny w wielu większych łatach na jądro.debian. alioth oraz kilka innych serwisów).html [SELinux] http://www. • podobnie postąpili z serwerami master. iż archiwa pakietów nie zostały naruszone (zmodyfikowane) przez włamywaczy. Głównym zadaniem AIDE jest stworzenie bazy informacji o plikach na dysku (wielkość. iż wszystkie z w/w serwerów zaczynają działać niestabilnie – ich jądrom zaczęły zdarzać się oopsy. suma kontrolna. Poprawka była banalna i znana od dawna. • udało im się uzyskać tam prawa roota i zainstalować rootkit SuckIT (zestaw programów i moduł jądra.org/ debian-security-announce/ debian-security-announce-2003/ msg00212. aby być pewnym. modyfikacji) i późniejsza regularna kontrola niezmienności. mogłyby im ułatwić kolejne włamanie.coker.net/ [DebGRSec] http://packages. że każde kolejne uruchomienie maszyny ponownie uruchomi rootkit np. listopada zauważono. iż nastąpiło włamanie. • rozesłano ogłoszenie o włamaniu. maszynach do portów na różne architektury) został tymczasowo zablokowany.debian. Possible LKM Trojan na systemach z jądrem 2. późniejszej analizy oraz zreinstalowano systemy z CD-ROM-ów. ale wcześniej nikt nie zdawał sobie sprawy.org. pozwalające na ukrywanie plików. • po kolei przywrócono funkcjonowanie serwerów sprzed włamania.org. [SuckIT] http://hysteria.html [DebAIDE] http://packages.debian. a także adresów zwracanych przez mmap. zainstalowany pakiet AIDE (Advanced Intrusion Detection Environment) zaczął raportować. a w razie potrzeby można zajrzeć do podręcznika lub zapisać się na listę dyskusyjną. które przechwycone przez włamywaczy raz. 1.au/ selinux/ styczeń 2004 .in. czas utworzenia.org/ [DebChkR] http://packages. autobuilderach. iż wszystkie maszyny Debiana zostaną wyposażone w dodatkowe zabezpieczenia w rodzaju SE Linuksa czy PaX. podsłuchiwanie terminali i sieci. a także zdalny dostęp – instalujący się przez bezpośredni dostęp do /dev/kmem).sk/sd/f/suckit/ readme [Announce] http://lists. W Debianie dostępny jest gotowy pakiet aide.aktualności debian Włamanie na serwery Debiana Pomóż bezpieczeństwu – AIDE Advanced Intrusion Detection Environment jest dostępnym na licencji GPL narzędziem do testowania integralności plików. aczkolwiek niestety niewolnym Tripwire. grudnia. [AIDE] http://www.4-grsecurity. zapewniając zdalny dostęp włamywaczom). gdyż instalacja przestanie być dla wielu przeszkodą w zmianie dystrybucji. i Tux4Kids. że wciąż jeszcze niegoto- UserLinux ma być oparty na Debianie wy instalator może stać się hamulcem w wydaniu Sarge. które z konieczności nie mogą znaleźć się w Debianie. Czasami przydatny jest również zbiór adresów nieoficjalnych źródeł – www.html [OSEF] http://www.debian. przez co nie może być uznana za podstawowy instalator Debiana.pl Debian podstawą dystrybucji UserLinux B ruce Perens. ale jedną poważną wadę – ze względu na długi cykl między kolejnymi wydaniami. ale już można zauważyć.debian. najtrudniejszy dla wielu użytkowników etap konfiguracji modułów jądra został całkowicie zautomatyzowany za pomocą autodetekcji sprzętu. Z tego powodu właśnie powstała strona www. czy pojawienie się portu Anakondy w tej właśnie chwili nie zdekoncentruje ludzi pracującym nad jego rozwojem. przekonywał. istnieje możliwość.debian. które mogą być użyte w stabilnej wersji systemu. [DLC] http://www. jak właściwie będzie wyglądała instalacja z użyciem nowego instalatora? W jaki sposób będzie ona łatwiejsza? Dla tych.debian. a także jest instalatorem stosunkowo dużym. W przeciągu ostatnich dwóch lat OSEF m. Kompilacja z czystych źródeł czy własnoręczna kompilacja pakietów z dystrybucji testing czy unstable też może nastręczać wielu problemów. staje się po prostu zbyt przestarzałe do niektórych zastosowań.debianplanet. które się w nim znalazły. Dystrybucja taka powinna być oparta na całkowicie wolnej podstawie. jak i Debian Jr. choć stabilne.com. na które jest dostępny Debian.com/article/03/11/10/ HNdesktopwalk_1.in.tux4kids.dział prowadzi: Grzegorz Prokopski [email protected]?id=1006 [BadFeelings] http://lists. zostało przeniesionych z security.org/debiandevel-announce/2003/debian-develannounce-200311/msg00000.org.debian.org/ debian-devel/2003/debian-devel200310/msg01913. Poprawiono www. gdy miało miejsce włamanie na serwery Debiana.html [DebInstaller] http://www.apt-get. Co prawda autor użył tekstowej wersji (wersja graficzna w GTK+ jest jeszcze dopracowywana). Otóż Progeny przystosowało instalator Red Hata (Anaconda) do współpracy z systemem pakietów Debiana. uzupełnionym o pakiety Debian Jr. oferująca nowsze wersje pakietów.pl kilkanaście pakietów z poważnymi błędami wpływającymi na użyteczność systemu.linux.infoworld.debian. że np.org/debianannounce/debian-announce-2003/ msg00002. iż GNU/ Linux powinien być częściej używany przez przedsiębiorstwa jako system na biurko.org/ node.org. którą niedawno zakomunikował Ian Murdock (założyciel Debiana i fundator Progeny).asp?source=15632 [DebDesktop] http:// www. jaką jest Debian. [Together] http://lists.org/ [Tux4Kids] http://www.butrain. np. gdzie były dostępne od dnia wydania poprawionego pakietu. Kilkadziesiąt poprawek dotyczących bezpieczeństwa.0r2 wydany N iemal dokładnie w tym samym czasie. dotychczasowi użytkownicy Red Hata będą mogli zastanowić się nad wykorzystaniem Debiana. oprogramowanie. Anaconda nie jest przeniesiona na większość z platform. W interesujący sposób koresponduje to z informacją.org/devel/ debian-jr/ 15 .backports. a różnić się dodatkami.org/ http://www. że u niektórych informacja ta wywołała mieszane uczucia. do łącza do OSEF Zarówno Open Source Education Foundation. Obrazy tradycyjnie można pobrać z za pomocą jigdo.0r2. [3.debian.html [DebianCD] http://www. więc zachodzi obawa. mają wspólny cel: wprowadzić dzieci w świat Wolnego Oprogramowania.html [DebAnacoda] http:// www. Niestety.osef. podczas niedawnej konferencji Desktop Linux Conference. że np.org/ devel/debian-installer/ Debian Woody 3. Nadmienić należy. binarne sterowniki urządzeń.com/itp/desk linux. [Walkthrough] http: //www. ukazało się nowe podwydanie Debiana Woodiego – 3..0r2] http://lists. chcieliby rzucić okiem na dokładny opis instalacji – najlepiej wraz z ilustracjami – dostępny jest właśnie taki artykuł. perfekcyjnie zrealizował projekt wprowadzenia Wolnego Oprogramowania do jednej ze szkół znajdujących się w pobliżu siedziby. Mimo wszystko wydaje się. a także rozdystrybuował wiele CDROM-ów z Knoppixem.org.org/ CD/ Świeże pakiety dla Woodiego Używanie stabilnej dystrybucji Debiana ma wiele zalet.backports.apt-get.com. http://www.org/ [DebianJr] http://www.org/ Ilustrowany przykład instalacji Sarge z nowym instalatorem Wielu ludzi jest ciekawych.debianplanet. nie mówiąc już o całkowitej przesiadce na te gałęzie Debiana.org/ node. Ponadto nowy instalator Debiana jest właśnie intensywnie rozwijany.php?id=1009 Debian Jr. że przeniesienie Anakondy na Debiana połączone z niezadowoleniem wielu ludzi z porzucenia przez Red Hata systemów biurkowych wraz z niską jakością dystrybucji oferowanej przez Fedora Project może postawić dystrybucję biurkową opartą na Debianie w bardzo dobrej pozycji startowej! Czy rzeczywiście zobaczymy Debiana na wielu nowych biurkach? To całkiem możliwe. Oznacza to. którzy przed samodzielnym sprawdzeniem powyższego. 0.2. Oficjalne wydanie 10. styczeń 2004 . biblioteki Xine w wersji 1.1. Do tworzenia własnych publikacji w środowisku graficznym służy Scribus – stabilna wersja 1. tłumaczenie dokumentacji zostało uaktualnione.0 zapowiadane jest na czerwiec 2004 r.3. W połowie grudnia w Internecie powinna pojawić się pierwsza wersja alfa Auroksa 10 – opublikowana w postaci uruchamianej z CD (bez instalacji) płyty Live. której bardzo brakowało użytkownikom wcześniejszych wersji. a jednocześnie zyskać szansę wygrania wspaniałych nagród. Apache (2. w razie problemów z odtwarzaniem można skorzystać z wtyczki VCDO). Jest to zestaw aplikacji o mniejszych wymaganiach sprzętowych niż ich odpowiedniki z KDE i GNOME. Strefa Aurox Club Na stronie domowej Auroksa http: //www.6.1. Aurox 10 Alfa Chociaż w serii Aurox 9. Zaktualizowane zostały środowiska graficzne: KDE do wersji 3. • rox-filer – menedżer plików.2.4. gdy chcecie dołączyć do Aurox Club i wspomóc Auroksa. Tleenx2 lub (w środowisku tekstowym) Ekg. XMMS został wreszcie zaktualizowany – teraz jest to wersja 1.1 wraz z wtyczką pozwalającą na automatyzację składu przy pomocy skryptów w Pythonie. Nowością są narzędzia do komunikacji z telefonami komórkowymi firm Nokia i Siemens.org w wersji 1. z ulepszoną obsługą kodeków . Miłośnicy pogaduszek on-line mogą skorzystać z Kadu. W skład „lekkiego środowiska” wchodzą: • fluxbox – menedżer okien.0.aurox. zwracają uwagę: szybsze uruchamianie pakietu.aktualności aurox Aurox 9. znacznie zmienionym wydaniem 10. Nowością jest grupa Light Desktop – „lekki desktop”. Linux+ Extra! nr 34 z najnowszą wersją Auroksa jest już w sprzedaży.3.org/ 16 G dy czytacie te słowa. Zarejestrowani użytkownicy po podaniu adresu e-mail i hasła zyskują dostęp do materiałów klubowych i możliwość głosowania na projekty realizowane przez innych klubowiczów.5 (z polskim interfejsem). GG2.1.2 beta 2. XFree86 4.sdp2003.2? Największy hit to OpenOffice. Każdy uczestnik wykładu otrzymał po jego zakończeniu przedpremierową wersję Auroksa 9.0 pre2. zawierająca wtyczkę wyjściową ALSA. http://www.org/ powstała strefa specjalna dla członków klubu Auroksa.4. poświęcona profesjonalnym zastosowaniom Linuksa. Do dystrybucji trafiły nowe wersje programów do odtwarzania filmów i muzyki. bardziej dopracowane filtry importu i eksportu plików z/do pakietu Microsoft Office oraz możliwość nagrywania makr. Osoby programujące w języku Pascal ucieszą się z FPC (Free Pascal Compiler). Co nowego znajdziecie w Auroksie 9. Mozilla to już wersja 1. zaś GNOME – do wersji 2. Epiphany (standardowa przeglądarka WWW środowiska GNOME) jest zaktualizowana do wersji 1. Dodano nowe programy.DLL QuickTime (do wersji 6.aurox.x ukaże się jeszcze wydanie 9. Uczestnicy konferencji otrzymali płyty CD z instalacyjną wersją Aurox Linux 9. • sylpheed – klient poczty (bardzo funkcjonalny i szybki program). obecnie zastępują- Aurox standardowo zawiera odtwarzacze filmów Najnowsza wersja Auroksa ca starszą VCD.4 prerelease i kompilator GCC 3.48) oraz PHP (4.0.0. http://www.8. • mozilla-firebird – lżejsza wersja najbardziej znanej przeglądarki.2 4 grudnia 2003 roku na konferencji "Systemy dla przedsiębiorstw 2003" podczas wykładu Jarosława Górnego "Aurox Linux – otwarty system operacyjny dla małych i średnich przedsiębiorstw" odbył się przedpremierowy pokaz wersji 9. Testowa wersja Auroksa 10 wykorzystuje jądro 2.0 RC2 oraz MPlayer 1. Nowa wersja Xine zawiera już rozszerzoną wtyczkę dla VideoCD (VCDX.28c). http://www. Użytkownicy zakładający na Auroksie aktywne strony WWW otrzymują zaktualizowane wersje: MySQL (4. np.software.2 już jest! Prapremiera Auroksa 9. Standardowym środowiskiem graficznym jest KDE 3. Rejestracja jest całkowicie dobrowolna.3.2 na 4 płytach CD.pl/konferencje/ LinuxPro2003/ Ponad 5000 zarejestrowanych użytkowników Z końcem listopada liczba zarejestrowanych użytkowników Auroksa przekroczyła 5000.0 (testowe).0. Aplikacje te pozwalają wygodnie używać Auroksa na wolniejszych maszynach. MPlayer – alternatywny odtwarzacz filmów Auroksa – to wersja rozwojowa.2.4). to rozpoczęły się już prace nad nowym. jednak jest niezbędna.2 dystrybucji Aurox. o które prosili użytkownicy: rysunki wektorowe możemy teraz tworzyć w programie Sodipodi (wersja 0.5.32). lepszą zgodnością kodeków ze standardem MPEG1/ MPEG2.0.pl/ Aurox dla uczestników LinuxPro 2003 W dniach 10-11 grudnia 2003 roku w Jabłonnie pod Warszawą odbyła się konferencja LinuxPro 2003. Wśród wielu udogodnień.com.16).3). a grafikę 3D i animacje – w Blenderze (2. mogą być kopiowane bez zmian i rozdawane np. Na szczęście do niektórych winmodemów dostępne są również sterowniki dla naszego systemu operacyjnego. dla SmartLinka jest to /dev/ttySL0. w tym numerze dodatki są umieszczone na CD 5 (tak więc pierwsze 4 CD. efektowne wygaszacze ekranu dla kart graficznych z akceleracją 3D oraz dwie popularne gry: Frozen Bubble (najlepsza darmowa gra zręcznościowa według użytkowników serwisu Linux Game Tome) oraz Scorched3D (gra na motywach Scorched Earth. www.reg) oraz podkatalog c.2 włączona została najnowsza wersja ze stabilnej serii Blendera: 2. W rezultacie otrzymamy lepsze wsparcie dla nowego sprzętu.org/ Lepsze wsparcie dla laptopów Firma Aurox Sp.2 w Linux+ Extra! U kazał się 34. Wśród dodatków na uwagę zasługuje coś. znanym wcześniej jako SunSITE.wine.pl/ Wine w Auroksie Aurox zawiera Wine – implementację API Windows dostępną na licencji LGPL.ibiblio. Trzeba jeszcze ręcznie dopisać w pliku /etc/ modules. /sbin/lspci -nv. ale z ładną grafiką 3D).pl/. pod adresem http: //dag.wieers.com.exe z Windows jest oznaczony jako wykonywalny. Jego zadaniem jest wspomaganie tworzenia i rozpowszechniania Wolnego Oprogramowania i dokumentacji.in. Winmodem tym różni się od prawdziwego modemu. Ze względu na ograniczenia redystrybucji niektórych programów (np. Większość z tych pakietów tworzy odpowiednie urządzenie w katalogu /dev/ (np.blender. Aby z nich skorzystać. jaki układ (chipset) stanowi serce naszego nabytku.W wydaniu 9. Wine pozwala na uruchamianie niektórych aplikacji Windows na Linuksie. http://www. Jeśli plik *.pl Aurox 9. a dla Lucenta – /dev/ttyLT0). odpowiedniki Rejestru Windows (pliki *.2 naszej dystrybucji znajdziecie wersję 20031016. cat /proc/pci. wystarczające do zainstalowania Auroksa. że większość zadań wykonuje za niego procesor. polskie wersje podręczników i poradników.in. animacji. ale wymagające specjalnych sterowników.com. m.linux. http://www. Numer ma objętość 40 kolorowych stron.com/apt/redhat/9/en/ i386/RPMS. przykład gry stworzonej w Blenderze). Główną polską stroną poświęconą Blenderowi jest http://www. http://www. Na płytce CD dołączonej do takiego urządzenia najczęściej zamieszczone są tylko sterowniki dla różnych odmian Windows.dag/ – dla użytkowników Aurox 9. zawierający Aurox Linux 9.org. Inicjatywa ta powstała we wrześniu 2000 roku w wyniku współpracy pomiędzy Chapel Hill's MetaLab (Uniwersytet Karoliny Północnej w USA). przykładowo dla modemu SmartLink PCI jest to: alias char-major-212 slmodem alias slmodem slamrmo options slmdm country=POLAND http://linmodems. czego w Internecie nie znajdziecie: pełna komercyjna wersja LeftHand Mała Księgowość.optimus.dział prowadzi: Robert Główczyński aurox@linux. to można go uruchomić klikając na niego.com/ 17 . a nawet gier.in. Do dystrybucji zostały dołączone wtyczki Java i Flash.org Zespół Auroksa nawiązał współpracę z jednym z największych serwisów ze zbiorami wolnodostępnej informacji i oprogramowania ibiblio. WinModemy w Aurox Linux C o robić. którego zawartość aplikacje uruchamiane przez Wine widzą jako dysk C: systemu Windows. numer specjalny Linux+ Extra!. musimy sprawdzić. obsługę cech specyficznych dla notebooków tych producentów. a Center for the Public Domain.28c. Wkrótce po polskim wydaniem pisma ukażą się wydania niemieckie.il/ Aurox na ibiblio. m.in.ac.pl Nowe wersje pakietów ze sterownikami do popularnych modemów pojawiają się m. winmodemy – tanie. http://www.A. z o. jeśli nie możemy uruchomić modemu w Auroksie? Wiele z obecnie sprzedawanych modeli modemów to tzw.o. pobrać najnowsze wersje programu i dodatki oraz ściągnąć ciekawe przykłady (m.conf opcje ładowania odpowiedniego modułu. francuskie i hiszpańskie. Optimus S. sterowniki kart graficznych ATI i NVidia.blender. Zawiera m.in.technion. Można na niej znaleźć m. sterowniki do winmodemów Conexant. SmartLink i Lucent. a w nim plik konfiguracyjny config. Możemy tego dokonać uruchamiając skrypt ScanModem lub za pomocą jednego z następujących poleceń: /sbin/lspci.in. uczniom lub pracownikom firmy). nawiązała współpracę z kilkoma producentami komputerów. biblioteka do odczytu szyfrowanych płyt DVD libdvdcss. Nowy Linux+ Extra! nie wolno kopiować LeftHand MK).com. Blender to profesjonalny pakiet do tworzenia grafiki 3D. wstępną implementację bibliotek zgodnych z DirectX.winehq.x odpowiednie są pakiety dla Red Hat Linux 9.2 na 7 płytach CD wraz z kodem źródłowym oraz dodatkowymi sterownikami i programami.org/ Nowości w Auroksie: Blender Do Auroksa 9. Domyślna konfiguracja podczas pierwszego uruchomienia (polecenie wine <nazwa programu>) tworzy w katalogu domowym użytkownika podkatalog . 7 płyt CD i kosztuje 35 zł. http://www. Repozytorium dodaje się do swoich zasobów jako root poleceniem: urpmi.aktualności rpm Beep Music Player Drakian Z problemem brakujących pakietów można sobie radzić w różny sposób: wyszukiwać dodatkowe repozytoria. a nawet przygotowywać je samodzielnie. LIRC. Jest to jedno z pierwszych miejsc.com/en/ demos/tutorials/desktopconfig/ http://www. choć tylko z serii 2. Niezłym sposobem jest także przenoszenie ich z innych dystrybucji.org. przekształconych do formatu RPM za pomocą programu Alien. Z braku polskich wersji. czy nawet nieco wyższą wersję OpenOffice.leo.com/en/ demos/tutorials/dia/ http://www.org/svn/bmpplugins/trunk/ Biblioteczka Mandrake N a stronach Mandrake Linux pojawiły się cztery nowe poradniki obsługi aplikacji dla zwykłych użytkowników systemu.6.hdlist. które od zwykłych stron WWW różnią się możliwością bezpośredniej edycji. podstronę o portach na różne procesory oraz stworzoną zawczasu stronę o najczęściej zgłaszanych błędach.sourceforge. musimy na razie zadowolić się ich anglojęzycznymi wersjami. Można oczywiście z pożytkiem dla wszystkich przetłumaczyć je lub przygotować samodzielnie. który jest zbiorem pakietów Debiana.2.com/twiki/bin/ view/Main/Mandrake10 18 B eep Music Player (BMP) to nowy odtwarzacz muzyczny dla Linuksa i jego pobratymców. Tak właśnie postąpili twórcy archiwum Drakian. zbudowane na równie testowym jądrze Linuksa z nowej serii 2.2/i586/ Mandrake 10 na hor yzoncie Użytkownicy zabrali się za instalowanie i wykorzystywanie w codziennej pracy Mandrake 9.1. ze względu na zasadnicze podobieństwo obu odtwarzaczy.org/static/ RPMS/ with synthesis.org. ale do działania wymaga bibliotek GNOME 2.com/en/ demos/tutorials/webwizard/ http://www. Artur Frysiak z PLD stworzył niedawno projekt przenoszenia rozmaitych wtyczek z XMMS Nowe wcielenie XMMS! do BMP. zgłaszać zapotrzebowanie w ramach Mandrake Club.).uk/ ICML0. Wiki Mandrake 10 zawiera już listę rzeczy do zrobienia. Odpowiednie pakiety znajdują się wprawdzie w sekcji eksperymentalnej (unsupported ). nie stanowi zbyt wielkiej trudności.leo. listę życzeń. Podstawowym narzędziem ich pracy będą strony Wiki (Wiki Wiki Web). jednak pracują stabilnie. co. Nie tyle zresztą nowy.org.com/en/ demos/tutorials/linneighborhood/ http://www. szybko stało się samodzielnym programem wchłaniającym wiele poprawek i rozszerzeń. Poradniki zawierają ilustrowane minikursy komunikacji przez LinNeighborhood (przydatnego zwłaszcza w sieciach lokalnych z Windows. a już w tej chwili działa XMMS-owa wtyczka do odsłuchiwania plików muzycznych typu MP4. spodziewany w 2004 r.nexedi.org Bardzo dobre repozytorium pakietów dla Mandrake Linux znajduje się na serwerze ftp. ftp://ftp.leo. powinno być już dostępne pierwsze z nich (jedno lub dwupłytowe). które są nieosiągalne z Cookera.mandrakelinux.mandrakelinux.2.drakian. co odnowiony: bazuje na kodzie popularnego odtwarzacza XMMS w wersji 1. W kolejce na przeniesienie czekają między innymi wtyczki do obsługi plików OGG. a w tym zakresie inicjatywa sprawdziła się znakomicie.x (wielbiciele WinAmpa 3 powinni poczekać na XMMS2. z których można było pobrać spakowaną przeglądarkę Mozilla Firebird 0. http://qa.HTML styczeń 2004 . oraz konfiguracji biurka działającego w bardzo popularnym środowisku graficznym KDE.mandrakelinux.net/ http://svn.cz. Początkowo nieoficjalne odgałęzienie XMMS (nazwę XMMS-GTK2 zmieniono na BMP na żądanie 4Front Technologies). XMMS-KDE oraz wtyczka do normalizacji dźwięku. http://beepmp. Nie należy w związku z tym spodziewać się 100% zgodności. http://www. możliwe jest wyświetlanie fantazyjnych czcionek (widać je na zrzucie ekranu).org/pub/comp/os/unix/linux/ Mandrake/Mandrake-devel/unsupported/ MandrakeClub/9.8. ale jego autorom zależało przede wszystkim na kolekcji pakietów dla Zope i Pythona 2.org/ Ser wer f tp. Dzięki wykorzystaniu mechanizmów nowego GNOME. że wkrótce do biblioteczki dołączy także bardzo KDE skonfigurowane przy pomocy instrukcji z poradnika dobry podręcznik instalacji i konfiguracji programów pod Mandrake. Jest szansa.mandrakelinux. tymczasem twórcy dystrybucji przygotowują już warsztat do planowanego na marzec wydania Mandrake Linux 10.addmedia drakian http://www. Jest też agenda wydań testowych – gdy to czytacie.7 i zestaw Mozilla 1. rysowania wykresów przy pomocy programu Dia (specjalnie do tego przeznaczonego). a zgodność z XMMS oznacza między innymi możliwość zakładania na BMP tych samych skórek – także z bogatej kolekcji WinAmpa. których użytkownicy korzystają z komunikatora WinPopup).pld-linux.5.zebulon.mandrakesoft. w pełni graficznej instalacji i konfiguracji własnego serwera WWW na dystrybucyjnym Advanced Extranet Server (powstającym na bazie Apache). napisane w Javie. rozszerzona obsługa niektórych kart graficznych ATI. zebranego pod nazwą Mandrake4Chemistry.dział prowadzi: Daniel Koć rpm@linux. Lista mirrorów Na bardzo praktyczny pomysł wpadł jeden z użytkowników Mandrake: na swojej stronie domowej założył prosty monitor śledzący stan dostępności rozmaitych serwerów lustrzanych (tzw. a odrobina samodzielnego wysiłku może się nieraz bardzo opłacić.linuxnews. znanego jako Bluehawk. zdobywające ostatnio coraz większą popularność.pl/_news/ 2003/11/05/_long/2275. ale można to zmienić.u-strasbg. Piąta wersja tych obrazów zawiera między innymi kolejne jądro Eclipse – nowoczesne IDE.2. Wpisy na liście są oznaczane datą i godziną wykonania testu. Bardzo przydatną opcją jest ograniczanie ilości płyt. Fedora Core 1 nie odbiega od dotychczasowej linii Red Hata. oraz pakiet Jakarta. odtwarzacz multimediów Rythmbox. oraz obsługa nieoficjalnych repozytoriów pakietów przez instalator aplikacji Up2date. Naukowcy pracujący od 1998 roku nad projektem Flexible Digital Object and Repository Architecture (w skrócie Fedora) pro- www.php MakeCD W Linuksie nie jesteśmy skazani na pomysły dystrybutorów.html http://hedera. takich jak obsługa Bluetootha i ACPI. że przez ten czas narosła cała góra poprawek bezpieczeństwa do teoretycznie nowej dystrybucji: jest ich już w sumie ponad kilkadziesiąt megabajtów! Z tego powodu warto zainteresować się obrazami ISO przygotowanymi samodzielnie przez jednego z użytkowników Mandrake. Kanadyjczyk Austin Acton jest autorem zestawu programów przydatnych chemikom.pl Bluehawk ISO M andrakeSoft tym razem długo kazał czekać na nowe wydanie swojej dystrybucji.com.linuxnews. http://qa. więc zamiast 3 płyt mamy do wypalenia aż 4. Zdenka Mazanca. Firma odmówiła uznania roszczeń ze strony uniwersytetów.com. wczesne uruchamianie w trybie graficznym. możliwość zdalnej instalacji przez VNC.6 (2. To olbrzymie opóźnienie spowodowało. zarówno w zaletach (jeszcze bardziej „wygładzony” interfejs użytkownika). która kontynuuje zakończoną niedawno słynną dystrybucję tej firmy. dystrybucja oficjalnie wspierana przez Red Hata.linux. Dzięki skryptowi MakeCD można z przygotowanego zbioru pakietów stworzyć i wypalić własne płytki z Mandrake! Domyślnie skrypt produkuje obrazy o wielkości 650 MB (niektóre starsze napędy CDROM nie radzą sobie z ładowaniem systemu z płyt o większej pojemności). przynosi przy tym wiele ciekawych nowości. http://mandrake.pl/_news/ 2003/11/26/_long/2330. nieobecnymi w oficjalnej wersji).html http://hedera.html 19 . wydała pierwszą stabilną wersję Fedora Core o nazwie kodowej Yarrow. dostosowanych do konkretnych potrzeb. obsługujące różne języki programowania Linuksa ze zbliżającej się nieuchronnie stabilnej serii 2.contactel.pl/_news/2003/ 11/05/_long/2273. wtyczki Javy dla Mozilli skompilowane przez GCC 3.mandrakesoft. a dokładniej przeciw zakusom na formalne zastrzeżenie tej nazwy przez Red Hata w amerykańskim Urzędzie Patentowym.fr/~blindaue/ mirrors. Robot śledzi. http://groundstate. Austin jest także domorosłym muzykiem – na jego stronie znajdziemy między innymi piosenkę poświęcona nadchodzącej premierze jądra 2. a zmieniając pliki z reklamówkami w prosty sposób staniemy się niezależnym dystrybutorem Linuksa.cz/people/ bluehawk/iso/ Fedora Core 1 „Yarrow” F edora Project. mirrorów) tej dystrybucji.6. środowisko programistyczne Eclipse. wchodzą również dodatkowe sterowniki i oprogramowanie.html http://hedera.pl Fedora Core 1 testują przeciw użyciu nazwy Fedora przez Red Hata.ca/mdk4chem/ index. poza poprawkami (także tymi dla napędów LG. Celem projektu jest wyszukiwanie wolnych i darmowych aplikacji chemicznych oraz zachęcanie do łagodzenia restrykcyjnych licencji autorów pozostałych aplikacji. Nowa dystrybucja nie dla wszystkich jednak oznacza radość. zwłaszcza w świetle planów prowadzenia ścisłej kontroli wykorzystywania tego znaku towarowego.linuxnews. W skład jego zestawu. jak i wadach (zamierzony brak w standardowej wersji pakietów obsługi formatu MP3). czy dany serwer jest w ogóle dostępny.0-test9). http://extasia. więc sprawa pozostaje na razie nierozstrzygnięta.6. oraz czy pliki w jego repozytorium są aktualne i w komplecie.com/twiki/bin/ view/Main/MakeCD Mandrake4Chemistr y Za pomocą popularnych dystrybucji można łatwo tworzyć własne zestawy aplikacji linuksowych. Dzięki zmianie architektury programu możliwe będzie (wcześniej opisywane tylko teoretycznie) np. ich importowanie itp.in. iż nie tylko zawiera ono prawdopodobnie sporą liczbę błędów. nastąpiło odpowiednie dopasowanie jego harmonogramu wydań. Tak więc.5.0. o co postuluje od dawna wielu obecnych lub niedoszłych użytkowników programu. a także wprowadzono spore zmiany w interfejsie.inkscape. ale bardziej widoczne są główne założenia przyjęte dla obu projektów: Inkscape. eliminują dodatkowe okno z ikonami. informacje o kontaktach i kalendarze.org/%7Ejdub/ garnome/ Sodipodi++ Niejednokrotnie pisaliśmy już o Sodipodi. Rozwiązanie to sprawia. podobnie jak przeglądarka WWW czy menedżer plików. że nie wszyscy w pełni podzielają tę opinię. które trudno byłoby zastosować w obecnym kodzie Sodipodi. jak sprawdzanie podpisu są w pełni zintegrowane z programem. na pobieranie informacji z książki adresowej. http://www. zgodnie z którym już 3 marca 2004 będziemy mogli cieszyć się wersją 2. Pierwszy miesiąc prac nad Inkscape można ocenić bardzo pozytywnie. Laurisa Kaplińskiego. które m. Kolejną z bardzo widocznych zmian jest obsługa przez program protokołu S/MIME (wersji protokołu pocztowego MIME. Na przełomie października i listopada grupa programistów postanowiła wykorzystać istniejący kod Sodipodi i utworzyć nowy projekt o nazwie Inkscape. Część serwerowa udostępnia elegancki interfejs programistyczny w językach C oraz C#. http://www. Wydawałoby się. Cały interfejs programu został dostosowany do wymagań zdefiniowanych w GNOME HIG. Kalendarz pozwala w nowej wersji na jednoczesne wyświetlanie terminów pochodzących z różnych źródeł. ale różnić się może od GNOME 2. np.gnome. a w ramach procesu dostosowawczego zrezygnowano z wykorzystania części własnych elementów sterujących na rzecz standardowych udostępnianych przez GTK+. że możliwe będzie zintegrowanie Evolution z innymi aplikacjami poprzez współdzielenie rozmaitych obiektów udostępnianych przez serwer danych.5/ http://www. już dziś możemy ocenić. Z punktu widzenia użytkownika programu największą zmianą jest zupełnie nowy układ interfejsu programu: zamiast jednego drzewa zawierającego foldery pocztowe.aktualności Wyprawa ku GNOME 2. choć produkt nie jest jeszcze gotowy. Choć wszystkich chętnych do testowania i zgłaszania błędów zachęcamy do skompilowania i przetestowania wydania (można to zrobić w sposób całkowicie automatyczny dzięki GARNOME). a takie operacje. Druga część programu to interfejs graficzny. programie do tworzenia grafiki.org/ 20 gnome Co zobaczymy w Evolution 2. jego interfejs ma być zgodny z wytycznymi opisanymi w dokumencie GNOME HIG (Human Interface Guidelines).in.6 nawet zestawem oferowanych aplikacji – lista oficjalnie zaproponowanych modułów zawiera szereg pozycji. http://www. rozwijane ma być w języku C++.6. co daje wrażenie większej spójności z innymi aplikacjami (np. który pozwala dowolnym programom np. zastosowano odrębne drzewa ze składnikami każdego z komponentów. że Evolution został w końcu oficjalnie zaproponowany jako jeden z modułów zaplanowanego na marzec 2004 wydania GNOME 2. napisanego przez zdolnego Estończyka. od wielu osób. aby możliwa była ich kompilacja kompilatorem C++. obsługującego szyfrowanie i podpisywanie listów). Evolution zostało podzielone na dwie odrębne części. takich jak informacje o kontaktach czy kalendarze (nosi on nazwę evolutiondata-server). a jednak okazuje się.gnome.org/start/2.0 ukryta jest jednak zupełnie przed okiem użytkownika. przy czym terminy każdej z nich oznaczone są innym kolorem. to przestrzec należy.0? E volution – pakiet do komunikacji grupowej rozwijany przez Ximiana – stał się już standardowym składnikiem instalacji środowiska GNOME. Aby możliwe było włączenie pakietu do kolejnej wersji GNOME. w odróżnieniu od Sodipodi. które po zaakceptowaniu mogą zaowocować dołączeniem w kolejnym wydaniu dodatkowych aplikacji.6 dokładnie w najbliższe Święto Kobiet (8 marca). Wydanie to stanowi początek serii. Kody źródłowe zostały zmienione tak. Możliwe jest też zarządzanie listą certyfikatów. a zastępują je standardowym paskiem menu i paskami narzędziowymi w oknie obrazu. Obsługa S/MIME w nowym Evolution obejmuje również możliwość zarządzania certyfikatami Najważniejsza zmiana w Evolution 2. choć może premiować w przyszłości powstaniem wielu rozszerzeń programu.6 rozpoczęta Na dzień przed końcem listopada została wydana pierwsza wersja testowa GNOME 2. że ustalenie jego wersji na 2. z którym ma do czynienia użytkownik. pomiędzy którymi można się przełączać. która powinna doprowadzić do oficjalnej wersji 2.0 nie jest ani odrobinę przesadzone i odpowiada randze dokonanych zmian. w przypadku drzewa folderów). co pozwoli na zmniejszenie ilości kodu oraz łatwiejsze wprowadzanie zmian. że dotychczas jego projekt rozwijał się bardzo dobrze. m. wyłączne wykorzystywanie części Evolution służącej do obsługi poczty elektronicznej bez konieczności uruchamiania wszystkich składników programu (w tym odpowiedzialnych za kontakty i kalendarze). Jako główny powód rozdwojenia projektu autorzy Inkscape podają chęć wypróbowania zupełnie nowych rozwiązań.org/projects/ evolution/ styczeń 2004 .gnome. Do przesyłania zaszyfrowanych informacji nie jest więc już potrzebne uruchamianie GPG. Pierwszą stanowi program zapewniający dostęp do danych. nowy projekt zakłada również ściślejszą integrację ze środowiskiem GNOME. Nic więc dziwnego. Osoby chcące zarobić na tworzeniu Wolnego Oprogramowania muszą się jednak pośpieszyć – poprawki muszą być zatwierdzone do dnia zamrożenia interfejsu graficznego w przyszłym GNOME 2.in. dzień ten przypada na 12 stycznia 2004. http://www.7. W wersji rozwojowej programu zaimplementował on bardzo ogólny mechanizm wtyczek.openoffice. choć na razie możliwe jest odtworzenie przy jej użyciu tylko niektórych plików.net/releases/0. opartych na bibliotekach dzielonych i wykorzystujących wyłącznie system typów biblioteki GLib.2/ notice.html 21 . Gaim i GnomeMeeting nanie każdego z nich. w widoku listy widnieje kolumna informująca o wersji lokalnego pliku. Powoduje ona. prace programistów skupiły się na rozwijaniu samych aplikacji.pl Komunikacja dowolnymi kanałami – integracja programów Evolution. gnomowy menedżer plików i jedna z ważniejszych części środowiska graficznego. rozszerzanie Nautilusa było jednak zadaniem niewdzięcznym – wymagało tworzenia komponentów Bonobo lub umieszczania wielu plików w rozmaitych katalogach Nautilusa.dział prowadzi: Zbigniew Chyla gnome@linux. od początku swego istnienia opierał się na niezależnych komponentach. zmodyfikowany lokalnie). Przedsięwzięcie ma formę konkursu dla programistów. że użytkownicy środowiska graficznego domagają się nie tylko zestawu sprawnie działających aplikacji. Sytuację tę postanowił zmienić Dave Camp.org wybiera GNOME Twórcy projektu OpenOffice.com/~dave/log/ Łowcy nagród O d czasu wydania GNOME 2. http://www. W wydanej właśnie wersji 0. Integracja ma obejmować wygląd i zachowanie się aplikacji.org w wersji dla systemów Linux/UNIX ze środowiskiem GNOME. Na potrzebę tę odpowiedziała Fundacja GNOME. zaś z menu kontekstowego można wybrać polecenie aktualizacji pliku lub zatwierdzenia dokonanych w nim zmian. Użytkowników GNOME zainteresuje z pewnością fakt.linux. iż jednym z kilku najważniejszych opisanych w dokumencie założeń jest integracja OpenOffice. Dodatkowo częściowo zaimplementowano wtyczkę do obsługi plików wideo w windowsowym formacie WMV (Windows Media Video). Wybór środowiska GNOME jako podstawowego w systemach uniksowych nie powinien dziwić.in. Poparta finansowo przez firmę Novell (aktualnego właściciela Ximiana).org/releases/qconcept. AAC (Advanced Audio Coding) oraz Quicktime (tylko Sorensen 1). ale i takie firmy. której zadaniem jest czuwanie nad kierunkami rozwoju środowiska.gstreamer. ale zawarto również wtyczki pozwalające na odtwarzanie plików dźwiękowych powszechnie występujących w świecie systemów MacOS czy Windows: WMA (Windows Media Audio). Z punktu widzenia potencjalnych autorów. jak również wykorzystanie istniejącej infrastruktury GNOME zamiast samodzielnego tworzenia analogicznych rozwiązań w ramach OO w sposób niezależny od platformy (oznacza to m. Okazuje się jednak.pl Wzbogacanie Nautilusa N autilus.6. ale nawet program do regulacji głośności.6. gdyż jest ono wykorzystywane komercyjnie już nie tylko przez firmę Sun.7. lecz również opracowania ich w taki sposób. Za podstawę testów służy obecnie wtyczka umożliwiająca Nautilusowi na współpracę z repozytorium CVS. http://primates.gnome. Zgodnie z obecnym harmonogramem. odpowiedzialnych za wyświetlanie zawartości folderów lub plików.com. Obsługę CVS-a dostępną obecnie w Nautilusie przez specjalny widok (Apotheke) zastąpi wkrótce nowoczesna wtyczka że przy ikonach plików pojawia się symbol oznaczający stan pliku (np. Obecnie z platformy GStreamer korzysta nie tylko standardowy odtwarzacz multimedialny GNOME oraz program Rhythmbox. który szczegółowo przedstawia założenia i plany związane z kolejną znaczącą wersją znanego pakietu biurowego.2 platformy nie tylko wyeliminowano mnóstwo błędów i wprowadzono zmiany w architekturze (m.0. użycie biblioteki GNOME-VFS oraz pobieranie informacji o domyślnej przeglądarce WWW czy adresie pośrednika sieciowego bezpośrednio z konfiguracji GNOME). nowy system ładowania wtyczek). jak IBM czy Novell http://tools.com.org/bounties/ Nowy strumień muzyki Autorzy projektu GStreamer postawili kolejny krok na drodze poprawiania obsługi multimediów w przyszłym GNOME 2. ogłosiła ona „polowanie” na nagrody za integrowanie środowiska (ang. obfitującego w poważne zmiany na poziomie platformy. aby wzajemnie ze sobą współpracowały i integrowały się w większą całość. rozwijającą OOo.ximian. Desktop Integration Bounty Hunt). w którym przedstawiono szereg zadań integracyjnych do wykonania oraz wyznaczono kwoty nagród pieniężnych za wyko- www.php OpenOffice.org przedstawili niedawno dokument. działający pod kontrolą emulatora CrossOver Office. to deweloperzy Kexi będą mobilizacją dla autorów konkurencji.org/documentation/ tutorials/kconfigxt/kconfigxt. „The Two Towers”. a zarazem dobrego kina. którzy interesują się rozwojem KDE „od podszewki”.net/main2.kde. że nowe wydanie wymaga Kdelibs w wersji z CVS lub nadchodzącego 3. wyprzedzając tym samym takie oprogramowanie.com zaprezentowała nową wersję programu Rekall. • obsługa wtyczek. W ramach KDE poruszono takie tematy. Pomoc ze strony użytkowników w postaci zgłaszania błędów czy nawet podsyłania łatek autorom jest mile widziane. jak klient pracy grupowej Kontact. Twórcy CrossOver zgodzili się Prace na Władcą Pierścieni pod KDE podobno zmienić swój projekt na tyle.org/1069632528/ Nowe standardy Ci. który jest składnikiem pakietu biurowego KOffice.4% głosów w swojej kategorii.rekallrevealed. Z jakiego powodu? Projekt ten zdobył 29. Tym razem wybór padł na targi COMDEX. aby działał w nim Photoshop. PostgreSQL. „Konkurencją” dla Rekalla jest stosunkowo niedawno narodzony projekt o nazwie Kexi. stworzony z myślą o użytkownikach KDE.kdevelop. aby całość oprogramowania na komputerach twórców grafiki do „Władcy Pierścieni” działała pod kontrolą Linuksa.linux-magazin. Niemiecki miesięcznik podejmując decyzję opierał się na opinii jury. http://www.php? newsfile=qberelease01 KDevelop najlepszy Powody do dumy mają autorzy środowiska IDE dla KDE – KDevelopa. Tym razem jest to wersja „Bleeding Edge” numer jeden. jak Eclipse czy Anjuta. • importowanie/eksportowanie baz danych. jakie rewolucyjne zmiany „dotkną” okna konfiguracji poszczególnych komponentów.kde.2 beta2. Istnieje zatem duże prawdopodobieństwo. Czym jest Rekall? Jest to program do zarządzania bazami danych. Kiosk. Rekall będzie teraz wspierany przez deweloperów związanych z portalem www. które odbyły się w tym roku w Las Vegas. Nową.2BE1 Zespół deweloperów edytora HTML dla KDE – QuantaPlus – przedstawił użytkownikom kolejną wersję ich dzieła. choćby Billa Gatesa. Co potrafi Rekall w tej chwili? Oto lista niektórych funkcji: Rekall • wsparcie dla baz danych: MySQL. Co nowego? Przede wszystkim nowy edytor arkuszy styli oraz automatyczne zapisywanie plików.in.net/ http://www.rekallrevealed. działającej pod kontrolą KDE. Trzeba zaznaczyć. Pomimo tego. http://www. użytkownikami itd.de/Artikel/ ausgabe/2003/12/award/award. Szczegóły dotyczące tych rewelacji dostępne są przede wszystkim w przewodniku. za (sic!) 100 tysięcy dolarów! Taką sumę przekazała firma US Film Industry. http://quanta. czyli najłatwiejsze w obsłudze środowisko graficzne we wszechświecie oraz ogólna tematyka dotycząca stacji roboczych. tabelami. Warto podkreślić. m. styczeń 2004 . tylko po to.in. Alana Coksa. który dał wykład na temat pozycji Microsoft na rynku (wspomniał oczywiście o zagrożeniu ze strony projektów Open Source). IBM DB2 oraz ODBC. bo tym razem opartą na licencji GNU GPL. które składało się z autorów aplikacji dla KDE oraz największych osobistości Linuksa.sourceforge. http://developer. • dodawanie baz danych. stworzonym na potrzeby serwisu developer.2.org. że nie jest to debiut KDE w filmowych przedsięwzięciach. Nie zabrakło na nim „sław” technologii informatycznej. • wsparcie dla skryptowania (Python). Nowa struktura o nazwie KConfig XT. że za jakiś czas otrzymamy aplikacje zdolne do pełnej obsługi wszelakich baz danych pod Linuksem.org/ Gollum a KDE K u zdziwieniu wielu fanów KDE. zarządzanie wpisami.. wiedzą już zapewne.html KDE na targach COMDEX Projekt KDE zaszczycał swoją obecnością niejedne już targi oprogramowania. Zastosowanie takiego zestawu wyszło z inicjatywy firmy Weta Digital. możemy zauważyć obecność naszego ulubionego śrowiska na komputerach twórców grafiki! Film relacjonujący proces tworzenia animacji przedstawia m. na stronach magazynu Linux-Magazin.kde. iż do tworzenia tekstur – oprócz programu GIMP – został użyty Adobe Photoshop.html 22 kde Rekall na GPL! F irma theKompany. wyznacza nowy standard i jest bardzo nowatorska. do której efekty specjalne (a głównie postać samego Golluma) zostały stworzone przy użyciu aplikacji Maya. Jako ciekawostkę pragnę przedstawić fakt. że Rekall jest projektem bardziej dojrzałym. przedstawiająca zarys możliwości kolejnego stabilnego wydania – 3. która niedawno powstała.org. scenę z Gollumem i Samem. http://dot.aktualności Quanta-3. w rozszerzonej wersji DVD drugiej części filmu „The Lord of The Rings”. czyli bardzo wczesna wersja testowa. Stowarzyszenie USA Linux User Group przeprowadziło wywiad z George'm. przechodzimy do umieszczenia wszystkich potrzebnych plików w podanym prefiksie KDE. Poza wyżej wymienionymi innowacjami. www. KAddressBook. dowiemy się. które znamy z Midnight Commandera.kdedevelopers. zmieniono przede wszystkim układ strony oraz uproszczono nawigację. http://kdelook. 87% odwiedzających centrum tematów dla KDE – jest to wynik świadczący o uznaniu dla styli tego typu wśród użytkowników KDE. pisałem o problemach ze znalezieniem deweloperów zainteresowanych kontynuacją rozwoju Krusadera. dostępne są gotowe pakiety binarne dla niektórych dystrybucji. http://www. • napisana od zera obsługa wsparcia dla protokołu SMB. wybierając go z menu KDE.. który bazuje na silniku Mosfet-Liquid w wersji 0. KNotes i samego Kontacta). Poza zmianami dotyczącymi wyglądu.. • obsługa zakładek w każdym z paneli (listy plików.kde. Rozpoczęto prace z 431 błędami (łącznie dla KMail.com. który właśnie czytacie. • nowy sposób podglądu plików za pomocą skrótu [Shift]+[F3]. możemy usunąć źródła programu (rozpakowany uprzednio katalog) i uruchomić program. czego spodziewać się po kolejnych wydaniach Krusadera.30. Nie po raz pierwszy – i zapewne nie ostatni – George Straikos udzielił wywiadu. • menu użytkownika. Zmiany te mają na celu zlikwidowanie ryzyka włamania się do systemu newsowego. KOrganizer.30. a co za tym idzie – wielu zmian. na łamach działu. http://krusader. natomiast wszelkie nowości ze świata K Desktop Environment dostępne są pod adresem http://dot.org/ index.org/content/ show.com. http://www.. Warto dodać. Otrzymane archiwum rozpakowujemy (polecenie tar). . • zmiany w systemie wyszukiwania plików. np. Kilka miesięcy temu.pl ubrany w nowe szaty. najlepiej za pomocą konsolowego Midnight Commandera. w którym można było zauważyć nieliczne poprawki.pl! Od pewnego czasu można przeglądać serwis KDE. • poprawki w tłumaczeniach. gdy spojrzeć na czas. Jest to zupełnie niezły wynik.kde. w którym wszystko jest teraz bardziej uporządkowane i ma swoje miejsce. w którym przedstawia sytuację rozwoju KDE. • pasek postępu przy odświeżaniu. to zapraszam osoby o odmiennych gustach do testowania nowego stylu./configure –prefix=`kde-config –prefix` .sourceforge. Jeśli całość procesu kompilacji przebiegła bez problemów. • nowy system zakładek. iż samo KDE. że sam nie jestem fanem tego typu wystroju biurka. Co nowego? Oto pełna lista zmian widocznych dla użytkownika: • tworzenie nowych plików za pomocą skrótu [Shift]+[F4].. Jednym z nich jest – niedawno powstały – styl o nazwie Baghira. • dodanie okna z wynikami wyszukiwania. w jakim wykonano tak czasochłonną pracę.9.2. Nowa siła rozwojowa w postaci osób chętnych do pomocy przy współtworzeniu aplikacji pozwoliła na szybki start ku nowym wydaniom.usalug. Robimy to jako użytkownik root. W katalogu. wykonując polecenie make install.php?content=8692 Nowe KDE.pl Nowy Krusader w akcji w którym rozpakowaliśmy Krusadera. I tak się stało. gz?download (po wpisaniu tego adresu zostaniemy poproszeni o wybór serwera lustrzanego). Po zakończeniu procesu instalacji.pl 23 . Pomimo. które nie chcą instalować Krusadera kompilując jego źródła.pl Krusader 1.6pre4. Dla osób.org. http://www. znany menedżer plików. a także poprawienie czytelności i zmianę wizerunku serwisu.php?view=14 K rusader. a zakończono. podobnego do tego. wykonujemy polecenia . 16 listopada odbył się dzień oczyszczania Kontactu od wszelakich błędów.dział prowadzi: Paweł Biliński kde@linux. • przechodzenie pomiędzy panelami za pomocą skrótu [Shift]+[U ]. Co nowego w kolejnych wydaniach? Obserwując plik TODO. Fedora 1 czy SuSE 8.org/node/ view/241 Dla fanów Apple Przeglądając serwis KDE-look.linux. doczekał się kolejnej wersji. • wsparcie dla FTP proxy z nowym oknem konfiguracji. szczególnie.pl/. make. oczywiście na lepsze. Instalacja Krusadera krok po kroku Pobieramy źródła programu z adresu ht t p : //prdownloads.2. poprawiono oczywiście błędy dotyczące stabilności programu.30 George Straikos ponownie. ale wielu jego użytkowników miało nadzieję na szybszy rozwój tego obiecującego programu. gdy liczba ta wynosiła 419. osiadłymi w rozwijającym się cały czas kliencie pracy grupowej Kontact.. który w bardzo pozytywnym świetle przedstawił postępy przy pracach nad nowym KDE – 3. Nadszedł czas na stabilne wydanie oznaczone numerkiem 1.net/ Precz z robakami .1. Jakiś czas później zostało opublikowane nowe wydanie Beta. np.. net / kr usader / kr usader-1.tar. autorowi tematu udało się zdobyć uznanie ok. można zauważyć sporo tematów nawiązujących do stylistyki MacOS X. połączenia ssh). Mandrake 9.pl stało się centrum informacji o tym środowisku. Z ciekawszych rzeczy oznaczonych najwyższym priorytetem możemy znaleźć między innymi: • rewolucje w oknie preferencji. • możliwość otwierania wiele plików na raz (posiadających to samo rozszerzenie). sourcefor ge. Jak do tej pory. podmenu „Aplikacje”. a także wymaga otwierania przeglądarki podczas słuchania muzyki. Obecnie Lyrc radzi sobie z pobieraniem danych o piosence z plików mp3 (dzięki znacznikom ID3). lecz nie pamiętamy dokładnie słów.net/projects/lyrc/ http://www. program dopiero się rozwija. wystarczy w utworzonym katalogu wydać polecenia make i make install (to drugie z poziomu użytkownika root). Kod źródłowy wtyczki możemy pobrać ze strony projektu (http://sourceforge. czy w systemie mamy następujące programy: xmms-config. wtyczka do programu XMMS. Gracze będą również mogli przesyłać swoje zdjęcia.gz). Po poprawnej instalacji możemy już uruchomić XMMS (Dźwięk i wideo –> Odtwarzacz dźwięku). dzięki zaangażowaniu użytkowników. ogg i ścieżek płyt audio (wykorzystuje plik ~/. zaznaczamy pole Enable plugin. Pomocne w takich sytuacjach są liczne witryny zawierające słowa piosenek (lyrics). biegających po ruinach zamków i okolicznych lasach? A może zamiast strojów z epoki mieli na sobie współczesne mundury i wykonaną z drewna broń? Jeśli tak. to będziemy mogli wybrać ten właściwy.16. gdyż to właśnie dzięki pomocy użytkowników może stać się bardziej przydatny.2. że warto wspierać rozwój tego programu.net/projects/lom/ styczeń 2004 . LARP’O’Machine budowany jest w oparciu o MySQL 4. których jeszcze nie ma na serwerze. czyli gry fabularnej na żywo. http://freshmeat.0.com.2) została już udostępniona razem z kodem źródłowym. lecz powinien działać również i ze starszymi wersjami MySQL i PHP.2. Już teraz. postanowił ułatwić sobie i innym organizowanie LARP-ów. W Auroksie znajdują się one odpowiednio w pakietach: xmms-devel. W chwili pisania artykułu był to plik o nazwie lyrc-0. Wyszukiwanie ich nie jest jednak zawsze wygodne. Wtyczka korzysta z bazy tekstów piosenek. gtk+-devel oraz libxml2devel. Jeden z Mistrzów Gry. Po rozpakowaniu źródeł (tar xzvf lyrc-0.tar. to po wybraniu go z listy. Jeśli napotkamy na piosenkę. Jak więc widać.gz. nawet gdyby miało to polegać tylko na dodawaniu tekstów piosenek. możemy dodać je samodzielnie. Jeśli zaś w bazie znajduje się kilka tekstów pasujących do naszej piosenki.3 oraz najnowsze repozytorium PEAR. w zakładce Visualisation Plugins.com. Nie należy obawiać się. PHP 4. Jego instalacja nie sprawia problemów.2 został udostępniony publiczności do testowania.ar/ LARP’O’Machine W idzieliście może kiedyś dużą grupę ludzi przebranych w średniowieczne stroje.tar.lyrics. Projekt po osiągnięciu wersji 0. Czasem chcielibyśmy ponucić razem z wykonawcą. zapoznawanie z ogólną fabułą i tworzenie swoich postaci. próba zaśpiewania tej piosenki może doprowadzić do skręcenia języka nie powiedzie się.linuxfresh Lyrc P odczas słuchania piosenek (szczególnie obcojęzycznych) nie zawsze udaje się dokładnie wychwycić treść.ar. Chociaż przed nim 24 jeszcze długa droga. dostępnych jest wiele tekstów piosenek polskich wykonawców. co pozwoli im zapamiętać wygląd swoich towarzyszy. zapowiada się ciekawie. Starsza wersja Lyrc (0. gtk-config oraz xml2-config. że podczas słuchania ulubionych piosenek wtyczka będzie ciągle pobierała dane z Internetu – raz pobrane teksty przechowywane są w katalogu ~/. których spotkają w czasie gry.xmms/cdinfo). Jeśli jednak polecenie make Nawet znając słowa. Jeśli chcemy go uruchomić. należy upewnić się. Wtyczkę Lyrc znajdziemy w Preferencjach ([Ctrl]+[P ]). W założeniu ma pozwolić graczom na rejestrowanie się. Aktualna (0. W tym celu zaczął pisać własny system w PHP. dla której słów jeszcze nie ma w bazie.1) udostępniona była tylko w wersji binarnej. to najpewniej mieliście do czynienia z uczestnikami LARP-a (Live Action RolePlaying).3. Matias Maki. Z tego powodu powstał Lyrc. który nazwał LARP’O’Machine. Wydaje mi się.net/projects/lyrc/ ). http://sourceforge.lyrc. umieszczonej na serwerze lyrc. pobierająca z sieci słowa aktualnie odtwarzanej piosenki i wyświetlająca je w osobnym okienku. Warto bliżej się nim zainteresować. Druga opcja łączy fragmenty wysłane na tę samą grupę.sourceforge. Hasło natomiast należy umieścić w pliku ~/.noarch. w postaci nazwa_użytkownika:hasło. że Brag umożliwia łączenie fragmentów pliku wysłanych na różne grupy.brag/nazwa_serwera_nazwa_grupy/unfinished/. Program wywołany bez parametrów (poleceniem brag) spróbuje połączyć się z serwerem określonym zmienną środowiskową NNTPSERVER oraz z grupą.brag/nazwa_ serwera/passwd. Brag działa w linii poleceń.pictures. Brag jest programem bardzo użytecznym i wygodnym.4. a które absolutnie nie. więc lepiej używać parametrów. pełny plik znajduje się w katalogu ~/.gz). jak i paczkę tgz. Jedną z jego ciekawszych funkcji jest możliwość pobierania części jednego pliku z wielu różnych serwerów i z różnych grup.binaries. wiadomości wysłane na kilka grup (crosspost) będą pobierane tylko raz.brag/nazwa_serwera/ finished/ ). następnie zapisać dołączone do nich pliki. W przypadku pobrania tej drugiej (brag-1.dział prowadzi: Piotr Machej fresh@linux. Pakiet rpm instalujemy standardowo (rpm -Uvh brag-1. Możemy w linii poleceń podać nazwę użytkownika i hasło. dzięki czemu może pobierać pliki bez naszej ingerencji. że po użyciu tej opcji. Nie jest to może najlepszy sposób na rozpowszechnianie plików. po rozpakowaniu archiwum wystarczy wydać polecenie make install (z poziomu użytkownika root). Często prowadzi to do tego. musimy ściągnąć kilkaset wiadomości. a następnie pobrać z wyznaczonej grupy wszystkie załączniki binarne. No właśnie. grup binarnych. Ważne jest. Wspomniałem wcześniej.. Pierwsza z nich pozwala na łączenie fragmentów wysłanych na różne grupy. Świetnie nadaje się także do uruchamiania z Crona. Ponieważ raczej nie interesuje nas tematyka cmentarna. Z kolei niekompletne fragmenty www. lecz nie powinno to Czytelników zrażać.pl Możemy wesprzeć rozwój Braga kupując różne gadżety plików znajdą się w katalogu ~/.pl Brag C zytelnicy korzystający z serwerów grup dyskusyjnych z pewnością zdają sobie sprawę z istnienia tzw. Z pewnością przyda się tym Czytelnikom. że w celu zapoznania się z jednym plikiem. Podstawowe wywołanie to: brag -s nazwa_serwera -g nazwa_grupy Brag postara się połączyć ze wskazanym serwerem.com. Z tej przyczyny istnieje szereg programów mniej lub bardziej pomagających przy pobieraniu wiadomości z binarnych grup dyskusyjnych.1-1.com. Jeśli plik binarny zostanie pobrany w całości. to domyślnie zostanie użyta nazwa alt. O ile jednak małe pliki wysłane na grupę newsową mieszczą się zwykle w jednej wiadomości (przykładowo fotografie koni na alt. że na naszym serwerze pojawiły się wszystkie części pliku.brag/nazwa_grupy/.brag/nazwa_serwera/ nazwa_grupy/finished/. Fragmenty takie umieszczane są w katalogu ~/. Służą do tego opcje -c i -C.rpm). możemy również określić (dzięki wyrażeniom regularnym).pictures. które załączniki mają być pobierane. Jak widać.horses). Potrafi on dekodować załączniki zakodowane w uuencode. lecz wciąż popularny.4.net/ ) możemy pobrać zarówno pakiet rpm. a następnie umieszczane w odpowiednich podkatalogach katalogu ~/. jest z tym trochę roboty.linux.cemetaries. której nazwa znajduje się w zmiennej środowiskowej NNTPGROUP. dopiero rozpakować.sourceforge. ale na różne serwery. Oprócz wskazania grupy i serwera. którzy czasem pobierają większe pliki z grup binarnych. korzystając z wywołania: brag -l nazwa_użytkownika -p hasło Lepiej jednak (ze względów bezpieczeństwa) ograniczyć się do podawania w linii komend tylko nazwy użytkownika. MIME bas64 oraz yenc.1.brag/all-servers/. Dla programu Brag to nie problem.tar.. Wiele serwerów wymaga autoryzacji użytkownika. http://brag. to umieszczony będzie w katalogu ~/.binaries. o tyle z większymi jest już problem.net/ 25 . co często jest tylko pobożnym życzeniem. A w dodatku powyższe odbywa się przy założeniu. Pliki takie dzielone są na wiele mniejszych i hurtem wysyłane na grupę. połączyć je. a nawet na różne serwery. rozdzielone na poszczególne podkatalogi. W takim przypadku łączone będą fragmenty pobierane z różnych grup i z różnych serwerów. Umożliwia on pobieranie wieloczęściowych załączników z wiadomości na grupach newsowych. Pliki umieszczane są w odpowiednich podkatalogach katalogu ~/. Jeśli grupy takiej nie ma. Jednym z nich jest Brag. Istnieje także możliwość użycia obydwu opcji równocześnie.brag/nazwa_serwera/unfinished/ (po skompletowaniu. Ze strony domowej projektu (http://brag. pracuję jako niezależny konsultant ds. a ponieważ mam więcej pomysłów do realizacji niż jestem w stanie wykonać. Rafał Wojtczuk (Nergal). Projekt Openwall. w tym na serię 2. bezpieczeństwo będzie w rzeczywistości zmniejszone.4. gdyż mam teraz Owla. że te rozszerzenia mogą spowodować fałszywe poczucie bezpieczeństwa. który rozpoczął GrSecurity. Z poprawnie przygotowanym środowiskiem użytkownika. Oczywiście są tam także rozszerzenia. to nasz największy podprojekt. Dmitry V. czy i dlaczego moje poprawki straciły dla mnie swoją wagę. poświęcam go żonie. jest rozwinięciem tych zainteresowań. Kiedy to się zaczęło i z kim współpracujesz przy jego rozwijaniu? AP: Od 6 lat większość czasu spędzam zajmując się komputerami i bezpieczeństwem sieci. Niektórzy czytelnicy mogą zastanawiać się. bezpieczeństwa. a są bardzo ciekawe. KK: W ramach projektu Openwall przygotowujesz łaty na jądro Linuksa. Ktoś mógłby potem podjąć decyzję o nienaprawianiu dziury w systemie. która zawierała wiele innych tego typu rozszerzeń z różnych miejsc. KK: Dlaczego wszędzie korzystasz z pseudonimu Solar Designer? Z czego to wynika? AP: Nie ma żadnego konkretnego powodu. Jeśli tak się stanie. o wiele wcześniej zanim uznałem te jądra za przeznaczone do zastosowań produkcyjnych. którego bazą jest Linux i oprogramowanie GNU. których nie ma w moich łatkach. gdzie od 1997 roku pracuję jako administrator bezpieczeństwa w firmie DataForce ISP. do czasu. tylko z powodu tych rozszerzeń. że niektóre jego rozszerzenia lub ich implementacje są zbyt wątpliwe. KK: Od dłuższego czasu prowadzisz projekt Openwall. ale są to poprawki błędów bezpieczeństwa wykrytych w samym jądrze. Tak jest w istocie. Pseudonim pochodzi ze świata RPG i nie znaczył wiele. Z całym szacunkiem dla Brada. gdy zadecydowałem o oficjalnym wsparciu jąder 2. lub w oprogramowaniu. Jedną z przyczyn jest to. Owl jest systemem operacyjnym o zwiększonym bezpieczeństwie. jest rozwijany w zespole. wciąż uważam. na nic więcej nie mam czasu. styczeń 2004 . Mógłbym je nawet włączyć do własnych łatek. Aktualnie najbardziej aktywnymi deweloperami Owl są. GrSecurity stał się już dużą ogólną łatką. którym administrują. który rozpocząłem w 1999 roku. Ponadto. Michail Litvak. w przeciwnym razie rozmiar 26 Rysunek 1. przeznaczonym głównie dla serwerów internetowych. aby je polecać. Jeżeli jednak znajdę jakiś czas wolny od komputerów. mieszkam w Moskwie. nie są one już tak bardzo potrzebne. którym się zajmuje. gdy ludzie zaczęli rozpoznawać mnie właśnie pod nim. rozszerzenia zwiększające bezpieczeństwo nie zostają włączane. ale ja nie spodziewam się zmiany tej sytuacji.wywiad Wywiad z Alexandrem Peslyakiem (Solar Designerem). GrSecurity rozpoczęto jako nieoficjalne przeniesienie moich łatek na jądro serii 2. W wolnym czasie zajmuje się rozwijaniem różnych projektów.4. Chociaż jestem autorem większości oprogramowania opublikowanego w ramach Openwalla.4. oprócz mnie. Rzeczywiście. niż o sobie. któremu przewodzę. Czemu nie wprowadzić tych zmian na stałe do jądra? Czy są takie plany? Czym różnią się twoje poprawki od również popularnego GrSecurity? AP: Niektóre fragmenty tych łatek są w rzeczywistości włączane do stabilnych jąder. które robię dla społeczności. twórcą projektu Openwall Krzysztof Krawczyk (Linux+): Czy mógłbyś przedstawić się Czytelnikom naszego pisma? Gdzie mieszkasz i czym zajmujesz się na co dzień? Alexander Peslyak (Openwall): Podczas wywiadów wolę mówić o rzeczach. zamiast tylko utrzymywać. gdybym je wciąż aktywnie rozwijał. Alexander Peslyak moich łatek wciąż by rósł. Skoro jednak pytasz. Openwall GNU/*/Linux (Owl). zwiększające jego bezpieczeństwo. Levin oraz Jarno Huuskonen. W momencie. a nie zwiększone. W szczególności rozwijam różne darmowe uniksowe narzędzia związane z bezpieczeństwem i staram się znajdować błędy w już istniejącym oprogramowaniu. że ludzie. Inne przydatne zastosowania Owla mogą wynikać z dostępności w systemie narzędzi sieciowych. a zaprojektowany i wykonany głównie przez Rafała Wojtczuka. Większość ludzi woli jednak skorzystać z darmowego pobierania obrazów ISO. Co się od tego czasu zmieniło. Cytując opis ze stron WWW NSA. Zakup płyt CD z Owlem i zamawianie płatnych usług także jest dużą pomocą. które potrzebują bezpiecznego systemu operacyjnego dla swoich serwerów sieciowych (ang. Czy udaje Ci się sprzedawać tę dystrybucję Linuksa. oferujemy inne usługi z zakresu wolnego oprogramowania i bezpieczeństwa. chociaż są one oczywiście zamieszczone w pliku zmian (ang. Owl jest przeznaczony przede wszystkim dla doświadczonych administratorów systemów. Wiele z nich jest w rzeczywistości włączanych do innych dystrybucji. gdyż jak na razie niewiele słychać o tej inicjatywie. gdy ten wywiad zostanie opublikowany. którego opublikowałeś ponad rok temu. którzy szukaliby takiego rodzaju wsparcia. wraz z innymi dużymi zmianami w systemie. np. Niektóre rzeczy. w skład którego wchodzi: John the Ripper (narzędzie łamiące hasła). włączając w to procesy super- 27 . które wprowadziliśmy w międzyczasie. zatem nie odważę się w tej chwili obiecać przygotowania całkiem nowych rozwiązań. a także możliwością łatwego jego przebudowania ze źródeł (make buildworld). sprzętu lub usług istotnych dla projektu. Utrzymywanie i rozszerzanie istniejącego oprogramowania zabiera wiele czasu. W większości są to elementy Owla. audyt bezpieczeństwa wewnętrznej sieci? AP: Przyjmujemy zamówienia na płyty CD z Owlem. są zawarte w dokumencie TODO z Owl-current. listy słów. Postanowiłem nie wysyłać na BugTraqa ogłoszeń o niewielkich poprawkach bezpieczeństwa. Mam tu przykładowo na myśli odpłatne tworzenie programów lub rozszerzeń oprogramowania uwzględniających specyficzne wymagania klientów (później zostają udostępnione społeczności).pl Prawdopodobnie wynika to z tego. zaczynając od podziału dysku na partycję). Pracować można w różnych warunkach KK: Właśnie. Porozmawiajmy o Owlu. Myślimy nad przygotowaniem i utrzymywaniem wersji OEM Owla dla firm. które ograniczają akcje dowolnego procesu.1 powinien się już ukazać. KK: Czy możesz powiedzieć nam. oznaczone jako SECURITY-FIX. KK: Jakie oprogramowanie jest jeszcze tworzone w ramach projektu Openwall? Czy planujesz coś nowego? AP: W ramach projektu Openwall jest tworzonych wiele programów. Najbardziej popularny jest mój zestaw narzędzi do haseł. Usługa zdalnej instalacji. KK: Czy do projektu można się jakoś zapisać i pomagać Ci w jego rozwoju? Czy można jeszcze jakoś inaczej wspierać projekt? AP: Oczywiście. różnego rodzaju konsultacje oraz zdalną administrację systemem. także *BSD.wywiad z solar designerem Rysunek 2. którzy cenią sobie bezpieczeństwo swoich systemów. Msulogin (lepszy program do logowania się w trybie pojedynczego użytkownika) oraz kilka modułów PAM. KK: A jak wygląda komercyjny aspekt tego zagadnienia. którą udostępniamy (ktoś uruchamia Owla.com. www. nie jest zbytnio popularna. które są dostępne także oddzielnie do wykorzystania w innych systemach uniksowych. nie są aktualnie tymi. konfiguruje sieć i pozwala nam zdalnie dokończyć instalację. Znaczące uaktualnienia istniejących programów są wciąż jednak opracowywane. deweloperskich oraz związanych z bezpieczeństwem. changelog) Owl-current. kompatybilny z tym z OpenBSD). przyjmujemy także datki w postaci pieniędzy. Czy jest duże zainteresowanie usługą zdalnej instalacji? Czy oferujesz coś jeszcze. SE Linux „jest po prostu przykładem. dostępny w Owl. implementujący alternatywny mechanizm zarządzania hasłami. Dla kogo jest ta dystrybucja i do czego można ją wykorzystać? AP: Pracuję nad Owl-current.linux. audyty kodu źródłowego ukierunkowane na bezpieczeństwo. Popa3d (demon POP3 zaprojektowany z myślą o bezpieczeństwie). Poza zgłaszaniem własnego kodu. network appliance serwers). Tak. jak obowiązkowe prawa dostępu. co myślisz o projekcie SE Linux? Jak bardzo koncepcyjnie różnią się wasze rozwiązania? AP: SE Linux nie jest nawet podobny do Owla. które muszą być zrobione. z chęcią zobaczę więcej utalentowanych ludzi przyłączających się do mojego zespołu. Pam_passwdqc (moduł sprawdzający jakość hasła) oraz implementacja Bcrypta (mój nowy system szyfrowania haseł. a Owl 1. którzy wybierają Owla. Inne oprogramowanie to Scanlogd (demon wykrywający skanowanie portów). Do tego dochodzi Tcb. a to jest coraz bardziej drażniące. są to tylko błędy w oprogramowaniu. To bardzo dobry pomysł. co utrudnia rozprzestrzenianie się robaków i wirusów. błędy w oprogramowaniu czy może spam? Czy jesteś w stanie wytypować największą lukę w bezpieczeństwie 2003 roku? AP: To. iż dyskusje. która to robi. mają rolę drugorzędną. w przeciwieństwie do ogłoszeń. administratorów. okazjonalnie akceptują usprawnienia dotyczące bezpieczeństwa w postaci łatek. są troszeczkę z tyłu i muszą „gonić czołówkę”. instalowanym dodatkowo w Owlu. Red Hat i Mandrake). jego faktycznego wykorzystania. żadna z trzech wymienionych dystrybucji nie jest zbytnio chętna do przemyślenia i przeprojektowania oprogramowania. szczególnie w przypadku systemów biurkowych. Każda z wymienionych przez ciebie rzeczy może nim być. AP: Nie znam Auroksa (zakładam. a i to głównie w tym zewnętrznym. Nie widzę żadnych znaczących różnic w podejściu do spraw bezpieczeństwa w tych dystrybucjach. np. i zgłaszam poprawki związane z bezpieczeństwem w projektach z nim nie związanych. bardzo aktywnie działałeś kiedyś na liście BugTraq. jest moje priorytetowanie rzeczy z powodu braku czasu oraz moje zrozumienie. KK: Jakie są obecnie. Czy coś zmieniło się od czasu. grają też fair w stosunku do 28 innych firm (i co ważniejsze. AP: Dziękuję za możliwość przedstawienia naszej pracy. Standardowa konfiguracja wielu dystrybucji Linuksa może wyglądać podobnie do konfiguracji Windowsa nastawionej na bezpieczeństwo. które są zlokalizowanymi klonami innej dystrybucji. gdy firmę SecurityFocus przejęła firma Symantec jesienią 2002 roku? AP: Nie. Gdybym miał rozważać jego wykorzystanie w Owlu. Twoim zdaniem. To nie ma nic wspólnego z działalnością moderatorów Bugtraqa. zależy od systemu operacyjnego. Z kolei dystrybucje. gdzie mogą istnieć słuszne powody wybrania Windowsa. ale nie z dziedziny. niech będą to Debian. jak to wygląda? AP: Jest. z kilkoma wyjątkami. ich użytkownicy są w większej potrzebie bycia na bieżąco z uaktualnieniami niż nasi. wykonują dobrą robotę w usuwaniu zagrożeń. a jeśli tak. Z tego powodu. Dla Owla i jego użytkowników. Solar Designer (Alexander Peslyak) i Nergal (Rafał Wojtczuk) podczas prezentacji Owla użytkownika. jego zakładanego wykorzystania. aby była jedna największa luka bezpieczeństwa 2003 roku. KK: Z tego. Musiałby to być naprawdę dobry powód. ale. chociaż ilość przesyłanej poczty elektronicznej wciąż rośnie. W rzeczy samej. włączając takie małe jak nasza. które zostały im zgłoszone. w tym niechcianej. takie jak Aurox. Wiem. że grupa subskrybentów tej listy wzrosła do takiego stopnia. aby wybrać Windowsa. a narzędzia do niego i poprawki już istniejących. dla którego jestem tam mniej aktywny. KK: To byłoby zatem wszystko. co uważa się za największe zagrożenie. styczeń 2004 . które wymieniłeś (Debian. Na systemach serwerowych zbyt rzadko jest powód. abym wysłał coś do dziesiątków tysięcy ludzi jednocześnie (a może jest ich już ponad 100k?). że jest to polska wersja Red Hata). czego dobrym przykładem jest wspomniany wcześniej Tcb – proponowaliśmy go wszystkim trzem. Bardzo dziękuję za poświęcony czas. KK: Czy jest sens porównywać bezpieczeństwo Linuksa z Windows. KK: Jak oceniasz bezpieczeństwo popularnych dystrybucji Linuksa? Dla zwrócenia uwagi. że zespoły tych trzech głównych dystrybucji. W przeciwieństwie do Owla. W większości przypadków powstrzymuję się od komentarzy.wywiad Rysunek 3. miejsca użytkowania i osoby. lecz moim samouświadomieniem. które wykorzystują. Samo przejęcie nie wpłynęło na moje postrzeganie BugTraqa w żaden sposób. z trzema wyjątkami: na Linuksie jest lepsza separacja pomiędzy kontem użytkownika a administratora. mogą być dodane do Linuksa”. SE Linux jest przede wszystkim modyfikacją jądra. największe zagrożenia dla bezpieczeństwa systemów operacyjnych? Wirusy. którą się aktualnie zajmuję. nie mają odwagi wprowadzić bezpośrednich środków zwiększających bezpieczeństwo. Gdy to robią. w celu zwiększania jego bezpieczeństwa. KK: Czy udzielasz się jeszcze w jakichś innych projektach związanych z bezpieczeństwem? AP: Tak. chyba że temat byłby bardzo nowy lub wart zainteresowania większości subskrybentów. liczba takich robaków i wirusów jest mniejsza. Powodem. prawdopodobnie raczej wybrałbym RSBAC. pomiędzy poszczególnymi systemami linuksowymi istnieje większa różnorodność. byłyby ze zrozumiałych względów uważane za „spamowanie”. Aurox i Mandrake. Nie wydaje mi się. Ale to także nie stanowi dużej różnicy. co pamiętam. ich użytkowników). a ich „jakość” słabsza. wspólnie ustalając daty ujawnienia zagrożenia. trojany. ...................... Lewartowskiego 6.. Prosimy w odpowiednim polu zakreślić numery........................ Oświadczam(y).... pieczątka i podpis Software-Wydawnictwo Sp.......... z o...................... nazwa firmy ......................................o............: (22) 860 17 67 ..... do wystawienia faktury VAT bez podpisu odbiorcy..........Linux+ 01/2003 Linux+ 02/2003 Linux+ 03/2003 Linux+ 04/2003 Linux+ 05/2003 Linux+ 06/2003 Linux+ 07/2003 Linux+ 08/2003 Numery archiwalne Prosimy o przesłanie kuponu pocztą lub faksem.................... z o... Tel.... Dokładny adres: ... ul..... 00-190 Warszawa. które Państwo chcą zamówić.................................................................o.................. Linux+ 11/2003 Linux+ 12/2003 L+ 01/2004 Wypełnia płatnik VAT... . białe pola – 15 zł za egzemplarz 1 2 3 4 5 żółte pola – 24 zł za egzemplarz 6 7 8 9 10 11 12 1999 Linux+ 09/2003 Linux+ 10/2003 2000 2001 2002 2003 – rocznik 1999 ( 8 numerów) – 80 zł – rocznik 2000 (12 numerów) – 120 zł – rocznik 2001 (12 numerów) – 120 zł – rocznik 2002 (12 numerów) – 150 zł – rocznik 2003 (12 numerów) – 150 zł Imię i nazwisko....... że jestem(śmy) płatnikiem VAT i upoważniam(y) Software-Wydawnictwo Sp........... Od kilku lat wykorzystuje Linuksa. prezentuje się jako zupełnie nieczytelny gąszcz przypadkowych znaków. 2.4 oraz – choć czasami nie bez kłopotów – 2. rm itp. Loop-AES pozwala na wygodne szyfrowanie dużych porcji danych. praca z zaszyfrowanym systemem plików – jeśli pominąć czynności związane z jego przygotowaniem i montowaniem – nie różni się niczym od pracy na zwykłej. obejdzie się nawet bez jego rekonfiguracji i rekompilacji. niezaszyfrowanych partycji za pomocą standarowego polecenia cp albo między panelami ulubionego menedżera plików. Możemy go użyć w systemach z jądrem z serii 2.6. Proces szyfrowania danych jest "przezroczysty". Do innych użytecznych zastosowań modułu Loop-AES należą szyfrowanie partycji wymiany (swap) oraz korzystanie z zabezpieczonych kryptograficznie płyt CD. zapisywać w nich dowolne dane. np. 30 Rysunek 1. czy korzystamy z jądra dystybucyjnego czy samodzielnie zbudowanego. kto uzyska nieautoryzowany dostęp do komputera. Nie ma przy tym znaczenia. mkdir. całych partycji (zarówno podstawowych. nadających się do szyfrowania pojedynczych plików lub archiwów. Otwartość źródeł stanowi gwarancję.com. To ważna zaleta.0. jak gpg. Dostęp do nich uzyskujemy po wymagającym autoryzacji montowaniu za pośrednictwem urządzenia loop. Dopiero próba "podejrzenia" zawartości zabezpieczonej partycji po odmontowaniu uświadomi nam. W dalszej części artykułu przedstawię kilka modelowych rozwiązań opartych na jednym z najwygodniejszych narzędzi kryptograficznych w Linuksie – module jądra LoopAES z wbudowaną obsługą szyfrowania. Jak wobec tego zabezpieczyć się przed ujawnieniem poufnych danych firmy lub prywatnych sekretów. Praca z szyfrowanym systemem plików Z punktu widzenia użytkownika. 2. mcrypt lub ccat. przenosić je z innych.2. W odróżnieniu od takich programów. styczeń 2004 . jak i logicznych) lub systemów plików utworzonych w zwykłych plikach o niemal dowolnej wielkości. niezabezpieczonej partycji. Niewątpliwym atutem tego modułu jest stosunkowo duża elastyczność i przenośność. Loop-AES nie wymaga także nakładania łat na źródła jądra. Możemy więc tworzyć lub usuwać katalogi i pliki przy użyciu zwykłych poleceń systemowych (touch. że nikt nie zostawił w nich otwartej tylnej furtki. jest w stanie poznać wszystkie tajemnice powierzone jego dyskom twardym.bezpieczeństwo Loop-AES – szyfrowane systemy plików Skarbimir Kwiatkowski K ażdy.pl. np. Nie bez znaczenia jest też możliwość dostosowania konfiguracji do potrzeb użytkownika w stopniu znacznie większym niż w przypadku – często niezbyt elastycznych – produktów komercyjnych. w przypadku kradzieży notebooka albo gdy dostęp do komputera mają osoby trzecie? Jest na to rada. Kontakt z autorem: autorzy@linux. zwłaszcza fizyczny. co na niej zapisaliśmy. Gdy obsługa urządzenia blokowego loopback nie została wkompilowana w jądro lub sterownik tego urząO autorze: Autor pracuje w Zakładzie Logiki i Semiotyki Uniwersytetu Mikołaja Kopernika w Toruniu. że wszystko to. odbywa się na poziomie jądra i nie wymaga wykonywania dodatkowych czynności czy stosowania specjalnych narzędzi. FreeBSD i Solaris w działalności zawodowej i pozazawodowej.). Linux oferuje wiele mechanizmów ochrony danych opartych na silnej kryptografii. Strona NIST poświęcona AES dzenia został umieszczony w module. gdy będziemy chcieli zaszyfrować już istniejącą i wykorzystywaną partycję. Jak dotąd. a jako klucz służy skrót hasła podanego przez użytkownika. Przygotowanie narzędzi Przed rozpoczęciem pracy z szyfrowanymi systemami plików.bz2). autorstwa Fina Jariego Ruusu. SHA-384 lub SHA-512. a także stronę NIST.tar.o i loop_blowfish. został wyłoniony w konkursie ogłoszonym przez National Institute of Standards and Technology (NIST) jako nowy standard zaawansowanej kryptografii.bz2). 192. Uczestnicy grup dyskusyjnych czasem pytają: “czy mogę zaszyfrować całe drzewo katalogów?”. które posłużą do zbudowania niezbędnych binariów: • źródła modułu Loop-AES (loop-AES-latest. Programy mount. więc użyjemy odpowiednio połatanej wersji. stosowane w dodatkowych modułach z projektu Loop-AES. pliki nagłówkowe biblioteki glibc oraz kompilator języka C (gcc). www. Uparci eksperymentatorzy znajdą precyzyjną instrukcję w dokumentacji modułu Loop-AES. np. poświęconą tematyce AES. Atak „siłowy”. W finałowej piątce. Zainteresowanym szczegółami polecam stronę domową projektu Rijndael. Szyfrowanie bloków odbywa się w trybie CBC (Cipher Block Chaining). • źródła zestawu narzędzi Util-linux (util-linux-2. swapon. 31 .bz2). Zwycięzca konkursu zastąpił wysłużony.in. Warto również zaopatrzyć się w Ciphers (cipherslatest. współpracujących z Loop-AES (loop_serpent. Schemat działania algorytmu AES nie tylko.lub 256-bitowym kluczem w 128bitowych blokach. • źródła jądra lub co najmniej jego pliki nagłówkowe (w wielu dystrybucjach dostępne w osobnych pakietach). zawierające źródła dodatkowych modułów kryptograficznych. czy wspólnie z innymi? Ile spośród tych osób ma mieć dostęp do wrażliwych danych? Czy wygodniej i bezpieczniej będzie podzielić je na części dostępne z osobna dla każdego uprawnionego. ale starajmy się nie popadać w paranoję. a tym samym skuteczną ochronę przed rozszyfrowaniem (Rysunek 2). Z tego powodu Rijndael zwany jest najczęściej po prostu AES (Advanced Encryption Standard). braku ograniczeń natury patentowo-licencyjnej oraz zapewnić wysoką wydajność. jest przy obecnych mocach obliczeniowych komputerów nieefektywny. na płytach CD? Czy korzystamy z tej maszyny sami. AES musiał spełnić warunki publicznej dostępności specyfikacji.loop-aes Co i jak szyfrować? Zanim wybierzemy konkretny model zastosowania LoopAES. modyfikacją trybu uruchamiania systemu itp. warto zastanowić się – biorąc pod uwagę różne istotne okoliczności – nad szczegółami rozwiązania.tar.o). Poufne dane zajmują na ogół tylko pewną część dysku. nie są znane przypadki złamania AES. Algorytm AES użyty w module loop przetwarza niezaszyfrowany tekst na tekst zaszyfrowany o tej samej długości. najprawdopodobniej zużyjemy niepotrzebnie część mocy obliczeniowej maszyny i przysporzymy sobie kłopotów związanych z rekompilacją jądra. a możliwość ataku algebraicznego – dającego szansę otrzymania rezultatów w rozsądnym czasie – stanowi w tej chwili zaledwie przedmiot kontrowersji wśród specjalistów. czy rzeczywiście warto. Z tego powodu odradzam ten pomysł. których źródła są publicznie dostępne. zbyt powolny i nie dość bezpieczny algorytm DES. Dane szyfrowane są 128-.12pre. co zapewnia bardzo silne rozproszenie. prócz opracowanego przez Belgów Joana Daemena i Vincenta Rijmena algorytmu Rijndael. Oczywiście można to zrobić.linux. Ten ostatni program przyda się nam. umount. reszta to m. czy raczej zależy nam na zabezpieczeniu partycji już istniejących i wykorzystywanych? Czy chcemy mieć możliwość łatwego usuwania lub przenoszenia całości zaszyfrowanych danych.pl Rysunek 2.o. powszechnie używane programy. implementuje symetryczny szyfr blokowy Rijndael. na której przechowujemy pliki wymagające ochrony. Aespipe i Ciphers stanowią część tego samego projektu Loop-AES. obliczany funkcją skrótu SHA-256. służącego do szyfrowania danych w potoku (pipe). musimy zaopatrzyć się w pliki źródłowe. Oprócz kryteriów technicznych.tar. oraz źródła pomocniczego narzędzia Aespipe (aespipe-latest. tar. Jakie dane naprawdę potrzebują ochrony? Czy posiadamy wolną część dysku. loop_twofish. pyta- AES Moduł Loop-AES. którą możemy przeznaczyć na partycję szyfrowaną. który w 2000 r. polegający na sprawdzaniu wszystkich kluczy. Szyfrując wszystko bez wyboru.com. znalazły się również algorytmy Serpent i Twofish.bz2). losetup. czy może użyć wspólnej partycji chronionej hasłem dostępu albo kluczami GnuPG ? Czy potrzebujemy szyfrowanej partycji wymiany? Ochrona prywatności lub tajemnic firmy jest ważna. swapoff muszą mieć zaimplementowaną obsługę kryptograficzną. Wolną partycję chcemy przeznaczyć na szyfrowane dane. Nie musimy własnoręcznie ładować modułu loop. Zyskamy w ten sposób dodatkowe silne algorytmy Serpent. a ponadto ostatni występuje również w postaci Twofish160. lecz skuteczny sposób. umieścić zbudowane programy w innym katalogu. t. odpowiedź "CONFIG_BLK_DEV_ LOOP is not set " oznacza. W naszym przypadku jest to plik utillinux2. jeżeli np.bz2 cd loop-AES-v1.bz2. Powinno to umożliwić instalację Loop-AES.config w katalogu ze źródłami. AES128 czy AES192. Blowfish i Twofish. wystarczy zajrzeć do pliku .o. a następnie wydajemy polecenie depmod -a. Strona domowa projektu Loop-AES na serwerze SourceForge Przede wszystkim powinniśmy sprawdzić. będą korzystały ze starych wersji. a dla wygody. w sekcji "Block devices" wyłączamy opcję "Loopback device support ". 192i 256-bitowym.j. nie posiada statycznie wkompilowanego urządzenia loop. możemy spróbować obejść kłopot w mało elegancki. loop_blowfish. które pozwolą nam w pełni korzystać z nowego modułu (lub modułów). umount i losetup. Aby dodać moduły loop_serpent. Odpowiednia łata dołączona jest do archiwum loopAES-latest. czy używane jądro systemu spełnia wspomniany wcześniej warunek. /usr/src/linux. O ile pliki nagłówkowe jądra są zlokalizowane w typowym miejscu (/lib/modules/ `uname -r`/build. zamierzamy ograniczyć się jedynie do testów. Po wydaniu polecenia make menuconfig. serpent128 czy twofish256 ). Możemy również. a w nim nowy plik loop. to po rozpakowaniu archiwum wystarczy ograniczyć się do wykonania polecenia make i zaktualizowania listy dostępnych modułów: tar jxvf loop-AES-latest. aby wypróbować przygotowane oprogramowanie! Na początek przedstawię przykład najbardziej oczywisty. gdyż zadba o to jądro systemu.7e su make && depmod -a Rysunek 3. o ile podczas konfiguracji zaznaczyliśmy "CONFIG_KMOD=y ". choć nie jest to konieczne. /usr/src/linux-`uname -r` lub /usr/src/kernel-source `uname -r`).o. "Kernel module loader " ("CONFIG_KMOD=y "). że możemy od razu zająć się utworzeniem nowego modułu.diff. Jeżeli używamy jądra z dystrybucyjnego pakietu. Jeśli konfigurowaliśmy je i kompilowaliśmy wcześniej. Teraz przystępujemy do przygotowania narzędzi. gdy jądro zostało wyposażone w ładowalny moduł loop ("CONFIG_BLK_DEV_LOOP=m").tar. W przypadku. W pierwszym kroku przyłączamy partycję do urządzenia loop. a z jakichś powodów nie chcemy budować nowego jądra. a przy tym prosty. w katalogu zawierającym źródła. W sekcji "Loadable module support " zaznaczamy "Enable loadable module support ". fdiskiem. to komenda make wymaga podania ścieżki do odpowiedniego katalogu: make LINUX_SOURCE=/sciezka/do/katalogu/ze/zrodlami/jadra. W katalogu /lib/modules/`uname -r` znajdziemy teraz nowy podkatalog block.o i loop_twofish.o. Debian umieszcza stosowny plik z numerem jądra w katalogu /boot) albo po prostu spróbować załadować moduł loop i/lub zamontować obraz dowolnej płyty CD z danymi. Będziemy potrzebowali zmodyfikowanych programów mount. Standardowe wersje jądra domyślnie nie włączają obsługi loopback. Każdy z nich może być używany z kluczem 128-. Szyfrowanie partycji Wreszcie nadeszła pora.o. Pamiętajmy jednak. możemy poszukać jego konfiguracji (np. Przed instalacją warto zadbać o kopie zapasowe. Gdy wykonamy polecenie grep CONFIG_BLK_DEV_LOOP /usr/src/linux/.12pre. np. że partycja została już wcześniej założona. Gdy w konfiguracji znajdziemy "CONFIG_BLK_DEV_ LOOP=y ". Typową procedurę kompilacji i instalacji potrzebnych narzędzi przedstawia Listing 1. Czas zbudować moduł.config. a jeśli zbudowaliśmy moduły z Ciphers. Usuwamy lub kopiujemy w bezpieczne miejsce istniejący moduł /lib/modules/`uname -r`/kernel/drivers/ 32 Jeśli lokalizacja źródeł jest inna. że skrypty startowe systemu.tar. Przyjmuję. a także – jeśli planujemy używać szyfrowanej partycji wymiany – swapon i swapoff. to niestety będzie potrzebne nowe jądro systemu.bezpieczeństwo block/loop. Za pomocą flagi -e określamy szyfr (zamiast AES256 może to być np. także np. Natomiast styczeń 2004 . w analogiczny sposób postępujemy z archiwum ciphers-latest.bz2. o ile ich nie zmodyfikujemy.tar. ext3.12pre. Polecenie wygląda więc tak: losetup -e AES256 -T /dev/loopX /dev/hdaN Tu i w dalszej części artykułu X oznacza numer urządzenia loop.sav # install -m 644 mount. Osoby używające devfs powinny Listing 1.diff $ CFLAGS=-O2 .5 /usr/share/man/man5 # mandb /dev/hdaN /mnt/crypto ext2 defaults. powinniśmy dopisać do /etc/fstab: # install -m 644 fstab. Zakładamy na partycji system plików ext2 (z pewnymi ograniczeniami może to być również system plików z księgowaniem./loop-AES-v1. np. Kompilacja i instalacja narzędzi z Util-linux $ tar jxvf util-linux-2. To dużo. odłączamy urządzenie i zakładamy katalog..8. Jeśli wszystko przebiegło poprawnie. dlatego jako argument polecenia podajemy /dev/loopX.8 /usr/share/man/man8 Jeśli wolimy oszczędzić sobie wpisywania za każdym razem długiej komendy.gz \ S > /usr/share/man/man5/fstab. wpisując /dev/loop/0.7e/util-linux-2.encryption=AES256 # install -m 4755 -o root mount umount /bin # install -m 755 losetup swapon /sbin # rm -f /sbin/swapoff && ( cd /sbin && ln -s swapon swapoff ) S S # for item in /usr/share/man/man8/{mount. coś takiego: losetup.swapon.sav" > cp -p $prog $prog.12pre $ patch -p1 <.loop=/dev/loop0.encryption=AES256 0 0 www.pl 33 . Flaga -T informuje program.linux. S loop=/dev/loopX.loop-aes Rysunek 4. W razie potrzeby możemy zwiększyć ją za pomocą mknod nawet do 256.tar. Polecenie mount bez opcji powinno nam teraz pokazać m. tak aby maksymalnie utrudnić ewentualny atak słownikowy. w sprawie szczegółów odsyłam do dokumentacji). /dev/loop/7 itp.5.8 \ > swapoff.swapoff}. Dodajmy. Opisane polecenia wyglądają tak: $ make SUBDIRS="lib mount" $ cd mount mkfs -t ext2 /dev/loopX $ strip -s mount umount losetup swapon losetup -d /dev/loopX $ su # for prog in `which mount umount losetup swapon S mkdir /mnt/crypto Możemy teraz zamontować partycję: swapoff` > do echo "Tworzę kopię zapasową $prog.8 swapon.12pre.gz /dev/hda7 on /mnt/crypto type ext2 > do echo "Tworzę kopię zapasową $item" (rw.sav mount -t ext2 /dev/hdaN /mnt/crypto > done S -o loop=/dev/loopX. ale wybierzmy je starannie.encryption=AES256) > mv $item $item. Zamiast loop =/dev/loopX wystarczy podać po prostu loop. że ma dwukrotnie pytać o hasło.in. że w tej operacji pośredniczy loop. który posłuży nam do montowania partycji. Zwróćmy uwagę.com./configure odpowiednio dostosować polecenia.8 losetup.bz2 $ cd util-linux-2.umount.8 umount. Zabezpieczenie dostępu do klucza AES szyfrem niesymetrycznym przy pomocy GnuPG moduły loop_serpent czy loop_twofish powinniśmy w razie potrzeby załadować poleceniem modprobe lub insmod. System sam wybierze wolne urządzenie. że domyślna liczba urządzeń loop w systemie wynosi osiem.noauto. a N – numer partycji. Program losetup nie pozwoli na użycie hasła krótszego niż dwadzieścia znaków. loop.encryption=AES256.encryption=AES256 0 0 mkfs -t ext2 /dev/loopX proc /proc proc defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 /dev/hda6 /usr ext3 defaults 0 0 /dev/hda7 /home reiserfs defaults 0 0 /dev/hda8 /scratch reiserfs defaults 0 0 /dev/fd0 /floppy auto user.encryption=AES256 0 0 Oczywiście i tu znalazłyby zastosowanie flagi -S i -C programu losetup (zarodek hasła i liczba iteracji). Jako źródło. który jak wiadomo. W takim przypadku nic nie stoi na przeszkodzie. tworząc strukturę systemu plików ext2. S gpgkey=/floppy/moj_klucz. a wygospodarowanie wolnej części wymagałoby dużo starań. w Linuksie może „udawać” urządzenie blokowe.dzięki czemu będzie on traktowany jak partycja – i wybieramy hasło.user. # <system plikow><punkt montowania><typ><opcje> <dump> losetup -e AES256 -T -S 8bqMfh75PZnMu+wwjyVq S -C 100 /dev/loopX /dev/hdaN a do fstab wpisalibyśmy w takim przypadku: /dev/hdaN /mnt/crypto ext2 defaults. S pseed=8bqMfh75PZnMu+wwjyVq 0 0 Plik jak partycja Zdarza się.gpg 0 0 /home/self/crypto_fs /mnt/crypto3 ext2 defaults. nie będzie można zorientować się. 34 S noauto. Zabiegi te są dość skutecznym sposobem znacznego spowolnienia ataku. którego będziemy używać podczas montowania i ewentualnie dodajemy do /etc/fstab odpowiedni wpis: S Jeśli chcemy umożliwić zwykłym użytkownikom (znającym hasło) montowanie szyfrowanego systemu plików.user. Gdyby zależało nam na wzmocnieniu ochrony partycji przed atakiem słownikowym. co spowoduje. takie jak partycja na dysku twardym. iocharset=iso8859-2 0 0 /dev/scd1/mnt/cdrw iso9660 ro.encryption=AES256 0 0 loop=/dev/loop1. Wyjściowe polecenie losetup. natomiast na skutek podania po fladze -C liczby N.loop.loop=/dev/loop2. że podglądając plik. W dalszej kolejności formatujemy go.bezpieczeństwo Nie potrzeba niczego więcej.encryption=AES256.noauto. S /dev/hda9 /mnt/crypto2 ext2 defaults.user.gpg.gpghome=/floppy 0 0 S noauto. moglibyśmy wykorzystać /dev/zero.noauto 0 0 /dev/cdrom /cdrom iso9660 ro. S loop=/dev/loopX. Rozwiązanie to ma i tę dobrą stronę. Oczywiście za każdym razem ten ciąg będzie inny. Ostatecznie wygląda to tak: <pass> /dev/hda2 / ext3 errors=remount-ro 0 1 # szyfrowany swap /dev/hda5 none swap sw.user. że cały dysk jest już podzielony na sformatowane partycje. S noauto. Na koniec zakładamy katalog. Przykładowy plik /etc/fstab z wpisami dotyczącymi montowania szyfrowanych systemów plików # /etc/fstab: statyczna informacja o systemach plików. Ideę tę przedstawia poglądowo Rysunek 4.| S awk 'NR == 2 {print} Powinniśmy otrzymać coś w rodzaju: 8bqMfh75PZnMu+wwjyVq.noauto. pliki zapisane w katalogu /mnt/ crypto są szyfrowane i po odmontowaniu partycji będą niedostępne dla niepowołanych oczu. w którym miejscu zaczynają się i kończą zaszyfrowane dane. od którego zaczęliśmy procedurę szyfrowania partycji.noauto. Nie ma większego znaczenia. gpgkey=/etc/kluczepub-crypto. S S /jakis_katalog/crypto_file /mnt/crypto ext2 defaults. Losowy zarodek hasła możemy wybrać używając przykładowo takiej kombinacji poleceń: head -c 15 /dev/urandom | uuencode -m . iocharset=iso8859-2 0 0 # szyfrowane urządzenia /dev/hda4 /mnt/crypto1 ext2 defaults. ale lepiej użyć /dev/urandom – dd zapisze wtedy cały plik losowo wybranymi znakami. z którego czyta program dd. Pominąłem je. abyśmy utworzyli zaszyfrowaną strukturę katalogów w zwykłym pliku. dopisujemy ponadto do opcji montowania user.encryption=AES256. utworzony skrót hasła szyfrowany jest N tysięcy razy przy użyciu algorytmu AES256. czy styczeń 2004 . wyglądałoby zatem tak: Listing 2. dd if=/dev/urandom of=/jakis_katalog/crypto_file bs=4k S count=179200 S losetup -e AES256 -T /dev/loopX /jakis_katalog/crypto_file loop=/dev/loop0. aby nie komplikować przykładów. moglibyśmy dodatkowo użyć losowo wygenerowanego zarodka hasła oraz podać liczbę powtórzeń klucza (flagi -S i -C programu losetup). Tworzymy zatem plik o wielkości np. Z kluczem GnuPG na dyskietce Dostęp do szyfrowanego systemu plików możemy zabezpieczyć dodatkowo kluczem GnuPG. że plik można w razie potrzeby przenieść w inne miejsce na dysku albo nagrać na płytę CD. zanim zostanie ono potraktowane nieodwracalną funkcją haszującą (f.exec. skrótu). 700 MB. z których korzystamy.noauto. a następnie poleceniem losetup podłączamy go do urządzenia loop . To już działa! Choć tego w ogóle nie dostrzegamy.itercountk=100. To samo dotyczy poprzedniego przypadku szyfrowanej partycji. Zarodek jest dodawany do wpisanego przez administratora hasła. loop-aes system plików zostanie utworzony według przedstawionej przed chwilą recepty w dużym pliku, czy na fizycznej partycji. Powinniśmy posłużyć się dyskietką z systemem plików pozwalającym ustalać prawa dostępu, np. ext2. Jeżeli użyjemy dyskietki „dosowej”, gpg będzie zgłaszał błąd. Zaczynamy od zamontowania dyskietki i generujemy parę kluczy GnuPG, chyba że skorzystamy z już posiadanych: mount /dev/fd0 /floppy gpg --gen-key --homedir /floppy Połączenie komend head, uuencode i awk pozwoli utworzyć odpowiednio długi, losowy ciąg znaków, który posłuży do szyfrowania systemu plików. Otrzymane w ten sposób hasło zabezpieczamy szyfrem niesymetrycznym przy pomocy gpg i zapisujemy na dyskietce: head -c 45 /dev/random | uuencode -m - | awk 'NR == 2 {print}' | \ gpg --homedir /floppy -e -a -r "Imię Nazwisko" > S S funkcję urządzenia blokowego), do której użytkownicy wskazani przez administratora otrzymają dostęp na podstawie pary kluczy GnuPG. Każdy z nich będzie korzystał z własnych kluczy i, co za tym idzie, własnego hasła. Administrator (root) musi mieć wygenerowaną parę kluczy GnuPG i dysponować kluczami publicznymi użytkowników, którym chce przekazać prawo montowania. Sprawdzamy to komendą gpg –list-public-keys. Jeśli na liście brak jest którejś z tych osób, pomocne będzie polecenie gpg --import plik_z_kluczem. Prawa odczytu tworzonych plików najlepiej ograniczyć zmieniając domyślne ustawienia powłoki poleceniem umask 077. Kolejne polecenia wyglądają następująco: head -c 45 /dev/random | uuencode -m - | awk 'NR == 2 S {print}' | gpg -e -a -r "Charlie Root" > S /root/masterkey-crypto.gpg losetup -e AES256 -K /root/masterkey-crypto.gpg S /dev/loopX /dev/hdaN mkfs -t ext2 /dev/loopX losetup -d /dev/loopX W przypadku szyfrowania pliku, a nie partycji, pierwszy człon należy zastąpić jego nazwą. Kolejne polecenia są następujące: Co zrobiliśmy? Czytelnik zapewne domyśla się, że pierwsza linia ma na celu otrzymanie losowego ciągu znaków oraz zaszyfrowanie go przy pomocy klucza GnuPG należącego do administratora. Wynik zapisywany jest w pliku /root/ masterkey-crypto.gpg. Następnie przyłączamy partycję do urządzenia /dev/loopX. Wybieramy przy tym algorytm szyfrowania AES256, a flaga -K powoduje, że hasło pobierane z pliku masterkey-crypto.gpg jest przekazywane do programu gpg w celu odszyfrowania przed użyciem. Formatujemy partycję i odłączamy ją od urządzenia loopX. Przechodzimy do /etc/fstab, dopisując: losetup -F /dev/loopX /dev/hdaN /mnt/crypto2 ext2 defaults,user,noauto, /floppy/moj_klucz.gpg Do /etc/fstab dopisujemy poniższy wiersz: /dev/hdaN /mnt/crypto1 ext2 defaults,noauto, S loop=/dev/loopX,encryption=AES256, S gpgkey=/floppy/moj_klucz.gpg,gpghome=/floppy 0 0 mkfs -t ext2 /dev/loopX encryption=AES256,loop=/dev/loopX, S losetup -d /dev/loopX gpgkey=/etc/userkey-crypto.gpg 0 0 Flaga -F powoduje, że losetup pobiera opcje z /etc/fstab. Drugą komendą formatujemy urządzenie i po poprawnym zakończeniu tej operacji, resetujemy je. O ile tylko istnieje docelowy katalog, możemy już zamontować system plików poleceniem mount /mnt/crypto. Oczywiście, każda kolejna próba musi być poprzedzona umieszczeniem dyskietki w napędzie i jej poprawnym zamontowaniem. Należy jej strzec, gdyż zgubienie albo zniszczenie kluczy uniemożliwi raz na zawsze dostęp do zaszyfrowanych plików. Z tego względu rozsądniejsze jest skopiowanie niezbędnych plików na trwalszy niż dyskietka nośnik i odpowiednia modyfikacja ścieżek dostępu w /etc/ fstab. Wielu użytkowników, wiele kluczy GnuPG Teraz zajmiemy się bardziej skomplikowanym rozwiązaniem. Przygotujemy szyfrowaną partycję (lub plik pełniący www.linux.com.pl S Na koniec deszyfrujemy hasło i szyfrujemy ponownie, tym razem używając kluczy publicznych wybranych użytkowników, a rezultat kierujemy do wymienionego w /etc/fstab pliku userkey-crypto.gpg. Każde z nazwisk podajemy w cudzysłowach następujących po fladze -r. Dane te muszą zgadzać się z opisem kluczy. Wygląda to tak: S S gpg -e -a –always-trust -r "Charlie Root" -r "Jas Kowalski" -r "Joanna Malinowska" > S gpg --decrypt < /root/masterkey-crypto.gpg | /etc/userkey-crypto.gpg Od tej chwili każdy z użytkowników wskazanych przez administratora może montować partycję hdaN korzystając z własnego klucza prywatnego i hasła GnuPG. Aby zwiększyć bezpieczeństwo, należałoby jeszcze skłonić użytkowników, aby nie przechowywali klucza pry- 35 bezpieczeństwo watnego GnuPG na dysku tego komputera. W przeciwnym przypadku ochrona będzie na tyle skuteczna, na ile hasła okażą się odporne na atak. Niestety, w znacznym stopniu zmniejsza to funkcjonalność tego rozwiązania. Co z partycją wymiany? Zagrożenie dla poufności danych i prywatności może także pochodzić ze strony partycji wymiany, na której system tymczasowo zapisuje dane. Jest bowiem prawdopodobne, że podczas pracy uprawnionego użytkownika, gdy muszą być one dostępne w formie niezaszyfrowanej, system odłoży je na partycji swap. Cały wysiłek włożony w instalację i skrupulatne używanie zabezpieczeń kryptograficznych może wtedy łatwo pójść na marne, chyba że... zaszyfrujemy także swap. Moduł Loop-AES pozwala na to, o ile nasz system jest wyposażony w jądro z serii 2.4 lub nowsze. Decydując się na szyfrowanie partycji wymiany powinniśmy pamiętać, że obarczenie systemu, zwłaszcza mocno obciążonego, operacjami kryptograficznymi może zmniejszyć jego wydajność. Najpierw wyłączamy aktywne partycje wymiany poleceniem swapoff -a. Następnie modyfikujemy wpisy odnoszące się do partycji wymiany w /etc/fstab: /dev/hdaN none swap sw,loop=/dev/loopX,encryption=AES128 0 0 Ten prosty zabieg pozwala nam ponownie uaktywnić swap. Robimy to poleceniem swapon -a, które przywracając jego działanie użyje losowego klucza i wykona komendę mkswap na wskazanym urządzeniu loop. Jeżeli podczas ponownego uruchomienia systemu pojawią się komunikaty o błędzie podobne do poniższego: insmod: modprobe: cannot create /var/log/ksymoops/ 20031012.log Read-only file system insmod: /lib/modules/2.4.22-grsec/block/loop.o: cannot create /var/log/ksymoops/20031012.log Read-only file system to dzieje się tak dlatego, że system aktywujący partycję wymiany jednocześnie ładuje moduł loop, a modprobe próbuje zapisać informację o tym w logach, choć partycja, na której się znajdują, nie została jeszcze zamontowana do zapisu. Autor dokumentacji modułu Loop-AES proponuje w celu pozbycia się tego błędu usunąć katalog /var/log/ksymoops. Bez tego katalogu modprobe nie podejmie próby logowania komunikatu o ładowaniu modułu. Bardziej elegancki, choć zapewne trudniejszy w realizacji, wydaje się pomysł modyfikacji skryptów startowych w taki sposób, aby partycja wymiany była aktywowana nieco później, gdy możliwe już będzie zapisywanie logów. Istniejąca partycja z danymi Niewykluczone, że w praktyce natkniemy się na dość prozaiczny kłopot: planujemy zaszyfrować partycję, 36 Rysunek 5. Szyfrowanie istniejącej partycji, na której przechowujemy już dane z której już korzystamy i którą zdążyliśmy zapełnić ważnymi danymi. Jak to zrobić nie tracąc danych? Jeżeli reorganizacja dysku nie wchodzi w grę, a z jakichś powodów nie chcemy jej zastępować dużym plikiem, z pomocą przyjdzie nam program Aespipe, stanowiący niewielki, lecz użyteczny dodatek do Loop-AES (do jego kompilacji wystarczy triada poleceń ./configure ; make ; make install). Jak podpowiada nazwa, Aespipe potrafi szyfrować dane pobierane na wejściu. Pomysł jego wykorzystania w tym przypadku polega na odczytaniu zawartości partycji za pomocą dd, zaszyfrowaniu "w locie" (to właśnie rola Aespipe) i zapisaniu w tym samym miejscu dysku. Operacja jest nieco ryzykowna, więc lepiej zawczasu przygotować kopię zapasową całej partycji. Zaczynamy od jej odmontowania. W kolejnym kroku wpisujemy poniższe polecenie: dd if=/dev/hdaN bs=64k | aespipe -e AES256 -T | S dd of=/dev/hdaN bs=64k conv=notrunc Jak widać, dd odczytuje partycję i przekazuje wyjście do aespipe, którego zadaniem jest zaszyfrowanie tego, co otrzyma przy użyciu wybranego algorytmu. Wynik z kolei wędruje do ponownie uruchomionego dd w celu zapisania na urządzeniu, tym razem już w postaci zaszyfrowanej. Podobnie jak we wcześniejszych przykładach dotyczących losetup, flaga -e pozwala nam wybrać algorytm szyfrujący, a -T powoduje, że Aespipe rozpoczynając działanie zapyta dwukrotnie o hasło, którego chcemy użyć. styczeń 2004 loop-aes Wariant dla ambitnych polega na wzmocnieniu zabezpieczeń przez użycie zarodka hasła i iterowanym szyfrowaniu skrótu hasła. Wymaga on zastosowania znanych już z programu losetup opcji -S (dodanie wygenerowanego zawczasu zarodka do hasła) oraz -C (liczba wskazująca, ile tysięcy razy szyfrowany jest skrót hasła). Ciąg otrzymany z polecenia (tu: qwSIxpGIi6pZNAvj0e7w): head -c 15 /dev/urandom | uuencode -m - | awk 'NR == 2 S {print}' zostanie użyty w kolejnym kroku jako zarodek hasła: dd if=/dev/hdaN bs=64k | aespipe -e AES256 -T S -S qwSIxpGIi6pZNAvj0e7w -C 100 | dd of=/dev/hda2 S bs=64k conv=notrunc Po zakończeniu operacji edytujemy opcje montowania w /etc/fstab, dodając do linii dotyczącej tej partycji: noauto,loop =/dev/loopX,encryption =AES256 i ewentualnie itercountk=100,pseed = qwSIxpGIi6pZNAvj0e7w, o ile użyliśmy drugiego wariantu. Można również wspomnieć o innym ciekawym zastosowaniu Aespipe, mianowicie szyfrowaniu płyt CD, a ściślej, obrazów przygotowanych za pomocą Mkisofs. Tworzymy je poleceniem: mkisofs -V TAJNE -J -r nazwa_katalogu | aespipe S -e AES256 -T > image.raw Po nagraniu można zamontować krążek w taki sposób: mount -t iso9660 /dev/cdrom /cdrom S -o loop=/dev/loopX,encryption=AES256 Rzecz jasna, dostęp do niego będziemy mieli tylko po podaniu hasła i wyłącznie w systemach wyposażonych w moduł loop-AES. Wydajność Na koniec załączę kilka słów na temat wydajności. Niewątpliwie, dodatkowe obciążenie komputera operacjami szyfrowania danych „w locie” w mniejszym lub większym stopniu musi wpłynąć na działanie systemu. Trzeba jednak przyznać, że zarówno trafnie wybrany przez autora projektu algorytm szyfrowania, jak i wykorzystanie urządzenia loop, dość skutecznie minimalizują narzut czasowy. Ponadto, jeśli zachowamy umiar, wpływ ten może pozostać niemal niezauważalny. Potwierdzają to doświadczenia autora. Próby przeprowadzane na maszynach z jednym procesorem Pentium 1 GHz lub Athlon 1700 MHz oraz 512 MB RAM, czyli dość typowych, przy jednoczesnym wykorzystaniu dwóch szyfrowanych partycji i jednego szyfrowanego pliku o wielkości 1 GB, prowadzą do wniosku, że komfort pracy nie zmniejsza się w istotny www.linux.com.pl sposób (oczywiście, to tylko subiektywna ocena). Jak się wydaje, najbardziej optymalne z punktu widzenia wydajności jest szyfrowanie fizycznej partycji dysku. W przypadku komputerów starych i powolnych albo bardzo przeciążonych pozostaje rozważyć użycie opcji lo_nice i lo_prealloc. Pierwsza z nich, o domyślnej wartości -20, pozwala modyfikować priorytet zadań. Można ją zmniejszyć w /etc/modules.conf (np. options loop lo_nice =-5). Druga opcja odpowiada za liczbę 4-kilobajtowych stron pamięci operacyjnej przeznaczanych dla urządzeń /dev/loopX w chwili montowania. Domyślna wartość wynosi 125. Możemy ją zwiększyć lub zmniejszyć globalnie, dopisując do /etc/modules.conf np. options loop lo_prealloc =200. Możemy również zróżnicować wielkość RAM-u prealokowaną przez poszczególne urządzenia: options loop lo_prealloc=100,3,200,4,250. Pierwsza liczba oznacza zmniejszoną wartość domyślną, następne pary liczb nadpisują ją, przeznaczając dla loop3 200 stron pamięci, a dla loop4 250 (składnia dopuszcza co najwyżej cztery takie pary). Uwagi końcowe Starałem się przedstawić zalety omawianych narzędzi możliwie wszechstronnie. Nie zamykam przy tym oczu na wady loop-AES. Zalicza się do nich zwłaszcza uciążliwość dodatkowych zabiegów związanych z kompilacją i instalacją niezbędnych binariów, co gorsza, pociągająca za sobą ingerencję w integralność systemu pakietowego. Sądzę jednak, że korzyści warte są podejmowania tego wysiłku. Jeśli Czytelnik nie czuje się w pełni przekonany o pożytkach płynących ze stosowania zaawansowanej kryptografii, być może samodzielne próby, do których gorąco zachęcam, staną się czynnikiem przesądzającym. W Sieci: • • • • • • • • Strona projektu loop-AES: http://loop-aes.sourceforge.net/projects/loop-aes/ Strona domowa projektu Rijndael: http://www.esat.kuleuven.ac.be/~rijmen/rijndael/ Strona NIST poświęcona AES: http://csrc.nist.gov/CryptoToolkit/aes/rijndael/ Strona entuzjastów algorytmu Rijndael: http://rijndael.com/ Źródła modułu Loop-AES: http://loop-aes.sourceforge.net/loop-AES-latest.tar.bz2 Źródła dodatkowych modułów: http://loop-aes.sourceforge.net/ciphers-latest.tar.bz2 Źródła Aespipe: http://loop-aes.sourceforge.net/aespipe-latest.tar.bz2 Źródła Util-linux: ftp://ftp.kernel.org/pub/linux/utils/util-linux/util-linux2.12pre.tar.bz2 37 używaną tylko przez zaufane osoby. że włączymy jedynie Non-executable user stack area.2. Proces instalacyjny dla każdej innej wersji przebiega analogicznie. PHP) oraz różnymi aspektami bezpieczeństwa systemów komputerowych. Pakiety z jądrami dostarczane wraz z dystrybucjami często zawierają dodatkowe zmiany wprowadzone przez programistów zajmujących się daną dystrybucją i mogą wystąpić O autorze: Autor jest komputerowym hobbystą.4. Perl.x oraz 2.com. zaleca się zaznaczenie wszystkich dodanych opcji.4. Kontakt z autorem: autorzy@linux. ponieważ pozwalają one m. podział uprawnień. Poprawka wprowadza m. Początkowo Openwall powstał jako poprawka dla jąder z serii 2. buffer overflow) w ProFTPd 1. takich jak Owl (dystrybucja Linuksa) czy John the Ripper (znany program do łamania haseł).bezpieczeństwo Wzmacniamy jądro: Openwall i GrSecurity Michał Miszewski J ak wiadomo.pl.gz. istotnych dla bezpiecznego funkcjonowania systemu. GrSecurity GrSecurity powstało jako przeniesienie poprawki Openwall dla jąder z gałęzi 2.in. za większość mechanizmów bezpieczeństwa odpowiedzialne jest jądro systemu.in. Linuksem zajmuje się od 3 lat.22-ow1. Opcja ta zabezpieczy nas przed ewentualnymi próbami wykonania kodu exploita dla programu przyjmującego połączenia z zewnątrz.in.4. przydzielanie pamięci oraz wiele innych funkcji. Rozpakowujemy archiwa w katalogu /usr/src. Następnie pobieramy pakiet Openwall z oficjalnej strony projektu. wystarczy. które na stacji roboczej raczej nie będą mieć miejsca. ograniczenia w dostępie do systemu plików /proc oraz katalogów z flagą +t.2. Znajdują się w nim rozszerzenia oferowane przez Openwall. Pozostałe zabezpieczenia chronią przed atakami lokalnymi.4. Instalacja Instalację łatki przedstawię na przykładzie jądra 2.4.7. Od niedawna rozwijana jest także wersja dla jąder z gałęzi 2. make menu config badź make xconfig w środowisku X Window). wchodzimy do katalogu ze źródłami jądra systemowego i instalujemy poprawkę wpisując: patch -p1 < /usr/src/linux-2. wśród standardowych sekcji powinno pojawić się dodatkowe menu „Security options”. Przykładem może być luka typu przepełnienie bufora (ang. Warto zainstalować jedno z opisywanych tu rozwiązań. W naszym przypadku będzie to plik linux2. w skrócie ACL).22-ow1/linux-2. Zapewnia ono prawidłowe działanie procesów. 38 Rysunek 1. celem GrSecurity jest wprowadzenie dodatkowych zabezpieczeń jądra systemowego.22-ow1. Łatka rozwijana jest przez Bradleya Spenglera.x. Jeśli chcemy zabezpieczyć stację roboczą. Interesuje się programowaniem (C. gdy łatka go poprawiająca nie jest jeszcze dostępna.x. Te standardowe mechanizmy bezpieczeństwa można ulepszyć przy użyciu wielofunkcyjnych poprawek nakładanych na jądro systemowe. Openwall Autorem tej łatki zwiększającej bezpieczeństwo jądra jest Solar Designer. W przypadku. Gdy włączymy konfigurator jądra (make config. gdy stosujemy poprawkę na serwerze. na utrudnienie włamywaczowi wykorzystania nowoodkrytego błędu. na przydzielanie styczeń 2004 . zabezpieczenia przed atakami typu przepełnienie bufora.4. twórca wielu rozwiązań dotyczących bezpieczeństwa.tar.0. Najpierw ściągamy „czyste” źródła jądra. Przedstawię dwie z nich: Openwall oraz bardziej od niego rozbudowany GrSecurity. Konfiguracja jądra z Openwall (choć nie muszą) problemy integracji z łatką Openwall. Serwery z zainstalowanym GrSecurity lub Openwall nie były wrażliwe na atak wykorzystujący ten błąd. z którego korzysta wielu użytkowników. Do najważniejszych z nich należą listy kontroli dostępu (Access Control Lists. Pozwalają one m.22.diff. Tak jak w przypadku wcześniej omawianego Openwalla. W ten sposób na pewno nie stracimy kompatybilności z używanymi programami i nie nastąpią odczuwalne zmiany w działaniu systemu. które na pewno nie będą powodowały niekompatybilności z nietypowym oprogramowaniem. W menu konfiguracyjnym jądra powinna pojawić się sekcja GrSecurity. Zabezpieczy to system przed możliwością zapełnienia całej wolnej pamięci. które po wykonaniu uprzywilejowanych operacji zmieniają swój UID na UID użytkownika. Enforce RLIMIT_NPROC on execve(2) – jądro umożliwia ustalenie limitu ilości procesów dla użytkownika poprzez wywołanie funkcji setrlimit(). w którym wielu użytkowników ma dostęp do powłoki systemowej. trudniejsze do odgadnięcia numery sekwencyjne pakietów IP oraz logowanie istotnych operacji. Restricted /proc – ograniczenie dostępu do systemu plików /proc. użytkownicy inni niż root będą mogli zobaczyć jedynie listę własnych procesów. Jeśli posiadamy demony pracujące w chroot jail. Dmesg restriction oraz Randomized PIDs (sekcja Executable Protections). Przewidując nazwę pliku tymczasowego tworzonego przez proces z SUID-em. więc zaznaczenie tej opcji nie zwalnia administratora z konieczności aktualizowania niezabezpieczonych programów – jest to jedynie dodatkowa warstwa zabezpieczeń. na który wskazuje takie dowiązanie. aby inetd pracował z GID 10 (zazwyczaj www. Polegają one na wprowadzeniu do programu nadmiernej ilości danych i nadpisaniu adresu zwrotnego aktualnie działającej funkcji. jednak kosztem utraty zgodności z niektórymi programami. co nie zalicza ich do tego limitu. możemy im tego zabronić zaznaczając Trusted path execution. Stopień średni (medium) znacznie zwiększa bezpieczeństwo. Nie stanowi to dużego zagrożenia. Po wkompilowaniu tej opcji. Prowadzi to do wykonania wprowadzonego kodu z uprawnieniami posiadanymi przez program. których jest właścicielem. co pozwala na ominięcie ograniczenia.12-2. Po zaznaczeniu tej opcji. Pliki w takich katalogach mogą tworzyć wszyscy użytkownicy. utrudni to próby wykonania exploita dla aplikacji przyjmujących połączenia 39 . grupa wheel ). koniecznie zaznaczmy w Filesystem Protections opcję Proc restrictions. ponieważ UID mogą zmieniać tylko procesy uprzywilejowane. Jeśli administrujemy serwerem. Po jej zaznaczeniu użytkownik będzie mógł zapisywać dane tylko do tych kolejek. możliwe jest przekroczenie ustalonego wcześniej limitu. Rozwiązanie to nie zapewnia jednak ochrony przed wykorzystaniem niezabezpieczonych buforów do przerywania pracy aplikacji. lecz każdy może modyfikować i kasować tylko te pliki. Niestety limit ten jest sprawdzany tylko podczas wywoływania przez procesy funkcji fork(). zabezpieczenia przed modyfikacją pamięci i atakami typu przepełnienie bufora. aby użytkownicy włączali własne programy i skrypty.com. których jest właścicielem. Funkcja fork() jest w nich zazwyczaj wywoływana przed zmianą UID. Niewykonywalny stos dodawany przez Openwall uniemożliwia przeprowadzenie większości tego typu ataków.4. Wymagane jest. Jest to zabezpieczenie przed atakami polegającymi na przepełnieniu bufora (ang. z której możemy wybrać stopień zabezpieczeń (Security level ). takich jak pliki czy komputery w sieci.patch. Restricted links in /tmp – opcja wprowadza dodatkowe zabezpieczenia katalogów z atrybutem +t (sticky bit). Istnieją ataki polegające na stworzeniu w katalogu /tmp dowiązania do pliku istotnego z punktu widzenia bezpieczeństwa (np. Restricted FIFOs in /tmp – opcja wprowadza dodatkowe restrykcje dotyczące kolejek FIFO w katalogach z atrybutem i blokowanie konkretnym procesom dostępu do różnych zasobów. Z tego samego powodu warto także włączyć opcje Enforce RLIMIT_NPROC on execs. Jądro pozwala na ustalenie limitu pamięci wykorzystywanej przez jeden proces. Destroy shared memory segments not in use – usuwanie nie używanych fragmentów pamięci dzielonej. /etc/passwd) i nadaniu mu odpowiedniej nazwy. Instalując GrSecurity na stacji roboczej. Typowym katalogiem tego typu jest /tmp. włamywacz jest w stanie spowodować nadpisanie pliku. Użytkownik i tak nie mógłby później skasować takich dowiązań. Po rozpakowaniu źródeł jądra i łatki GrSecurity do katalogu /usr/src. buffer overflow).linux. Można także wybrać opcję customized i samemu zaznaczyć te funkcje. Zaznaczenie tej opcji zapobiega takim sytuacjom. które uznamy za przydatne. Tak jak w przypadku Openwall. jądro będzie usuwało segmenty pamięci dzielonej. nakładamy poprawkę poleceniem patch -p1 < grsecurity-1. Dodatkowo opcja ta uniemożliwia korzystanie z polecenia dmesg.9. gdy korzystające z nich procesy zakończą działanie. Nie będą mieć także dostępu do listy połączeń sieciowych (netstat). ale segmenty pamięci dzielonej mogą istnieć bez przypisanego procesu. Wybierając wysoki poziom zabezpieczeń (high). Ponadto. GrSecurity wprowadza dodatkowe restrykcje dla procesów pracujących w środowisku chroot. ale ma to znaczenie w przypadku programów SUID/SGID. Utrudni to próby przeprowadzania części ataków lokalnych. wystarczy. włączamy tylko te opcje. Jeśli proces zmieni swój UID. zachowując zgodność z większością programów.openwall i grsecurity Opcje Openwall: • • • Non-executable user stack area – niewykonywalny obszar stosu.pl • • • +t. że zaznaczymy Enforce non-executable pages. Opisywana opcja nie pozwala na tworzenie w takich katalogach twardych dowiązań do plików. do których nie ma się uprawnień. a w konsekwencji do naruszenia bezpieczeństwa systemu. potrzebujemy „czystych” źródeł jądra systemowego i samego pakietu GrSecurity. Linking restrictions oraz FIFO restrictions. Jeśli nie chcemy. Wybierając niski (low) poziom bezpieczeństwa. powinniśmy rozważyć założenie części lub wszystkich dodatkowych zabezpieczeń chroot-a (Chroot jail restrictions). Instalacja Podobnie jak w przypadku łatki Openwall. włączamy większość opcji.22. przy opcjach wyboru systemu powinna pojawić się nowa opcja. make bzImage. • initrd /boot/initrd-bezpieczny. Musimy jeszcze tylko dodać opcję wyboru naszego bezpiecznego jądra w ustawieniach menedżera uruchamiania. Konfiguracja jądra z GrSecurity nie chcemy ryzykować unieruchomienia systemu. co polepszy jakość liczb losowych używanych m. takie jak losowe numery PID. Jest łatwa w konfiguracji i z jej instalacją powinien poradzić sobie każdy.org/ styczeń 2004 . takich jak w pełni losowe początkowe numery sekwencyjne pakietów oraz Larger entropy pools. w katalogu /usr/src/katalog_ze_źródłami_ jądra/arch/i386/boot/ otrzymamy plik bzImage. przez które część popularnych programów przestanie działać. Bardziej zaawansowani użytkownicy oraz administratorzy większych serwerów powinni wybrać GrSecurity. W tym celu wpisujemy: cp /usr/src/katalog_ze_źródłami_jądra/arch/i386/boot/ /boot/bezpieczne.in. w kryptografii. nowy plik z jądrem nagrywamy do katalogu /boot zmieniając jego nazwę np. Kompilacja Po nałożeniu na jądro jednej z łatek. takich jak próby przekroczenia limitów.org/ Strona projektu Openwall: http://www. Ich możliwości powinien poznać każdy administrator. trzeba je zablokować umieszczając wartość „1” w pliku grsec_lock. Edytujemy w tym celu plik /etc/ grub. – miejsce na dysku. • kernel /boot/bezpieczny ro root=LABEL=/ hdc=ide-scsi – ścieżka do naszego jądra. tworzenia dowiązań i kolejek FIFO w katalogach z flagą +t oraz dodatkowych zabezpieczeń chroot. Po wprowadzeniu zmian.openwall.grsecurity. który jest naszym właśnie skompilowanym jądrem systemowym. takie jak losowe porty źródłowe przy połączeniach. Skrypty te powinny być dostępne tylko do odczytu. Podsumowanie Osobom chcącym dodatkowo zabezpieczyć swoją stację roboczą z powodzeniem powinna wystarczyć łatka Openwall. make modules_install. make modules. Proces ten przeprowadzamy w standardowy sposób. Nie zaszkodzi wkompilować także części zabezpieczeń z sekcji Network protections. Network Protections – dodatkowe zabezpieczenia TCP/IP. W Sieci: • • • Strona domowa projektu GrSecurity: http://www.conf dodając linijki: bzImge • • – nazwa naszego nowego jądra. Jeśli Wybrane opcje GrSecurity: • • • • • • • 40 Address Space Protection – sekcja ta zawiera opcje utrudniające przeprowadzanie ataków typu przepełnienie bufora oraz modyfikowanie pracującego jądra systemowego (zabezpieczenia te polegają między innymi na wprowadzeniu niewykonywalnych stron pamięci oraz losowym położeniu stosu).com/linux/ Strona systemu Linux: http://www. Sysctl support – po zaznaczeniu tej opcji administrator może konfigurować GrSecurity umieszczając wartości „1” lub „0” w specjalnych plikach w /proc/sys/kernel/ grsecurity/.img – ścieżka do pliku initrd.. który poważnie traktuje sprawy bezpieczeństwa swojego systemu. make clean. Filesystem Protections – opcje dotyczące ograniczeń dostępu do /proc. ACL options – opcje konfiguracyjne list kontroli dostępu. Udajemy się więc do katalogu /usr/src/katalog_ze_źródłami_jądra/ i wykonujemy polecenia: make dep. Rysunek 2. Przykładem jest opcja Disable privileged I/O – uniemożliwia ona uruchomienie serwera X Window.dep dla skompilowanych modułów. a root nie może mieć możliwości dodawania modułów jądra oraz przeprowadzania bezpośrednich operacji I/O. na bezpieczne. lepszy algorytm wybierania początkowego numeru sekwencyjnego pakietów IP czy ograniczenie praw do tworzenia gniazdek dla niektórych użytkowników. blokada dostępu do dmesg oraz restrykcje w uruchamianiu plików wykonywalnych.kernel. gdzie znajduje się instalacja naszego Linuksa. nazwy uruchamianych procesów itp. Nie warto natomiast instalować zabezpieczeń. title Bezpieczny root (hd0. Jeśli wszystko poszło po naszej myśli. należy skompilować jądro. Executable Protections – opcje związane z procesami. Linie konfigurujące GrSecurity muszą znajdować się w skryptach startowych systemu. zmiany katalogów. Po jej wybraniu będziemy mogli cieszyć się nowym jądrem. Łatki GrSecurity i Openwall pozwalają znaczenie ulepszyć mechanizmy zabezpieczeń w jądrze systemowym. wspólny dla każdej z dystrybucji Linuksa. kto potrafi skompilować jądro systemowe.bezpieczeństwo z zewnątrz. Pozostaje jeszcze wydać polecenie depmod -a. które utworzy plik modules. Kernel Auditing – opcje dotyczące logowania różnych zdarzeń w systemie.1) Po ponownym uruchomieniu komputera. . DHCP. Po zalogowaniu do systemu. Apache. dwustronnym krążku DVD.1. jak i tekstowym.0: • • • • • • • • • • Jądro 2.21. Można go w bardzo prosty sposób pobrać dzięki programowi YOU (YaST Online Update). możemy wyposażyć YaST-a tylko w te moduły.in. Dla bardziej zaawansowanych użytkowników. 42 Rysunek 1. które są nam naprawdę potrzebne. iż firma SuSE przygotowała dla nich pakiet RPM ze sterownikami. wsparcie dla Ipv6. Pierwsze uruchomienie Test systemu przeprowadzono na komputerze AMD Athlon 1200 z 384 MB RAM.2.2. firma SuSE przygotowała wiele opcji.1. że w przyszłej wersji SuSE ulegnie to zmianie. Właścicieli kart graficznych opartych o chipsety Nvidia z pewnością ucieszy fakt. Do testów otrzymaliśmy najnowszą. Pomoże on nam w konfiguracji wszystkich.47.1. oznaczoną numerkiem 9.1. Nie inaczej jest w SuSE.4. Sun Java 1. konfiguracji środowiska X Window oraz zarządzania popularnymi serwerami (m. w trybie graficznym brak jest obsługi języka polskiego.4 i GNOME 2. KDE 3. Dzięki modularnej budowie. Miejmy nadzieję. w moduły do konfiguracji sprzętu. Apache i Samba).3.4.2. System bez problemu wykrył wszystkie urządzenia i poprawnie je skonfigurował.1. Narzędzie administracyjne SuSE wyposażone zostało m. Przemawia za nią ogromna ilość dołączonego oprogramowania. Apache 2. co pozwoli początkującemu użytkownikowi na proste i szybkie zainstalowanie systemu.1. SuSE Linux 9. Samba 2. W pudełku znajdziemy również 2 grube podręczniki w języku angielskim. Dla posiadaczy słabszych komputerów przygotowano również tryb tekstowy.1 Digital. najlepiej zintegrowanym z narzędziami administracyjnymi producenta dystrybucji. Instalacja Współczesne dystrybucje Linuksa w znacznej większości przyzwyczaiły nas do prostej instalacji.4. YaST może pracować zarówno w trybie graficznym. instalacji/ usuwania/aktualizacji oprogramowania. GCC 3.testy SuSE Linux 9. Niestety.in.0. RPM 4. które od lat jest w SuSE standardowym środowiskiem pracy. wyposażoną w ponad 4000 pakietów dostępnych na pięciu dystrybucyjnych płytach CD bądź zebranych na jednym. Całość instalacji przebiega w estetycznym środowisku graficznym. Glibc 2. Samba.0. Obok wersji Professional.8a. domyślny pulpit SuSE prezentuje się najlepiej ze wszystkich znanych mi dystrybucji Linuksa. Bez cienia wątpliwości mogę powiedzieć.2. wersję tego systemu. Instalacja ogranicza się do kilku kliknięć myszką.0 Professional Piotr Truszkowski S uSE Linux jest jedną z najpopularniejszych komercyjnych wersji systemu Linux na świecie. styczeń 2004 . nawet najdrobniejszych ustawień dotyczących naszego systemu. dostępne są także Personal i Update. kartą graficzną opartą na chipie Nvidia GeForce2 i kartą dźwiękową Sound Blaster Live! 5.0 Professional YaST Narzędziem administracyjnym w systemie SuSE Linux jest program YaST. dobrej jakości pomoc techniczna oraz uznanie. TFTP. że pod względem estetycznym.3. Ten drugi z pewnością Podstawowe składniki SuSE Linux 9. które pozwolą w najdrobniejszych detalach dopasować system do swoich potrzeb. jakim cieszy się wśród użytkowników. które różnią się ilością dołączonego oprogramowania i podręczników. powita nas środowisko graficzne KDE 3. nowe moduły programu YaST: DNS. na które odpowiedziałem klikając „Accept” bądź „Repair”. zawierający definicje dostępnych systemów plików. SuSE System Doctor obecny jest na pierwszej płytce CD. Java i wtyczki do obsługi multimediów na stronach WWW (Flash player. pozbyłem się wpisów GRUB-a obecnych w sektorze MBR. jak i 64 bitowymi. a ja nie straciłem żadnych danych. Real Media). m.0 Professional można polecić każdemu. kto ceni sobie stabilne i łatwe w obsłudze środowisko pracy. zaawansowane zarządzanie pakietami. kasując po drodze kilkanaście pakietów nie zwracając uwagi na obecne miedzy nimi zależności.0 Professional od innych dystrybucji jest fakt. W trakcie przeprowadzania testów system – mimo naprawdę dużych obciążeń – ani razu się nie zawiesił. stabilności i innowacji. Minusy: • • brak instalacji i podręczników w języku polskim. Jest ono niesamowitym ułatwieniem dla początkujących i zaawansowanych użytkowników. iż jądra dystrybucyjne przystosowane są zarówno do pracy z procesorami 32 bitowymi.suse linux 9. jak przed jego zepsuciem. Całość sprawia wrażenie bardzo spójnej i przemyślanej konstrukcji. stabilność. co się zepsuło.21. Zrestartowałem system. GNOME w wersji 2. SuSE System Doctor. YaST2 przyda się przy zdalnej administracji systemem.2. W trakcie naprawy program zadał mi kilka pytań. Kossutha 7 40-844 Katowice Ceny (brutto): • SuSE 9 Professional: 489 PLN • SuSE 9 Personal: 296 PLN • SuSE 9 Update: 296 PLN Plusy: • • • • • • • • • • • zmniejszanie/zwiększanie wielkości partycji NTFS. Niemcy Dystrybutor (PL): SuPLIX Systemy komputerowe ul.in. jak i Intel. http://www. obsługa wielu systemów plików (w tym NTFS). punkty montowania partycji. łatwość obsługi i administracji. Aby go uruchomić. Do wyboru będziemy mieli kilkanaście opcji. instalujące się w zależności od posiadanego przez nas procesora – mamy wersję zoptymalizowaną zarówno dla procesorów firmy AMD. sprawdzenie wpisów w pliku fstab. SuSE przygotowało dwie wersje jądra 2. innowacji dostępnych w zbliżającym się jądrze 2. innowacje.linux.suplix. Domyślny pulpit SuSE Linux 9. Szybkość. SuSE Linux 9. produkowanymi przez firmę AMD. wykasowałem połowę plików systemowych oraz zepsułem ustawienia środowiska X Window.0 Professional Rysunek 3. dystrybutorowi systemu operacyjnego SuSE Linux. Wybrałem wszystkie testy. bardzo dobra detekcja sprzętu. Wszystkie pakiety dostępne w systemie zostały zoptymalizowane dla procesorów Pentium. Ciekawą rzeczą jest dostępny w systemie SuSE System Doctor. za udostępnienie egzemplarza do testów. Cechą wyróżniającą SuSE 9.4. ogromna ilość oprogramowania dostępnego wraz z dystrybucją. www.6. należy wystartować komputer z owej płytki i z opcji instalacyjnych wybrać „Repair system”. analizę bazy pakietów oraz wiele innych. szybkość działania. Po zakończeniu naprawy mój system działał tak samo. Nie uruchomimy więc tej wersji na komputerach klasy 386 i 486. Postanowiłem na własnej skórze przekonać się o skuteczności jego działania. Polecamy. którzy nie mają czasu zastanawiać się nad tym.com.pl Dziękujemy firmie SuPLIX.pl/ 43 . Jego funkcja polega na naprawie uszkodzonego na różne sposoby systemu. a chcą to po prostu naprawić. innowacje SuSE zawsze należało do czołówki pod względem szybkości. Zaaplikowano w nich także wiele Producent: SuSE Gmbh. obsługa architektury 64 bitowej (AMD). W tym celu skasowałem plik fstab.0 professional Rysunek 2. Za to narzędzie firmie SuSE należy się ogromny plus. sprawdzenie ustawień menedżera uruchamiania. Minęły już czasy. Sprawdzamy na niej. Oczywiście znów korzystając z szyfrowanego kanału. prawie – najpierw dojechałem do mety) przełączyłem się na mój Multi GNOME Terminal. Chciałbym jednak zwrócić uwagę na pewną sprawę. Obecnie administruje siecią blokową złożoną z dziesięciu komputerów. a równocześnie wszystkim rozmówcom wydawało się. Korzystając z okazji sprawdziłem jeszcze. W ten sposób mógł nadal rozmawiać z użyciem swojego ulubionego mIRC-a. Po chwili otrzymałem od niego kolejnego SMS-a. Oczywiście do połączenia wykorzystałem OpenSSH. Powiadamiał mnie w nim. że ktoś podsłucha nasze hasło i włamie się nam na konto. 44 Rysunek 1. od razu (no. nie mogłem się powstrzymać. aby w systemie była zainstalowana najbardziej aktualna wersja OpenSSH.pl. Ponieważ bardzo go lubię. W niniejszym artykule omówimy instalację. Wysłałem do niego wiadomość z nazwą użytkownika i hasłem. z którego mógłby wchodzić na IRC bez ograniczeń (bez flagi restricted ). Prosił ze łzami (wirtualnymi) w oczach o udostępnienie mu jakiegoś konta.com.1). narażonych na ataki programów. Numeracja wersji Zaczynamy od uruchomienia przeglądarki internetowej (przykładowo Mozilla) oraz otwarcia witryny http://predict. jak OpenSSH. Zalogowałem się na konto root. Instalacja serwera i klienta Takie oprogramowanie.pl/openssh/. Jeśli specjalnie nie wykluczyliśmy pakietów z instalacji. Standardem w łączeniu się ze zdalnymi komputerami jest obecnie SSH w wersji 2 (Secure SHell.dla początkujących Praca z OpenSSH Piotr Machej W dobie powszechnej dostępności Internetu coraz więcej osób zdaje sobie sprawę z czyhających w nim niebezpieczeństw. aby ktoś mógł podsłuchać moją transmisję. styczeń 2004 . że już utworzył sobie zgrabny tunel (korzystając z OpenSSH). Z Linuksem (i ogólnie systemami uniksowymi) ma styczność od wielu lat. stoi bez problemów już drugi miesiąc od ostatniego wyłączenia prądu). Oczywiście flagi restricted też już nie miał. aby zalogować się na serwer stojący na drugim końcu Polski. co ciekawego jest udostępnione w sieci lokalnej podłączonej do zdalnego serwera. Ze względów bezpieczeństwa należy dbać o to. czyli bezpieczna powłoka). czy z serwerem wszystko w porządku (a jakże. że ktoś podsłucha nasze hasło czy przesyłane dane. konfigurację i wykorzystanie programu OpenSSH.chem.edu. A później wróciłem do przerwanego turnieju w Tux Racer. aby nie pobrać ich do siebie. Następnie wybieramy odnośnik "Linux. jaki jest numer najnowszej wersji programu (w chwili pisania artykułu jest to numer 3. która jest zlokalizowanym w Polsce odpowiednikiem strony http: //www. Dzięki niemu możemy logować się na zdalne maszyny i kopiować między nimi pliki bez obawy o to. Na głównej stronie projektu OpenSSH możemy sprawdzić najnowszy numer wersji zalogowany na moim serwerze. Po podaniu hasła przeprowadziłem rutynowe sprawdzenie.7. a nie Telnet – przecież nie pozwolę.com/. gdy można było swobodnie korzystać z Telnetu nie martwiąc się. które zmienił zaraz po zalogowaniu. gdy na komórkę przyszedł SMS od jednego ze znajomych. bezpłatnej i wolnej wersji oprogramowania obsługującego protokół SSH. znajduje się w zasadzie w każdej współczesnej dystrybucji Linuksa.uw. Przykład użycia Grałem właśnie w Tux Racer. a następnie utworzyłem znajomemu konto. Gdy znalazłem (sądząc po nazwie) zestaw mangowych tapet. Spróbujmy więc pobrać i zainstalować najnowszą wersję OpenSSH. biegnący przez mój serwer do serwera IRC. jak również i innych kluczowych.openssh. Kontakt z autorem: autorzy@linux. że jest O autorze: Autor zakończył studia zaoczne na V roku Informatyki na Politechnice Opolskiej. to powinniśmy mieć je już na dysku – wtedy można przejść od razu do rozdziału o konfiguracji. 7.1p2/.d/init.gz). w którym mamy plik ze źródłami programu (w naszym przykładzie jest to plik openssh-3.html.7.i podania hasła użytkownika root./configure --prefix=/usr.d/sshd start.rpm openssh-askpass-gnome-3.pl/pub/OpenBSD/OpenSSH/ portable/ ).i386.d/sshd restart. a następnie sprawdzamy.edu.7. Służy do tego polecenie /etc/rc.src.rpm) wydajemy polecenie rpmbuild --rebuild openssh-3. Wybieramy serwer. a następnie przeprowadzamy instalację OpenSSH poleceniem make install.i386. a zatrzymać za pomocą /etc/rc. że przy pozycji sshd znajduje się gwiazdka. IRIX.7. co spowoduje przeprowadzenie właściwej kompilacji. przeznaczona na systemy inne niż OpenBSD (w tym również dla Linuksa). Jak widać. W dystrybucji Aurox możemy go uruchomić poleceniem /etc/rc.openssh Solaris. Jeśli mamy wątpliwości.7.src.1p2.1p2 -1.1p2-1. Instalacja pakietów Jeśli pobraliśmy pakiety rpm.rpm). Zwykle chcemy.rpm.tar.1p2-1.rpm. Jeśli nie.7.1p2-1.1p2-1. że jest to wersja przenośna. czy ustawienia nam odpowiadają dzimy do katalogu. Możemy również po prostu otworzyć witrynę wpisując adres http: //predict.i386.1p2-1. Jeśli chcemy skorzystać z innych opcji konfiguracyjnych. możemy użyć przykładowo polecenia .1p2-1. Aktualny plik pobieramy na dysk.i386. Wydajemy polecenie su i podajemy hasło użytkownika root.1p21. który odczytaliśmy na głównej stronie (3.linux. więc zaczynamy od wydania polecenia su . z których można pobrać aktualne wersje oprogramowania. W tym celu uruchamiamy polecenie ntsysv i upewniamy się. Wchodzimy do katalogu poleceniem cd openssh-3.rpm.7.7.uw.gz.i386.i386. powinniśmy go zrestartować. Po jej zakończeniu musimy skorzystać z uprawnień użytkownika uprzywilejowanego. 45 .1 są to pliki openssh-3. czy znajduje się na nim aktualna wersja OpenSSH. HP-UX and many more " znajdujący się po lewej stronie pod napisem "For other OS's" (Dla innych systemów operacyjnych).pl/openssh/portable. Użytkownicy dystrybucji Aurox zamiast pobierać wyżej wymieniony plik mogą wejść do podkatalogu rpm/RH90/ i pobrać odpowiednie pakiety rpm (dla wersji 3. openssh-askpass-3.tar.pl Rysunek 2.rpm z podkatalogu rpm/SRPMS/ i samodzielnie go przebudować.7. aby serwer OpenSSH uruchamiał się przy starcie systemu.7. Potrzebujemy do tego uprawnień superużytkownika.edu. Warto też zapoznać się z plikami README i INSTALL umieszczonymi w katalogu ze źródłami./configure --help. plik serwera (sshd ) powinien znajdować się w katalogu /usr/sbin/ lub /usr/local/sbin/ – zależnie od instalacji. openssh-askpass-gnome-3.1p2/ i umieści w nim rozpakowane źródła. Uruchomienie serwera Po zainstalowaniu OpenSSH.1p2-1. Utworzy ono podkatalog o nazwie openssh-3. możemy się z nimi zapoznać wydając polecenie .rpm S openssh-clients-3.7. to powinniśmy zainstalować pakiet rpm-build z drugiej płyty CD dystrybucji Aurox. to zaznaczamy ją i wciskamy OK.7.d/init.rpm S openssh-server-3.com.rpm S rpm -Uvh openssh-3.7.1p2-1.rpm. wywołanym z konta użytkownika root.chem.d/sshd stop.d/init./configure. Teraz możemy wydać polecenie .7. Użytkownicy dystrybucji opartych o inne systemy pakietów mogą samodzielnie skompilować program (w sposób opisany w Ramce Kompilacja) lub pobrać go z wykorzystaniem odpowiednich dla dystrybucji systemów zarządzania pakietami (przykładowo apt-get w Debianie). Jeśli zmieniamy konfigurację programu. wydajemy polecenie tar xvzf openssh-3. Po zakończeniu budowania pakiety zostaną umieszczone w katalogu /usr/src/redhat/RPMS/i386/. możemy jego lokalizację sprawdzić poleceniem which sshd. numer wersji zgadza się z tym. NetBSD.7.1p2-1.icm.7.tar. Jeśli nie mamy w systemie programu rpmbuild./configure należy sprawdzić. FreeBSD. Znajduje się na niej spis serwerów FTP. W chwili pisania artykułu najnowszym plikiem był openssh-3.i386.src. openssh-clients-3.7.1). Następnie wydajemy polecenie make.rpm. który nam odpowiada (ja polecam ftp://sunsite.i386.7.i386. Jeśli chcemy to zmienić.1p2. możemy zainstalować je w systemie.1p2-1. w którym znajdują się pobrane pakiety i wydajemy polecenie: S openssh-askpass-3.gz. Następnie przecho- Kompilacja ze źródeł W katalogu.1p2. openssh-server-3. AIX.7.rpm Jeśli wolimy zbudować pakiety samodzielnie. www.i386. w katalogu z pakietem źródłowym (w naszym przykładzie z plikiem openssh-3.7. Ewentualnie możemy pobrać pakiet openssh3. Domyślnie OpenSSH instaluje się w podkatalogach katalogu /usr/local/ (dokładne ścieżki zostaną wypisane na ekranie). Po wykonaniu .1p2-1. Znajdująca się po nim literka p oznacza. na jakim porcie serwer nasłuchuje przychodzących połączeń (domyślnie ustawiona na wartość 22). jak poradzić sobie inaczej. Dla każdej opcji pobierana jest tylko pierwsza napotkana wartość (pozostałe są ignorowane). A jeśli dodatkowo użytkownik ustawi opcję w linii komend. Rysunek 3. na których serwer nasłuchuje przychodzących połączeń (domyślnie nasłuch prowadzony jest na wszystkich dostępnych adresach). Pomimo tego. gdyż utrudnia to zadanie ewentualnemu włamywaczowi (najpierw musi zdobyć konto zwykłego użytkownika). Są to opcje posiadające wartości domyślne. z którym się łączymy. że użytkownik root nie może zalogować się korzystając z hasła systemowego (nadal jednak może użyć klucza publicznego). każdy z użytkowników może utworzyć własny plik konfiguracyjny o nazwie ~/. Jeśli nie wiemy. restartować go poleceniem killall -HUP sshd. Opcje w pliku konfiguracyjnym mogą być pogrupowane w zależności od komputera. Oprócz wartości yes i no są dostępne jeszcze without-password oraz forcedcommands-only. warto dostosować je do własnych potrzeb. PermitEmptyPasswords – tę opcję lepiej pozostawić ustawioną na no. którego dotyczą – różne opcje dla każdego komputera.1). PasswordAuthentication – pozwala na autoryzację z użyciem hasła systemowego (domyślnie ustawiona na yes (tak)). ListenAddress – wskazuje adresy. LoginGraceTime – wyznacza czas. Podstawowym plikiem jest /etc/ssh/sshd_config. Zawiera on ustawienia wspólne dla wszystkich użytkowników. po jakim serwer zrywa połączenie. Głównym plikiem konfiguracyjnym jest plik /etc/ssh/ ssh_config. który zawiera klucze publiczne osób mogących logować się na konto. Wielu z nich nie zdaje sobie jednak sprawy z ilości dostępnych opcji. PermitRootLogin – określa. Konfiguracja klienta Domyślne opcje konfiguracyjne klienta są zwykle zadowalające dla większości użytkowników. Wartość without-password sprawia. PuTTY jest bardzo wygodnym klientem SSH pod Windows – pozwala nawet korzystać z klucza prywatnego Powstaje pytanie. jaki lubi najbardziej).ssh/config. Protocol – określa. Bardziej dociekliwym Czytelnikom polecam lekturę podręcznika systemowego (man sshd_config). jednak dopuszcza tylko wykonanie komendy podanej w wywołaniu OpenSSH. Kolejność pobierania danych przez OpenSSH jest następująca: • parametry podane w linii komend. należy usunąć znak # z początku wybranej linii i zmienić wartość opcji. PubkeyAuthentication – pozwala na autoryzację z użyciem klucza publicznego (domyślnie ustawiona na yes (tak)).ssh/config). AuthorizedKeysFile – wskazuje plik w katalogu domowym użytkownika. to zostanie jej przypisana pierwsza napotkana wartość. • opcje zawarte w pliku konfiguracyjnym użytkownika (~/. które opcje zmieniać. Każda taka sekcja zaczyna się od linii o treści: styczeń 2004 . że serwer działa dobrze nawet na domyślnych opcjach. jeśli użytkownik nie zdążył się zalogować poprawnie (domyślnie wynosi 2 minuty. a ustawienie tej opcji na 0 wyłącza limit czasu). to wszystkie jej wystąpienia w plikach konfiguracyjnych zostaną zignorowane. Subsystem sftp – konfiguruje dodatkową usługę bezpiecznego transferu plików (SFTP). Większość opcji w tym pliku ujęta jest w komentarze (na początku linii znajduje się znak #).ssh/config oraz dodać opcje podczas wpisywania polecenia w linii komend.dla początkujących W innych dystrybucjach skrypty te mogą być w innych katalogach lub może ich w ogóle nie być. • opcje zawarte w systemowym pliku konfiguracyjnym (/etc/ssh/ssh_config). Jeśli więc jakaś opcja znajdzie się w kilku miejscach pliku ~/. a wyłączać poprzez killall sshd. dzięki czemu nie będzie możliwe logowanie się na konta z pustymi hasłami. Z kolei forced-commands-only pozwala mu na zautoryzowanie się z pomocą klucza publicznego. Wybrane opcje konfiguracyjne serwera: • • • • • • • • • • 46 Port – określa. które wersje protokołu SSH są obsługiwane przez serwer (domyślnie obsługiwane są obie. Zalecane jest ustawienie tej opcji na no. Konfiguracja serwera Pliki konfiguracyjne OpenSSH znajdują się w katalogu /etc/ssh/. Oprócz tego. Możemy edytować go naszym ulubionym edytorem tekstowym (jak zwykle preferuję edytor Vim. to możemy uruchamiać serwer poleceniem /usr/sbin/sshd. W ramce wymieniłem wybrane opcje konfiguracyjne. więc opcja przyjmuje wartość 2. czy można logować się bezpośrednio na konto użytkownika root. Jeśli chcemy je zmienić. w którym znajdą opis pozostałych opcji. ale każdy może wybrać taki. mogą skorzystać z jednego z klientów SSH pod Windows. Istotne jest również to. Od tej chwili możemy pracować tak. odcisk palca (fingerprint). Najlepiej po prostu pobrać instalator całości (plik putty-0.linux. np. RSA key fingerprint is 78:49:c7:a5:de:6b:6c:41:e6: 45:22:bd:87:b0:a4:c1.exe – może być inny numer wersji).pl Jest to bardzo wygodny i funkcjonalny program. pojawi się napis podobny do poniższego: The authenticity of host '192. Praca z OpenSSH OpenSSH najczęściej wykorzystujemy do bezpiecznego logowania się na konta na zdalnych serwerach. WinSCP na pierwszy rzut oka bardzo przypomina program Total Commander Host nazwa.exe (klient pozwalający tylko na połączenia z telnetem).serwera Jeśli na zdalnym serwerze mamy taką samą nazwę użytkownika. Dla każdego komputera. W tym celu do opisanych wcześniej sposobów wywołania OpenSSH powinniśmy dopisać polecenie.24 (192.exe. jak na lokalnym. Program ten. którą wpisujemy w linii poleceń podczas uruchamiania OpenSSH. Nawet użytkownicy Linuksa nieraz sięgają po „okienka”. że nazwa ta nie jest konwertowana do postaci kanonicznej przed porównaniem z wartością opcji Host. to wpisujemy yes i wciskamy [Enter ]. Jak od razu zauważymy.serwera Należy wiedzieć.: 47 . Z punktu widzenia przeciętnego użytkownika.53b-installer. że przy tym pytaniu nie wystarczy wpisać y – musi to być całe słowo yes. najbardziej przydatne będą programy putty. W takim przypadku wywołanie programu jest proste: ssh uż[email protected]. Warto zaznaczyć. przykładowo wyświetlić spis nawiązanych połączeń. z którym się łączymy. dzięki czemu będziemy mieli zainstalowane wszystkie pliki z wyjątkiem puttytel. Sekcja ta powinna znajdować się na samym końcu pliku (ze względu na to.24)' can't be established. Wybór jest dosyć szeroki. pscp. Are you sure you want to continue connecting (yes/no)? www. z wyglądu podobny do Total Commandera. OpenSSH przechowuje w pliku ~/. zostaniemy zalogowani na zdalnym serwerze. że program ten jest w pełni darmowy.168. ale większość programów jest płatna (zwykle udostępnione są jako shareware lub trial). że pobierane są tylko pierwsze wystąpienia opcji).serwera Ewentualnie możemy skorzystać z postaci: ssh -l użytkownik adres. Obsługuje zarówno SCP.exe.exe i psftp. Dla nich wybawieniem będzie WinSCP.openssh Klienci pod Windows Wielu użytkowników nadal pracuje w systemach z rodziny Windows. jeśli zapoznamy się z wynikiem działania polecenia.com. które chcemy wykonać na zdalnym komputerze. Jeśli zależy nam.serwera Jeśli ze zdalnym komputerem łączymy się po raz pierwszy. jakbyśmy siedzieli przed ekranem zdalnego komputera (oczywiście pomijając ewentualne opóźnienia).168. Drugi i trzeci to kolejno odpowiedniki opisywanych programów SCP i SFTP. Jeśli jesteśmy pewni. to umieszczamy je w sekcji Host *. Chlubnymi wyjątkami są programy PuTTY oraz WinSCP. a jego kod jest publicznie dostępny.ssh/known_hosts tzw. pozwala na sprawne kopiowanie plików pomiędzy lokalnym i zdalnym komputerem. Wynika to z tego. co pozwala wykryć potencjalne ataki DNS spoofing. Podczas każdego połączenia wartość ta jest sprawdzana. jak i SFTP. Pierwszy z nich służy do logowania się na zdalne maszyny z użyciem między innymi protokołu SSH (stanowi niejako odpowiednik programu OpenSSH opisywanego w artykule). Jeśli podamy je prawidłowo. Nie są oni pozbawieni możliwości korzystania z SSH. PuTTY Rysunek 4. możemy używać skróconej postaci: ssh adres. WinSCP Tekstowe interfejsy programów SCP i PSCP mogą zrazić użytkowników przyzwyczajonych do posługiwania się myszką. jest to właściwie zestaw kilku programów. Nie musimy wtedy uzyskiwać dostępu do linii poleceń – wystarczy. Wykonywanie poleceń Czasem na zdalnym komputerze chcemy wykonać tylko jedno polecenie.0. aby jakieś opcje dotyczyły wszystkich serwerów. Jeśli chcą połączyć się z jakimś zdalnym serwerem lub skopiować z niego plik. że nazwa_serwera powinna być dokładnie tą nazwą. że łączymy się do właściwego komputera. Po połączeniu zostaniemy zapytani o hasło. a następnie o chroniące go hasło.pub.35 netstat -nat Wynik polecenia możemy zapisać w lokalnym pliku: ssh 192. -R port:host:port_hosta – pozwala na przekierowanie połączeń ze zdalnego komputera poprzez szyfrowany tunel do lokalnego komputera. Oto bowiem nasza transmisja jest szyfrowana.serwera) i nie musimy nawet podawać żadnego hasła. zabezpieczony hasłem (zwany kluczem prywatnym) powinniśmy przechowywać na swoim koncie i absolutnie nie udostępniać go innym użytkownikom. -l nazwa_użytkownika – podaje nazwę użytkownika. A co. wtedy on Wybrane opcje OpenSSH: • • • • • • • • • • • • • • • 48 -1 – wymusza pracę w wersji 1. W takim przypadku na zdalny komputer logujemy się wydając jedno polecenie (ssh użytkownik@adres. Jesteśmy bezpieczni. na którego konto chcemy się zalogować. Najlepiej. jak wpisujemy hasło? Tak. że chcemy zmienić hasło chroniące nasz klucz prywatny.4. że zdalna komenda nie jest wykonywana (opcja ta użyteczna jest właściwie tylko przy tworzeniu tuneli i działa jedynie w wersji 2. Bez samego klucza prywatnego hasło nic mu nie da. Bedziemy musieli podać dotychczasowe hasło oraz (dwukrotnie) nowe hasło. -2 – wymusza pracę w wersji 2. Służy do tego parametr -f. Czy można się przed tym jakoś zabezpieczyć? W pewnym stopniu tak. Zostajemy zapytani o nazwę pliku. styczeń 2004 . jednak nie jest to zalecane.ssh/id_rsa).ssh/id_rsa. Wydajemy polecenie: ssh-keygen -t rsa Jako typ klucza możemy podać rsa1 (klucz RSA dla starszej wersji SSH). -L port:host:port_hosta – pozwala na przekierowanie połączeń z lokalnego komputera poprzez szyfrowany tunel do zdalnego komputera. Klucz prywatny domyślnie znajduje się w pliku ~/. Jak więc widać.) oraz dsa (klucz DSA dla SSH w wersji 2. protokołu SSH. Jakie są zalety takiego rozwiązania? Jak już wiemy. protokołu SSH. to wszystkie zdalne systemy.168. gdyż zapomnianego hasła nie da się odzyskać – w takim przypadku musimy generować klucze od nowa. Możemy nie ustawiać hasła.0. na który chcemy się logować. -q – blokuje drukowanie wszelkich ostrzeżeń i komunikatów diagnostycznych. -F plik_konfiguracyjny – wskazuje alternatywny plik konfiguracyjny użytkownika (zamiast domyślnego ~/. protokołu SSH). -p port – numer portu na zdalnym komputerze. a nie chcemy mieć zajętej dodatkowej konsoli. w którym ma zostać zapisany klucz prywatny (domyślnie jest to plik ~/.ssh/ config). a następnie do komputera host. Jeśli wykonywanie polecenia trwa dłużej. Jeden z kluczy (zwany publicznym) przechowywany jest na serwerze. -V – wyświetla numer wersji programu. Nie musimy ustawiać hasła chroniącego klucz prywatny. -f – przenosi OpenSSH w tło tuż przed wykonaniem polecenia. To daje mu pełny dostęp do naszego konta na zdalnym serwerze. który plik z kluczem prywatnym ma być wykorzystany do autoryzacji. -C – włącza kompresję danych (opłacalne jedynie na modemach i innych wolnych łączach).txt Oczywiście przy każdym z tych poleceń musimy podać hasło. gdy ktoś je odgadnie. na których umieściliśmy nasz klucz publiczny. Stwórzmy teraz nasze klucze RSA. dla których nie ma osobnych przełączników. jeśli pozna hasło chroniące klucz prywatny? Nic.168. również może zalogować się na zdalnym serwerze (o ile zna jego adres) wykorzystując naszą nazwę użytkownika i poznane hasło. możemy spowodować. OpenSSH pozwala na wykorzystanie do logowania się pary kluczy RSA lub DSA. -N – powoduje. że OpenSSH natychmiast po pobraniu hasła zostanie przeniesione w tło. Natomiast drugi.0. który można wykorzystać w następujący sposób: ssh -f -L gerard 192. gdy uda mu się zdobyć klucz prywatny. Zaraz. Jest to wygodne. Hasło to powinno być trudne do odgadnięcia. a następnie do komputera host (więcej na ten temat w rozdziale Tworzenie tuneli). jeśli będzie miało co najmniej 10 znaków (w tym litery duże i małe oraz cyfry). natomiast klucz publiczny w pliku ~/. Klucze RSA dają jeszcze jedną możliwość.168.5 who > spis. możemy to zrobić wydając polecenie ssh-keygen -p -f ~/. wystarczy. Podobnie. będą stały dla niego otworem. musiałby jeszcze dodatkowo poznać chroniące go hasło.ssh/id_rsa. podsłucha lub w inny sposób się z nim zapozna. czy na pewno? A jeśli ktoś zobaczy. -i nazwa_pliku – wskazuje. Po powtórnym wpisaniu hasła klucze są generowane i zapisywane na dysku. rsa (klucz RSA dla SSH w wersji 2. -v – drukuje dodatkowe komunikaty (przydatne podczas rozwiązywania problemów). -o opcje – pozwala podać dodatkowe opcje (w postaci używanej w pliku konfiguracyjnym). jest to dodatkowa bariera dla ewentualnego włamywacza. w przypadku stosowania hasła systemowego. lecz możliwości tej należy używać ostrożnie – jeśli ktoś uzyska dostęp do naszego klucza prywatnego.). Jeśli kiedyś stwierdzimy. z którym chcemy się połączyć.dla początkujących ssh [email protected]/id_rsa.75 sleep 20 Klucze czy hasła? Oto jest pytanie Logując się na zdalny serwer z pomocą OpenSSH mamy pewien komfort psychiczny. Musi jednak równocześnie być łatwe do zapamiętania. Zostaniemy wtedy zapytani o hasło użytkownika gerard. może przydać się opcja -r. Jeśli więc chcemy skopiować jakiś plik ze zdalnego serwera. możemy skorzystać z polecenia scp gerard @192. Niektóre pozostałe opcje są wymienione w ramce Wybrane opcje SCP.0.0. Oprócz tego. Zarówno plik_źródłowy.pub) przesyłamy na zdalny komputer. jak i plik_docelowy. plik.com.168.5 Przypomnę tylko. a po jego poprawnym podaniu do bieżącego katalogu na naszym lokalnym komputerze zostanie skopiowany plik /etc/passwd z komputera o adresie 192. więc jest bezpieczniejsze od hasła systemowego.pub możemy już usunąć ze zdalnego serwera – rm ~/id_rsa.ssh/id_rsa. Dokonujemy tego poleceniem cat ~/id_rsa. Podczas wywoływania programu OpenSSH (jak również SCP) możemy wskazać potrzebny nam plik z kluczem prywatnym korzystając z opcji -i.openssh No dobrze.0. • host:nazwa_pliku (np.168.168. mogą być podawane w jednej z postaci: • nazwa_pliku (np. -S ścieżka_dostępu – wskazuje umiejscowienie programu OpenSSH.ssh/authorized_keys. -Q – włącza wyświetlanie statystyk. mamy nasze klucze. że podkatalog drzewo/ znajdujący się w naszym katalogu domowym zostanie skopiowany wraz z całą zawartością do podkatalogu las/ znajdującego się w katalogu domowym użytkownika gerard na komputerze o adresie 192. który plik z kluczem prywatnym ma być wykorzystany do autoryzacji. że użyliśmy SCP: scp ~/. -p – chroni czasy modyfikacji. ale często niezbyt wygodne.pub. które jednak przesyła hasła i dane niezabezpieczonym kanałem. Plik ten przechowuje klucze publiczne wszystkich użytkowników. Plik id_rsa. Oczywiście SCP zapewnia również takie samo bezpieczeństwo komunikacji.ssh/id_rsa 192. -o opcje – pozwala przekazać dodatkowe opcje do programu OpenSSH.0.ssh/id_rsa) pozostawiamy w spokoju.linux.5). odpowiadająca za rekursywne pobieranie podkatalogów.ssh/authorized_keys (lub innym.ssh/authorized_keys. -l liczba – ogranicza szybkość przesyłania danych do liczba kilobitów na sekundę.txt). Pod żadnym pozorem nie udostępniamy go nikomu. www.5:las/ spowoduje.0. którzy mogą się logować na nasze konto bez podawania hasła systemowego. który wydał polecenie scp. Kluczy prywatnych możemy mieć więcej i wykorzystywać je zależnie od potrzeb. Przykładowe wywołanie programu mogłoby Wybrane opcje SCP: • • • • • • • • • • • • • -a – włącza wyświetlanie statystyk dla każdego pliku. Pozostawiamy go jednak w naszym katalogu ~/.0. Nie jest ono przesyłane siecią. W pakiecie 49 . Wielu użytkowników jest przyzwyczajonych do korzystania z FTP. -A – wyłącza wyświetlanie statystyk dla każdego pliku. W drugim przypadku jako nazwa użytkownika na zdalnej maszynie domyślnie jest przyjmowana nazwa użytkownika. • użytkownik@host:nazwa_pliku (np.168. dostępu i prawa oryginalnego pliku.pub >> ~/.168. Bezpieczne przesyłanie plików. Jeśli plik wcześniej nie istniał. -v – drukuje dodatkowe komunikaty (przydatne podczas rozwiązywania problemów). Podstawowe wywołanie programu SCP jest bardzo proste: scp plik_źródłowy plik_docelowy.5. 192. pocztą czy przez wystawienie na stronie WWW.ssh/id_rsa.168. W wywołaniu programu SCP możemy podać kilka dodatkowych opcji.1:/home/gerard/plik. -B – włącza tryb wsadowy (nie pyta o hasła i frazy kodujące).0. Natomiast klucz publiczny (~/. Polecenie scp -r ~/drzewo/ gerard @192. Załóżmy.168.5:~/ Teraz logujemy się na zdalny komputer (ssh gerard @192.5:/etc/passwd .168.pl mieć postać: ssh -l gerard -i ~/. -i nazwa_pliku – wskazuje. Musimy umieścić klucz publiczny w pliku .pub [email protected]). -C – włącza kompresję. FTP też może być bezpieczne Kopiowanie plików z użyciem SCP jest bezpieczne. Powinniśmy wtedy zmienić prawa dostępu do niego poleceniem chmod 600 ~/.txt).0.. np.168. że aby logowanie się z użyciem kluczy było możliwe. to zostanie utworzony. to w konfiguracji serwera (plik /etc/ssh/sshd_ config) musi być ustawiona opcja PubkeyAuthentication yes (domyślnie ma właśnie taką wartość). czyli SCP OpenSSH nie tylko pozwala nam na bezpieczną pracę w linii poleceń na zdalnym komputerze.ssh/ wraz z kluczem prywatnym. gerard@192. dzięki któremu możemy kopiować pliki z i na zdalny komputer (a nawet pomiędzy dwoma zdalnymi komputerami) z wykorzystaniem tej samej autoryzacji.0.1:/home/gerard/plik . mamy do dyspozycji program SCP. jeśli zmienialiśmy wartość opcji AuthorizedKeysFile w pliku /etc/ssh/sshd_ config). ale co teraz z nimi zrobić? Otóż klucz prywatny (~/.5. Teraz podczas logowania się na zdalny komputer zamiast hasła systemowego będziemy podawać hasło chroniące klucz prywatny. -q – wyłącza wyświetlanie statystyk. -r – kopiuje rekursywnie całe katalogi. Możemy tego dokonać dowolną metodą – poprzez SCP. jak OpenSSH. którą oferuje OpenSSH. serwera.ssh:nazwa_pliku Istotne dla działania SFTP jest. ale co nam to daje? Wiele usług nadal nie jest szyfrowanych. W takim przypadku narażamy się na to. aby wyjaśnić dokładniej. W przypadku połączenia się z portem port_lokalny pakiety będą wędrować przez ten tunel. Jeśli chcemy sprawdzić pocztę firmową z komputera domowego. gdy serwer SSH i serwer poczty są uruchomione na jednym komputerze. że pomiędzy portem port_lokalny na naszym komputerze a zdalnym komputerem zostanie utworzony szyfrowany tunel. Powyższa metoda sprawdza się jeszcze lepiej. a przecież oba znajdują się w sieci firmowej.i. a następnie z kompu- 50 No dobrze.serwer. Program OpenSSH pozwala na wykorzystanie opcji -L port_lokalny:host:port_hosta. Gdybyśmy nie dodali opcji -N. Lepiej będzie. Gdy nie wolno IRCować Do czego mogą się nam jeszcze przydać tunele? Przypuśćmy.poczty Nie powinien nas zmylić napis localhost w opcji -L. W powyższym przypadku tunel zapewnia nam szyfrowanie transmisji przez całą drogę.ssh Teraz zostaniemy zapytani o hasło na konto użytkownik na serwerze adres. Pozostaje nam skonfigurować program pocztowy tak. Ponieważ zależy nam przede wszystkim na tunelu. Odpowiednim do tego poleceniem będzie: ssh -N -f -L 11234:adres. Zabezpieczenie poczty Rysunek 5. Firma ta posiada własny serwer SSH oraz serwer poczty znajdujące się w jednej sieci lokalnej (oba są dostępne z Internetu). Jest to program SFTP. na czym to polega. co znacznie zmniejsza ryzyko podsłuchu.ssh. że nasz komputer znajduje się w sieci lokalnej oddzie- styczeń 2004 .poczty:110 S użytkownik@adres. Nie różnią się one w zasadzie od komend znanych z powłoki. Przez tunel możemy przesłać praktycznie wszystko. Tworzenie tuneli Na początku artykułu (w rozdziale Sposób użycia) wspomniałem.serwera. Tunel istniałby wtedy tylko do czasu naszego wylogowania się. dzięki czemu mógł swobodnie korzystać z IRC-a.dla początkujących tera zdalnego będą przesyłane (już nie szyfrowane) do komputera host na port port_hosta. gdyż na ostatnim etapie transmisja odbywa się w obrębie jednego komputera.serwera. wliczając w to strony WWW czy muzykę z radia internetowego OpenSSH mamy do dyspozycji bezpieczny odpowiednik FTP. Teraz nadszedł czas. więc używamy opcji -N. W najprostszej postaci uruchamiamy go poleceniem: sftp użytkownik@zdalny. Po wpisaniu help uzyskujemy spis dostępnych komend. gdy pracujemy w dużej firmie.ssh. SFTP możemy również wykorzystać w sposób podobny jak SCP do pobrania jednego lub kilku plików (bez wchodzenia w tryb interaktywny): sftp uzytkownik@zdalny. że ktoś podsłucha naszą transmisję i zdobędzie nasze hasło lub jakieś tajemnice firmy. Po jego podaniu program OpenSSH zostanie przeniesiony w tło (dzięki opcji -f ). aby w konfiguracji zdalnego serwera OpenSSH (w pliku /etc/sshd_config) znajdowała się linia o treści: Subsystem sftp /usr/libexec/openssh/sftp-server W domyślnej konfiguracji linia ta jest obecna. Wyobraźmy sobie sytuację. a nie do naszego komputera lokalnego.serwera. Wówczas wywołanie programu przyjmuje postać: ssh -N -f -L 11234:localhost:110 S użytkownik@adres. Odnosi się on do zdalnego serwera SSH. lecz z komputerem localhost (a więc naszym własnym) na porcie 11234. przy standardowej konfiguracji łączylibyśmy się programem pocztowym prosto na port 110 (POP3) serwera pocztowego.poczty na porcie 110. gdy korzystając z OpenSSH utworzymy zabezpieczony tunel od naszego komputera do serwera SSH firmy i wykorzystamy go do komunikacji z serwerem poczty.ssh Po podaniu hasła mamy do dyspozycji interfejs zbliżony do tego znanego z FTP. Spróbujmy zbudować taki tunel. Dzięki temu transmisja będzie niezabezpieczona tylko na odcinku od serwera SSH do serwera poczty. że znajomy zrobił sobie tunel ze swojego komputera do mojego serwera. i jak można zrobić to samemu. aby nie łączył się z komputerem adres.serwer.serwera. Powoduje ona. to oprócz stworzenia tunelu zalogowalibyśmy się na zdalnym serwerze SSH. Pomogą nam oczywiście tunele.pl (a więc i innych uczestników rozmowy na IRC-u) będzie się wydawało. musimy sobie jakoś poradzić. a stamtąd przekierowane na port 6667 serwera poznan.sourceforge.icm.pl 51 . Z punktu widzenia serwera poznan. Warunkiem jest. to nikt go nie będzie musiał podsłuchiwać – po prostu je wpisze. gdyż zwykle najsłabszym ogniwem jest człowiek.pl:6667 uż[email protected]. więc należy pamiętać o częstej aktualizacji najważniejszych pakietów oraz obserwowaniu ogłoszeń o krytycznych błędach.uk/~sgtatham/putty/ Strona domowa WinSCP: http://winscp.edu.pl/openssh/ Pliki rpm na polskim serwerze FTP: ftp://sunsite. udostępniającym serwer SSH.com. że nasz program Irc jest uruchomiony na komputerze zdalny.serwer. Jeśli w czasie przerwy w pracy zamiast jeść drugie śniadanie wolimy porozmawiać na IRC-u ze znajomą.org.html www.openssh lonej od Internetu zaporą ogniową (firewall ).bezpieczenstwoit.chiark.edu. że mamy konto na zdalnym komputerze (umieszczonym poza naszą siecią lokalną).org/ Polski serwer lustrzany powyższej strony: http://predict.edu. Polecenie tworzące tunel już znamy: S ssh -N -f -L 6669:poznan.ssh Po podaniu hasła możemy uruchomić sobie IRC-a i połączyć się z portem 6669 serwera localhost.pl/pub/OpenBSD/OpenSSH/ portable/rpm/RH90 Źródłowe pakiety rpm na polskim serwerze FTP: ftp://sunsite. Zakończenie Bezpieczeństwo w Sieci jest obecnie sprawą kluczową.net/eng/ Trochę teorii kryptografii: http://www.linux.uw.serwer.openssh.pl/pub/OpenBSD/OpenSSH/ portable/rpm/SRPMS Strona domowa PuTTY: http://www. Nasze połączenie zostanie przekazane zabezpieczonym tunelem do zdalnego serwera SSH.pl/Kryptografia. Nawet w takim oprogramowaniu jak OpenSSH zdarzają się dziury. Administrator tej zapory z pewnych względów (przykładowo z polecenia szefa) zablokował część portów i pozostawił tylko wybrane.chem. Jeśli ustawimy łatwe do odgadnięcia hasło. że nawet najlepsze oprogramowanie może nas nie uchronić przed atakami. Na szczęście połączenia przez SSH są dozwolone (no bo przecież jakoś trzeba pracować). W Sieci: • • • • • • • Strona domowa OpenSSH: http://www.irc. Należy też zdawać sobie sprawę.pl. Moda na overclocking powoli przeminęła. zmuszonego do pracy ponad nominalne możliwości. czy przynajmniej większości płyt głównych. iż niemal każda płyta główna różni się od innych nie tylko zastosowanymi układami scalonymi. temperatur i obrotów wentylatorów w systemie. Te dodatki kojarzą się często z amatorami overclocking'u. przewidując awarie. Niejako .net/ ). Użytkownik Linuksa musi więc samodzielnie poradzić sobie z konfiguracją. Najlepszym przykładem jest oczywiście zacierający się wentylator procesora. gdy coś w systemie zaczyna odbiegać od normy. Czujniki pozwalają właśnie na szybkie odnotowanie. Program Lmcgi wyświetla dane o sprzęcie na stronie WWW dla MS Windows. 52 Rysunek 1. Czujniki płyty głównej Producenci płyt głównych najlepiej znają swoje produkty. chipsetów bądź dysków twardych. aby te wartości utrzymywały się w normie.pl. która umożliwiałaby uruchomienie lm_sensors bez konieczności wcześniejszej. Niestety. dla których ważne jest stałe monitorowanie temperatury. dostarczanych na ogół przez producentów płyt głównych. jak i w zwykłych. domowych komputerach. Od samego sprzętu cenniejsze bywają dane.przy okazji'' dyski twarde również wyposażono w czujniki temperatury i wielu innych parametrów pracy. które odpowiedzialne są za odczyt i raportowanie wartości z czujników. Oczywiście przeciętnemu użytkownikowi komputera czy nawet administratorowi serwera nie jest potrzebna wiedza na temat aktualnych napięć. a okazują się być bardzo potrzebne.sprzęt Lm_sensors i Smartmontools – czujniki naszego komputera Piotr Wolny W spółczesne płyty główne wyposażone są w czujniki monitorujące pracę zasilacza i wentylatorów oraz temperaturę: procesora. Problem polega na tym.wzz. płyty głównej i innych elementów. W Linuksie czujniki na płycie głównej możemy odczytywać przy pomocy oprogramowania Lm_sensors (http:// www. I tutaj producenci dysków twardych również wychodzą naprzeciw użytkownikom.. styczeń 2004 . które z dużym prawdopodobieństwem nastąpią w przyszłości. że sens ich istnienia wykracza daleko poza wspomniane wcześniej zastosowania. co można przetłumaczyć jako Technologia samokontroli. Od dłuższego czasu nowe dyski twarde wyposażane są w SMART – Self-Monitoring.pl. jednak czujniki w sprzęcie pozostały.0. Głównie dlatego. zarówno w profesjonalnych systemach.nu/ ).20. Kontakt z autorem: autorzy@linux. Pomocą w tym zakresie służy program sensors-detect. o którym będzie mowa później. Inaczej jest w przypadku Linuksa – twórcy Lm_sensors musieli sami napisać sterowniki do kilkudziesięciu różnych układów.lm-sensors.org. pracochłonnej konfiguracji. Równie niebezpieczne są jednak awarie zasilacza.sourceforge. co powinno zostać odnotowane przez dwa czujniki (obrotów wentylatora i temperatury procesora). z płyt głównych dziesiątek producentów. Dostęp do danych niektórych czujników możemy uzyskać z poziomu BIOS-u komputera bądź przy pomocy narzędzi O autorze: Autor jest politologiem i pracuje dla www. a to umożliwia szybką reakcję zanim dojdzie do całkowitego zniszczenia sprzętu. stworzenie bazy wiedzy o wszystkich. a informacje SMART dostępne są dzięki programom z projektu Smartmontools (http://smartmontools.com. Linuksem zajmuje się mniej więcej od czasów jądra 2. przerasta możliwości twórców tego projektu. Oprogramowanie dysków twardych wyposażonych w SMART potrafi przetestować dysk. zwłaszcza procesora. ale również sposobem interpretacji odczytywanych danych. które bardzo często objawiają się najpierw poprzez zmiany wytwarzanych przez niego napięć. które działają dobrze z konkretnym sprzętem. Analysis and Reporting Technology. więc są w stanie dostarczyć użytkownikom MS Windows aplikacje. analizy i raportowania. Ważne jest. 8.tar. Nie zaszkodzi również.8.tar. Niestety – z aktualną wersją – nie można włączyć opcji nakazującej skompilowanie programu sensord. Debian Woody również dostarcza pakiety lm-sensors (zawiera podstawowe programy narzędziowe) oraz lmsensors-source (z modułami jądra w postaci źródłowej).22). Jeśli wszystko pójdzie dobrze. Plik linux2.4. czyli łatkę na jądro.22-i2c-2. oraz sensors-detect – program ułatwiający konfigurację pakietu.gz: tar zxfvp lm_sensors-2.lm_sensors Za bezpośredni odczyt danych z czujników płyty głównej odpowiada pojedynczy układ scalony. musimy oczywiście zastosować również odpowiednio nowszą wersję łatki.. przy pomocy graficznego narzędzia do instalacji pakietów. w systemie pojawia się m.1)”.8. ze strony http://delvare. który znajdziemy w katalogu prog/mkdev dystrybucji źródłowej lm_sensors. W Mandrake 9.8. jeśli zaznaczymy – jako moduły – również inne sterowniki z tego działu. jednakże jego konfiguracja pozostaje w rękach użytkownika. make-kpkg --revision wersja1 modules_image. Dodatkowo. Jeśli mamy kartę telewizyjną. możemy ręcznie poprawić plik Makefile.6. Spróbuje on załadować różne moduły magistrali I2C oraz różne moduły obsługu- 53 .1. konfigurujemy i kompilujemy nowe jądro.net/i2c/ ściągamy „unified patch for Linux 2. który instalujemy poleceniem dpkg -i <nazwa pliku.sh.linux. w katalogu /usr/src/ znajdziemy pakiet Debiana z modułami jądra. nakładamy łatkę np. do którego podpięte są czujniki. Instalacja ze źródeł Czeka nas obowiązkowa rekompilacja całego jądra Linuksa.patch. sterujący samym układem. Jeśli będzie dostępna nowsza wersja jądra. zawierającą I2C w wersji 2.tar. Jeśli korzystamy z którejś z powyżej wymienionych dystrybucji.gz i przy pomocy polecenia make-kpkg (z pakietu kernelutils) skompilować nowy pakiet z modułami jądra: cd /usr/src/linux. w katalogu /lib/modules/2.1 pakiet lm_sensors-2. Po tej operacji w systemie mamy cały szereg nowych modułów jądra – zarówno dodatkowe moduły magistral I2C w katalogu /lib/modules/2. W przypadku tej dystrybucji instalacja pakietów jest nieco trudniejsza – chcemy postępować zgodnie z zasadami dystrybucji Debian. Przy konfiguracji jądra. skonfigurowany do pokazania zależności pomiędzy obciążeniem procesora a jego temperaturą • moduł jądra. Oczywiście w /usr/src/linux muszą znajdować się źródła aktualnie używanego jądra i musimy użyć tej samej wersji kompilatora gcc. Konfiguracja Lm_sensors Następnym krokiem jest uruchomienie w konsoli – jako root – programu sensors-detect. a następnie ściągamy i rozpakowujemy plik lm_sensors-2.1.gz. I2C device interface oraz I2C proc interface. możemy znaleźć go na pierwszej płycie CD. Instalację przeprowadzamy więc w następujących krokach: • • • ściągamy i rozpakowujemy źródła „oficjalnego” jądra z www. W Aurox 9. zaznaczamy również I2C bit-banging interfaces. Potrzebujemy zatem: • moduł jądra./linux-2.in. Oczywiście polecenia te wydajemy jako root.4.nerim.4. w dziale Character devices wybieramy I2C support.com. Wszystkie opcje są w nim dobrze udokumentowane. instalację kończą polecenie make install oraz uruchomienie programu mkdev. zawierający informacje. więc możemy od razu wydać polecenie make.4. uruchamiamy system na nowym jądrze.patch umieszczamy w katalogu /usr/src.4. • plik konfiguracyjny /etc/sensors.22/kernel/drivers/i2c/chips. w archiwum Lm_sensors nie ma skryptu configure.conf.1.8.4.org (najnowsza stabilna wersja w momencie pisania tego artykułu to 2. poleceniem cd /usr/src/ linux-2. oraz poprawki we wszystkich sterownikach. Instalacja Lm_sensors Większość dystrybucji Linuksa dostarcza pakiet Lm_sensors.4. która została użyta do zbudowania jądra.22-i2c- • • 2.1.deb>.22/kernel/drivers/i2c/busses. patch -p1 < .1. www. a jeśli tak się nie stało.i386. cd lm_sensors- • • 2.22. Po zainstalowaniu pakietów lm-sensors oraz lm-sensors-source musimy rozpakować plik /usr/src/ lm-sensors. program sensors – prosta komenda umożliwiająca odczyt stanu czujników.8. Pobrane dane trafiają do systemu operacyjnego poprzez magistralę I2C (lub SMBus).2 pakiet lm_sensors-2.rpm (niestety trochę starsza wersja) powinien zostać zainstalowany razem z systemem.8.8. wykorzystujących I2C.55.pl Rysunek 2. Program Ksysguard.1.kernel. sterujący magistralą I2C.22 (i2c-2.0-4mdk możemy zainstalować np. Najpierw będziemy musieli nałożyć na jądro specjalną łatkę z najnowszą wersją I2C oraz poprawkami dla wszystkich sterowników korzystających z magistrali I2C. możemy od razu przejść do części „Konfiguracja Lm_sensors”. zaznaczamy koniecznie – jako moduły – I2C support. jak tłumaczyć dane z czujnika na rzeczywiste wartości. jak i moduły dla poszczególnych układów scalonych sterujących czujnikami. Jeśli jednak chcemy zmodyfikować jakieś opcje kompilacji. Moduł ten nie będzie nam potrzebny. iż mój sprzęt nie potrafi ich prawidłowo odczytywać. który został wykryty przez sensors-detect. gdyż zawarty w tej dystrybucji skrypt /etc/init.conf. odpowiadając na wszystkie pytania naciśnięciem klawisza [Enter]. Czekają nas pewne testy. Program sensors-detect jest jednak daleki od doskonałości i u niektórych użytkowników potrafi „wykrywać” znacznie więcej układów niż rzeczywiście znajduje się w systemie. że wynik jest mało rozsądny (przy ponad połowie wszystkich wartości pojawia się ALARM). więc możemy usunąć go z listy ładowanych przy starcie. # sleep 2 # optional ignore fan3. W moim przypadku – co widać na Listingu 1 – były to tylko dwa układy: eeprom oraz it87.conf. jakie dane otrzymamy z każdego z układów. nie oznacza. W przypadku innych dystrybucji możemy po prostu dołączyć fragment. program na końcu swojego działania wydrukuje. Musimy sprawdzić.d/lm_sensors po prostu przeczyta /etc/ sysconfig/lm_sensors i załaduje niezbędne elementy. Listing 1. Zauważyłem. W tym przypadku użyłem woltomierza. Następnie badamy kolejny układ: sensors it87-*. Na moim systemie wyglądał on tak. dopisując w /etc/sensors.sprzęt jące same czujniki. że program sensors-detect zakończył pracę z sukcesem. ignore in6. pokazywać temperaturę z czujników Ładujemy więc wymienione wcześniej moduły i odczytujemy najpierw czujniki eeprom poleceniem: sensors eeprom-*. który należy dołączyć do któregoś z plików uruchamianych przy starcie systemu. jakimś edytorem SysV). W tym drugim przypadku musimy z dystrybucji źródłowej Lm_sensors skopiować plik prog/init/lm_sensors. proponując zawsze jakieś domyślne zachowanie. Program GKreelM potrafi m. styczeń 2004 . iż BIOS mojego komputera w ogóle nie pokazuje napięć ujemnych -5 i -12. Kolejną rzeczą do poprawienia były odczyty obrotów drugiego i trzeciego wiatraczka. ignore in7.d/lm_sensors oraz oczywiście nadać mu prawa wykonywalności i spowodować (np.in. aż znajdzie kombinację. Należało więc dopisać linie: modprobe eeprom modprobe it87 ignore fan2. Program zapyta również o zgodę na zmodyfikowanie pliku /etc/sysconfig/lm_sensors. którego nie ma. to sam plik /etc/sysconfig/lm_sensors wystarczy do automatycznego ładowania modułów przy starcie. podobny do tego z Listingu 1. Jeśli wszystko pójdzie dobrze.3V jest dwukrotnie zawyżone. Postanowiłem zignorować te napięcia. /usr/local/bin/sensors -s # recommended #----cut here---- 54 Ostatnim niepokojącym zjawiskiem były za wysokie napięcia Vcore oraz +12.conf przy moim chip'ie linie: ignore in5. jak w Mandrake. co też uczyniłem. program sensors zwróci kompletnie niedorzeczne wyniki. których nie posiadam. Mnie w tym przypadku interesował wyłącznie it87. ale okazało się. Wydruk ten ma postać gotowego fragmentu skryptu. na pierwszy rzut oka wydaje się. W czasie tego testowania zadaje on użytkownikowi kilka pytań. Analiza otrzymanej konfiguracji Fakt. więc warto przyjrzeć się konfiguracji w /etc/ sensors. że napięcie 3. do któregoś z plików startowych. W efekcie dostajemy jedynie mało użyteczne informacje na temat zainstalowanych kości pamięci w systemie. iż jest to prawidłowy moduł jądra.init do /etc/init. Podobnie zresztą z napięciem Stdby. Przy pierwszej próbie możemy swobodnie mu zaufać. Jeśli posiadamy dystrybucję Mandrake. aby był wykonywany przy starcie komputera. Rysunek 3. które moduły jądra są wymagane do działania Lm_sensors. że na pewno wszystko jest gotowe i działa. Jest to bardzo obszernie skomentowany plik. więc doszedłem do wniosku. Co prawda. Tutaj pomocne okazały się komentarze w pliku /etc/sensors. Modyfikacje w /etc/sensors. jak przedstawiono na Listingu 1. Program sensors pokazywał w tym zakresie niedorzeczne wyniki. które mają zostać załadowane. Jest to dobry pomysł – w pliku tym również znajdzie się lista modułów. lub zastosować taki mechanizm. który określa konfigurację kolejno dla wszystkich obsługiwanych układów.conf Program sensors na moim systemie zwrócił nieco dziwne wyniki. Jeśli spróbujemy odczytać dane z układu. Końcowy wynik działania programu sensorsdetect #----cut here---# I2C adapter drivers modprobe i2c-viapro modprobe i2c-isa # I2C chip drivers Następnie zauważyłem. Wynik działania tej komendy na moim systemie zamieściłem na Listingu 2. które nakazują w takim przypadku „zakomentowanie” jednej linii. która działa na danym systemie. Informację tę możemy zdobyć z następujących źródeł: • instrukcja płyty głównej może wymieniać nazwę układu w swojej specyfikacji bądź w innym miejscu. więc czas kupić nowy zasilacz. div = 2) fan2: 0 RPM (min = 3000 RPM. high = +45°C) www. który dopiero będzie obsługiwany przez przyszłe wersje oraz tego.lm-sensors. Potrafi on – działając w tle – stale monitorować czujniki. Opcja -B5 oznacza sygnał dżwiękowy co 5 sekund. Jego konfiguracja jest bardzo prosta i sprowadza się jedynie do zmiany nazwy chip-a w źródłach skryptu. gdy wyniki z układów „wykrytych” przez sensors-detect nie są użyteczne./configure.88 V (min = +4. Okazało się. na diagramie opisującym konstrukcję płyty.01 V (min = -5.61 V (min = -12.com. która pojawia się po wydaniu komendy sensors. po zmodyfikowaniu /etc/sensors. kwadratowy scalak o boku ok. że nasz układ lub magistrala I2C nie zostały rozpoznane przez sensors-detect bądź nie są przez niego obsługiwane.nu/~lm78/newdrivers. należy wydać polecenie sensors -s. jaki układ posiadamy. która zawiera listę sprzętu. musimy się dowiedzieć. make. że sensors ma racje.24 V) ALARM VBat: +2. Ostatecznie więc.24 V) +12V: +13. high = +45°C) Temp3: +15°C (low = +25°C. aby w przypadku problemów sygnalizować je dźwiękiem z głośnika systemowego lub/i komunikatem w syslog'u.72 V (min = +1. Wśród nich zapewne najpopularniejsze i najbardziej dostępne będą Ksysguard – Strażnik systemu KDE oraz GKrellM – przystosowany bardziej do środowiska GNOME. max = -11. Samodzielne ustalanie posiadanego sprzętu A co zrobić. który uzyskałem w sposób podany wcześniej.html znajdziemy listę płyt głównych i ich czujników dla Listing 2. it87-isa0290 to pełna nazwa chip-a.72 V.28 V. max = +1. div = 2) ALARM M/B Temp: +40°C (low = +20°C. Gdy już to zrobimy i sensors nie pokazuje żadnego alarmu. 1-2 cm. • na stronie http://mbm.pl Rysunek 4. Praktyczne użycie Lm_sensors Oczywiście stan czujników można sprawdzać okazyjnie wydając polecenie sensors.44 V (min = +11. W każdym razie.41 V) ALARM -5V: -9. Oczywiście w takim przypadku można również odpowiednio „dostroić” /etc/sensors. np. Inną możliwością jest użycie bardzo prostego programu Alarmwatch (http: //www.conf. max = +12.conf # sensors it87-* it87-isa-0290 Adapter: ISA adapter Algorithm: ISA algorithm VCore 1: +1.com/mobolist.linux. Są one za wysokie. Jest to skrypt Perla.lm_sensors aby je porównać.html możemy sprawdzić. max = +3. odczytujący dane z czujników.dakotacom. Strona domowa projektu Lm_sensors programu MS Windows. Dla niektórych użytkowników ciekawym programem może być LMCgi. którą posiadamy. Do jego działania oczywiście najpierw musimy skonfigurować Lm_sensors. Instaluje się go bardzo prosto – wystarczą polecenia . Wynik działania programu sensors przed modyfikacją /etc/sensors.html.63 V. max = +5.. make install.42 V (min = +3. high = +40°C) CPU Temp: +38°C (low = +25°C. przynajmniej w wersji. • możemy samodzielnie odszukać układ na płycie głównej – jest to z reguły niewielki. a jeśli tak.12 V.60 V) +3. max = -4.75 V (min = +4. Tę liczbę używamy jako ignorespec w wywołaniu alarmwatch.livewiredev.. do którego z różnych powodów nie planuje się napisać sterowników.03 V fan1: 3199 RPM (min = 0 RPM.72 V.56 V) ALARM VCore 2: +2. zamieszczoną na stronach projektu Lm_sensors.44 V) ALARM +5V: +4. to od której wersji Lm_sensors. jaki układ. Większość użytkowników będzie zainteresowana graficznymi nakładkami na Lm_sensors. posiada nasza płyta główna. czy nasz sprzęt jest obsługiwany. max = +2. Po każdej modyfikacji /etc/sensors.52 V (min = +2.nu/~lm78/supported.3V: +6. który wyświetla informacje z Lm_sensors na stronie WWW. a cyfra 61702 to w moim przypadku ignorespec.conf.36 V. efekt jest taki. Warto odwiedzić również stronę http://www2. div = 2) ALARM fan3: 0 RPM (min = 3000 RPM.40 V. aby dana wartość była uznawana za normalną i nie wywoływała alarmu.60 V) ALARM -12V: -20. na stronie http:// www2. wydaniu polecenia sensors -s oraz sensors. aby zmiany odniosły skutek. które może wyglądać następująco: alarmwatch -B 5 it87-isa-0290 61702. sprawdzamy wartość pliku /proc/sys/dev/ sensors/<nazwa chip-a>/alarms.lm-sensors.conf. Zapewne oznacza to. max = +5. jak na Listingu 3. który wykonuje podobną funkcję.81 V) ALARM Stdby: +1. a jego oznaczenie można porównać z listą obsługiwanego sprzętu. Gdy wiemy już.net/~donut/ ). Obydwie te 55 .42 V. które parametry systemu chcemy mieć na bieżąco pod kontrolą. jest GKrellM. Testy te możemy uruchamiać w czasie normalnej pracy dysku.03 V fan1: 3199 RPM (min = • • • 0 RPM.56 V) ALARM VCore 2: +2.sourceforge.3V: +3. iż jest sprawny. test dysku. Jeśli mamy wartość większą niż zero.45 V) +5V: +4. max = +3. służącą do monitorowania systemu. Przy pomocy polecenia smartctl -t long /dev/hda możemy uruchomić.html styczeń 2004 .net/.html Strona domowa programu wyspecjalizowanego do odczytu temperatury z twardych dysków: http://coredump. high = +45°C) Temp3: +16°C (low = +25°C. gdy są na nim zamontowane partycje.40 V. możemy wybrać.wt.72 V (min = +1.com/mobolist. Pośród wielu zalet tego programu trzeba wymienić pełną konfigurowalność. w przeciwnym razie w dziale „Czujniki” („Sensors” ) nie znajdziemy żadnych pozycji do zaznaczenia. Dzięki nim możemy zawsze mieć na pulpicie podgląd naszych czujników. najpopularniejsze to oczywiście obciążenie procesora i sieci. Nawet jednak. Na początek możemy zapytać dysk o jego stan: smartctl -H /dev/hda Ostatnia linia wyniku działania tej komendy powinna wyglądać tak: SMART overall-health self-assessment test result: PASSED Jeśli zobaczymy tam FAILED zamiast PASSED.lm-sensors. gdy zobaczymy jakieś błędy. Po uruchomieniu aplikacji i naciśnięciu klawisza [F1]. W tym celu Listing 3. Dodatkowo komenda ta pokazuje wiele ciekawych informacji.nu/ Strona domowa projektu Smartmontools: http://smartmontools. podgląd kamery internetowej. Wyróżnia się on dużymi możliwościami (potrafi monitorować kilkadziesiąt różnych wartości i jest łatwo rozszerzalny poprzez wtyczki).75 V (min = +4. oznacza to poważne problemy z dyskiem. Na tej stronie.44 V (min = +11. o którym chcemy się dowiedzieć więcej.60 V) ALARM VBat: +2. Ich wynik możemy sprawdzić po zakończeniu poleceniem smartctl -l selftest /dev/hda. Wśród kilkudziesięciu z nich.livewiredev. Użytkownicy Aurox Linux mogą znaleźć najnowszą wersję wraz z dodatkami na freshrpms. Aby oglądać wyniki ich odczytów w GKrellM. gkrellm-themes. np. po wybraniu „Red Hat 9”.free. informowanie o nowej poczcie.php Baza danych na temat czujników na poszczególnych płytach głównych: http://mbm.21 V (min = +3. Jeśli jest wyłączona. a nawet jako mikser dźwięku. trwający około godziny. high = +45°C) 56 • • Strona domowa projektu Lm_sensors: http://www.net. max = +5. Można je znaleźć w większości dystrybucji Linuksa lub ściągnąć z http://smartmontools. GkrellM można także używać do innych zadań.60 V) +3. Komenda smartctl -i /dev/hda poinformuje nas.42 V. high = +40°C) CPU Temp: +38°C (low = +25°C. Technologia SMART Jeśli nasz dysk twardy wspiera SMART. gkrellm-plugins.52 V (min = +2. że dysk.net/~billw/gkrellm/gkrellm. aplikacje można znaleźć w wielu dystrybucjach Linuksa. np. Ważne jest zwrócenie uwagi na wartość Reallocated_Sector_ Ct. div = 2) M/B Temp: +40°C (low = +20°C. W Sieci: che:~# sensors it87-* it87-isa-0290 • Adapter: ISA adapter Algorithm: ISA algorithm VCore 1: +1.dakotacom. czy nasz dysk wspiera SMART. zajętość i praca dysków oraz oczywiście czujniki komputera. którą można znaleźć w zakładce „Info” przy każdej pozycji w konfiguracji.sourceforge. bardzo dobrą pomoc (również spolszczoną). sprawdzanie. tuner radiowy i wielu innych. przy pomocy myszki. że dysk już uległ poważnej awarii bądź najprawdopodobniej ulegnie jej w ciągu 24 godzin. max = +12.13 V. Wynik działania programu sensors po modyfikacji /etc/sensors.net/~donut/ Strona domowa programu GKrellM: http://web.36 V. max = +2.conf możemy posłużyć się programami smartctl oraz smartd. oznacza to. czy dany komputer odpowiada na pingi. dobrze jest przeprowadzić pewne testy. a konfiguruje się je bardzo łatwo. ile sektorów zostało przeniesionych przez dysk z powodu błędów. należy ściągnąć pakiet fftw oraz pakiety gkrellm. gdy dysk twierdzi. Krótszy test – trwa poniżej 10 minut – uruchamiamy poleceniem smartctl -t short /dev/hda. możemy ją aktywować komendą smartctl -s on /dev/hda.fr/linux/hddtemp. oraz możliwość ustawienia wielu zaawansowanych parametrów. a jego wygląd można dostosować do własnych preferencji poprzez „skórki” (skins). oraz czy jego obsługa jest włączona. Nie należy jednak wpadać w panikę. która określa.72 V.sprzęt GKrellM Najbardziej rozbudowaną aplikacją graficzną. Wszystkie informacje o dysku możemy uzyskać wywołując polecenie smartctl -a /dev/hda | less. aktualną temperaturę dysku (Temperature_Celsius) czy ilość godzin „przepracowanych” przez dysk. musimy najpierw skonfigurować Lm_sensors. max = +1. to /dev/hda. wyłącznie przy użyciu myszki.24 V) +12V: +13. Załóżmy.net/ Program Alarmwatch: http://www. możemy z niego „wyciągnąć” wiele ciekawych informacji. 70 125. który omawia zaawansowane techniki programowania w C. C++ oraz Javie.CD PLAY MAG UK DVD* PLAYSTATION WORLD DVD* PRACTICAL INTERNET CD* PSM2 DVD* SOFTWARE DEWELOPMENT SYS ADMIN WEB PAGES CD WHAT PC ? CD WIRELESS BUSINESS & TECHNOLOGY 237.50 237.90 355.70 240.80 354. and in-depth information about languages.30 208.70 * wraz z kosztami wysyłki zwykłej (pln) 57 .70 339.80 250. C/C ++ Users Journal jest magazynem poświęconym praktycznym rozwiązaniom dla programistów C/C++.com.70 432.20 351. Dobb’s Journal jest wiodącym magazynem dla deweloperów oprogramowania.30 440. co zagwarantuje Ci.00 268. 853 87 77.10 214.30 152. With DDJ you’ll get algorithms. wskazówki przydatne podczas pisania programów.90 212. standards and object-oriented programming.20 391. aby znaleźć najlepsze oraz najnowsze techniczne informacje o językach C i C++.com.10 180.60 203.30 90. Zajrzyj do CUJ.50 222. przygotowaliśmy dla Was atrakcyjną ofertę zakupu prenumeraty ze zniżką wyszczególnionych w tabeli czasopism informatycznych.70 320.70 199. www.30 520.20 297.00 187.10 167. Look to CUJ for the best and latest in technical information on C and CC++.60 293.pl.linux. stosowanych standardach oraz programowaniu zorientowanym obiektowo. For more than 25 years it has been the foremost source of software tools for the professional programmer.30 218.80 182. Dr.10 118.80 183.30 354.70 155.30 354. pisanym i redagowanym przez programistów dla programistów.40 165.30 199. Each issue provides how-to articles with full source code.20 287.60 182. opracowania dotyczące podstawowych zagadnień z projektowania oprogramowania oraz wszystkie listingi omawianych programów.WOR.30 179.80 243.80 268.60 240.50 366.60 266. W tym numerze polecamy: Dr.50 140. że staniesz się jeszcze lepszym programistą.30 224.80 232. It is written and edited by programmers for programmers.70 329.20 205.10 237.90 216. dystrybutorem i importerem czasopism obcojęzycznych.00 226. www.80 239. Dobb’s Journal is the leading magazine for software developers.30 158.10 171.DOBB`S JOURNAL DVD REVIEW DYNAMIC GRAPHICS HOME ENTERTAIMENT INTELLIGENT ENTERPRISE INTERNET MAGAZINE CD LAPTOP LINUX FORMAT CD* LINUX JOURNAL LINUX MAGAZINE MAC FORMAT CD* MAC USER MACWORLD UK CD MACWORLD USA CD MSDN MAGAZINE OFFICIAL PS2 MAGAZINE* OFFICIAL UK PLAY`STATION CD* PC ADVISOR CD PC FORMAT CD* PC FORMAT DVD* PC GAMER CD* PC MAGAZINE UK CD PC MAGAZINE USA PC PLUS CD PC PRO CD PC UTILITIES CD PC WORLD USA PC ZONE CD* PERS. providing advanced techniques in C.70 199.COMP. coding tips.90 177.20 329.30 152.20 277.40 234.50 301.50 388.80 320.60 397.80 270.pl Tytuł czasopisma obecna cena cena prenumeraty promocyjna półrocznej prenumeraty (brutto) półrocznej ACCESS OFFICE & VB ADVISOR C-C++ USERS JOURNAL COMP. the language of choice for contemporary software development.60 163.00 173. and program listings guaranteed to make you a better programmer.50 183. C ++ and Java.80 287.50 318.30 203.50 280.50 218.20 239.70 152. Każde wydanie dostarcza szczegółowych informacji o wymienionych językach. C/C ++ Users Journal is the magazine devoted to practical solutions for C/C ++ programmers. discussions of fundamental design issues.30 145.SHOPPER CD COMPUTER ARTS CD* COMPUTER ARTS SPECIAL CD COMPUTER GAMING WORLD CD COMPUTER SHOPPER USA CRE@TE ONLINE CD DR.70 155. W DDJ znajdziesz liczne algorytmy.80 354.50 170.30 252. (22) 853 60 23.60 244. które wciąż są najlepszym wyborem podczas rozwijania współczesnego oprogramowania.linux.70 155.40 170. Zamówienia i szczegółowe informacje: tel.70 180.60 192. Od ponad 25 lat jest on najlepszym źródłem informacji dla profesjonalnych programistów.30 268.10 230.60 401.Wybierz swoją prenumeratę: Drodzy Prenumeratorzy! Wspólnie z firmą INTERNEWS.30 203.70 223. jak również z bezpiecznym obsługiwaniem ciągów znaków. strcpy(&b. przepełnienie bufora oraz błędy w obsłudze pamięci. 58 Rysunek 1. w tym również dla Linuksa. Ogólny zarys techniki przepełnia bufora jest wręcz trywialny. Zapisanie większej ilości danych spowoduje zmodyfikowanie stosu (umieszczane są na nim również zmienne lokalne). oferujących lepsze zabezpieczenie przed błędami związanymi z obsługą pamięci.j. Większość tych bibliotek jest przeznaczona dla systemów uniksowych. W większości przypadków programy tworzone są jednak w językach C i C++. W tym artykule chciałbym przedstawić kilka bardzo cennych rozwiązań. Błędy. Obecność czy nawet podejrzenie jakiegokolwiek błędu w programie jest niepokojące. jak Apache. które co prawda nie oferują tak dużego bezpieczeństwa wykonania jak Java. zanim zostaną wyeliminowane. które pozwalają tworzyć oprogramowanie wydajne oraz – co ważne – znacznie bezpieczniejsze i odporne na wyjątkowe sytuacje. które pojawiają się w tak złożonym kodzie. Błędy wynikające z przepełnienia bufora dotyczą nawet tak znaO autorze: Autor zajmuje się tworzeniem oprogramowania dla WIN32 i Linuksa. “ciag znaków“). Najczęściej stosuje się tzw. Spójrzmy na taką funkcję: void funkcja(char *t) { int i. Zawartość stosu przed i po zmianie zawartości zmiennej b nych oraz dopracowanych programów. w którym już dość dawno. Wu-ftpd czy nawet OpenSSH. wykryto taki błąd. Sendmail. jeśli parametr t będzie zawierał zbyt dużo znaków. ale są wydajniejsze. na którym znajduje się adres powrotu z funkcji. np. Odpowiednio preparując dane można ten adres zmodyfikować – Rysunek 1.pl. Błąd przepełnienia bufora w powyższej postaci dość często pojawia się w programach. Przykładem może być świetny program do odtwarzania plików multimedialnych styczeń 2004 . Zainteresowania: teoria języków programowania oraz dobra literatura. char b[32]. tym większe prawdopodobieństwo. jednak – co gorsza – błędy w programach są często wykorzystywane do przejęcia kontroli nad systemem operacyjnym. Kontakt z autorem: autorzy@linux. że znajdują się w nim błędy. to standardowy program Man.dla programistów Pisanie bezpiecznych programów Marek Sawerwain T worzone obecnie programy to duże i skomplikowane projekty. Czy nasze programy są bezpieczne? Na to pytanie można odpowiedzieć bardzo szybko: niestety nie. Co więcej. Wszystkie omawiane w tym artykule biblioteki działają znakomicie pod Linuksem. Ten rodzaj błędu nie dotyczy tylko i wyłącznie aplikacji związanych z obsługą sieci. Im bardziej złożone oprogramowanie. który można przytoczyć. Powstało wiele dodatkowych rozwiązań dla języków C/C++.są przeznaczone wyłącznie dla systemów uniksowych. t). Pierwszy z brzegu przykład programu. bo w 1999 roku. // operacje na zmiennej b } Wewnętrzny bufor b może okazać się zbyt mały. Jednym ze sposobów eliminacji tego rodzaju błędów jest zastosowanie odpowiedniego języka programowania. Zazwyczaj mija sporo czasu. że znacznie szybciej usuwane są błędy i poszerzane ich możliwości. niektóre biblioteki – jak dość szeroko znana Electric Fence . który nadaje się znacznie lepiej na platformę do tworzenia bezpiecznych programów niż choćby Windows. bowiem liczne grono użytkowników konkretnych bibliotek powoduje.com. Javy. strcpy(&b. są niestety jego naturalną częścią. "Host: %. brakuje odpowiednika scanf – istnieje tylko 59 . czyli techniki podobnej do trybu taint w Perlu. natomiast dla Libcwd warto dodać opcję --enable-magic. Z tego powodu poprawka MPlayera w niefortunnym kodzie z Listingu 1 jest bardzo prosta: sprintf( str. ponieważ nad przypisaniem nowej wartości biblioteka SCSL nie ma już kontroli. url->port ). server_url->port )./configure ich instalacja sprowadza się do typowych trzech komend. sprintf oraz vsprintf. że biblioteki dynamiczne oraz pliki nagłówkowe zostały zainstalowane w typowych katalogach: /usr/lib oraz /usr/include. aby dokonać konfiguracji.c oraz memwatch. Istnieją także mechanizmy. gdyż są to zaledwie dwa pliki: memwatch. "Host: %s:%d". Biblioteka oferuje nam nowy typ danych o nazwie safestr_t. Dzięki konwersji do konstrukcja: char * dopuszczalna jest następująca safestr_t str. który opisałem w artykule. strcpy((char *)str. pomimo. takich jak --enable-alloc. W takim przypadku jest to jawne „proszenie się o kłopoty”. Warto wydać również polecenie ldconfig. Wśród typowych funkcji. 0). Ponadto StackGuard obniża wydajność – wywołanie funkcji i powrót z nich pociąga za sobą testy spójności stosu. ponieważ reaguje tylko na ograniczenie w postaci znaku zero.220s:%d". Autorzy zalecają rozważne stosowanie tego mechanizmu. Rozwiązaniem tego rodzaju błędów jest odpowiednia alokacja pamięci. --enable-marker. url->hostname. Niestety. Po konfiguracji wystarczy wydać polecenie make.96 dołączano łatkę o nazwie StackGuard. Jej autorzy umożliwili konwersję do typu char *. aby zainstalować biblioteki. do naszej dyspozycji oddano także odpowiedniki printf w typowych odmianach: fprintf.linux. ale dzięki obecności skryptu . choć zawsze można wydać serię następujących opcji.c – jej najistotniejsze fragmenty prezentuje Listing 1.bezpieczne programy MPlayer.pl Listing 1. a łatka ta nie jest jeszcze dostępna dla nowych wersji kompilatora GCC 3. dla Libcwd polecenie kompilacji przedstawia się następująco: g++ -o app app. że wymaga kompilacji. Czasem. Pozostałe możliwości w zakresie zarządzania pamięcią powinny być domyślnie włączone. Oferuje ona ponad dwadzieścia funkcji związanych z obsługą ciągów znaków ze szczególnym uwzględnieniem ochrony przed przepełnieniem bufora. aby rozpocząć kompilację.x. url->hostname. W przypadku pozostałych bibliotek. Takie pakiety. ich dołączenie polega na dodaniu nazw bibliotek dynamicznych. Nie rozwiązuje to jednak wszystkich problemów (głównie Instalacja pakietów Instalacja poszczególnych bibliotek nie jest kłopotliwa. str = safestr_alloc(10. jak w przypadku sprintf.. Błąd znajdował się w funkcji asf_http_request. url->port ). Jej stosowanie jest więc tak samo niebezpieczne jak pozostałe funkcje działające na ciągach znaków. jak SCSL czy Vstr. Z tego powodu powinniśmy unikać mieszania ze sobą standardowych funkcji oraz pochodzących z SCSL. Większość dystrybucji niestety nie oferuje tych bibliotek.cc -lcwd pod warunkiem. a funkcja sprintf może doprowadzić do nadpisania zmiennej str i w efekcie adresu powrotnego funkcji.h. iż przekroczymy jakiś założony wcześniej limit. która chroniła stos. np. Jako pierwsze podajemy polecenie: . w pliku asf_streaming. ewentualnie definicji odpowiednich flag.com. Całkiem niedawno odkryto w tym programie możliwość przepełnienia bufora poprzez funkcję sprintf. które można wbudować w kompilator. nie wymagają dodatkowych opcji. do kompilatora GCC w wersji 2. a po zakończeniu tego procesu make install. które należy dołączyć do własnego projektu w sposób. to z poziomu SCSL wykonujemy to następująco: safestr_t str. np. samoczynnie zmieniają one swoją wielkość. www. takich jak przydzielanie pamięci i wyznaczanie długości ciągów znaków. SCSL – bezpieczna obsługa ciągów znaków Interesującą biblioteką do obsługi ciągów znaków jest Safe C String Library (SCSL). w których długości ciągów znaków są dynamiczne. "Host: %s:%d". aby odświeżyć plik zawierający spis dostępnych bibliotek dynamicznych. Jest to dość skuteczne rozwiązanie. Z tego powodu nie trzeba obawiać się. Podczas operacji na ciągach znaków. Innym rozwiązaniem jest zastosowanie bibliotek do zarządzania ciągami znaków. sprintf( str. sprintf( str. server_url->hostname. --enable-location./configure --prefix= /usr. "ciąg znaków dłuższy niz 10 znaków"). 0). Z tego schematu wyłamuje się pakiet Memwatch. dzięki czemu możliwa jest bezproblemowa współpraca ze standardowymi funkcjami. Jeśli tworzymy nowy ciąg znaków. str = safestr_create("jakiś ciąg znaków". Odpowiednio preparując plik w formacie asf można umieścić kod w adresach URL. } związanych z alokacją pamięci). czyli dla prefiksu /usr. Fragmenty funkcji asf_http_request HTTP_header_t * asf_http_request(streaming_ctrl_t *streaming_ctrl) { char str[250]. można ograniczyć liczbę znaków. Wprowadzono także pojęcie zaufanego ciągu znaków. h> // ciąg nie posiada flagi zaufania #include <unistd. aby możliwa była praca w trybie nieblokującym. str = safestr_create("jakiś ciąg znaków". safestr_insert(cel. Wszystkie funkcje API zostały napisane tak. Jeśli będziemy stosować tylko i wyłącznie funkcje SCSL. Autorzy oddali do naszej dyspozycji także funkcję. trusted ) na określony ciąg. 10. Funkcja ta została tak skonstruowana. } return 0.dla programistów if (safestr_istrusted(cel)){ Listing 2. tmp_str). gdzie istotnym aspektem jest odbiór danych. Co więcej. Wyświetlenie komunikatu na ekranie // ciąg posiada flagę zaufania } #define VSTR_COMPILE_INCLUDE 1 else { #include <vstr. Takich możliwości nie oferowała poprzednia biblioteka – SCSL jest ukierunkowana na zwiększenie bezpieczeństwa typowych operacji. if(!vstr_init()) return -1. jednak własność zaufania będzie aktywna. NULL). tmp_str. możemy mieć pewność. Można nadać flagę zaufania (ang. s=vstr_dup_cstr_buf(NULL. "Hello World!!!\n"). int lenofkey. że dany ciąg można modyfikować. Vstr oferuje również ciekawe rozwiązania w zarządzaniu pamięcią przechowującą poszczególne ciągi znaków. Jej zadanie jest identyczne z biblioteczną funkcją memset. Wykonuje to funkcja safestr_makereadonly. że dany ciąg znaków nie będzie zmodyfikowany bez naszej wiedzy. } if (sizes != NULL){ // free(sizes). Jeśli ciąg tmp_str nie posiada flagi zaufania. to biblioteka Vstr jest przeznaczona do obsługi ciągów znaków w aplikacjach o charakterze sieciowym. Wykonując ważne operacje możemy sprawdzać. gdy pozostałe ciągi znaków także będą miały tę własność. char **argv) { Vstr_base *s=NULL. aby kompilator nie przeprowadził na niej tego rodzaju optymalizacji. while (s->len) vstr_sc_write_fd(s. że potrafi wczytać linię tekstu zakończoną znakiem nowej linii bądź EOF. że podczas wysyłania ciągu znaków – choćby na ekran – może odbywać się to fragmentami. void *IV) { const int *sizes = NULL. SCSL samoczynnie zdejmie flagę zaufania z ciągu cel. Drugą przydatną techniką są wspomniane wcześniej zaufane ciągi. która sprawdza. // OK styczeń 2004 . vstr_exit(). Powoduje ona. 0). Wprowadzenie takiej funkcji autorzy umotywowali następująco: stosując silną optymalizację. STDOUT_FILENO. po której można spodziewać się. Co ważniejsze. kompilator może usunąć wywołanie memset czyszczące pamięć. Na zaufanym ciągu można oczywiście wykonywać wszystkie operacje. vstr_free_base(s). Vstr – inne spojrzenie na ciągi znaków O ile poprzednia biblioteka była przeznaczona dla każdego. &num_of_sizes). !!! źle safestr_t cel. Jedną z ciekawszych możliwość SCSL jest utworzenie ciągu znaków tylko do odczytu. s->len. Vstr nie posiada wyróżnionej reprezentacji łańcucha znaków – nie są one reprezentowane jako typ Listing 3. przy czym wypełnia ona obszar pamięci zerami. Fragment kodu biblioteki Libmcrypt. sizes = mcrypt_enc_get_supported_key_sizes(td. kto chce poprawić bezpieczeństwo obsługi ciągów znaków. funkcje odczytujące ciąg znaków z dowolnego urządzenia także posiadają taką własność. safestr_makereadonly(str). 1. funkcja safestr_read-line.h> } int main(int argc. if(safestr_isreadonly(str)) { // ciąg znaków jest przeznaczony wyłącznie do odczytu } Funkcją odwrotną jest safestr_makewritable. Oznacza to. czy dany ciąg istotnie jest przeznaczony tylko do odczytu: safestr_t str. Nie ma oczywiście przeciwwskazań. void *key. czy nie doszło do operacji na ciągach znaków pozbawionych flagi zaufania: 60 } else { } if (ok == 0){ } else { } free(sizes). Wykonajmy operację wstawiania do ciągu zaufanego jakiegoś innego ciągu: Interesującą funkcją jest safestr_memzero. zawierający błąd static int internal_init_mcrypt(MCRYPT td. aby stosować Vstr w programach ogólnego przeznaczenia. } unfreed: <1> t1. czyli char *. to kod z Listingu 2 oddaje bardzo dobrze sens tej biblioteki. while(vstr_sc_read_iov_fd(read_str. może odczytywać dane fragmentami. które oczywiście nie stanowią ciągłego obszaru.linux. read_str=vstr_make_base (NULL). jak choćby odpowiedniki funkcji printf. Biblioteka Vstr oferuje funkcję. Pojedynczym wywołaniem wysyłamy do urządzenia (w tym przypadku do strumienia stdout) fragment ciągu znaków. NULL)).h> #include <signal.. można wprowadzić także własne symbole formatujące. free(p). Biblioteka oferuje także typowe API. Wbrew pozorom ma to duże znaczenie dla bezpieczeństwa. p=(char *) malloc(5). po czym aplikacja może wykonywać inne czynności.com..h" int main(int argc. Wysyłanie zawartości zmiennej s to zadanie funkcji vstr_sc_write_fd. a w innym musimy je przesłać do wielu odbiorców. Posiada ona aż sześć argumentów.71 Copyright (C) 1992-1999 Johan Lindh = Started at Sun Nov 23 22:03:03 2003 Modes: __STDC__ 64-bit mwDWORD==(unsigned long) mwROUNDALLOC==8 sizeof(mwData)==32 mwDataSize==32 statistics: now collecting on a line basis Stopped at Sun Nov 23 22:03:03 2003 unfreed: <2> t1. strcpy(p. O ile wysyłanie pojedynczego ciągu znaków nie stanowi dużego obciążenia.. Pierwszy to typ Vstr_base *. *unalloc. p). Poniższy kod pozwala utworzyć ciąg znaków ze standardowego wejścia: Vstr_base *read_str. reprezentujący ciąg znaków. W ostatnim parametrze możemy podać adres bądź wskazanie na zmienną. tak jak w typowej organizacji ciągu dla języka C. 12345} Memory usage statistics (global): N)umber of allocations made: 3 L)argest memory usage : 555 T)otal of all alloc() calls: 555 U)nfreed bytes totals : 505 Memory usage statistics (detailed): Module/Line Number Largest Total Unfreed t1. Dodatkowym walorem innej organizacji jest fakt. w którym ma zostać dołączony nowy fragment ciągu znaków. która odczytuje dokładnie tyle bajtów ile trzeba i podobnie jak w przykładzie z poprzedniego akapitu. 5 bytes at 003D2540 [overflowed] {31 32 33 34 35 . Trzeci parametr do deskryptor plików. Zmiana organizacji powoduje.c(13). czyli C99. printf("%s\n". read_str->len.pl odbieramy dane. ile znaków zostało odczytanych. 1. "1234567"). że trudniej będzie wykorzystać sposób działania funkcji działających na ciągach znaków.. która w jednym z argumentów przyjmuje typowy ciąg dla języka C.c 3 555 555 505 22 1 50 50 0 14 1 500 500 500 13 1 5 5 5 61 . że dzięki temu autorzy biblioteki Vstr mogli dość mocno zoptymalizować obsługę ciągów znaków. p).h> #include "memwatch. printf("%s\n". 500 bytes at 003D25D0 {FE FE FE FE FE FE FE FE FE FE .c(14). zgodne z nowym standardem języka C. gdy w jednym miejscu www. zazwyczaj posługujemy się funkcją scanf.bezpieczne programy Listing 4. „Hello World” po raz wtóry Choć wyświetlenie komunikatu na ekranie można zrealizować za pomocą Vstr w bardziej „cywilizowany” sposób. Przygotowaniem komunikatu zajmuje się funkcja vstr_dup_cstr_buf. unalloc=(char *) malloc(500). Jest to funkcja vstr_sc_read_iov_fd. Wykonywanie tej czynności małymi fragmentami oznacza mniejsze obciążenie procesora.. char **argv) { mwStatistics(2). Wyświetlamy komunikat za pomocą pętli typu while małymi fragmentami. które przeznaczamy na odczytywany ciąg znaków.. Wadą tej funkcji jest oczywiście zupełny brak kontroli. Ciąg znaków jest przechowywany we fragmentach. Następne dwa argumenty to minimalna i maksymalna ilość węzłów. w której zostanie umieszczony ewentualny dodatkowy kod błędu. przy czym i tak samodzielnie trzeba napisać kod sprawdzający. Vstr i odbieranie danych Gdy odczytujemy dowolny ciąg znaków. ile danych zostanie odczytanych. . p=(char*)malloc(50). strcpy(p. ale raczej jako pojedyncze bloki bądź węzły. Idea jest bardzo podobna do dynamicznej listy... Wyniki śledzenia programu z Listingu 4 = MEMWATCH 2. } return 0. Listing 5.. Rozwiązaniem jest czytanie bezpośrednio funkcją read. char *. . Niemożliwe staje się w takim przypadku przeciążenie programu operacjami wejścia/wyjścia. char *p. Co więcej. "12345"). W większości ataków wykorzystuje się ogólnie uznaną organizację łańcucha znaków. Przykładowy kod poddany analizie przez Memwatch #include <stdio. to wysyłanie do kilku różnych źródeł już może. Drugi argument to miejsce. Jej zaletą jest oczywiście tryb pracy. STDIN_FILENO. 16. Pierw- Rysunek 2. który popełniono w tej bibliotece. która zawiera wiele informacji związanych z bezpieczną obsługą ciągów znaków styczeń 2004 . Taki błąd znacząco obniżałby jakość biblioteki. Wspólną cechą wielu z nich jest to. a bezpieczeństwo szyfrowanych danych byłoby bardzo niskie. takich jak malloc i free. w pozostałej części kodu operacje na pamięci są przeprowadzane w standardowy sposób. powoduje to obniżenie wydajności. nawet jeśli kod jest dość oczywisty. bowiem dwa razy kopiujemy dłuższy ciąg znaków do zmiennej p. która (uwaga!) służy do obsługi szyfrów symetrycznych. Podczas kompilacji odpowiednią flagą nakazujemy podmianę oryginalnych poleceń na pochodzące z określonej biblioteki. API pakietu Memwatch zawiera wiele funkcji przydatnych przy bardziej zaawansowanej obsłudze. pamięć przydzielona zmiennej unalloc nie została zwolniona. Listing 4 zawiera przykład kodu.cc:24 int [20]. Aby uczynić nasz program lepszym w tym względzie. najlepiej wprowadzić automatyczne zarządzanie pamięcią wzorem języka Java. uzyskując w ten sposób śledzenie obsługi pamięci. Co gorsza. Dołączenie pakietu Memwatch powinno wychwycić popełnione przez nas błędy i tak jest w istocie – podczas kompilacji wystarczy zdefiniować dwie flagi: MEMWATCH oraz MEMWATCHSTDIO. Śledzą one wywołania standardowych funkcji. Niestety. Tego rodzaju bibliotek powstało bardzo wiele i można dosłownie przebierać wśród dostępnych rozwiązań. że wczytanie nowych fragmentów nie będzie wymagać czasochłonnej alokacji czy realokacji pamięci. ale w naszym programie wystarczy dołączyć plik nagłówkowy. aby uzyskać śledzenie wywołań funkcji malloc i free. Ten błąd prowadził ostatecznie do strat pamięci. ale wyobraźmy sobie. Strona domowa biblioteki Vstr. (sz = 80) zmienna p to tablica o 20 elementach <unfinished> COREDUMP: delete[]: magic number corrupt! Quit (core dumped) Nie ma tu ograniczenia. w którym zostały popełnione błędy w zarządzaniu pamięcią. Program można wyposażyć w dodatkową bibliotekę.c i memwatch. ułatwiłoby odszukanie takiego błędu – każde wywołanie malloc czy free jest zliczane i śledzone. takich jak malloc oraz free. Tymczasem wewnątrz drugiej instrukcji warunkowej if (ok = = 0) zmienna sizes nadal była wykorzystywana (pod warunkiem. Usuwając definicję flagi podczas ponownej kompilacji przywracane są standardowe funkcje. bądź operatorów new i delete dla języka C++. Wiązałoby to się także z koniecznością modyfikacji samego języka (czytelnikowi zainteresowanemu taką tematyką polecam odwiedzić strony o językach D oraz Cyclone). Określimy tylko ilość węzłów. Jak widać. jednym z pierwszych roz- 62 wiązań tego błędu było wstawienie funkcji free wewnątrz instrukcji if (sizes != NULL). Aby uzyskać więcej informacji. choćby takich jak opisane poniżej Memwatch dla języka C i Libcwd dla C++. ilu danych się spodziewamy. Oczywiście prawidłowym rozwiązaniem jakże oczywistym jest umieszczenie wywołania free poza pierwszą i drugą instrukcja warunkową. jak będą jakieś dane do odczytu. Błąd. (size = 80). Dokładnie cztery błędy. która będzie zajmować się monitorowaniem operacji na pamięci. Zastosowanie odpowiednich monitorów pamięci. co wydaje się logiczne (oznaczone na Listingu 3 przez "!!!"). Wykrycie błędu w obsłudze pamięci jest znacznie trudniejsze niż w przypadku bufora. Tego rodzaju biblioteki są nazywane debugerami pamięci (ang. że nie przyjmuje wartości NULL). więc pętla będzie działać tak długo. które można dołączyć do naszej aplikacji. Obsługa pamięci Drugim istotnym aspektem na drodze uzyskania bezpiecznej aplikacji jest poprawne zarządzanie pamięcią. wywołujemy funkcję mwStatistics z parametrem 2. że można pisać program przy pomocy standardowych poleceń. Zaletą Vstr jest fakt.dla programistów Listing 6. Przykładowe komunikaty wygenerowane przez bibliotekę Libcwd MALLOC : operator new[] 0x81a123a int [20]. zmienna p to tablica o 20 elementach MALLOC : delete[] 0x81a123a t1. czego przykładem może być błąd w bibliotece Libmcrypt. że gdzieś indziej poprzez podobne niedopatrzenie nie byłyby usuwane wskaźniki na klucz. przy czym węzły mogą mieć dowolną długość. memory debuggers). Pakiet Memwatch Memwatch to mały pakiet składający się z dwóch plików źródłowych: memwatch. Do problemu można podejść inaczej. natomiast zmienna p ma dwukrotnie przydzielaną pamięć.h. z których składa się ciąg. wiązał się z przydzieleniem pamięci zmiennej sizes przez funkcję mcrypt_enc_get_supported_key_sizes – nigdzie nie była ona potem zwalniana. delete mkr. p)). O ile stosowanie Memwatch ograniczało się do używania malloc i free. czyli zatrzymywać natychmiast działanie programu.com. czy też ostatecznie przerwać wykonanie programu. "Nie zwolniono pamięci " else Dout(dc::malloc. natomiast druga wprowadza możliwość odpowiedzi na niespełnione asercje. jakie błędy zostały wychwycone oraz opis zużycia pamięci przez nasz program. Poniższym kodem badamy. a do usunięcia delete [].linux.bezpieczne programy sza definicja naturalnie uruchamia cały system śledzenia. Libcwd oferuje także wykrywanie błędów charakterystycznych dla C++ . Informacje te są używane przez bibliotekę w momencie wykrycia nieprawidłowości. po słowie unfreed zostały wyszczególnione zmienne. że gdzieś pogubiły się cenne bajty. Może się okazać.c memwatch. czy wykonanie danej asercji ma być powtórzone bądź zignorowane. dla których pamięć nie została zwolniona. np. czy istnieje możliwość zapisu danych pod zmienną wskaźnikową p. możemy także podać komentarz. // operacje na pamięci Debug(move_outside(mkr. Zachęcam. aby do jednego ze swoich własnych programów pisanych w C podłączyć ten pakiet i prześledzić zarządzanie pamięcią. "Brak strat w pamieci\n"). Po słowie overflow zostały wymienione linie. Śledzenie operacji zawiązanych z dynamicznym przydzielaniem pamięci w przypadku C++ jest ułatwione dzięki własnościom samego języka. że została zadeklarowana zmienna zostanie odnotowany w logu oraz umieszczony w komentarzu. Dla kodu z Listingu 4 plik z logiem wygląda tak jak na Listingu 5. Gdy skompilujemy i uruchomimy program. więc oprócz informacji. kompilacja przedstawia się następująco: Listing 7. mogą funkcjonować tak jak oryginalne asercje. Libcwd – coś dla miłośników C++ Rozwiązania podobne do Memwatch istnieją także dla języka C++. dokonywanych przez naszą aplikację nawet na poziome funkcji bibliotecznych C++.c -o t1 –I. Bardzo cennym rozszerzeniem są asercje. Libcwd oferuje śledzenie dosłownie wszystkich operacji na pamięci. Jednym z bardziej rozbudowanych jest biblioteka Libcwd. w którym znajdą się informacje. Wersja asercji z pakietu Memwatch umożliwia jednak zadanie pytania. Pakiet oddaje nam do dyspozycji funkcję mwIsSafeAddr. czy dany adres jest bezpieczny. że wszelkie operacje na pamięci można łatwo monitorować. Oczywiście. Przeciążenie operatorów new oraz delete (oraz ich odmian nazywanych operatorami umieszczającymi) powoduje. możliwość uzyskania logu nie jest końcem możliwości Memwatch. to libcwd pozwala na wprowadzania dodatkowych komentarzy poprzez funkcje AllocTag. o ile bajtów przekroczony został bufor. w której linii nastąpił błąd. Pakiet Memwatch wskazuje także numery linii w kodzie źródłowym. które if (libcw::debug::mem_blocks() > 0) Dout(dc::warning. AllocTag(p. w których następuje przydzielenie pamięci. Badanie strat w pamięci libcw::debug::marker_ct *mkr = new libcw::debug::marker_ct(“znacznik 1”). Wykry- 63 .: int N=20. "zmienna p to tablica o “ << n Rysunek 3. Pakiet Memwatch pomimo niewielkich rozmiarów posiada wiele cennych możliwości w zakresie ochrony pamięci. Strona domowa biblioteki Libcwd www. Została tam także umieszczona informacja.1) ) { *(p+(1024*100)) = 0. gcc -DMEMWATCH -DMEMWATCH_STDIO t1. którą sprawdzimy. w których nastąpiło przekroczenie wielkości bufora. Nie jest to tylko i wyłącznie pakiet do monitorowania operacji na pamięci. int* p = new int[N]. Takich możliwości nie dawał nam pakiet Memwatch – świadczy to dobrze o jakości biblioteki Libcwd.pl Fakt. Wobec tego. np. ale również cały system przeznaczony do śledzenia pracy aplikacji. Dodatkowo. } W logu możemy także wprowadzać własne komentarze makrem TRACE. lecz 100kB dalej względem jej początku: if( mwIsSafeAddr(p+(1024*100). pojawi się plik z logiem. pomyłki w używaniu operatorów do alokacji pamięci – zostanie zastosowany operator new. securityfocus. a także początkującym. sprawdzanie.org/safestr/ Biblioteka Vstr: http://www.cs. czy istnieją jakieś niezwolnione bloki. Po utworzeniu znacznika można wykonywać operacje przydzielenia i zwalniania pamięci.edu/projects/cyclone/ Serwis zajmujący się aspektami bezpieczeństwa (zawiera archiwa listy dyskusyjnej Bugtraq): http://www.linkdata. Trzeba pamiętać. że udało mi się pokazać. Spis funkcji operujących na ciągach znaków Funkcja Przeznaczenie Safe C String Library safestr_create utworzenie ciągu znaków safestr_alloc alokacja pamięci dla ciągu znaków safestr_makereadonly ciąg tylko do odczytu safestr_isreadonly test. która powoduje. Biblioteka Libcwd oferuje jeszcze więcej możliwości związanych z samym procesem śledzenia. którym z pewnością pomoże tworzyć lepsze oprogramowanie. ale gdy chcemy sprawdzić. Zachęcam do dalszej analizy Libcwd osobom tworzącym w C++. tzw. Do innych możliwości Libcwd należy np. można śledzić proces ładowania bibliotek dynamicznych.sourceforge. Podsumowanie Temat tworzenia bezpiecznego oprogramowania jest bardzo obszerny i mam nadzieję. Umożliwia to sprawdzenie za pomocą mem_blocks (Listing 7). W logu powinny znaleźć się informacje podobne do tych z Listingu 6. delete [] p.com/ Opis błędu w programie MPlayer: http://www. iż dotyczy wielu aspektów związanych z obsługą pamięci czy ciągów znaków. ile pamięci pod ten adres zostało przydzielonych. „magiczne liczby” (ang.se/ Biblioteka Libcwd: http://libcwd.and. czy ciąg jest przeznaczony tylko dla odczytu safestr_makewritable ustala. Jak podaje autor.com/archive/1/339330 styczeń 2004 . to oczywiście oznacza to.dla programistów Tabela 1. Uzupełnijmy kod o następujące linie: p[20]=0. Druga linia dotyczy wywołania operatora delete. należy wywołać funkcję move_outside i wskazać zmienną. gdzie test.org/vstr/ Strona autora pakietu Memwatch: http://www. a także ciągi znaków podawane w cudzysłowach. że zwykła operacja odczytywania znaków z wejścia – jak krótko to pokazałem przy okazji biblioteki Vstr – powinna być odpowiednio zaimplementowana. czy nastąpiła utrata pamięci. W Sieci: • • p[21]=0. a także przesyłaniem danych. czy nie przekroczono zakresu przydzielonej pamięci jest wykonywany z użyciem fizycznych możliwości procesora do chronienia pamięci – powoduje to. W pierwszej linii zostaliśmy poinformowani o przydzieleniu pamięci. Jeśli zostaną one zamazane.securityfocus. Electric Fence. że nastąpiła próba przepełnieniu bufora. choć nie oferuje tak szerokich statystyk jak Memwatch czy Libcwd. Istnieje jeszcze wiele bibliotek.com/d/ Bezpieczny dialekt języka C Cyclone: http://www. Biblioteka oferuje również znaczniki pamięci. magic number) na jego początku i końcu. od której rozpoczęto operacje z pamięcią. które można wyko- 64 • • • • • • Biblioteka Safe C String Library: http://www.net/ Język D rozwijany przez firmę Digital Mars: http://www.digitalmars. należy podczas konfiguracji pamiętać o opcji --enable-magic. np. rzystać do sprawdzenia. p[22]=0. np. odczytywać zdefiniowane symbole oraz na podstawie adresu biblioteki sprawdzić. że funkcje mem_blocks oraz mem_size nie tylko biorą pod uwagę zmienne alokowane przez bibliotekę standardową.zork.cornell. czy mamy jakieś straty. Taki test przeprowadza się funkcją test_delete. Proces ten jednak nie został zakończony z powodu zmodyfikowania dodatkowych wartości. że każdy przydzielony blok jest wyposażany w specjalne dodatkowe wartości. Wystarczy uświadomić sobie. czy ciąg posiada flagę zaufania safestr_insert wstawia ciąg znaków VStr vstr_init inicjalizacja biblioteki vstr_exit zakończenie pracy biblioteki vstr_sc_write_fd zapis do pliku/gniazdka o podanym uchwycie vstr_sc_read_iov_fd odczyt z pliku/gniazdka o podanym uchwycie vstr_dup_cstr_buf kopia ciągu znaków vstr_make_base utworzenie typu reprezentującego ciąg znaków vstr_free_base usunięcie z pamięci ciągu znaków wanie przez Libcwd przepełnienia bufora również jest możliwe. czy zmienna może zostać pomyślne usunięta. że ciąg może być modyfikowany safestr_memzero czyści pamięć safestr_trust ustala flagę zaufania safestr_istrusted sprawdza. że ta biblioteka staje się bardzo skuteczna. PHP.5 roku. witryny internetowe itd. PHP+MySQL. Poszukuję pracy stałej lub na zasadach współpracy podmiotów gospodarczych. Kod 1080 A G IS K OBD P SS TSI Doświadczony projektant i programista Java (J2EE. VB. Posiadam wysokie doświadczenie oraz kwalifikacje w zakresie IT.pl 65 . uzyskując tytuł inżyniera Informatyki Stosowanej o specjalności Telekomunikacja. OS/400 i kilkoma serwerami DB. Java. Delphi. Kod 1073 A H OBD PT SS A administrator systemu OBD operator baz danych analityk P programista G grafik komputerowy PT pomoc techniczna H handlowiec PR projektant IS inżynier systemowy SS serwisant sprzętu K kierownik projektu TSI M menedżer twórca serwisów internetowych AN Java Certified Programmer i Web Component Developer weźmie udział w projekcie na terenie kraju. Temat mojej pracy to „Zapory ogniowe na platformie Linux”. Kod 1077 A IS P Administrator baz danych i programista C++.Praca dla Informatyka Kategoria i opis Ogłoszenia Poszukuję pracy w okolicach Oławy bądź Wrocławia. Jestem zainteresowany stanowiskiem administratora sieci. Administracja i budowa sieci LAN/WAN. Linux. JavaScript i inne. CENTURA. Posiadam znajomość: Novell NetWare6. instalacją okablowań oraz konfiguracją struktur sieciowych. Pascal i SQL szuka pracy w województwie małopolskim. SQL Sys. konsultant ds. Kod 1090 A P PT SS TSI Dziesięcioletnie doświadczenie. Solaris. WAN. Mój staż to 3. SQL BaseExchange. zabezpieczeniami. Poszukuję stałej lub dodatkowej pracy na terenie Górnego Śląska. Kod 1075 A AN IS K M P PT PR SS TSI Ambitny i szybko uczący się młody administrator szuka pracy na Dolnym Śląsku. znajomość systemów operacyjnych SCO Unix(certyfikat). Kod 1085 A PT SS Szukam pracy.).linux. dBase. Pascal. MS Windows2000 Server. Programowanie w C/C++. Linux. Także HTML. MySQL. systemów MRP/ERP i baz danych. projektowanie stron WWW (PHP+MySQL).com. bazy danych. Kod 1084 A SS Student trzeciego roku informatyki na Uniwersytecie Warszawskim poszukuje pracy w Warszawie lub Lublinie. Administracja WinNT. Citrix Metaframe. BSD. informatyki z 5-letnim doświadczeniem podejmie pracę. Kod 1091 A IS K M OBD PT PR Mam 30 lat i duże doświadczenie jako administrator (MS Windows. doświadczenie w integracji sieci LAN. Kod 1082 A IS OBD www. Kod 1078 G H IS PT SS Doświadczony programista Delphi (aplikacje bazodanowe). Novell. Kod 1081 A OBD PT PR SS TSI Student IV roku PWr. aplikacje internetowe). LAN-WAN (Cisco . 3com) i inne). Oracle. PostgreSQL. DHTML. Kod 1076 A OBD P PT SS TSI Szukam pracy jako administrator lub serwisant. RDBMS podejmie pracę stałą lub kontraktową (preferowana forma to kontraktowa praca zdalna). Poszukuje pracy dodatkowej w Warszawie. SQL Windows. Interesuje mnie administracja systemami (Linux. C++ (Visual Studio).0. protokołów TCP/IP. Kod 1083 G K OBD P PT PR SS TSI Mgr inż. internetowe biuro obsługi klientów. Moje zainteresowania to: programowanie C/C++ i inne. Najlepiej Białystok lub Warszawa. Kod 1087 A OBD P Prowadzę usługi informatyczne (działalność gospodarcza). WinNT. Kod 1079 AN K P PR TSI Kilkuletnie doświadczenie w zarządzaniu projektami wdrożeniowymi systemów ERP w firmach o złożonych strukturach. najlepiej w zakresie zastosowań systemów typu *nix w automatyce przemysłowej. Wrocław lub praca zdalna. Kod 1088 AN K M P PR Ukończyłem Wydział Informatyki Stosowanej. Kod 1089 P PR TSI Poszukuję pracy w stabilnej firmie IT na terenie Poznania. bardzo dobra znajomość C/C++. Kod 1086 OBD P PR SS Poszukuje pracy. znajomość zagadnień biznesowych. Podejmę się realizacji projektu związanego z systemem obsługi baz danych przez Internet (e-sklep. Linux. Kod 1074 P PR TSI Jestem doświadczonym grafikiem i chętnie podejmę się ciekawych zleceń. internetowy system obiegu dokumentów itp. helpdesk oraz serwis. Novell). ale skrypt. przejrzeć wiadomości oraz dokonać operacji zapisu stanu gry. a następnie w terminalu wpisujemy polecenia: cd /ścieżka_dostępu/vegastrike-0. więc użytkownicy słabszych łącz będą musieli odczekać dłuższą chwilę. styczeń 2004 . np. w którym możemy dowiedzieć się czegoś więcej o misji.sh). te dla kilku graczy. naprawiać uszkodzenia czy tankować paliwo. Klikamy więc na New Game i po chwili widzimy miejsce. w którym znajduje się nasz statek. Dla przykładu z otwartego okienka wybieramy plik explore_universe. Gdybyś jednak chciał spróbować tego teraz. W codziennych zastosowaniach wykorzystuje przede wszystkim system Linux. Nową grę rozpoczynamy po kliknięciu przycisku New Game. W momencie pisania tego artykułu najnowszą dostępną wersją była 0. Musi on także zadbać o swój statek. to gra Vega Strike jest właśnie dla Ciebie.mission. Przeglądamy tam stany naszych zapasów. Strona domowa Vega Strike http://vegastrike. cel misji oraz zapisy z komputera pokładowego. in. wczytania oraz opuszczenia gry.dla graczy Vega Strike Krzysztof Wolski C zy kiedyś będzie można podróżować statkiem kosmicznym. zamieszczonego na płycie A bieżącego numeru. 66 Rysunek 1. mamy również możliwość wczytania gry zapisanej. Plik rozpakowujemy do wybranego przez nas katalogu. Na tej stronie odnajdziemy wersje zarówno dla Linuksa. a także zmiany opcji.4.sourceforge. Kliknięcie po lewej stronie statku spowoduje przejście do opcji związanych ze sprzedażą i zakupem towarów.pl. Jak grać Po uruchomieniu gry wybieramy misję – przycisk Select Mission. surowców czy materiałów (Cargo Computer). kupuje i sprzedaje towary oraz w razie potrzeby walczy z przeciwnikami. przy czym możemy zakupić większą ilość jednostek danego towaru klikając na Buy 10).sh Podstawowy proces kompilacji nie wymaga posiadania praw użytkownika root. decydujemy o tym.1D (wersja stabilna).4. odwiedzać inne planety i handlować towarami? Pewnie kiedyś tak. jak również dla systemów Windows oraz MacOS X. Pobierając plik należy uzbroić się w cierpliwość. choć na pewno nie szybko. co chcemy sprzedać (Sell ) lub co chcemy kupić (Buy. specjalność „Informatyka w Przedsiębiorstwie”. Jak wygląda sama gra. m.net/ Plik instalacyjny gry dla Linuksa został także zamieszczony na płycie B poprzedniego numeru Linux+. Razem z grą zostało dostarczonych kilka gotowych. Vega Strike to symulator statku kosmicznego.sf.net/files/. który instaluje składniki gry (root-setup. wymaga podania hasła użytkownika root. Na początku misji nasz statek znajduje się na lądowisku. który podróżuje pomiędzy planetami. Instalacja Pliki instalacyjne gry można pobrać ze strony http://vegastrike./setup. W grze wcielasz się w rolę pilota i handlowca. Kontakt z autorem: [email protected] . którą wykonujemy.com. O autorze: Autor jest studentem czwartego roku na Politechnice Śląskiej na Wydziale Organizacji i Zarządzania.sh – zostanie on automatycznie uruchomiony po zakończeniu działania skryptu setup. wczytania stanu gry z auto-zapisu. ponieważ gra zajmuje aż 167 MB. Kliknięcie tuż po prawej stronie statku spowoduje przejście do komputera (Mission Computer). przeczytania pomocy i zamknięcia okna. Uruchomienie gry to wpisanie poleceń: vsinstall vslauncher Autorzy przewidzieli możliwość zakupu płyty CD z grą – zamówienia można składać na stronie producenta. Na każdej planecie mamy możliwość sprawdzenia opcji związanych z misją. Oprócz rozpoczęcia nowej gry. można zobaczyć korzystając z Auroksa Live. który pokieruje nas do wybranego celu. U dołu znajduje się radar oraz wybrany cel naszej podróży. aby zobaczyć tę listę w czasie gry.linux. Podróżując pomiędzy planetami można natknąć się na wrogie statki. należy posiadać odpowiednią ilość paliwa. Sterowanie statkiem odbywa się przy pomocy klawiszy ze strzałkami (możemy również sterować statkiem za pomocą myszki). Minimalne wymagania sprzętowe Minimalne wymagania gry Vega Strike są następujące: • • • procesor Pentium 200 MHz. które posiadają współczesne komputery. Klawiszem [a] uruchamiamy autopilota. że podczas zabawy słyszymy efekty dźwiękowe i muzykę. Warto jeszcze wspomnieć. Następnie należy nacisnąć klawisz [0]. który odpala działko. przewiezienie na inną planetę. Gra zapewnia także tryb dla wielu graczy. Jeśli chcemy wystartować. a [t] do wyboru celu.com.4 GHz. naciskamy myszką na statku i po chwili nasz statek znajduje się w przestrzeni kosmicznej. które można zakupić na planecie. surowców czy materiałów. oraz [Enter]. Gra działa płynnie w rozdzielczości 1024x768 (testowałem na sprzęcie Athlon 1. należy nacisnąć klawisz [d]. odpalający rakiety. jak VegaStrike. a następnie sprzedaż towarów. Po prawej stronie lądowiska znajduje się pomieszczenie rozrywkowe. Do strzelania służy klawisze [Spacja]. głębia kolorów ekranu 16-bitowa. z sympatyczną barmanką. W jaki sposób można zarobić pieniądze? Na przykład przez zakup. a po lewej – broń. Choć taki z prawdziwego zdarzenie nie jest jeszcze dostępny.vega strike Sterowanie Rysunek 2. W takim przypadku ekran dzielony jest na dwie części. [-] do zwalniania. po prawej stronie cel misji. Gra pozwala również na tworzenie nowych misji. a przede wszystkim pozwala na granie pod kontrolą ulubionego systemu. Statek na planecie Oczywiście wszystkiego tego możemy dokonać. spowoduje. czyli Linuksa. z którymi gra na pewno będzie współpracowała – można tam odnaleźć m. Teoretycznie może więc istnieć nieskończona ilość misji. ale mogące przynieść również nieco istotnych informacji – jest to bar (Bar). to można pograć w dwóch graczy na jednym komputerze.in. 512 MB DDR. Klawisz [+] służy do przyspieszania. budowanie nowych statków oraz projektowanie nowych broni. co oznacza. musisz ją najpierw ustawić jako swój cel (przy pomocy klawisza [t]). Możemy również nacisnąć kombinację klawiszy [Shift]+[m]. że Linux będzie zdobywał coraz więcej zwolenników nie tylko wśród zaawansowanych użytkowników. karta graficzna z akceleracją 3D (na stronie domowej projektu znajduje się lista kart. Więcej takich gier. Cała obszerna lista znajduje się w dokumentacji. Gdy statek znajduje się już odpowiednio blisko planety. Należy pamiętać. gdy posiadamy odpowiednią ilość gotówki. Podsumowanie Vega Strike wyróżnia się bardzo ładną i estetyczną grafiką. że gra Vega Strike w znakomity sposób wykorzystuje możliwości. w którym można porozmawiać np. kilka różnych modeli kart ATI Radeon czy NVIDIA GeForce). GeForce2 64 MB). Gra została opublikowana na licencji GNU GPL. w którym możemy zmieniać wyposażenie naszego statku w zakresie broni. że aby przemieszczać się pomiędzy planetami. które oczywiście należy zniszczyć. Rysunek 3. Oczywiście gra jest również “udźwiękowiana”. Aby wylądować na planecie. widzimy informacje z komputera.pl 67 . dopracowanych i dostępnych za darmo. Obserwując otoczenie z wnętrza statku. Pokój ten znajduje się po lewej stronie ekranu z widokiem lądowiska. że po wylądowaniu na planecie możemy odwiedzić pokój (Weapons Room). Podróż w przestrzeni www. Wydaje mi się. aby uzyskać pozwolenie. do którego chcemy lecieć. . Help. Wyd. Turbo Pascal – K. 9.T . Nauka. o podstawowych funkcjach wejścia/wyjścia. Dowiemy się z niej m. 2003 www. Promise. Object Pascal – Andrzej Marciniak. Książka Reuvena Lernera. Ritchie. Wyd. 2003 Delphi 5 Professional. Dennis M.in o słabych punktach systemów operacyjnych. Mikom. stron: 464 Data wydania: 10/2003 Cena książki: 55. W dalszej kolejności przeczytamy m. nie tylko oni znajdą tutaj wiele ciekawych i bardzo przydatnych informacji. 2000 Fotografia cyfrowa.J. jak stworzyć za jego pomocą gotowe rozwiązania. jak i początkującym.merlin. szerokiej skali wykorzystania i niezłej szybkości działania. Helion. „Perl” z pewnością może zainteresować także osoby. 8. 2003 Microsoft Access 2002 Visual Basic dla aplikacji – krok po kroku (+CD-ROM) – Evan Callahan. Książka skupia się na systemach Linux i Windows serii NT.pl Perl Autor: Reuven M.in. Stuzińska-Walczak. Vadamecum administratora – William R. Zawdzięcza to swojej prostej konstrukcji. najczęstszych błędach w popularnych serwerach (BIND. Sendmail). tworzeniu obiektów i pracy z nimi. które korzystają z tych dwóch rozwiązań. 2003 Google dla praktyków – Andrzej Szewczyk. Pomimo tego. Ajay Gupta Tłumaczenie: Witold Kurylak. a nie mają czasu na czytanie nudnych podręczników. 5. 7. Nakom. 4.00 zł Bezpieczny serwer internetowy to swoista wizytówka dobrego administratora sieci komputerowej. Hack I. Stanek. Testy bezpieczeństwa danych Autorzy: T. A. 2003 Język ANSI C – Brian W. Książkę tę z pewnością można polecić zarówno zaawansowanym programistom Perla. Autor omawia Perla zaczynając od podstaw i z każdym kolejnym rozdziałem wprowadza czytelnika dalej. Lerner Tłumaczenie: M. Często jednak bywa tak.J. Wyd.pl 69 . Edycja zdjęć – Scott Kelby. 6. filozofia i religia w Matrix. którzy chcą szybko poznać ten język. W&W. Helion. klasach znaków. przedstawia czytelnikowi aspekty związane z filozofią działania tego popularnego języka i pokazuje. Książka T. Dzieniszewski ISBN: 83-7361-169-X Tytuł oryginału: Core Perl Format: B5.linux. Read Me.00 zł FIT=BOTTOM>> Język Perl stał się jednym z najpopularniejszych języków programowania na świecie. . Wydawnictwa Naukowo-Techniczne. Wyd.Testy bezpieczeństwa danych” przedstawia nam wiele aspektów tworzenia bezpiecznego serwera i stojącej za nim sieci komputerowej. zatytułowana po prostu „Perl” i pochodząca z serii Core. zobaczymy. gdzie zamiast praktyki otrzymają często nudną teorię. że pomimo dużych umiejętności. Wyd.pl. 2003 Flash – samouczek dla nieinformatyków – Anna Owczarz. Klevinsky. jak przeprowadzić testy penetracyjne sieci przez internet i połączenie telefoniczne oraz poznamy aplikacje mające na celu ułatwić pracę każdemu administratorowi sieci i ograniczyć do minimum ewentualne prawdopodobieństwo włamania do systemu/sieci. Przemysław Szeremiota ISBN: 83-7361-232-7 Tytuł oryginału: Hack I. że autor adresuje książkę do programistów. 10. Na taki właśnie moment czekają hakerzy. Wyd. który przeoczymy. stron: 456 Data wydania: 09/2003 <<AUTOR | Cena książki: 49. pracy z plikami. Dzięki przejrzystemu językowi autora i ciekawemu podejściu do tematu. Do książki dołączono płytę CD zawierającą omówione w tytule oprogramowanie.Security Through Penetration Testing Format: B5. 3. 2002 Windows server 2003. 2003 Nauka programowania dla początkujących. Wyd. Mikom. Wyd. w miesiącu listopadzie: 1.T. więc może być przydatną pozycją dla osób.warto przeczytać dział prowadzi: Piotr Truszkowski [email protected]. Scott Laliberte. S. Scotta Laliberta i Ajaya Gupta „Hack I. Polecam. Klevinskiego. Bestsellery Merlina Lista najlepiej sprzedających się książek informatycznych w sklepie internetowym www. Wybierz czerwoną pigułkę. Wyd. 2. 2003 Zintegrowane systemy informatyczne w praktyce – Piotr Adamczewski. współpracy z protokołami sieciowymi i o wielu innych aspektach pracy z Perlem. Michalski. zawsze znajdzie się jakiś problem. Kernighan. Walczak. które zastanawiają się nad wyborem odpowiedniego i przenośnego języka programowania do stworzenia swoich własnych projektów. . Zainwestuj w siebie.pl . Z O. e-mail: pren@software. jeżeli nie posiadasz takiego numeru..com. ul.com. e-mail: pren@software. 00-190 Warszawa.o. że podasz swój numer ID kontrahenta. – wystarczy.o. z o. Przyjmujemy też zamówienia telefoniczne: (22) 860 17 67 Imię i Nazwisko Stanowisko * jeżeli jesteś już klientem firmy Software-Wydawnictwo Sp. z o. z o.0: 198 zł Linux+ Extra! Numery specjalne z dystrybucjami Linuksa Linux w szkole Kwartalnik o stosowaniu Linuksa w edukacji 8 Oferta standardowa: 232 zł 99 zł 4 W sumie (liczba prenumerat * cena) * 180 zł – prenumerata roczna (12 numerów) Linux+ dla studentów i osób prywatnych * 250 zł – prenumerata roczna (12 numerów) Linux+ dla firm UWAGA! Nadesłanie zamówienia jest jednocześnie zobowiązaniem do zapłaty! SOFTWARE-WYDAWNICTWO SP. Lewartowskiego 6.o. do wystawienia faktury VAT bez podpisu odbiorcy Pieczęć firmy i podpis Dane teleadresowe Nazwa firmy Dokładny adres Telefon (wraz z numerem kierunkowym) Faks (wraz z numerem kierunkowym) Adres e-mail Numer NIP firmy Tytuł pisma Aurox Numery specjalne Linux+ Extra! z dystrybucją Aurox Linux Linux+ Miesięcznik użytkowników systemów linuksowych Liczba kolejnych numerów Liczba zamawianych prenumerat Od numeru pisma lub miesiąca Opłata w zł Oferta dla szkół: 99 zł 4 Oferta standardowa: 119 zł 12 * Oferta dla prenumeratorów Linux+ lub Software 2. podaj swe dane w tabeli Dane teleadresowe ID kontrahenta* Upoważniam firmę Software-Wydawnictwo Sp. Lewartowskiego 6.O. 00-190 Warszawa. zainwestuj w swojego pracownika PRENUMERATA TO NAJLEPSZY WYBÓR ZAMÓWIENIE Prosimy wypełnić czytelnie i przesłać faksem na numer: (22) 860 17 71 lub listownie na adres Software-Wydawnictwo Sp.pl.
Copyright © 2024 DOKUMEN.SITE Inc.