��������������������������� ���������������������������������������������� ����������������������

������������������������������������� �� �������� ����������

Podejmij wyzwanie! �������������������������������������������������Samsung bada�������������������������������������

������� ����������������� ������ ���� ���������� ����������� ������� ����������� ������ ���������� �������� ��� ��������� ������������������������������������������������������������������������������������������������������������� ����������������������������������������������������������������������������������������������� �����������������������������������������������������������������������������������������������������

����������������������

6/2010

Konferencja Open Source Day 2010 SPIS TREŚCI Szanowni Państwo, Serdecznie zapraszamy na konferencję Open Source Day 2010, która odbędzie się 12 maja w Warszawie, w Pałacu Kultury i Nauki. WARSZTATY Wysłuchaj wykładów światowych liderów otwartego oprogramowania, m.in. , JBoss, EnterpriseDB 12 Część I. Programowanie w C++ i pod i Zimbra! Dowiedz się więcej o trendach rozwojowych Ubuntu i wpływie Open Source na sytuację ekonomiczną fir- Łukasz Klejnberg my. W programie także wykłady poświęcone m.in. wir- W części pierwszej artykułu zajmiemy się konfiguracją tualizacji, bazom danych oraz bezpieczeństwu z SELi- środowiska programistycznego C++ Qt SDK, Qt Cre- nuxem. ator i Qt Eclipse Integration jako alternatywnego roz- Każdy uczestnik otrzyma kupon rabatowy na szkole- wiązania. Stworzymy również pierwszą prostą aplikację nia certyfikacyjne Red Hat i JBoss. okienkową, korzystając z biblioteki Qt 4.6. Największe w Polsce wydarzenie poświęcone tech- Artykuł ten przeznaczony jest w głównej mierze dla nologiom Open Source zostało objęte patronatem Mi- początkujących programistów C++ chcących tworzyć nisterstwa Gospodarki i osobiście Pana Premiera Wal- aplikacje komputerowe na systemie w oparciu demara Pawlaka, który otworzy konferencję swoim wy- o dystrybucję Ubuntu, którą można pobrać ze strony kładem. www.ubuntu.pl– nazwa aktualnej polskiej wersji Ubun- Udział w spotkaniu jest bezpłatny tu to Karmelkowy Koliberek. Artykuł został podzielony Zapraszamy do rejestracji: www.opensourceday.pl na kilka części takich jak: „Środowisko programistycz- ne Qt SDK, ”, „Integracja Qt z Eclipse” oraz „Pierwsza aplikacja w Qt”. Serdecznie zapraszam do Miesięcznik Linux+ (12 numerów w roku) artykułu. jest wydawany przez Software Press Sp. z o.o. SK

Redaktor naczelny: Tomasz Łopuszański [email protected] Projekt okładki: Agnieszka Marchocka PRAKTYKA Skład i łamanie: Tomasz Kostro www.studiopoligraficzne.com 20 Linux w pudełku Grzegorz Nosek Kierownik produkcji: Andrzej Kuca [email protected] Są trzy podstawowe sposoby na uruchomienie ser- wera wirtualnego (VPS). Pierwszy z nich to pełna wir- Stali współpracownicy: Andrzej Jankowski, Roger Zacharczyk, Leszek Konka, tualizacja. Drugi - parawirtualizacja - wymaga mody- Piotr Brzózka, Robert Romaniuk, Sławomir Iwanek fikacji goszczonego systemu operacyjnego ale od- wdzięcza się wyższą wydajnością.Trzecie podejście Adres korespondencyjny: Software Press Sp. z o.o. SK, zakłada jeszcze bliższe więzy między gospodarzem ul. Bokserska 1, 02-682 Warszawa, Polska tel. +48 22 427 36 91, fax +48 22 224 24 59 i gośćmi i jest rozwinięciem znanych od lat środowisk www.sdjournal.org [email protected] chroot()

Dział reklamy: [email protected] 24 Wystartuj z Tomcat Sławomir Wojciechowski Redakcja dokłada wszelkich starań, by publikowane w piśmie Java jest dzisiaj wiodącą technologią wykorzystywa- i na towarzyszących mu nośnikach informacje i programy były poprawne, jednakże nie bierze odpowiedzialności za efekty ną przy tworzeniu złożonych serwisów internetowych. wykorzystania ich; nie gwarantuje także poprawnego działania Do uruchomienia takich aplikacji konieczny jest od- programów shareware, freeware i public domain. powiedni serwer i takim właśnie produktem jest po- Wszystkie znaki firmowe zawarte w piśmie są własności wszechnie uznany i stosowany Apache Tomcat. Po- odpowiednich firm. Zostały użyte wyłącznie w celach informacyjnych. nieważ linux doskonale sprawdza się jako system operacyjny dla serwerów internetowych, ten artykuł

Osoby zainteresowane współpracą prosimy o kontakt: musiał powstać:). [email protected]

4 6/2010 www.sdjournal.org 5 SPIS TREŚCI

na platformie typu Cloud. Rynek ten chce kontrolować ROZWIĄZANIA kod i opracowywać własne aplikacje, ten rynek szu- ka rozwiązań typu eyeOS. Jordi Collell – eyeOS Chief 30 Pentaho – Open Source dla biznesu Communications Officer oraz eyeOS Community Glo- Paweł Wolniewicz bal Leader. Rozwiązania dla biznesu służące do analizy danych stanowią zaawansowane i wyspecjalizowane oprogra- 44 Oprogramowanie Open Source mowanie, tym niemniej nawet w tym segmencie znaj- wspomagające zarządzanie serwerami dziemy wartościowe aplikacje dostępne na licencji Przemysław Szostakiewicz open source. Doskonałym przykładem jest platforma W niniejszym artykule chciałbym przedstawić narzę- Pentaho Business Intelligence. dzia Open Source, które mogą być przydatne osobom zajmującym się administracją serwerów. Są to narzę- 36 Zimbra Collaboration Suite – dzia darmowe i oferujące szerokie możliwości. Praca grupowa w Open Source. Cz.2 – Migracja, konfiguracja urządzeń Piotr Kupisiewicz W ostatnim numerze Linux+ można było przeczytać, SIECI KOMPUTEROWE czym jest Zimbra, czym różnią się wersje ZCS, na ja- kich urządzeniach można korzystać z systemu, jak wy- 50 Zostań administratorem sieci komputerowej. gląda wersja Offline. Dzisiaj chciałbym opisać, jak mi- Cz. 8: Bezpieczeństwo sieci bezprzewodowych grować do Zimbry, na co wtedy zwrócić uwagę i jakie Rafał Kułaga narzędzia mogą być pomocne w trakcie tego procesu. W poprzedniej części cyklu przedstawione zostały pod- Opiszę także, jak konfigurować urządzenia przenośne stawowe informacje niezbędne do budowy sieci bez- oraz jak optymalnie skonfigurować Zimbrę w firmie. przewodowych standardu IEEE 802.11. W trakcie lek- tury zapoznałeś się również z przykładowymi konfigu- 40 Okiem w chmurach racjami wykorzystującymi różne tryby pracy punktu do- Kacper Pluta stępowego APPro 2405. W artykule przedstawione zo- Nie jesteśmy dużą firmą, ale oferując projekt typu Open stały jedynie podstawowe zagadnienia związane z bez- Source, pracujemy z takimi potentatami jak IBM, Tele- pieczeństwem sieci bezprzewodowych; jest to jednak fonica czy SFR. Google ma ogromny rynek, ale jest też na tyle ważny temat, iż poświęcony jest mu cały niniej- inny rynek użytkowników o konkretnych potrzebach szy artykuł. Zapraszam do lektury! – tajności informacji, prywatności i dostępności danych

Reklama

4 www.sdjournal.org 5 AKTUALNOŚCI Aktualności

Niemcy zaniepokojeni Google iPhone z zainstalowanym Androidem Street View Do tej pory można było oglądać wiele różnych przeróbek i instalacji mobil- Niemieckim władzom nie podoba nego systemu Google – Android na różnych urządzeniach. Tym razem jed- się usługa Google Street View. Tym nak doszło do czegoś większego Jeden z utalentowanych hackerów iPhone- razem nie chodzi o fotografowa- nie ludzi na ulicach, a dostęp do ’a, David Wong, zdołał zainstalować Androida na telefonie iPhone 2G – war- prywatnych sieci WLAN naszych to nadmienić, że Wang jakiś czas temu uruchomił także Linuksa na iPhonie. zachodnich sąsiadów. Zdaniem System można uruchamiać zamiennie z iPhone OS przy pomocy bootloade- tygodnika Der Spiegel niemiec- ra. Wong prezentuje łączenie z siecią Wi-Fi, przeglądanie stron WWW, wysy- kie władze chcą przyjrzeć się bliżej łanie wiadomości SMS i wykonywanie połączenia. Wong wspomina również, zbieraniu materiałów przez firmę że w podobny sposób można zmodyfikować iPhone’a 3G, ale z wersją 3GS Google w ich kraju. Usługa Street View umożliwia użytkownikom najprawdopodobniej byłoby więcej problemów, z powodu różnic sprzęto- Google Maps podgląd ulic czy wych. Jak przyznaje sam autor, system jest dopiero w fazie alfa, jednak głów- placów z punktu widzenia zwykłe- ne funkcje działają tak jak powinny. W chwili obecnej system działa wyłącz- go przechodnia. Obok budynków nie na iPhone’ach 2G, jednak zdaniem twórcy przesortowanie go na nowsze na zdjęciach widoczni są często wersje powinno być tylko kwestią czasu. Oczywiście używanie “iDroida” nie zwykli ludzie, przy czym ich twarze jest zbyt wygodne i stanowi w zasadzie jedynie ciekawostkę. Jest to jednak są zasłaniane. Według Petera Scha- ara, Federalnego Komisarza Ochro- czytelny sygnał w stronę Apple o tym, że to użytkownicy powinni decydować ny Danych i Wolności Informacji, o oprogramowaniu zainstalowanym na ich telefonach, a nie korporacje. Google oprócz zdjęć może skano- wać okolicę pod kątem sieci WLAN Spotkania networkingowe w Twoim mieście. (także tych prywatnych) i zbie- Lublin, Kielce, Rzeszów, Tarnów, Opole, Łódź to miasta, gdzie w maju Grze- rać adresy MAC punktów dostępo- gorz Turniak, Prezes BNI Polska, spotka się z przedsiębiorcami i studenta- wych. Schaar podobno dzwonił do przedstawicieli Google’a z prośbą, mi. Wsiądź za stery swojej kariery. Jest to szansa na nawiązanie wyjątko- aby tego rodzaju informacje zostały wych kontaktów, gdzie ludzie będą mówili o tym, czym się zajmują, analizu- natychmiast usunięte. Według Der jąc wspólne korzyści. W momencie kiedy jest się w czymś dobrym, ale nie Spiegel, Schaar miał powiedzieć, wiadomo, jak to spieniężyć, obowiązkowo trzeba o tym mówić na spotka- że jest przerażony możliwościami niu. Przedsiębiorcy poszukują zazwyczaj młodych talentów oraz partnerów wykorzystania takich informacji. No biznesowych. Jest to doskonałe miejsce dla każdego na porozmawianie ze właśnie, do czego takie informacje swoim pracodawcą na zasadach partnerskich. Spotkanie kończy się ener- mogą się przydać? Mając bazę sieci bezprzewodowych i ich fizycznych gicznym wykładem Grzegorza Turniaka. Spotkania są organizowane przez lokalizacji, można zaoferować użyt- Studenckie Forum Business Center Club (www.sfbcc.org.pl) oraz BNI Pol- kownikom bardziej trafną usługę ska (www.bnipolska.pl). Weź ze sobą wizytówki i sprawdź koniecznie, gdzie geolokalizacji. Wystarczy, że wyśle- się udać na www.dnigoscia.pl my do firmy Google adres MAC punktu bezprzewodowego, do któ- rego jesteśmy aktualnie podłączeni, Adobe nie będzie rozwijać produktów a w odpowiedzi dostaniemy współ- dla iPhone oraz iPad rzędne geograficzne bliskie naszej Firma Adobe wstrzymała swoje dążenia do wprowadzenia aplikacji Flash na aktualnej lokalizacji. Oczywiście jak iPhone’a i iPada. We wtorek Mike Chambers z Adobe poinformował, że firma każde tego typu rozwiązanie, rów- wstrzymuje inwestycje w narzędzia, które miały umożliwiać portowanie apli- nież i to może budzić kontrowersje kacji pisanych we Flashu na urządzenia Apple. Decyzja jest wynikiem zmian wśród osób obawiających się o swo- wprowadzonych przez koncern z Cupertino w regułach deweloperskich. We- ją prywatność. Obawy są jednak w dużej mierze nieuzasadnione, bo dług nowych zasad, każda aplikacja na iPhone’a lub iPada musi być napisa- adres MAC nie jest standardowo na w języku programowania zatwierdzonym przez wysyłany do serwerów interneto- Apple (np. C++). W tym wypadku, producent te- wych podczas nawiązywania połą- lefonu z jabłuszkiem mógłby bez żadnych proble- czenia, więc użytkownik musiałby mów nie dopuszczać do App Store żadnej aplika- samodzielnie poprosić o taką geolo- cji stworzonej przez Adobe Packager – narzędzia, kalizację, ewentualnie w jego imie- niu mogłoby to zrobić jakieś złośli- które w łatwy sposób umożliwia przetłumaczenie we oprogramowanie. To nie pierw- aplikacji napisanej we Flash’u, na język obsługi- sze problemy z usługą Street View. wany przez iPhone’a. Adobe postawione w takiej Pod koniec lutego informowali- sytuacji postanowiło wycofać się z projektu Pac- śmy o apelu Unii Europejskiej, aby kager dla iPhone’a. Na tym kończy się, przynajm- firma informowała lokalne władze niej na razie, nadzieja na ujrzenie aplikacji pisa- o zamiarze fotografowania ulic na nych we Flash’u lub zawierających jego elementy ich terenie. na ekranie iPhone’a.

6 6/2010 www.lpmagazine.org 7 AKTUALNOŚCI Aktualności

Konferencja meetBSD 2010 - do dzieła ! 12 000 instalacji Ubuntu Enterpri- Od dnia 1 maja 2010 wszyscy miłośnicy systemów uniksowych, a w szcze- se Cloud gólności z rodziny BSD, mają możliwość zarejestrowania się na VII edy- Matt Asay z firmy Canonical poinfor- mował, że dystrybucja Ubuntu Enter- cję konferencji z cyklu meetBSD. W tym roku impreza odbędzie się w Kra- prise Cloud posiada już ponad dwa- kowie w dniach 2-3 lipca 2010. Podobnie jak w latach ubiegłych, swo- naście tysięcy wdrożeń, a każdego je prelekcje poprowadzą osoby należące do oficjalnych grup tworzą- dnia przybywa obecnie 200 kolejnych. cych systemy BSD, w tym również goście z zagranicy oraz przedstawi- Liczone są aktywne instalacje, a nie ciele firm związanych lub współpracujących z opensource’owym środo- przypadki, gdy ktoś testował dystry- wiskiem deweloperskim. Tegoroczną nowością i uzupełnieniem właściwej bucję przez kilka dni. Dystrybucja UEC jest dostępna od roku i pozwa- części konferencyjnej będzie możliwość uzyskania certyfikatu BSD Certi- la na tworzenie prywatnych chmur fication Group. Konferencja meetBSD jest już cyklicznym spotkaniem po- obliczeniowych. Jest interesującym święconym otwartym systemom uniksowym, głównie systemom z rodzi- sposobem na optymalne wykorzy- ny BSD, projektom i związanym z nimi ludziom, a także tematyce Open stanie posiadanej infrastruktury oraz Source w ogólności. meetBSD w swoich założeniach ma charakter ściśle pozwala uniezależnić się od rozwią- techniczny, główny nacisk kładziony jest na bardzo wysoką jakość zawar- zań takich firm jak Google, Amazon czy Microsoft. Cano- tości merytorycznej. Konferencja dedykowana jest zarówno osobom za- nical ma nadzieję, że zarobi na dostar- wodowo zajmującym się systemami BSD na co dzień, jak również oso- czaniu wsparcia dla Ubuntu Enterpri- bom chcącym dopiero rozpocząć przygodę z prawdziwie wolnym światem se Cloud, a także narzędziach służą- BSD. Oprócz części merytorycznej, meetBSD to również świetna zaba- cych do monitorowania i zarządznia. wa i towarzyskie spotkanie, na którym, jak podpowiada historia, wieczory Canonical podkreśla, że przez pierw- są pełne wrażeń i atrakcji. Zachęcamy do jak najszybszej rejestracji, gdyż sze pięć lat działalności nie skupiał się konferencja cieszy się ogromną popularnością, a ilość na przynoszeniu zysków. Teraz nastę- puje zmiana nastawienia na bardziej miejsc jest niestety ograniczona. Co roku organizatorzy komercyjne. zamykają wcześniej rejestrację z uwagi na brak miejsc. Więcej szczegółów o samej konferencji: System informowania o utrud- http://www.meetBSD.org nieniach na drodze – TMC, już Serdecznie wszystkich zapraszamy! w Polsce Organizatorzy i współorganizatorzy konferencji meetBSD Fińska firma Destia Traffic od maja 2010 uruchamia w Polsce system 2010 informacji o utrudnieniach drogo- wych – TMC. Nawigacje współpracu- Bezprzewodowe wideo Full HD w netbookach jące z systemem TMC będą automa- już w 2011 r. tycznie aktualizowały trasę w opar- Poznaliśmy kolejne szczegóły nt. platformy Cedar-Trail M, o której mie- ciu o otrzymane dane. TMC z powo- liśmy okazję pisać kilka dni temu. Tym razem mamy okazję poinformo- dzeniem działa u naszych zachodnich sąsiadów (począwszy od Niemiec, koń- wać Was, że Cedar-Trail M wspierać będzie funkcję Intel Wireless Di- cząc na Hiszpanii). Dostarcza on infor- splay 2.0. Nowa platforma Intela dla netbooków wniesie wiele zmian. Pa- macje na temat utrudnień, a nawigacja miętajmy, że tegoroczna linia procesorów Atom N400 nie różni się wiele wylicza nową trasę, omijając np. korek od wydanych 2 lata temu układów N200. Przede wszystkim Intel popeł- czy też wypadek. System TMC prze- nił błąd, pozostawiając bez zmian wydajność i brak wsparcia odtwarzania syła dane za pomocą fal radiowych. obrazów wideo w jakości HD. W Cedar-Trail M drugi z problemów zosta- Firma Destia Traffic podpisała umowę nie jednak rozwiązany, i to z nawiązką. Nowa generacja energooszczęd- z właścicielem stacji RMF-FM i to za ich pomocą będą nadawane informacje. nej platformy Intela nie tylko poradzi sobie z odtwarzaniem obrazów wi- Stacja RMF ma bardzo dobry zasięg deo wysokiej jakości, ale pozwoli nawet przesłać je bezprzewodowo do w całej Polsce, więc dla kierowców wyświetlacza. Warto przy tym pamiętać, że cały czas opisujemy tu wideo jest to dobra informacja. By korzystać w jakości 1080p, które wspierane będzie z systemu TMC, wymagana jest nawi- dopiero przez drugą wersję technologii gacja potrafiąca odbierać fale radio- Wireless Display (pierwsza wspiera 720p we, a także posiadać odpowiednie oprogramowanie. Dla użytkowników i wykorzystywana jest przez niektóre no- system ten wydaje się bezpłatny - tebooki z platformą Calpella). Miejmy tylko zazwyczaj wliczony nadzieję, że do czasu premiery Cedar-Tra- jest w koszt mapy il M, adaptery współpracujące z technolo- lub urządzenia. gią Intel Wireless Display będą łatwiej do- Nie wymaga więc stępne niż obecnie, gdzie na rynku mamy kupowania dodat- kowego abona- zaledwie kilka takich rozwiązań (np. NET- mentu. GEAR Push2TV Adapter).

6 6/2010 www.lpmagazine.org 7 AKTUALNOŚCI Aktualności

Pierwsze informacje Z kim Google dzieli się swoją wiedzą ? o Androidzie 2.2 Nie jest żadną tajemnicą, że polskie oraz zagraniczne służby śledcze bar- Firma Google testuje już kolejną wersję dzo często zdobywają cenne informacje i dowody w wyniku współpracy swojego mobilnego systemu opera- z korporacjami z branży teleinformatycznej. Nic więc dziwnego, że interne- cyjnego Android oznaczonego nume- rem 2.2. Najnowsza odsłona syste- towy gigant z Mountain View otrzymuje co roku od najrozmaitszych rządo- mu, występującego także pod nazwą wych agencji tysiące nakazów udostępnienia danych zgromadzonych przez kodową Froyo, została już dostrzeżo- użytkowników jego rozlicznych usług. Co jednak najciekawsze, amerykań- na w logach serwerów. Nieoficjalnie ski potentat zdecydował się na uruchomienie serwisu prezentującego staty- mówi się, że Android 2.2 będzie bazo- styki tego typu interwencji z podziałem na poszczególne państwa. wał na jądrze Linuksa w wersji 2.6.32, Z serwisu Google government requests dowiemy się, jak kształtują się dzięki czemu ma lepiej wykorzysty- wać dostępną w telefonie pamięć dla poszczególnych państw statystyki żądań kierowanych przez służby do RAM. Ponadto mobilny system Google firmy Google w sprawie usunięcia określonych treści lub też udostępnienia dorobi się radia FM i nie będzie już danych użytkowników poszczególnych usług. Na chwilę obecną dostępne miał problemów z ekranem dotyko- są jedynie dane z drugiej połowy 2009 roku. Zawartość serwisu ma być jed- wym. Wśród praktycznych dodatków nak co pół roku aktualizowana o kolejne półroczne statystyki. Szczegóło- pojawi się także obsługa multikoloro- we informacje na temat powstania samych statystyk oraz ich miarodajno- wych trackballi, które poprzez zmianę ści można odnaleźć w dołączonym dokumencie FAQ. Google government koloru będą informować użytkow- nika o różnych wydarzeniach. Z ko- requests zdradza nam, że w trakcie wspomnianego półrocza, polskie służ- lei deweloperów tworzących aplika- by państwowe 86-krotnie zwróciły się do amerykańskiego giganta z prośbą cje dla Androida ucieszy z pewnością o uzyskanie dostępu do prywatnych danych zgromadzonych przez określo- obecność kompilatora JIT, Flash Play- nych użytkowników. To jednak niewiele w stosunku do czołówki państw za- era 10.1 oraz pełny dostęp do biblio- interesowanych danymi swych obywateli, np. Niemcy. Warto nadmienić, że tek OpenGL ES 2.0. Android 2.2 ujrzy nowy serwis udostępnia również informacje na temat żądań usunięcia okre- światło dzienne prawdopodobnie 19 maja, przy okazji konferencji Google I/ ślonych treści przechowywanych w ramach usług Google. Brak jednak ta- O. Nie jest obec- kich danych (być może wynika to po prostu z braku tego rodzaju żądań) dla nie jasne, które naszego kraju. W przypadku wielu państw, statystki te zostały wzbogacone modele telefo- również o informacje na temat procentowej ilości żądań spełnionych, wraz nów będą mogły z rozbiciem na poszczególne usługi firmy Google. Z wpisu na oficjalnym być zaktuali- blogu firmy Google możemy się dowiedzieć, że nowy serwis ma być swego zowane do tej wersji systemu. rodzaju narzędziem do walki z rosnącymi zapędami wielu rządów do cenzu- rowania Internetu. Czy jednak rzeczywiście serwis Google government re- Konferencja quests może się do tego w jakikolwiek sposób przyczynić? Open Surce Day w Warszawie Serdecznie zapraszamy na konfe- Niepowodzenie akcji ostrzegającej przed rencję Open Source Day 2010, która odbędzie się 12 maja w Warsza- phishingiem wie, w Pałacu Kultury i Nauki. Wysłu- Pod adresem ismycreditcardstolen.com stworzono stronę internetową, któ- chaj wykładów światowych liderów ra ma ostrzegać internautów przed zagrożeniami atakami z wykorzysta- otwartego oprogramowania, m.in. niem phishingu. Niestety akcja edukacyjna tylko początkowo przebiegała Red Hat, JBoss, EnterpriseDB i Zimbra! zgodnie z planem. Pomysł był dobry. Strona miała udawać serwis spraw- Dowiedz się więcej o trendach roz- dzający, czy karta kredytowa, której numer został wpisany, nie została skra- wojowych i wpływie Open Source na dziona. Oczywiście podawanie numeru swojej karty na takiej stronie jest sytuację ekonomiczną firmy. W pro- gramie także wykłady poświęcone bardzo nierozsądne i właśnie uświadomie- m.in. wirtualizacji, bazom danych oraz nie tego internautom było zamierzeniem bezpieczeństwu z SELinuxem. Każdy serwisu. Po wpisaniu danych karty pojawia- uczestnik otrzyma kupon rabatowy ła się strona wyjaśniająca jakie zagrożenie na szkolenia certyfikacyjne Red Hat niesie lekkomyślne podawanie danych swo- i JBoss. Największe w Polsce wyda- jej karty i w jaki sposób stwierdzić, czy da- rzenie poświęcone technologiom Open Source zostało objęte patrona- nej witrynie można zaufać. Był też odno- tem Ministerstwa Gospodarki i osobi- śnik do strony Anti-Phishing Working Gro- ście Pana Premiera Waldemara Pawla- up. W sumie nie należałoby pisać w czasie ka, który otworzy konferencję swoim przeszłym, gdyż strona działa nadal, jednak wykładem. pojawił się problem. Edukacyjna witryna tak Udział w spotkaniu jest bezpłatny dobrze udawała stronę phishingową, że tra- Zapraszamy do rejestracji: www.open- fiła do filtrów antyphishingowych przegląda- sourceday.pl rek internetowych, w tym Firefoksa.

8 6/2010 www.lpmagazine.org 9 AKTUALNOŚCI Aktualności

Skradziono kod uniwersalnego systemu Microsoft: Android narusza uwierzytelniania Google nasze patenty! Podczas ataku określanego jako atak z wykorzystaniem Aurory lub Chiń- Horacio Gutierrez z Microsoftu skiego włamania do Google i innych firm w Grudniu 2009 włamywaczom oświadczył, że Android narusza wiele patentów firmy zarówno w dziedzinie udało się ukraść kod źródłowy aplikacji umożliwiającej pojedynczą auto- interfejsu użytkownika jak i w “bebe- ryzacje do prawie wszystkich usług webowych giganta, w tym kont poczty chach” systemu operacyjnego. To nic Gmail i aplikacji biznesowych. Zgodnie z publikacją “The New York Times” nowego. Android oparty jest przecież atak “Aurora” zaczął się od kliknięcia w link przesłany (IM) przez Microsoft na Linuksie, który jak wiadomo naru- Messenger do jednego z pracowników Google w Chinach, które doprowa- sza 235 patentów firmy z Redmond. dziło do przejęcia komputera tego pracownika. Następnie z tego punktu Od czasu ogłoszenia tego w 2007 roku producent Windowsa nie wyto- wejściowego uzyskali dostęp do komputerów krytycznej grupy develope- czył jednak żadnemu dewelopero- rów w kwaterze Mountain View, gdzie uzyskali dostęp do wyżej wymienio- wi Linuksa czy firmie go wspierają- nego kodu źródłowego funkcjonującego pod nazwą “Gaia”. Uzyskali rów- cej procesu związanego z własnością nież dostęp do innych wewnętrznych katalogów Google np “Moma”, które intelektualną. Podobnie może być zawierają informacje o działalności poszczególnych pracowników. Atakują- teraz. Gutierrez potwierdził, że Micro- cy mieli zadziwiającą wiedzę o twórcach projektu “Gaia” . Mimo tego nie wy- soft nie planuje pozywać, chce jednak gląda na to, aby uzyskali dostęp do haseł kont Gmail poszczególnych użyt- “rozwiązać problem”, bo nie może być tak że “konkurencji żerują na naszych kowników. innowacjach”. Co ciekawe, informa- cja o naruszaniu patentów Microso- Serwisy z linkami i hostingiem są legalne ftu przez Androida pojawiła się tuż po Ostatnio organizacje mające chronić prawa autorskie wraz z mediami zaczę- innym niusie, na temat umowy paten- ły kolejną antypiracką nagonkę. Tym razem pisze się o “nielegalnych” serwi- towej między Microsoftem a HTC, sach hostingowych i portalach z linkami. Tymczasem nielegalne są zazwy- która ma roztoczyć nad tą drugą firmą wachlarz opieki przed Apple czaj jedynie działania użytkowników, a nie administratorów. To tak, jakby za (por. Apple oskarża HTC o narusze- pobicie kijem baseballowym obwiniać producenta pałki. Ponieważ w epoce nia patentów). Microsoft ma zapew- Web 2.0 treści na portalach zazwyczaj tworzą użytkownicy i trudno wyma- ne nadzieję, że strach przed narusza- gać od administratorów, by monitorowali to, co np. miliony użytkowników za- niem patentów odwróci widoczny mieszczają lub mogą zamieszczać w ich serwisach, wprowadzono w Pol- od dłuższego czasu trend wybierania sce (jak i w wielu innych krajach na świecie, w tym w krajach UE i w Stanach przez dystrybutorów systemu Andro- id i rezygnowania z Windows Mobile. Zjednoczonych) odpowiednie przepisy wyłączające odpowiedzialność admi- Przytakuje temu analityk Gartnera, nistratorów (usługodawców udostępniających użytkownikom tylko pewną in- Ken Dulaney, który uważa, że Google frastrukturę) za to, co robią użytkownicy na Portalach. Oczywiście pod pew- nie posiada wystarczającego portfo- nymi warunkami. I tak, zgodnie z artykułem 14 ustawy o świadczeniu usług lio patentowego, aby ochronić HTC drogą elektroniczną, “nie ponosi odpowiedzialności za przechowywane dane przed Apple. ten, kto udostępniając zasoby systemu teleinformatycznego w celu przecho- Firma HP kupuje firmę Palm za wywania danych przez usługobiorcę, nie wie o bezprawnym charakterze da- 1,2 miliarda dolarów. nych lub związanej z nimi działalności, a w razie otrzymania urzędowego za- HP zapowiedziało dzisiejszego wieczo- wiadomienia lub uzyskania wiarygodnej wiadomości o bezprawnym charak- ra, że do końca lipca sfinalizuje trans- terze danych lub związanej z nimi działalności niezwłocznie uniemożliwi do- akcję zakupu firmy Palm, opiewająca stęp do tych danych” (tzw. procedura “notice and takedown”). na kwotę 1,2 miliarda dolarów. Palm, Z powyższego wynikają m. in. następujące konsekwencje: mający od dłuższego czasu proble- my, jest producentem między innymi mobilnego systemu operacyjnego 1. Usługodawca nie musi prewencyjnie przeglądać czy filtrować zawarto- Web OS oraz smartfona Pre. HP zapłaci ści dostarczanych przez usługobiorców; 5,7 dolara za każdą akcję Palma. Plany 2. Jest zwolniony z odpowie- największego producenta kompute- dzialności za dane przecho- rów zakładają wykorzystanie systemu wywane przez użytkowników – WebOS do poprawy swojej pozycji na błyskawicznie rozwijającym się rynku o ile działa zgodnie z powyższą urządzeń mobilnych i smartfonów. procedurą; Gigant z Palo Alto zamierza rozwinąć 3. Usługodawcy należy wska- swoje skrzydła w zać konkretne treści (a nie np. zakresie wielozada- żądać usunięcia wszystkie- niowości oraz dzie- go, co nielegalne – bo to by lenia się aktualny- niweczyło założenie opisane mi informacjami poprzez aplikacje. w punkcie pierwszym.

8 6/2010 www.lpmagazine.org 9 AKTUALNOŚCI

Będzie App Store dla Mac OS X? YouTube rozszerza ofertę filmów na żądanie Deweloperzy dostarczający aplikacje YouTube znacząco zwiększył ilość tytułów dostępnych w stworzonej przez dla systemu Mac OS X są zaniepoko- siebie wypożyczalni wideo, dzięki której za niewielką opłatą można obej- jeni - oficjalna strona firmy Apple, na której mogli umieszczać swoje pro- rzeć jeden z kilkudziesięciu dostępnych w bazie filmów. Jest to ważny krok gramy, najprawdopodobniej zawie- w stronę popularyzacji usług wideo na żądanie. Obecnie jednak wypożyczal- siła działanie. Czy jej miejsce zajmie nia YouTube dostępna jest niestety wyłącznie na terenie USA. YouTube Store e-sklep dla aplikacji? Strona Apple pozwala na wypożyczenie wybranego filmu na okres od 24 do 72 godzin. Ce- Downloads to miejsce, gdzie dewelo- na jest uzależniona od konkretnego tytułu i waha się od 0,99 do 3,99 dolarów. perzy mogą zamieszczać swoje apli- Wśród dostępnych w bazie filmów znalazło się wiele głośnych, hollywoodzkich kacje dla systemu Mac OS X. Oprócz produkcji (Piła, Pan życia i śmierci), japońskich anime, filmów opisujących cie- programów internauci mogą pobie- rać widżety, ikonki czy dodatko- kawe miejsca oraz produkcji naukowych i edukacyjnych. Choć pierwsze pró- we sterowniki. Oczywiście, dostęp- by z płatnym wypożyczaniem wideo miały miejsce w styczniu, dopiero teraz ne są również aplikacje firmy Apple, YouTube zdecydował się dodać do swojego sklepu większą liczbę tytułów. takie jak przeglądarka Safari, pro- Google chwali się, że jego usługa weszła właśnie w etap intensywnego roz- gram Aperture do obróbki zdjęć albo woju i przy jej tworzeniu uczestniczy blisko 500 partnerów. Komentatorzy pod- iTunes. Dodatkowo z Apple Downlo- kreślają jednak, że YouTube Store wkracza na dość zatłoczony rynek i przyj- ads można pobierać aktualizacje sys- temu Mac OS X i najnowsze wersje dzie mu konkurować z podobnymi usługami świadczonymi m.in. przez Netflix pakietów bezpieczeństwa. Jednak i Amazon. Wiele zależy od tego, czy firmie uda się rozszerzyć dostępność wy- strona nie była aktualizowana od pożyczalni na tyle, by mogli z niej korzystać użytkownicy spoza USA. W wie- 26 marca. Brakuje nowych progra- lu krajach rynek płatnego, strumieniowego udostępniania filmów jest jeszcze mów, a także najnowszej aktualiza- dość młody i wypożyczalni Google łatwo byłoby odnieść tam sukces. Obecnie cji Mac OS X 10.6.3. Pojawiły się przy- firma nie zdradza, w jakim kierunku zamierza rozwijać YouTube Store. puszczenia, że Apple może zupełnie zawiesić działalność strony. Byłaby to niemiła wiadomość, bo dzięki niej Polscy wydawcy idą na wojnę z Chomikiem wielu producentów aplikacji dla Mac Wydawcy książek skarżą się na praktyki serwisu Chomikuj.pl, w którym jest OS X wypromowało swoje produkty. pełno nielegalnych kopii książek – w tym „Zaginiony symbol”, najnowsza po- Zdaniem serwisu ArsTechnica powo- wieść Dana Browna, autora „Kodu Leonarda da Vinci”. Publikację, na któ- dów takiego zachowania może być rą polscy internauci czekali ponad cztery lata, tylko z jednego konta pobrano kilka. Jak przypuszczają niektórzy ponad sześć tysięcy razy. Wszystkich użytkowników Chomikuj.pl jest prawie deweloperzy, być może Apple przy- gotowuje się do otwarcia e-sklepu cztery miliony. Łącznie w polskich serwisach, które oficjalnie działają jako za- na kształt App Store, gdzie udo- pasowe wirtualne dyski twarde, znaleźć można około dziesięciu tysięcy tytu- stępnianoby programy dla kompu- łów. Wydawnictwa uważają, że administratorzy stron łamią prawo. Zasypu- terów Mac. Tyle że z takiego rozwią- ją „Chomika” skargami i zgłaszają sprawy organom ścigania. Problemem za- zania wiele osób nie byłoby zadowo- jął się też Bartłomiej Roszkowski, właściciel serwisu Nexto.pl sprzedającego lonych. W App Store to Apple decy- e-booki i książki w wersji audio. Kilka dni temu wysłał do swoich kontrahen- duje, jakie aplikacje zostają wpro- wadzone do sklepu. Jeśli podobnie tów list. Napisał w nim między innymi: „Zwracam się do Państwa z prośbą, miałoby wyglądać z programami dla aby zacząć aktywnie walczyć z serwisami udostępniającymi nielegalnie Pań- Mac OS X, wielu deweloperów nie stwa treści w Internecie. Chcielibyśmy w pierwszej kolejności skierować na- zostałoby dopuszczonych do sprze- sze działania przeciwko serwisowi Chomikuj.pl”. Roszkowski powiedział też daży swoich produktów. Oczywiście, „Rzeczpospolitej”: „Ktoś wreszcie musiał to głośno powiedzieć: Chomikuj.pl, mogliby nadal udostępniać aplika- Wiaderko.pl, Peb.pl czy inne podobnie działające serwisy stają się prawdzi- cje w standardowy sposób, straciliby jednak możliwość ich promowania wą plagą dla wydawców”. Ci nieoficjalnie przyznają, że tracą z powodu „pi- w e-sklepie. Apple, jak dotąd, nie ratów” kilka milionów złotych rocznie. Nie biorą oczywiście pod uwagę tego, podał oficjalnych informacji na temat że większość osób pobierających książki z Sieci przyszłości swojej strony. nie kupiłaby papierowych wydań. Po prostu nie byłoby ich na nie stać. Straty, o których mówią wydawcy, są na pewno przesadzone, a nawet w pewnym stopniu wydumane. Piotr Hałasiewicz, rzecznik Chomikuj.pl, zapewnia tymczasem, że jego firma reaguje na skargi i usuwa naruszają- ce prawo treści. Nie stosuje jednak prewencyj- nej cenzury. Każdy, kto ma jakiekolwiek poję- cie o skali funkcjonowania współczesnych ser- wisów WWW, musi przyznać, że kontrolowanie wszystkich plików jest po prostu niemożliwe.

10 6/2010 Aktualności

Internauci coraz częściej odwiedzają Prawa autorskie do Uniksa: Facebooka SCO chce nowego wyroku. Firma ComScore opublikowała statystyki dotyczące odwiedzin Facebooka. CO Group chce doprowadzić do kolejnego procesu, który miałby Okazuje się, że popularny serwis społecznościowy jest... bardzo popular- rozstrzygnąć, do kogo należą prawa ny. Średnio w ciągu jednego miesiąca notuje 500 mln unikalnych odwiedzin. autorskie do Uniksa. W lecie 2007 Z opublikowanych materiałów, które cytowane są przez TechCrunch, wyni- roku sąd uznał, że ich właścicielem ka, że w marcu Facebooka odwiedziło 500 mln osób - to jest o 64% więcej, jest Novell. Po wniesieniu odwoła- niż w analogicznym okresie w zeszłym roku. Tylko w lutym tego roku w Face- nia przez SCO sąd apelacyjny zade- booku zarejestrowało się 22 mln nowych użytkowników. Z kolei według sta- cydował, że sprawa musi być roz- strzygnięta przez ławę przysięgłych. tystyk Facebooka, w serwisie zarejestrowanych jest obecnie ponad 400 mln Ta z kolei przed kilkoma tygodnia- osób, z czego 100 mln łączy się za pośrednictwem telefonów komórkowych mi potwierdziła prawa Novella. Jak i smartfonów. Prawie 50% spośród użytkowników korzystających z serwi- donosi serwis Groklaw, grupa SCO su codziennie loguje się do swojego konta. Różnica między oficjalnymi sta- złożyła do sądu wniosek, w którym tystykami Facebooka a tymi podanymi przez ComScore wynika najprawdo- domaga się uchylenia wyroku ławy podobniej z faktu, że serwis coraz częściej odwiedzają osoby niezarejestro- przysięgłych i przyznania SCO praw wane na jego stronach. Facebook chce jeszcze bardziej zwiększyć swo- do Uniksa. Proponuje też przepro- wadzenie nowego procesu, twier- ją popularność. Podczas konferencji F8 dla deweloperów, która miała miej- dząc, że ława przysięgłych źle zro- sce wczoraj, zapowiedziano m.in. rozszerzenie funkcji dostępnych w ser- zumiała pytanie, czy prawa autor- wisie na cały Internet. Szef firmy, Mark Zuckerberg, stwierdził, że chciałby, skie zostały przekazane na rzecz aby internauci mogli korzy- SCO na skutek zawarcia umowy stać z dodatków społecz- z Novellem. nościowych podczas sur- fowania po Sieci. Budu- jemy Sieć, gdzie społecz- ność jest domyślna – po- wiedział.

Reklama WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu Część I. Programowanie w C++ i Qt pod Ubuntu Konfiguracja środowiska programistycznego Qt SDK i Eclipse oraz stworzenie prostej aplikacji okienkowej W części pierwszej artykułu zajmiemy się konfiguracją środowiska programistycznego C++ Qt SDK, Qt Creator i Qt Eclipse Integration jako alternatywnego rozwiązania. Stworzymy również pierwszą prostą aplikację okienkową, korzystając z biblioteki Qt 4.6.

rtykuł ten przeznaczony jest w głównej mierze lukasz@IS:~/Pobrane$ chmod +x qt-sdk-linux-x86_64- dla początkujących programistów C++ chcą- opensource-2010.02.bin A cych tworzyć aplikacje komputerowe na syste- mie Linux w oparciu o dystrybucję Ubuntu, którą moż- lub też po prostu skorzystać z graficznego interfej- na pobrać ze strony www.ubuntu.pl – nazwa aktualnej su użytkownika dostępnego z Ubuntu: wtedy nale- polskiej wersji Ubuntu to Karmelkowy Koliberek. Arty- ży kliknąć prawym klawiszem myszy na pliku *.bin, kuł został podzielony na kilka części takich jak: „Śro- wybrać właściwości i w zakładce uprawnienia zazna- dowisko programistyczne Qt SDK, Qt Creator”, „Inte- czyć pole Zezwolić na wykonanie pliku jako progra- gracja Qt z Eclipse” oraz „Pierwsza aplikacja w Qt”. mu. Wpisujemy komendę w konsoli ./qt-sdk-linux- Serdecznie zapraszam do artykułu. x86 _ 64-opensource-2010.02.bin i proces instalacji Qt SDK się rozpocznie. Środowisko programistyczne Qt SDK, Qt Creator Uwaga przed instalacją Qt SDK W pierwszej kolejności musimy pobrać odpowiednie Przed rozpoczęciem procesu instalacji Qt SDK należy pakiety instalacyjne pasujące do Twojego systemu. wykonać następujące polecenia w konsoli: Wybieramy między pakietami dla 64 lub 32 bitowych systemów, w zależności od tego, jaką wersję Ubuntu lukasz@IS:~/Pobrane$ sudo apt-get install libglib2.0- posiadasz zainstalowaną na swoim komputerze. dev libSM-dev libxrender-dev Ze strony qt.nokia.com/downloads z zakład- libfontconfig1-dev libxext-dev ki LGPL pobieramy odpowiednią wersję Qt SDK, lukasz@IS:~/Pobrane$ sudo apt-get install libgl-dev w skład której wchodzi również Qt Creator – dosko- libglu-dev nale zintegrowane IDE dla biblioteki Qt. Następnie, aby zainstalować Qt SDK, musimy nadać odpowied- Jeśli przy podaniu powyższego polecenia otrzymasz nie uprawnienia dla pliku instalacyjnego z końców- podobną informację jak poniżej: ką *.bin, czyli w naszym przypadku qt-sdk-linux- x86_64-opensource-2010.02.bin. Możemy do tego lukasz@IS:~/Pobrane$ sudo apt-get install libgl-dev celu użyć Terminala (Programy/Akcesoria/Terminal) libglu-dev i wydać polecenie: Czytanie list pakietów... Gotowe

12 6/2010 www.lpmagazine.org 13 WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu

Budowanie drzewa zależności Creator (po instalacji powinien być widoczny skrót na Odczyt informacji o stanie... Gotowe pulpicie Ubuntu). Pakiet libgl-dev jest pakietem wirtualnym zapewnianym przez: Pierwsza aplikacja w Qt nvidia-glx-96-dev 96.43.13-0ubuntu6 nvidia-glx-185-dev 185.18.36-0ubuntu9 Założenia nvidia-glx-173-dev 173.14.20-0ubuntu5 Zaczynając tworzenie aplikacji komputerowej, powin- libgl1-mesa-dev 7.6.0-1ubuntu4 nyśmy rozpocząć od zaplanowania aplikacji. Może- Należy jednoznacznie wybrać jeden z nich do instalacji. my to wykonać przy pomocy specjalnego programu E: Pakiet libgl-dev nie ma kandydata do instalacji lub po prostu na kartce papieru. Ważne jest, abyś so- bie wizualnie uzmysłowił, co chciałbyś uzyskać. Przy- to w takim przypadku należy wybrać odpowiedni pa- kład bardzo prostego planu możesz zobaczyć na Ry- kiet do instalacji zamiast libgl-dev, czyli w moim przy- sunku 1. padku będzie to nvidia-glx-185-dev. Po udanej insta- lacji wymaganych pakietów przechodzimy do instala- Listing 1. Zawartość pliku mainwindow.h po utworzeniu cji Qt SDK. nowego projektu

Proces instalacji Qt SDK #ifndef MAINWINDOW_H #define MAINWINDOW_H • Akceptujemy warunki licencji i klikamy next. • Wybieramy katalog instalacji Qt SDK – możemy #include pozostawić domyślny, czyli np. w moim przypadku

jest to /home/lukasz/qtsdk-2010.02. namespace Ui { • W następnym oknie zaznaczamy opcję Qt Creator class MainWindow; (domyślnie powinno być zaznaczone) i Qt Deve- } lopment Libraries.

• Akceptujemy aż do uruchomienia instalatora. Ja- class MainWindow : public QMainWindow { ko że Qt SDK waży około 440MB, to proces in- Q_OBJECT stalacji może potrwać 2-3 minuty, w zależności od public: szybkości komputera. MainWindow(QWidget *parent = 0); • Po udanej instalacji możemy już uruchomić Qt ~MainWindow(); Creator.

protected: Integracja Qt z Eclipse void changeEvent(QEvent *e); Ze strony http://www.eclipse.org/downloads/ pobie-

ramy Eclipse IDE for C/C++ Developers dla systemu private: Linux – mamy do wyboru wersję 32 i 64 bitową. Na- Ui::MainWindow *ui; stępnie uruchamiamy eclipse, wybieramy Help/Install }; New Software i jako nową stronę wpisujemy http:// download.eclipse.org/tools/cdt/releases/galileo, insta- #endif // MAINWINDOW_H lujemy CDT. Pobieramy ze strony http://qt.nokia.com/ developer/eclipse-integration qt-eclipse-integration Listing 2. Zawartość pliku main.cpp po utworzeniu nowego - mamy do wyboru wersję 32 i 64 – rozpakowujemy projektu archiwum do katalogu Eclipse, nadpisując go. Musi- my również zainstalować Qt SDK for Open Source #include C++ development dla systemu Linux ze strony http: #include "mainwindow.h" //qt.nokia.com/download/sdk-linux-x11-32bit-cpp lub

http://qt.nokia.com/download/sdk-linux-x11-64bit-cpp, int main(int argc, char *argv[]) w zależności od architektury Twojego systemu. Osta- { tecznie uruchamiamy Eclipse z opcją -clean, co za- QApplication a(argc, argv); pewni wyczyszczenie cachu Eclipse. MainWindow w; Zakończyliśmy proces instalacji Qt SDK lub Qt z Ec- w.show(); lipse. W dalszej części artykułu będziemy tworzyć return a.exec(); prostą aplikację, używając środowiska Qt Creator do- } starczonego razem z Qt SDK. Uruchomiamy więc Qt

12 6/2010 www.lpmagazine.org 13 WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu

Nasza aplikacja będzie składała się z menu, głów- Tworzenie projektu w Qt Creator nego okna aplikacji i status bar. Struktura menu bę- Gdy już mamy opisany pomysł aplikacji, możemy za- dzie następująca: brać się za programowanie. W tym celu uruchamia- my Qt Creator i tworzymy nowy projekt, wybiera- • Plik jąc z menu Plik/Nowy plik lub projekt, a następnie • Wczytaj zdjęcie (ctrl+w) w oknie wyboru wskazujemy na Projekty i Aplikacja • Separator (linia oddzielająca) GUI Qt4. W kolejnym oknie podajemy nazwę projek- • Zakończ (ctrl+q) tu, np. WczytajZdjęcie, i wybieramy katalog projektu. • Pomoc Dalej mamy możliwość wyboru kilku różnych modu- • O programie łów, które możemy włączyć do projektu, jak np.: QtCo- re, QtGui, QtNetwork, QtOpenGL, QtSql, QtScript, Qt- Główne okno aplikacji będzie zawierało obszar na ScriptTools, QtSvg, QtWebKit, QtXml, QtXmlPatterns, zdjęcie, informacje o zdjęciu. Natomiast status bar , QtMultimedia, Qt3Support, QtTest, QtDBus. będzie prezentował dodatkowe informacje w zależ- Dla naszych celów wystarczą tylko dwa moduły: Qt- ności od wykonywanych akcji. Opcja Wczytaj zdję- Core i QtGui. Opisem możliwości poszczególnych cie będzie mogła wczytać do programu zdjęcie ty- modułów zajmiemy się w następnym artykule. Na ra- pu JPG i żadne inne. W oknie głównym po wczytaniu zie skupimy się na tych dwóch modułach, aby przed- pliku pojawi się zdjęcie z suwakami, jeśli jego wiel- stawić podstawy projektowania aplikacji w Qt, tak kość będzie większa niż zdefiniowany obszar sce- abyś mógł sam zacząć już eksperymentować w ocze- ny oraz szczegółowe informacje takie jak szerokość kiwaniu na kolejny numer Linux+. W następnym oknie i wysokość. Opcja zakończ będzie powodować wyj- możemy ustawić nazwę klasy podstawowej, niech zo- ście z programu, natomiast opcja O programie wy- stanie MainWindow i QmainWindow. Ogólnie pozo- świetli okienko dialogowe z informacją o wersji pro- stawiamy domyślne ustawienia i przechodzimy dalej, gramu i autorze. a następnie klikamy zakończ, co spowoduje stworze- nie projektu aplikacji. Listing 3. Zawartość pliku mainwindow.cpp po utworzeniu Jak pewnie zauważyłeś, zostaliśmy przełączeni od nowego projektu razu na zakładkę Edycja. W projekcie WczytajZdjecie pojawiły się trzy katalogi: Formularze, Nagłówki i Źró- #include "mainwindow.h" dła. W katalogu Formularze przechowywane są for- #include "ui_mainwindow.h" matki, u nas mainwindow.ui. Katalog Nagłówki zawie- ra pliki nagłówkowe mainwindow.h (Listing 1). W kata- MainWindow::MainWindow(QWidget *parent) : logu Źródła zawarte są pliki źródłowe, właściwie tutaj QMainWindow(parent), będziemy programować zachowanie naszej aplikacji. ui(new Ui::MainWindow) Obecnie są dwa pliki: main.cpp (Listing 2) i mainwin- { dow.cpp (Listing 3). ui->setupUi(this); } Projektowanie graficznego interfejsu użytkownika MainWindow::~MainWindow() Z katalogu Formularze wybieramy mainwindow.ui { (Rysunek 2). Pojawi się okno edycji formatki Main- delete ui; Window. Aby stworzyć strukturę menu, należy klik- }

void MainWindow::changeEvent(QEvent *e) { QMainWindow::changeEvent(e); switch (e->type()) { case QEvent::LanguageChange: ui->retranslateUi(this); break; default: break; } } Rysunek 1. Przykład prostego planu aplikacji komputerowej

14 6/2010 www.lpmagazine.org 15 WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu

nąć w miejscu Wpisz tutaj i wpisać Plik, a następ- my na action_WczytajZdjecie. Podobnie w przypadku nie dodać &Wczytaj plik, separator i &Zakończ. Zna- akcji Zakończ, zamieniamy na action_Zakoncz. Na- czek & oznacza możliwość wyboru opcji menu po- stępnie przypiszemy tym opcjom skróty klawiaturo- przez wciśnięcie W lub Z w celu wywołania danej ak- we. W tym celu należy wybrać z menu Wczytaj zdję- cji. Zostały utworzone dwie akcje action_Wczytaj_plik cie i w oknie QAction odszukujemy opcję shortcut, kli- i action_Zako_cz. Jednakże my te nazwy zmienimy kamy w pustym polu i wciskamy kombinację klawiszy na troszkę ładniejsze. Klikamy w menu rozwijalnym CTRL+W. Podobnie postępujemy w przypadku akcji opcję Wczytaj zdjęcie i w oknie QAction odnajdujemy Zakończ (CTRL+Q). Dodajemy również główną opcję sekcję QObject i pole objectName, pole to zmienia- Pomoc, a w niej O programie. Zmieniamy również na-

Rysunek 2. Widok edycji formatki QMainWindow

Listing 4. Metoda WczytajZdjecie_clicked()

void MainWindow::WczytajZdjecie_clicked() { QString fileName = QFileDialog::getOpenFileName(this,"","","Dopuszczalne formaty (*.jpg)");

QGraphicsScene *scene = new QGraphicsScene(); QPixmap pix;

pix.load(fileName); scene->addPixmap(pix);

this->ui->graphicsView->setScene(scene); this->ui->graphicsView->show();

this->ui->labelSzerokosc->setText(QString::number(pix.width())); this->ui->labelWysokosc->setText(QString::number(pix.height())); }

14 6/2010 www.lpmagazine.org 15 WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu

zwę obiektu z action_O_programie na action_OPro- my background i ustawiamy interesujący nas kolor. Do- gramie. Dodamy jeszcze podpowiedzi StatusTip do dajmy również następny Widget typu Label na wysoko- tych opcji, które będą się wyświetlać w trakcie wy- ści pierwszego, ale w wolnym miejscu po prawej (zo- bierania na listwie Status Bar. Przykładowo dla opcji bacz na Rysunku 4). Dodamy jeszcze 4 Widgety typu Wczytaj zdjęcie odnajdujemy w oknie QAction opcję Label. Dwa widoczne i dwa puste dla wartości pobiera- statusTip, klikamy na puste pole i wpisujemy Wczy- nych ze zdjęcia. Będą to Szerokość, Wysokość i obok taj zdjęcie do programu. Dla opcji Zakończ wpisujemy Wyjście z programu. Dla ostatniej opcji O Programie Listing 5. Metoda Zakoncz_clicked() i OProgramie_clicked() wpisujemy Informacje o programie.

Teraz usuniemy niepotrzebny w naszej aplikacji pa- void MainWindow::Zakoncz_clicked() sek narzędzi toolBar. W tym celu kliknij na pasku znaj- { dującego się na formatce aplikacji prawym klawiszem QApplication::closeAllWindows(); myszy i wybierz z menu kontekstowego opcję Usuń } pasek narzędzi toolBar. Kolejnym krokiem będzie

ustawienie minimalnej szerokości i wysokości okna void MainWindow::OProgramie_clicked() aplikacji. Zaznaczamy formatkę lewym klawiszem my- { szy i w oknie QmainWindow w sekcji QWidget odnaj- QTextCodec::setCodecForCStrings(QTextCodec:: dujemy pole Szerokość wpisujemy 485, a w polu Wy- codecForName("utf8")); sokość 385. Teraz możemy uruchomić naszą aplika- QMessageBox::information(this, "Wczytaj cję, aby zobaczyć, jak będzie wyglądała (CTRL+R lub zdjęcie","Prosta aplikacja w Budowanie/Uruchom). Zobacz Rysunek 3, na którym Qt\n\nautor: Łukasz Klejnberg, przedstawiony jest dotychczasowy efekt naszej pra- IdealSolutions.pl"); cy. Możemy jeszcze zmienić tytuł okna na np. Wczytaj } zdjęcie. W tym celu znajdź opcję windowTitle i zmień wartość tego pola. Listing 6. Zmiany w pliku mainwindow.h W części głównej aplikacji dodamy Display Widget o nazwie Graphics View. Kliknij, przeciągnij i upuść na #ifndef MAINWINDOW_H formatce w dowolnym miejscu (domyślna nazwa obiek- #define MAINWINDOW_H tu to graphicsView). Następnie w oknie QGraphicsView sekcji GWidget ustawiamy pole geometry, pole X usta- #include wiamy na 10, a pole Y na 20. Pole Szerokość ustawia-

my na 310, a Wysokość na 300. Nad Widgetem Gra- namespace Ui { phics View dodajemy Widget Label o treści Zdjęcie:. class MainWindow; Możemy również zmienić kolor tego Widgetu poprzez } dodanie koloru w oknie QLabel sekcji QWidget polu sty-

leSheet. Klikamy w ikonkę trzech kropek, a następnie class MainWindow : public QMainWindow { w nowym oknie z listy rozwijalnej Dodaj kolor wybiera- Q_OBJECT public: MainWindow(QWidget *parent = 0); ~MainWindow();

protected: void changeEvent(QEvent *e);

private slots: void WczytajZdjecie_clicked(); void Zakoncz_clicked(); void OProgramie_clicked();

private: Ui::MainWindow *ui; };

#endif // MAINWINDOW_H Rysunek 3. Widok aplikacji z ustawionym menu

16 6/2010 www.lpmagazine.org 17 WARSZTATY Część I. Programowanie w C++ i Qt pod Ubuntu

Listing 7. Zmiany w pliku mainwindow.cpp

#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->action_WczytajZdjecie, SIGNAL(triggered()), this, SLOT(WczytajZdjecie_clicked())); connect(ui->action_Zakoncz, SIGNAL(triggered()), this, SLOT(Zakoncz_clicked())); connect(ui->actionOProgramie, SIGNAL(triggered()), this, SLOT(OProgramie_clicked())); } MainWindow::~MainWindow() { delete ui; } void MainWindow::changeEvent(QEvent *e) { QMainWindow::changeEvent(e); switch (e->type()) { case QEvent::LanguageChange: ui->retranslateUi(this); break; default: break; } } void MainWindow::WczytajZdjecie_clicked() { QString fileName = QFileDialog::getOpenFileName(this,"","","Dopuszczalne formaty (*.jpg)"); QGraphicsScene *scene = new QGraphicsScene(); QPixmap pix; pix.load(fileName); scene->addPixmap(pix);

this->ui->graphicsView->setScene(scene); this->ui->graphicsView->show(); this->ui->labelSzerokosc->setText(QString::number(pix.width())); this->ui->labelWysokosc->setText(QString::number(pix.height())); } void MainWindow::Zakoncz_clicked() { QApplication::closeAllWindows(); } void MainWindow::OProgramie_clicked() { QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8")); QMessageBox::information(this, "Wczytaj zdjęcie","Prosta aplikacja w Qt\n\nautor: Łukasz Klejnberg, IdealSolutions.pl"); }

16 6/2010 www.lpmagazine.org 17 WARSZTATY

nich labelSzerokosc, labelWysokosc, które ustawiamy na puste (zobacz na Rysunku 4). Dodamy teraz możliwość wczytania pliku graficzne- go o formacie *.jpg do Widgetu graphicsView. Przejdź- my do edycji pliku mainwindow.h. W klasie MainWin- dow należy dodać:

private slots: void: WczytajZdjecie_clicked();

Następnie przechodzimy do edycji pliku mainwin- dow.cpp, gdzie dodamy obsługę wczytania zdjęcia oraz jego szerokości i wysokości. W metodzie Main- Window dodajemy sygnał i slot:

connect(ui->action_WczytajZdjecie, SIGNAL(triggered()), this, SLOT(WczytajZdjecie_ Rysunek 5. Gotowa aplikacja Wczytaj Zdjęcie clicked())); metodzie number QString::number(pix.width()). Wła- Musimy teraz dodać metodę WczytajZdjecie _ ściwie aplikacja jest już gotowa. Musimy dodać jesz- clicked() (Listing 4). cze tylko obsługę akcji Zakończ oraz O programie. Do- Wiersz zawierający QString fileName = QFileDialog: damy dwa nowe sloty w pliku mainwindow.h: :getOpenFileName(this,"","","Dopuszczalne formaty (*.jpg)"); deklaruje obiekt fileName, który ma ogra- void Zakoncz_clicked(); niczone możliwości wczytywania plików. W naszym void Oprogramie_clicked(); przypadku filtrowane są wszystkie pliki oprócz pli- ków *.jpg. Następnie deklarujemy scenę i wczytuje- Następnie w pliku mainwindow.cpp dodajemy dwa my zdjęcie na scenę. Ostatecznie przy pomocy this- sygnały i sloty: >ui->graphicsView->show(); wyświetlamy zdjęcie. Po- zostało jeszcze ustawić szerokość i wysokość etykiet connect(ui->action_Zakoncz, SIGNAL(triggered()), this, labelSzerokosc i labelWysokosc. Jest to bardzo proste, SLOT(Zakoncz_clicked())); jednakże przed zapisaniem danych liczbowych do pola connect(ui->actionOProgramie, SIGNAL(triggered()), typu string musimy wykonać drobne rzutowanie dzięki this, SLOT(OProgramie_clicked()));

Rysunek 4. Zawartość głównego okna

18 6/2010 Część I. Programowanie w C++ i Qt pod Ubuntu

Przydatne adresy

• http://qt.nokia.com – serwis www biblioteki Qt; • http://qt.nokia.com/doc/4.6/index.html – dokumentacja biblioteki Qt; • http://doc.qt.nokia.com/4.6/tutorials.html – przykładowe tutoriale; • http://cartan.cas.suffolk.edu/oopdocbook/opensource/ – książka wersji online – Introduction to Design Patterns in C++ with Qt4; • http://www.pdf-search-engine.com/qt4-pdf.html – różne przydatne pliki w pdf dotyczące biblioteki Qt;

Dodamy teraz dwie metody obsługujące te dwa zda- narzędzie Qt SDK jest bardzo rozbudowane i w jed- rzenia (Listing 5). nym artykule nie dałoby się przedstawić wszystkich W metodzie OProgramie_clicked() została użyta jego możliwości. Mam nadzieję, że artykuł zacieka- metoda information z klasy QMessageBox. Powoduje to wił Cię do tego stopnia, że spróbujesz napisać aplika- wyświetlenie okienka informacyjnego z krótką infor- cję w Qt. W następnej części artykułu stworzymy bar- macją o programie. Na Listingu 6 i 7 widoczne są pli- dziej zaawansowaną aplikację, która będzie korzysta- ki mainwindow.h i mainwindow.cpp po zmianach, któ- ła już z innych modułów oprócz standardowych QtGui re przed chwilą wprowadziliśmy. i QtCore. Wystarczy teraz przebudować całą aplikację (Budowanie/Przebuduj wszystko) i uruchomić (ctrl+r). ŁUKASZ KLEJNBERG Spróbuj załadować zdjęcie, wynik powinien być po- Jest właścicielem �rmy Ideal Solutions zajmującej się projek- dobny jak na Rysunku 5. towaniem aplikacji internetowych i komputerowych. Kom- puterami zajmuje się od roku 1989. W zawodzie programisty Podsumowanie pracuje od 2000 roku. Także od 2000 roku pracuje nieustan- W pierwszej części artykułu przedstawiłem pokrótce nie na systemach Linux: Fedora, Slackware, Debian i Ubuntu. zasady tworzenia aplikacji w Qt Creator. Jednakże Kontakt z autorem: [email protected]

Reklama

www.lpmagazine.org 19 PRAKTYKA Pingwin w pudełku Pingwin w pudełku Są trzy podstawowe sposoby na uruchomienie serwera wirtualnego (VPS). Pierwszy z nich to pełna wirtualizacja. Drugi – parawirtualizacja – wymaga modyfikacji goszczonego systemu operacyjnego ale odwdzięcza się wyższą wydajnością. Trzecie podejście zakłada jeszcze bliższe więzy między gospodarzem i gośćmi i jest rozwinięciem znanych od lat środowisk chroot().

ą trzy podstawowe sposoby na uruchomienie Lekka wirtualizacja serwera wirtualnego (VPS). Pierwszy z nich Wirtualizacja taka jest dostarczana razem z systema- S to pełna wirtualizacja, oferowana przez pro- mi FreeBSD (jails) i Solaris (zones). Dla Linuksa do- dukty takie jak qemu, VirtualBox i VMWare. Da- stępne są rozwijane od lat projekty OpenVZ i Linux- ją one pełną niezależność goszczonego systemu VServer. Pierwszy z nich stanowi podstawę dla ko- operacyjnego od platformy gospodarza i pozwala- mercyjnego produktu Virtuozzo i odznacza się boga- ją na uruchomienie dowolnego systemu wspierane- tą funkcjonalnością oraz dopracowaniem. Ma on jed- go przez procesor. Drugi – parawirtualizacja – wy- nak kilka ograniczeń, które sprawiają, że nie w każ- maga modyfikacji goszczonego systemu operacyjne- dym środowisku sprawdzi się równie dobrze. Wynikają go, ale odwdzięcza się wyższą wydajnością. Z roz- one w dużej mierze z ukierunkowania na RHEL i bliź- wiązań linuksowych warto tu wymienić projekt niacze dystrybucje. Linux-VServer zaś nie ma korpo- i KVM – młody, ale zdobywający coraz większą po- racyjnego zaplecza, a za cel stawia sobie zminimali- pularność. Granica między tymi dwoma podejściami zowanie uszczerbku na wydajności wywołanego wirtu- powoli zaciera się, między innymi dzięki rozszerze- alizacją. Żaden z tych projektów nie jest idealny, dlate- niom wspomagającym wirtualizację w procesorach go też nie doczekały się włączenia do głównego drze- kilku ostatnich generacji. Trzecie podejście zakła- wa jądra Linuksa. Żeby zatem skorzystać z oferowa- da jeszcze bliższe więzy między gospodarzem i go- nych przez nie możliwości, trzeba zbudować własne śćmi i jest rozwinięciem znanych od lat środowisk jądro lub skorzystać z dystrybucji, która oferuje odpo- chroot(). W tradycyjnym środowisku tego typu głów- wiednie pakiety. ny serwer dzieli z maszynami wirtualnymi jądro sys- Nie oznacza to jednak, że niełatane jądro jest zu- temu operacyjnego, pamięć, sieć i wszystkie inne za- pełnie nieświadome "lekkiej" wirtualizacji. Od wersji soby poza systemem plików. Ponieważ narzut zwią- 2.6.19[*] sukcesywnie pojawia się wsparcie dla nowych zany z taką formą wirtualizacji jest minimalny, jest rodzajów namespace'ów. Są to twory pozwalające na to zdecydowanie najszybsze rozwiązanie. Z drugiej wydzielenie grupy procesów spod normalnego zarzą- jednak strony, chroot() nie zapewnia wymaganej ela- dzania jakimś zasobem i stworzenie dla nich specjalnej styczności ani dostatecznego bezpieczeństwa. Pa- wersji świata. Najprostszym przykładem jest UTS_NA- naceum na te bolączki obiecuje wirtualizacja oparta MESPACE, pozwalający grupie procesów zmienić na- o system operacyjny. zwę systemu, na którym działają, bez wpływu na host-

20 6/2010 www.lpmagazine.org 21 PRAKTYKA Pingwin w pudełku

name widziany przez pozostałe procesy. Bardziej roz- (LXC). Nie implementuje on całej funkcjonalności budowany jest namespace identyfikatorów procesów OpenVZ i Linux-VServer, jednak obecność w głównej (PIDNS). Pozwala on wydzielić drzewo procesów z wła- gałęzi jądra oznacza dla LXC duże korzyści. Przede sną numeracją, począwszy od pid 1. Numer ten dostaje wszystkim oznacza ona dobrą integrację namespa- pierwszy proces w takiej przestrzeni nazw i pełni on ro- ce'ów z resztą jądra, jak również poszerza grono de- lę identyczną jak prawdziwy init, tj. przechwytuje osiero- veloperów uczestniczących w rozwoju kodu, co pozy- cone procesy. Innym złożonym namespace jest NETNS (przestrzeń nazw dla urządzeń sieciowych). Dzięki niej Listing 1. Kon�guracja interfejsu br0 każdy VPS może mieć własną listę interfejsów siecio-

wych, zarówno rzeczywistych, jak i wirtualnych. Wśród # tworzymy "switch", do którego podłączony będzie tych drugich warto zwrócić uwagę na macvlan, czyli VPS klon rzeczywistej karty sieciowej z innym adresem MAC brctl addbr br0 oraz veth, czyli parę interfejsów przekazujących pakie- # nie korzystamy z STP, switch ma przekazywać ty między sobą nawzajem. Jeden z końców takiej pa- pakiety od razu ry można przenieść do środka VPSa, a drugi zostawić brctl setfd br0 0 w systemie gospodarza, co pozwala na proste zapew-

nienie łączności VPSa ze światem zewnętrznym. Każ- # podłączamy system gospodarza do "switcha" dy serwer wirtualny posiada również własną konfigura- ip link set dev br0 up cję firewalla. Wszystkie wspierane obecnie namespa- ip addr add dev br0 127.17.0.1/24 ce'y były obecne w jądrze 2.6.27, natomiast pełną funk- # i konfigurujemy na nim prosty router z NAT cjonalność osiągnęły w wersji 2.6.29. sysctl -w net.ipv4.ip_forward=1 Dopełnieniem namespace'ów są control groups iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE (cgroups), które raczej służą ograniczaniu zużycia za- iptables -I FORWARD -i br0 -o eth0 -j ACCEPT sobów przez wybrane grupy procesów niż tworzeniu iptables -I FORWARD -o br0 -i eth0 -j ACCEPT iluzji niezależnego systemu. Od momentu pojawienia się w wersji 2.6.24 regularnie pojawiają się nowe mo- Listing 2. Plik z kon�guracją VPSa duły, rozszerzające funkcjonalność cgroups. Przykła- dowe moduły pozwalają na: ograniczenie proceso- lxc.utsname = vzcentos rów dostępnych dla grupy, kontrolę nad czasem pro- lxc.tty = 4 cesora przydzielonym grupie (aby nie zmonopolizo- lxc.network.type = veth wała CPU), ograniczenie dostępnej pamięci (fizycz- lxc.network.flags = up nej i swap) i udostępnienie tylko wybranych urządzeń lxc.network.link = br0 (w znaczeniu plików w /dev). Można też cały ruch sie- lxc.network.name = eth0 ciowy generowany przez grupę odpowiednio otago- lxc.network.mtu = 1500 wać na warstwie QoS i ustalić maksymalną przepu- lxc.rootfs = /var/lib/lxc/rootfs.vzcentos stowość dysku dostępną dla grupy. Aktualnie rozwi- lxc.cgroup.devices.deny = a jany jest również moduł pozwalający na ograniczenie # /dev/null and zero w obrębie grupy ilości brudnej pamięci (tj. takiej, którą lxc.cgroup.devices.allow = c 1:3 rwm trzeba wkrótce zapisać na dysku). Pozwoli on na jesz- lxc.cgroup.devices.allow = c 1:5 rwm cze skuteczniejszą kontrolę wykorzystania dostęp- # consoles nych zasobów. Bardzo ciekawą funkcjonalność otwie- lxc.cgroup.devices.allow = c 5:1 rwm ra również moduł freezer. Sam w sobie pozwala on je- lxc.cgroup.devices.allow = c 5:0 rwm dynie na zatrzymanie wszystkich procesów w grupie lxc.cgroup.devices.allow = c 4:0 rwm (jak hurtowy kill -STOP), ale jest kamieniem węgiel- lxc.cgroup.devices.allow = c 4:1 rwm nym pod checkpoint/restart. C/R to możliwość zapisa- # /dev/{,u}random nia bieżącego stanu grupy procesów i późniejszego je- lxc.cgroup.devices.allow = c 1:9 rwm go odtworzenia (np. na innym serwerze fizycznym lub lxc.cgroup.devices.allow = c 1:8 rwm po restarcie gospodarza). Podobna możliwość w ogra- # /dev/pts/* niczonym zakresie jest obecnie dostępna w OpenVZ. lxc.cgroup.devices.allow = c 136:* rwm Zestaw łat dla checkpoint/restart jest aktualnie burzli- # rtc wie rozwijany i ma szansę trafić do jądra 2.6.35. lxc.cgroup.devices.allow = c 254:0 rwm

LXC wkracza na scenę lxc.pts = 1000 Połączenie namespace'ów i cgroup, z naciskiem na te pierwsze, określa się jako projekt Linux Containers

20 6/2010 www.lpmagazine.org 21 PRAKTYKA Pingwin w pudełku

tywnie wpływa na jego jakość i stabilność. Zyskuje na swoją prostotę i ukierunkowanie wyłącznie na Linux tym również OpenVZ, jak i Linux-VServer – w kolej- Containers, lxc rozwija się równie szybko jak funkcjo- nych wersjach w coraz większym stopniu wykorzystu- nalność w jądrze – istnieje już np. eksperymentalne ją namespace'y. Kolejną zaletą LXC jest elastyczna wsparcie dla checkpoint/restart. lxc to optymalny spo- architektura, zgodna z założeniami jądra. Namespa- sób na wypróbowanie możliwości Linux Containers. ce'y i cgroups dają określone możliwości, ale nie de- Nieco inny profil reprezentuje powstały w ramach ini- finiują polityki, która określa, w jaki sposób z nich ko- cjatywy RedHat Emerging Technologies projekt libvirt. rzystać. Dzięki temu można dowolnie składać "z kloc- Ma on na celu ujednolicenie zarządzania wszelkimi ków" serwery o wymaganym stopniu izolacji, np. z wła- mechanizmami wirtualizacji. Niezależnie od techno- snym stosem sieciowym, ale wspólnym systemem pli- logii (KVM, Xen, LXC i inne), libvirt dostarcza jedno- ków. W porównaniu z OpenVZ, traktującym wirtualiza- lity sposób konfiguracji, oparty o pliki XML, oraz jed- cję całościowo, jest to widoczna korzyść i pozwala wy- nolity interfejs dla programistów różnych języków. Po- korzystać LXC na różne sposoby, nie polegające na mimo swojej nazwy, libvirt to nie tylko biblioteka, ale stworzeniu kompletnego VPSa, ale np. na ogranicza- również zestaw narzędzi o możliwościach porówny- niu poszczególnych aplikacji. walnych do lxc. Sama infrastruktura libvirt umożliwia Aby od abstrakcyjnej koncepcji namespace'ów również zarządzanie VPSami na wielu maszynach przejść do działającego VPSa, potrzebne jest wspar- z centralnej konsoli. Można się spodziewać, że gdy cie w przestrzeni użytkownika. Do tworzenia ser- zestaw łat do checkpoint/restart osiągnie stabilność, werów wirtualnych i zarządzania nimi służą przede w libvirt_lxc pojawi się wsparcie dla migracji działają- wszystkim dwa projekty. Pierwszy, zwany po pro- cych VPSów między maszynami, analogicznie do np. stu lxc, oferuje zestaw narzędzi, takich jak lxc-cre- sterownika do KVM. libvirt to rozwiązanie zdecydowa- ate, lxc-start, lxc-ps i wiele innych. Stworzenie nowe- nie warte uwagi przy uruchamianiu większych, pro- go VPSa polega na ustaleniu zawartości systemu pli- dukcyjnych instalacji. ków (jak w przypadku środowiska chroot()) oraz na [*] Namespace'y dla systemów plików ("lepszy chro- utworzeniu prostego pliku konfiguracyjnego, które- ot()") są dostępne od wersji 2.6.14, ale nie były, przy- go format jest opisany w lxc.conf(5). Ze względu na najmniej na początku, tworzone z myślą o bardziej kom- pletnej wirtualizacji. Listing 3. Kon�guracja sieci na VPSie LXC w praktyce # etc/sysconfig/network Mimo kilku niedociągnięć, narzędzia LXC pozwala- NETWORKING=yes ją dość szybko uruchomić pełnowartościowego VPSa. HOSTNAME=vzcentos.localdomain W tym przykładzie podstawowym systemem operacyj- nym (gospodarzem) jest Fedora 13, a gościem – Cen- # etc/sysconfig/network-scripts/ifcfg-eth0 tOS 5. Wymagane niestandardowe pakiety w systemie DEVICE=eth0 gospodarza to lxc oraz bridge-utils. BOOTPROTO=none Zacznijmy od podmontowania systemu plików cgro- IPADDR=172.17.0.2 up. Dodajemy do /etc/fstab wpis: NETMASK=255.255.255.0 GATEWAY=172.17.0.1 cgroup /cgroup cgroup defaults 0 0

# etc/resolv.conf a następnie tworzymy katalog i montujemy system nameserver 8.8.8.8 plików:

Listing 4. Sprawdzenie stanu startującego VPSa mkdir -p /cgroup && mount /cgroup

# lxc-info -n vzcentos Następnym krokiem będzie konfiguracja sieci. Możemy 'vzcentos' is RUNNING to zrobić na 2 sposoby: główny interfejs sieciowy go- spodarza może być mostkiem przekazującym pakiety # lxc-ps --name vzcentos do interfejsu VPSa lub routerem dla VPSów. CONTAINER PID TTY TIME CMD Dostępne w Internecie opisy z reguły opisują vzcentos 5432 ? 00:00:00 init ten pierwszy sposób, dlatego – z przekory – zrobi- vzcentos 5442 ? 00:00:00 init my to drugim i odizolujemy naszego VPSa maska- vzcentos 5445 ? 00:00:00 rc.sysinit radą (NAT). Takie rozwiązanie jest mniej inwazyjne dla systemu gospodarza, gdyż nie wymaga zmiany głównego interfejsu sieciowego na mostek. Urządze-

22 6/2010 www.lpmagazine.org 23 PRAKTYKA Pingwin w pudełku

nie br0 jest w dalszym ciągu konieczne, ale łączy ze Na koniec ustawiamy hasło roota dla VPSa, gdyż sobą tylko VPSy. Możemy je traktować jak switch, do domyślnie w wybranym obrazie to konto jest zablo- którego są podłączone wirtualne karty sieciowe (Li- kowane: sting 1). Skorzystamy z obrazu VPSa przygotowanego na po- /var/lib/lxc/rootfs.vzcentos# chroot . passwd root trzeby projektu OpenVZ, do ściągnięcia ze strony pro- jektu: W końcu jesteśmy gotowi do uruchomienia VPSa:

/var/lib/lxc# wget http://download.openvz.org/template/ # lxc-start -n vzcentos -d precreated/centos-5-x86.tar.gz /var/lib/lxc# mkdir rootfs.vzcentos Opcja -d powoduje start w tle, bez wyświetlania ko- /var/lib/lxc# cd rootfs.vzcentos munikatów skryptów startowych. W obecnych wer- /var/lib/lxc/rootfs.vzcentos# tar xzf ../centos-5- sjach LXC, jest ona konieczna ze względu na ope- x86.tar.gz racje, jakie jądro wykonuje na terminalu, na którym działa lxc-start – w telegraficznym skrócie przestaje Sam obraz systemu to jeszcze za mało, dlatego two- on działać w pełni poprawnie, np. nie reaguje na kom- rzymy katalog /var/lib/lxc/vzcentos, a w nim plik config binację klawiszy Ctrl-C. Sprawdzamy, czy wszystko o treści (Listing 2). działa (Listing 4). Określa on podstawowe cechy VPSa, a dokumenta- Widać, że nasz VPS startuje. Jeżeli start się nie po- cja dostępnych wpisów znajduje się na stronie manu- wiódł, więcej informacji można uzyskać, dodając do ala lxc.conf(5). wywołania lxc-start parametry -l DEBUG -o `tty`. W tym momencie VPS jest gotowy do uruchomie- Aby się do niego połączyć, możemy skorzystać ze nia, ale nie wystartuje poprawnie, ponieważ parę rze- skonfigurowanych wcześniej terminali (lub ze zwykłe- czy trzeba dostosować do specyfiki LXC. Po pierwsze, go ssh): wyłączamy udev, dopisując "exit 0" na końcu pliku etc/ udev/udev.conf (w katalogu głównym VPSa) – inaczej # lxc-console -n vzcentos VPS nie uruchomi się, czekając na zdarzenie, które nig- dy nie nadejdzie. Następnie przygotowujemy do działa- Powinniśmy po chwili niezbędnej na dokończenie se- nia terminale i pseudoterminale – bez tego nie będzie kwencji startowej zobaczyć monit z nazwą VPSa: sposobu na zalogowanie się do VPSa: CentOS release 5.4 (Final) # drobny błąd w lxc-start powoduje, że ten plik trzeba Kernel 2.6.33.2-57.fc13.i686 on an i686 usuwać przed każdym startem VPSa vzcentos login: – lxc-start tworzy go na nowo /var/lib/lxc/rootfs.vzcentos# rm -f dev/ptmx i móc się zalogować na konto roota z ustawionym ha- # wystarczą zwykłe pliki, lxc-start zajmie się resztą słem. /var/lib/lxc/rootfs.vzcentos# touch dev/tty{1,2,3,4} Aby wyłączyć VPSa, możemy wydać ze środka pole- cenie halt. Niestety nie spowoduje to całkowitego wyłą- Obraz z OpenVZ standardowo zawiera serwer SSH, czenia VPSa, gdyż nie jest do tego przygotowany stan- ale dla celów edukacyjnych dodajmy terminale dzia- dardowy proces init. Musimy jeszcze "nacisnąć przy- łające jak standardowa konsola tekstowa. W tym ce- cisk Power": lu do /etc/inittab wewnątrz katalogu VPSa (/var/lib/lxc/ rootfs.vzcentos) dopisujemy sekcję: # lxc-stop -n vzcentos

# Run gettys in standard runlevels Miłej zabawy! t1:2345:respawn:/sbin/mingetty /dev/tty1 t2:2345:respawn:/sbin/mingetty /dev/tty2 t3:2345:respawn:/sbin/mingetty /dev/tty3 GRZEGORZ NOSEK t4:2345:respawn:/sbin/mingetty /dev/tty4 Jest programistą i administratorem, sympatykiem Open So- urce, Perla, Pythona i kotów. Jest współtwórcą MegiTeam. Liczba terminali skonfigurowanych w tym kroku i utwo- W swojej pracy jako programista stara się, żeby mógł się nu- rzonych w poprzednim powinna się pokrywać z warto- dzić jako administrator. Zdarzało mu się zgłaszać błędy i łat- ścią wpisu "lxc.tty" z pliku konfiguracyjnego. ki, m.in. w jądrze Linuksa i Linux-VServer. Można go spotkać Tworzymy również pliki z konfiguracją sieci (wszystkie na konferencjach poświęconych językom programowania. pliki wewnątrz katalogu VPSa) (Listing 3). Kontakt z autorem: [email protected]

22 6/2010 www.lpmagazine.org 23 PRAKTYKA Wystartuj z Tomcat Wystartuj z Tomcat

Java jest dzisiaj wiodącą technologią wykorzystywaną przy tworzeniu złożonych serwisów internetowych. Do uruchomienia takich aplikacji konieczny jest odpowiedni serwer i takim właśnie produktem jest powszechnie uznany i stosowany Apache tomcat. Ponieważ linux doskonale sprawdza się jako system operacyjny dla serwerów internetowych, ten artykuł musiał powstać:).

pache tomcat jest kontenerem aplikacji webowych, Instalacja umożliwia on więc uruchamianie aplikacji interne- Instalacja serwera tomcat zostanie wykonana na kompu- A towych napisanych w Javie. Oferuje on tak zwa- terze ze świeżo zainstalowanym systemem operacyjnym ną czystą, referencyjną implementację technologii servle- Linux Debian Lenny. Najprostszą metodą instalacji opro- tów oraz jsp opublikowaną przez Sun Microsystem. Na gramowania dla tej wersji linuxa jest skorzystanie z przy- samym początku należy jednak podkreślić, że tomcat nie gotowanych paczek deb. Aby sprawdzić, czy jest dostęp- jest serwerem aplikacji J2EE, gdyż nie oferuje wszystkich na w Debianie paczka deb zawierająca serwer tomcat, możliwości określanych przez ten standard. Jest natomiast wydajmy polecenie: bardzo często wykorzystywany komercyjnie jako kontener aplikacji napisanych np. z wykorzystaniem popularnego apt-cache search tomcat frameworka spring lub w oparciu o klasyczne podejście do technologii servlerów oraz stron jsp. Serwer jest udostęp- W wyniku otrzymamy listę paczek skojarzonych z na- niany na zasadach open source przez powszechnie zna- zwą tomcat, w tym tę zawierającą sam serwer: ną Apache Software Foundation. Ponieważ jest on napisa- ny w Javie, można go uruchomić na większości platform tomcat5.5 - Servlet and JSP engine. sprzętowych. Ponadto jest on wykorzystywany w serwerze aplikacji J2EE Apache Geronimo oraz Jboss, możliwa jest Jak więc widać, najnowszą dostępną wersją sewera również jego integracja z serwerem www Apache. tomcat w repozytorium Debiana jest wersja 5.5, nato- Tomcat jest bardzo dojrzałym produktem, jego pierwsze miast najnowsza opublikowana przez fundację apache wydanie miało miejsce już w 1999 roku. Oferuje znaczną wersja posiada numer 6.0. ilość funkcji i możliwości, których tylko niewielka część zo- Jak wspomniano powyżej, najłatwiej zainstalować tom- stanie opisana w poniższym artykule. Nie będzie on bo- cata w Debianie poprzez użycie przygotowanej paczki wiem próbą przedstawienia ich wszystkich, a wprowadze- z repozytorium. W dalszej części artykułu bazować bę- niem do pracy z tym powszechnie stosowanym produk- dziemy jednak na wersji serwera tomcat pobranej z jego tem. Przedstawiony zostanie proces instalacji serwera, internetowej strony domowej. Dzięki temu możliwa bę- oferowanego przez niego modułu autoryzacji, a następnie dzie bowiem praca na oryginalnych plikach konfiguracyj- połączenia go z bazą danych. Pokazana zostanie również nych oraz strukturze katalogów serwera, która wyglądać aplikacja umożliwiająca monitorowanie pracy serwera. będzie tak samo w większości systemów operacyjnych.

24 6/2010 www.lpmagazine.org 25 PRAKTYKA Wystartuj z Tomcat

Ponadto będziemy mieli możliwość pobrania najnowszej Są to bardzo cenne informacje mówiące o wykorzystywa- wersji. Natomiast minusem jest konieczność samodziel- nych przez serwer zmiennych środowiskowych. W dalszej nej instalacji wirtualnej maszyny Javy. części artykułu często będę się odnosił do położenia ka- Serwer tomcat jest kontenerem aplikacji internetowych talogu określonego przez zmienną $CATALINA _ HOME. Java, sam również jest napisany w tym języku. Tak więc Ponieważ każdy z nas posiada wewnętrzną potrzebę jest oczywiste, że do jego uruchomienia konieczne jest małych sukcesów, otwórzmy naszą ulubioną przeglą- zainstalowanie w systemie operacyjnym wirtualnej ma- darkę internetową i wpiszmy adres: http://192.168.0.68: szyny Javy. Zanim to zrobimy, warto sprawdzić, czy jest 8080/ (zastępując podany tu adres ip właściwą warto- ona już może zainstalowana: ścią). Naszym oczom powinno ukazać się powitalne okno tomcata świadczące o zakończeniu sukcesem pro- java -version cesu uruchamiania serwera (Rysunek 1).

Jeśli w odpowiedzi uzyskaliśmy informację, że wywoły- Autoryzacja wane polecenie jest nieznane, prawdopodobnie nie ma- Autoryzacja jest jedną z podstawowych funkcji aplikacji my w systemie dostępnej jvm (wirtualnej maszyny Ja- internetowych. Serwer tomcat posiada wsparcie dla au- vy). Należy więc ją zainstalować, tym razem korzysta- toryzacji, oferując kilka mechanizmów jej realizacji. War- jąc już z paczki deb: Listing 1. Polecenia sql tworzące tabelę kontaktów apt-get install openjdk-6-jdk create table t_kontakt( Następnie sprawdźmy, czy działa ona poprawnie. Tym id_kontakt int identity(1,1) primary key, razem w odpowiedzi powinniśmy otrzymać komunikat: opis nvarchar(255));

java version "1.6.0_0" insert into t_kontakt(opis) values('Adam'); OpenJDK Runtime Environment (build 1.6.0_0-b11) insert into t_kontakt(opis) values('Ania'); OpenJDK Client VM (build 1.6.0_0-b11, mixed mode, insert into t_kontakt(opis) values('Ewa'); sharing) insert into t_kontakt(opis) values('Agent Ubezpieczeniowy'); Teraz można już przystąpić do pobrania serwera tomcat insert into t_kontakt(opis) values('Doradzca z sieci. W chwili pisania tego artykułu najnowsza dostęp- Bankowy'); na wersja oznaczona jest numerem 6.0.26. Ze strony http: insert into t_kontakt(opis) values('Szef'); //tomcat.apache.org/download-60.cgi pobieramy więc plik insert into t_kontakt(opis) values('Ksiegowa'); apache-tomcat-6.0.26.tar.gz do naszego katalogu domo- insert into t_kontakt(opis) values('Artur'); wego. Będę wykonywał wszystkie polecenia w systemie insert into t_kontakt(opis) values('Monika'); jako użytkownik root, choć nie jest to oczywiście zaleca- insert into t_kontakt(opis) values('Mama'); ne. Moim katalogiem domowym będzie więc /root, a do rozpakowania paczki tomcata wykorzystamy polecenie: Listing 2. Kon�guracja puli połączeń

tar xzf apache-tomcat-6.0.26.tar.gz bootstrap.jar

24 6/2010 www.lpmagazine.org 25 PRAKTYKA Wystartuj z Tomcat

to zapoznać się z nimi na początku pracy, gdyż dostęp do panelu administracyjnego serwera opiera się wła- śnie na niej. tomcat może korzystać z różnych baz użyt- kowników w procesie autoryzacji. My zajmiemy się naj- prostszym rozwiązaniem, opartym na pliku $CATALI- NA_HOME/conf/tomcat-users.xml, który definiuje użyt- kowników, ich hasła oraz role. W pierwszym kroku nale- ży dodać nową rolę manager, która wymagana jest dla użytkownika konsoli administracyjnej tomcata:

A następnie dodamy nowego użytkownika, przypisując go do roli manager:

Rysunek 2. Okno konsoli administracyjnej bazy h2 w sekcji Administration na stronie głównej tomcata (Ry- Aby te ustawienia zostały zaakceptowane, konieczne sunek 1). To wszystko! jest zrestartowanie serwera, czyli zatrzymanie serwera Należy podkreślić, że wykorzystaliśmy najprostszy oraz ponowne go uruchomienie poleceniami: sposób autoryzacji wspomagany przez tomcata. Możli- wości są znacznie szersze, m.in. można skorzystać z ba- $CATLINA_HOME/bin/shutdown.sh zy użytkowników przechowywanych w relacyjnej bazie danych lub usłudze ldap. Funkcjonalności te oferuje me- a następnie chanizm realm.

$CATLINA_HOME/bin/startup.sh Baza danych Chociaż artykuł ma traktować o kontenerze aplikacji in- W ten sposób nadaliśmy użytkownikowi alf uprawnienia ternetowych, to ten podrozdział poświęcony jest urucho- umożliwiające dostęp do aplikacji Tomcat Web Applica- mieniu relacyjnej bazy danych h2 oraz utworzeniu pro- tion Manager, konsoli administracyjnej tomcat. Aby uru- stych struktur danych. Dzisiaj bowiem praktycznie każda chomić tę aplikację, należy kliknąć link Tomcat Manager aplikacja internetowa wykorzystuje bazy danych, a ser-

Rysunek 1. Ekran Tomcata po zainstalowaniu

26 6/2010 www.lpmagazine.org 27 PRAKTYKA Wystartuj z Tomcat

wer tomcat posiada ku temu odpowiednie wsparcie. Wię- • tomcat sam zarządza ilością aktywnych połączeń, cej informacji na temat pracy z bazą h2, którą szczerze dbając, aby nie było ich zbyt dużo (co nie jest ko- polecam, można znaleźć w artykule Baza Danych h2 rzystne dla serwera bazy danych), jak również aby w praktyce opublikowanym w kwietniowym numerze Li- ich ilość nie była mniejsza od wymaganej liczby, nux+ z roku 2010. • żądanie aplikacji internetowej nie wymaga każdora- Po pobraniu ze strony http://www.h2database.com naj- zowego łączenia się do bazy, nowszej wersji bazy w opcji All platforms należy ją rozpa- • połączenia nieaktywne mogą być usuwane, kować, a następnie uruchomić poleceniem: • aplikacja internetowa korzysta z puli połączeń analo- gicznie jak z bazy danych, java -jar h2-wersja.bazy.jar & • możliwa jest konfiguracja pracy puli połączeń aby dostosować ją do odpowiednich warunków. Jeśli baza uruchomi się bez problemów, należy otwo- rzyć przeglądarkę internetową oraz wpisać adres http:/ Aby utworzyć pulę połączeń w tomcacie, otwórzmy do /localhost:8082/. Uruchomiona zostanie konsola admini- edycji plik $CATALINA_HOME/conf/context.xml. Mó- stracyjna bazy widoczna na Rysunku 2. wiąc w dużym skrócie, plik ten umożliwia konfigurację Następnie należy się połączyć z bazą danych h2, kli- elementów, które następnie będzie można użyć w apli- kając po prostu Połącz. Na potrzeby dalszej pracy z tom- kacji. Dodajmy tam więc wpis przedstawiony na Listingu catem utworzymy w bazie prostą tablicę, a następnie wy- 2. Najistotniejsze elementy konfigurujące pulę określają: pełnimy ją danymi. W oknie zapytań SQL wykonajmy po- lecenia z Listingu 1. • driverClassName, driver jdbc do bazy danych; W tej chwili należy utworzyć połączenie pomiędzy ser- • url, ciąg konfigurujący połączenie do bazy danych, werem tomcat a bazą danych h2. W tym celu skorzystamy analogiczny jak w jdbc; z najbardziej uniwersalnego rozwiązania, czyli connection • maxActive, maksymalna liczba aktywnych połączeń; pool. Rozwiązanie to polega na tym, że serwer tomcat two- • maxIdle, maksymalna liczba bezczynnych połączeń; rzy jedno lub więcej połączeń do bazy danych, czyli tzw. • maxWait, określony w milisekundach czas oczekiwa- pulę połączeń. Następnie kiedy aplikacja internetowa żąda nia na bazę; dostępu do bazy danych tomcat, przydziela jej takie połą- • testOnBorrow, czy testować połączenie z bazą przed czenie z ustanowionej już puli połączeń do bazy. Tematy- jego udostępnieniem; ka sposobu połączenia aplikacji z bazą danych jest bardzo • testOnReturn, czy testować połączenie z bazą przed obszerna i sama w sobie jest materiałem na artykuł, dla- zwróceniem do puli połączeń; tego nie będzie w tym miejscu rozwijana. Podsumowując, • validationQuery – polecenie sql wykorzystywane do stosowanie connection pool ma wiele zalet: testowania połączenia;

Rysunek 3. Zakładka data sources aplikacji probe

26 6/2010 www.lpmagazine.org 27 PRAKTYKA

• removeAbandoned – czy usuwać niewykorzystywane go, na liście wdrożonych aplikacji pojawi się wpis probe połączenia. ze statusem running ustawionym na true. Aby urucho- mić aplikację probe, należy po prostu wybrać link z listy Przedstawiona powyżej metoda nie jest najprostszym aplikacji oraz zalogować się analogicznie jak do konsoli sposobem konfiguracji puli połączeń w serwerze tom- administracyjnej tomcata. Jeśli autoryzacja przebiegnie cat. Jest natomiast uniwersalna, można bowiem w pro- poprawnie, powinniśmy zobaczyć okno aplikacji podob- sty sposób zmienić jedynie parametry jdbc (nazwę dri- ne do tego z Rysunku 3. vera, ciąg połączenia, nazwę użytkownika i hasło), aby Aplikacja probe umożliwia obserwację wielu parame- uzyskać dostęp do innej bazy danych, np. oracle czy sql trów serwera, my skupimy się na połączeniu do bazy da- server. nych. Przetestujmy więc, czy działa ono poprawnie. Do- kładnie chcemy wiedzieć, czy możliwe jest wykonywa- Monitorowanie nie zapytań do bazy danych h2 z poziomu tomcata. Tu W tej chwili mamy już uruchomiony serwer bazy danych z pomocą przychodzi nam właśnie aplikacja probe. Wy- h2 oraz kontener aplikacji internetowych tomcat. Dodat- bieramy w niej zakładkę data source, a następnie klika- kowo skonfigurowaliśmy w tomcacie pulę połączeń do my na jeden z linków wskazujących na resource, który bazy danych, a w bazie utworzyliśmy tabelę zawierają- w naszej aplikacji ma nazwę jdbc/h2 (sami ją nadaliśmy cą kontakty do naszych znajomych oraz wypełniliśmy ją w pliku context.xml). Teraz możemy wybrać opcję test przykładowymi danymi. Wykonaliśmy więc kilka czynno- connection, w wyniku której powinniśmy otrzymać na- ści, a nie wiemy, jakie są efekty tych działań. O ile serwer stępujące informacje: tomcat nie zwróci nam wyraźnych błędów np. w trakcie uruchamiania, nie jesteśmy pewni, czy wykonane do tej InfoProperty Name Property Value pory czynności dały pozytywny efekt. Database Product Name H2 Jak w każdym serwerze warto oczywiście przeglądać Database Product Version 1.2.133 (2010-04-10) logi, w naszym przypadku znajdują się one w katalogu JDBC Driver Name H2 JDBC Driver $CATALINA_HOME/log. JDBC Driver Version 1.2.133 (2010-04-10) Możliwe jest monitorowanie bieżącej pracy serwera tomcat nie tylko za pomocą analizy logów, ale tu rów- Jak więc widać, testowe połączenie z tomcata do bazy nież mamy do wyboru co najmniej kilka możliwości. danych zakończyło się sukcesem. Baza zwróciła nam Ponieważ forma tego artykułu sprowadza się do naj- informację o swojej wersji, to samo zrobił driver jdbc. prostszych rozwiązań, wykorzystana zostanie aplika- Idąc krok dalej, warto też zadać zapytanie bezpośred- cja Lambda Probe, którą należy pobrać ze strony http: nio do bazy, wpisując polecenie sql: //www.lambdaprobe.org/d/download.htm. Wybierzmy więc binarną wersję programu dostępną select * w formie archiwum zip. W chwili pisania tego artykułu from t_kontakt najnowsza dostępna wersja jest oznaczona numerem 1.7.b. Pobrany plik należy rozpakować, otrzymując apli- W jego wyniku powinniśmy otrzymać dane, które wpro- kację w formacie war. Ten format umożliwia w bardzo wadziliśmy do bazy (Listing 1). prosty sposób wdrożenie aplikacji internetowej. Aby to zrobić, przechodzimy do konsoli administracyjnej tom- Podsumowanie cata, w sekcji WAR file to deploy wskazujemy plik war Kształt tego artykułu nie umożliwia nawet pobieżne- aplikacji probe i klikamy deploy. Jeśli proces ten zosta- go opisania najważniejszych funkcji serwera tomcat. nie zrealizowany poprawnie, o czym może świadczyć Nie zostało poruszone między innymi zagadnienie lo- komunikat ok w górnej części panelu administracyjne- gów, load balancing, konfiguracji pamięci czy monito- rowania serwera za pomocą jmx. Mam jednak nadzie- W Sieci ję, że stanowi on zachętę do rozpoczęcia pracy z ser- werem tomcat. • http://tomcat.apache.org/ - strona domowa tomcata; • http://www.coreservlets.com/Apache-Tomcat-Tutorial – SŁAWOMIR WOJCIECHOWSKI tutorial tomcata; Autor pracuje w �rmie telekomunikacyjnej, gdzie zajmuje się • http://wiki.apache.org/tomcat/FAQ – repozytorium faq zagadnieniami związanymi z przetwarzaniem oraz analizą da- na temat tomcata; • http://www.jguru.com/faq/home.jsp?topic=Tomcat – re- nych. Do jego obowiązków należy analiza potrzeb oraz projek- pozytorium faq na temat tomcata; towanie systemów bazodanowych a także interfejsów danych. • http://java.sun.com/products/jsp/tomcat/faq.html – repo- Patrząc od strony technologii najszersze doświadczenia posia- zytorium faq na temat tomcata. da pracując z bazą danych SQL server oraz oczywiście Javą. Kontakt z autorem: [email protected]

28 6/2010 HOSTING NEXT LEVEL

NOWOŚĆ!

Jako nowy klient możesz zaoszczę- dzić 30 zł przy pierwszej płatności za którykolwiek z reklamowanych produktów: wystarczy przy zamó- wieniu podać kod: 013604 (Kod ważny jest do 01 maja 2010 r.) -

DEDYKOWANY SERWER DEDYKOWANY SERWER DEDYKOWANY SERWER HETZNER EQ 4 HETZNER EQ 8 HETZNER EQ 9

Intel®Core™ i7-920 Quad- Intel®Core™ i7-920 Quad- Intel®Core™ i7-975 Quad- core z technologią HT core z technologią HT core z technologią HT 8 GB DDR3 RAM 24 GB DDR3 RAM 12 GB DDR3 RAM Hosting Next Level: Hetzner Online oferuje naj- 2 x 750 GB SATA-II 2 x 1500 GB SATA-II 3 x 1500 GB SATA-II bardziej zaawansowane rozwiązania hostingowe HDD (Software-RAID 1) HDD (Software-RAID 1) HDD (Software-RAID 5) na rynku. Platformy serwerów dedykowanych System operacyjny Linux System operacyjny Linux System operacyjny Linux zapewniają znakomitą szybkość transmisji da- Windows Server Web Windows Server Web Windows Server Web Edition (69 zł miesięcznie) Edition (69 zł miesięcznie) Edition (69 zł miesięcznie) nych i wydajność dzięki własnej infrastrukturze Nieograniczony transfer* Nieograniczony transfer* Nieograniczony transfer* sieciowej w centrach danych znajdujących się System ratunkowy System ratunkowy System ratunkowy w Niemczech. Dzięki atrakcyjnym Instalator obrazów Instalator obrazów Instalator obrazów cenom i kompetentnej obsłudze 100 GB na kopie zapasowe 100 GB na kopie zapasowe 100 GB na kopie zapasowe Usługa zdalnego restartu Usługa zdalnego restartu Usługa zdalnego restartu technicznej jesteśmy w stanie Umowa na czas nieokreślony Umowa na czas nieokreślony Umowa na czas nieokreślony zaoferować znacznie więcej, Opłata instalacyjna 599 zł Opłata instalacyjna 599 zł Opłata instalacyjna 599 zł niż oczekują klienci.

199,- z ł 329,- z ł 399,- z ł www.hetzner.info miesięcznie miesięcznie miesięcznie [email protected]

* Nie pobieramy opłat za przesyłane dane. Po przekroczeniu 2000 GB miesięcznie przepustowość zostanie ograniczona do 10 MBit/s. Istnieje możliwość pozostawienia przepustowości na 100 MBit/s za opłatą 59 zł za każdy dodatkowy TB. Wszystkie ceny Wszystkie są Hetzner Online cenami AG. netto i Oferta nie regulaminu warunkom podlegają stanowi oferty w handlowej rozu mieniu mieniu Kodeksu Cywilnego. Podane ceny mogą ulec zmianie. Wykorzystane znaki graficzneproducentównależą do ich właścicieli.

Hetzner_Linux+_Poland_4_10_U2.indd 1 26.02.2010 11:26:51 ROZWIĄZANIA Pentaho – open source dla biznesu Pentaho – open source dla biznesu Rozwiązania dla biznesu służące do analizy danych stanowią zaawansowane i wyspecjalizowane oprogramowanie, tym niemniej nawet w tym segmencie znajdziemy wartościowe aplikacje dostępne na licencji open source. Doskonałym przykładem jest platforma Pentaho Business Intelligence.

aletę tego systemu stanowi olbrzymi zakres mi wieloplatformowymi. Aplikacja serwerowa urucha- dostępnych funkcji, począwszy od umożliwia- miana jest natomiast za pośrednictwem Apache Tom- Zjących pobieranie informacji z praktycznie do- cat. Możliwe jest zarówno skorzystanie z już istnie- wolnych źródeł (lista wspieranych baz danych zawie- jącej architektury, jak i zainstalowanie całego pakietu ra kilkanaście pozycji), po wykonywanie analiz, tak- w sposób zautomatyzowany, razem z oprogramowa- że z użyciem zaawansowanych algorytmów eksplora- niem serwera. My skorzystamy z drugiej spośród wy- cji danych (data mining) oraz generowanie raportów. mienionych metod. To jednak nie wszystko. Razem z systemem oferowa- ne są także między innymi narzędzia ETL. Wszystkie Instalacja Pentaho moduły udostępnione są na licencji wolnego oprogra- Pomimo rozbudowanej struktury systemu Pentaho je- mowania. Jednocześnie oferowana jest również wer- go instalacja nie jest bardzo skomplikowana. Przede sja komercyjna [1]. Producent zastrzega, że oprogra- wszystkim powinniśmy zadbać o serwer, na którym mowanie na licencji open source przeznaczone jest umieścimy opisywane oprogramowanie. Szczegól- przede wszystkim dla celów edukacyjnych, w celu nie istotne są kwestie sprzętowe. Wprawdzie Penta- rozwijania własnych aplikacji opartych na systemie ho nie nakłada żadnych konkretnych ograniczeń, ale Pentaho oraz na potrzeby testów. W przypadku więk- w przypadku instalacji wykorzystywanych przez du- szych wdrożeń zalecane jest natomiast skorzystanie żą liczbę użytkowników sugerowane jest wyposaże- z komercyjnego wsparcia. Nic nie stoi jednak na prze- nie serwera w co najmniej 2 GB pamięci RAM. Po- szkodzie, by wypróbować Pentaho na własną rękę, za tym przydatne okażą się bogate zasoby dysko- zwłaszcza że wraz z samym oprogramowaniem udo- we oraz dwurdzeniowy procesor. Od strony progra- stępniona została dokumentacja, bogata i przyjazna mowej konieczne jest zainstalowanie pakietu Sun Ja- dla użytkownika. Ułatwia ona proces instalacji i konfi- va Runtime Environment w wersji 1.5. Starsze wyda- guracji systemu. nia wirtualnej maszyny Java na pewno nie pozwo- Pentaho Community [2] stanowi rozbudowany pa- lą na uruchomienie Pentaho, z kolei JRE 1.6 nie jest kiet, na który składa się serwer obsługiwany za po- jeszcze oficjalnie wspierane. Korzystając z najnow- średnictwem przeglądarki internetowej, a także ze- szej wersji środowiska Java Runtime Environment staw aplikacji klienckich, uruchamianych na lokal- nie powinniśmy się jednak obawiać wystąpienia po- nych komputerach. Klienty systemu są programa- ważnych błędów.

30 6/2010 www.lpmagazine.org 31 ROZWIĄZANIA Pentaho – open source dla biznesu

Jaka dystrybucja najlepiej współpracuje z Penta- to możemy przypuszczać, że serwery Tomcat oraz ho? Producent zamieścił na liście oficjalnie wspiera- baz danych zostały uruchomione poprawnie. Naj- nych systemów operacyjnych SuSE Linux Enterprise lepszym sposobem upewnienia się jest uruchomie- Desktop/Server oraz Red Hat Enterprise Linux 5. Nie nie przeglądarki internetowej i wpisanie adresu http: oznacza to jednak, że pozostałe dystrybucje nie mogą //localhost:8080/. Jeśli chcemy trafić na stronę uru- pełnić roli serwera. Bardzo dobrze sprawdza się mię- chomionego przez nas oprogramowania Pentaho dzy innymi Ubuntu w wersji co najmniej 9.04. Dystry- z komputera innego niż serwer, to oczywiście po- bucja ta pozwala na szybkie i bezproblemowe zain- winniśmy zastąpić w odpowiedni sposób ciąg zna- stalowanie najnowszego wydania Pentaho. ków localhost. Poprawnie działający pakiet wyświe- Sama instalacja sprowadza się praktycznie do po- tla ekran widoczny na Rysunku 1. Na jego pojawie- brania odpowiedniego pakietu i jego rozpakowania. nie się trzeba trochę poczekać, zwłaszcza jeśli pro- Bardzo łatwo możemy jednak utknąć na witrynie Pen- ces uruchamiania serwera nie został jeszcze zakoń- taho, szukając właściwego archiwum na liście wer- czony. W większości przypadków czas oczekiwania sji, funkcji oraz modułów. Najlepiej jest przejść od ra- nie powinien być jednak dłuższy niż kilka bądź kilka- zu do portalu Sourceforge, odnaleźć stronę projektu naście sekund. i z sekcji Files [3] pobrać najnowsze wydanie pakie- Teraz możemy już zalogować się do Pentaho. Klik- tu opisanego jako Business Intelligence Server (bise- nijmy na przycisk Pentaho User Console Login. Poja- rver-ce-x.x.x.stable.tar.gz). Ma on objętość blisko wi się niewielkie okienko z polami, w których należy 150 MB i zawiera serwer Pentaho wraz z towarzyszą- wprowadzić login oraz hasło. Możemy też skorzystać cym mu oprogramowaniem. Dodatkowo dostępny jest z rozwijanej listy Sample User. Zawiera ona nazwy pakiet służący do ręcznej instalacji (biserver-manual- przykładowych kont. Po wskazaniu jednego z nich ce-x.x.x.stable.tar.gz). W wielu przypadkach naj- pola loginu oraz hasła zostaną wypełnione automa- lepszym rozwiązaniem będzie jednak ściągnięcie ar- tycznie. Naciśnięcie przycisku Login spowoduje wów- chiwum działającego natychmiast po rozpakowaniu. czas przeniesienie się do pulpitu danego użytkowni- Wewnątrz pakietu zawierającego Pentaho znajduje ka. W systemie znajdują się przykładowe dane, które się katalog biserver-ce. Po przejściu do niego powinniśmy wydać polecenie uru- chamiające serwer. Komenda ./start- pentaho.sh może wyświetlić komunikat błędu, jeśli zawczasu nie zadbaliśmy o instalację Java Runtime Environment. Jeśli JRE znajduje się na dysku, a mimo to serwer nie uruchamia się, to utwórzmy w bieżącym katalogu dowiązanie symbo- liczne o nazwie jre. Powinno ono wska- zywać lokalizację, w której znajduje się środowisko Java Runtime Environment (na przykład /usr/lib/jvm/java-6-sun- 1.6.x.x/jre). Alternatywne rozwiąza- nie stanowi ręczna edycja pliku start- pentaho.sh i wprowadzenie tam właści- wej ścieżki dostępu, a także skorzystanie ze skryptu set-pentaho-java.sh. Jeśli na ekranie pojawiają się komu- nikaty zawierające między innymi linijki zbliżone do następujących:

[Server@1d58aae]: Server socket opened successfully in 172 ms. [Server@1d58aae]: Database [index=0, id=0, db=file:./ hsqldb/sampledata, alias=sampledata] opened sucessfully in 2443 ms. Rysunek 1. Ekran powitalny Pentaho

30 6/2010 www.lpmagazine.org 31 ROZWIĄZANIA Pentaho – open source dla biznesu

możemy wykorzystać w celu zapoznania się z możli- Druga z zakładek znajdujących się na karcie Ad- wościami pakietu. Niezależnie od tego konieczne jest ministration to Database Connections. Pozwala ona jednak wykonanie podstawowych czynności konfigu- na uzyskanie dostępu do źródeł danych. Standar- racyjnych. W tym celu należy uruchomić moduł Pen- dowo Pentaho oferuje domyślną bazę przechowują- taho Administration Console. Znajduje się on w pod- cą testowe informacje. Jest ona widoczna pod na- katalogu administration-console. Przejdźmy do nie- zwą SampleData. Po prawej stronie zakładki, w osob- go, a następnie wydajmy polecenie ./start-pac.sh. nej ramce, wprowadzone są dane serwera baz da- Powinniśmy ujrzeć kilka komunikatów zakończonych nych oraz samej bazy, tam także określamy sterownik linijką INFO: Console is now started. It can be accessed using http://localhost:8099 or http://127.0.1.1:8099 lub o po- dobnej treści. Oznacza ona, że proces uruchamiania konsoli ad- ministracyjnej dobiegł do szczę- śliwego końca.

Administracja serwerem Moduł Pentaho Administration Console uruchamiamy, wpisując w przeglądarce http://localhost: 8099. Ujrzymy wtedy okienko domagające się podania danych dostępowych. Login administra- tora to admin, a domyślne ha- sło brzmi password. Po wpisaniu tych danych i odczekaniu kilku sekund ujrzymy konsolę admini- stratora. Musimy wykonać w niej kilka podstawowych czynności. Powinniśmy rozpocząć od przej- Rysunek 2. Konsola administracyjna serwera – zarządzanie użytkownikami ścia na kartę Administration (za pomocą przycisku widocznego z lewej strony okna przeglądar- ki). Na ekranie pojawią się kolej- ne cztery zakładki, z których do- myślnie aktywna to Users & Ro- les. Pozwala ona na usunięcie przykładowych kont użytkowni- ków. Dzięki temu zablokujemy niepowołanym osobom dostęp do usługi. Aby usunąć użytkow- nika, należy zaznaczyć go na li- ście Users, a następnie kliknąć ikonę czerwonego krzyżyka (De- lete Users). Oczywiście możemy też tworzyć nowe konta. Pozwa- la na to ikona plusa. Natomiast znajdująca się po prawej stro- nie okna przeglądarki ramka De- tails służy do zmiany hasła, opi- su oraz przypisanych ról. Po do- konaniu wszystkich niezbędnych poprawek należy zrestartować serwer Pentaho. Rysunek 3. Ustanawianie połączenia z serwerem baz danych w konsoli administracyjnej

32 6/2010 www.lpmagazine.org 33 ROZWIĄZANIA Pentaho – open source dla biznesu

JDBC. Dodatkowo, po naciśnięciu przycisku Advan- Source). Po kliknięciu Add mamy możliwość wybrania ced, możemy ustalić szczegółowe opcje połączenia. innej bazy niż domyślna, przetestowania połączenia, Dodanie nowego źródła danych sprowadza się do na- a także przygotowania zapytania SQL. Kliknięcie iko- ciśnięcia przycisku z plusem. W osobnym okienku ny plusa (na zakładce Database) otworzy dodatkowe wprowadzamy wówczas adres serwera, nazwę użyt- okienko Database Connection. Działa ono w sposób kownika oraz hasło. Trzeba także wpisać nazwę ste- bardzo przyjazny, wymagający tylko określenia rodza- rownika JDBC. Konsola administracyjna znacznie ju serwera (obsługiwane są między innymi MySQL, nam to ułatwi – wystarczy wybrać odpowiednią pozy- PosgreSQL, IBM DB2, MS SQL Server oraz Oracle), cję z rozwijanej listy. Przykładowo, skorzystanie z ba- a także danych pozwalających na zalogowanie, w tym zy danych MySQL wymaga wskazania com.mysql.jdb nazw bazy i użytkownika. c.ReplicationDriver. W pierwszym etapie przygotowywania raportu okre- Pozostałe dwie zakładki, do których otrzymuje- ślamy także wygląd raportu (Apply a Template). Na- my dostęp z poziomu karty Administration, pozwala- stępnie przechodzimy do drugiego kroku (Make Se- ją na wykonywanie dodatkowych czynności związa- lections). W tej chwili powinniśmy wskazać te pola nych z utrzymaniem serwera, przede wszystkim z je- baz danych, których zawartość zamierzamy pobrać. go optymalizacją. Dodatkowo możliwe jest zaplano- Trzeci etap tworzenia raportu (Customize Selections) wanie wybranych zadań (Schedules). Po dokonaniu pozwala natomiast na określenie sposobu wyświetla- poważnych zmian konfiguracyjnych, zwłaszcza po nia informacji. Pracę kończymy, podejmując decyzje dodaniu źródeł danych oraz kont użytkowników, war- dotyczące formatowania całego raportu (wymiary pa- to zrestartować serwer. Niezależnie od tego z pozio- pieru, nagłówki, stopki). Po określeniu tych ustawień mu konsoli administracyjnej możemy na bieżąco śle- możemy wygenerować gotowy dokument. W tym celu dzić stan Pentaho. O aktywności serwera mówi nam na rozwijanej liście Preview As, znajdującej się w dol- ikona Server Status widoczna w pobliżu górnej krawę- nej części okna, wybieramy interesujący nas format dzi okna przeglądarki. Jej prawidłowy status to BI Se- wyjściowy, a następnie klikamy Go. Po chwili powin- rver is available. niśmy zobaczyć raport. Wspierane formaty to HTML, PDF, XLS oraz CSV. Pentaho w przeglądarce Podgląd raportu wyświetlany jest w osobnej za- Po zachowaniu zmian konfiguracyjnych możemy wy- kładce wewnątrz tej karty przeglądarki, w której uru- próbować konsolę użytkownika, do której trafiliśmy chomiliśmy konsolę użytkownika. Na wygenerowa- już wcześniej, wpisując adres http://localhost:8080/. nie dokumentu trzeba zaczekać kilka lub kilkanaście Pentaho User Console nie pozwala już na zarządza- sekund. Gotowe raporty wyglądają bardzo dobrze. nie serwerem, ale służy za to do prowadzenia analiz danych bizne- sowych. Po zalogowaniu się tra- fimy na pulpit, w którego górnym krańcu znajduje się system menu oraz pasek ikon, natomiast w czę- ści centralnej – trzy duże przyciski dające dostęp do najważniejszych funkcji. Wszystkie te moduły są dostępne, mimo że nie zainsta- lowaliśmy jeszcze dodatkowych klientów usługi, które pozwolą nam na wykorzystanie wszystkich możliwości Pentaho. Pierwszy z przycisków to New Report. Otwiera on bardzo przy- jaznego kreatora raportów. Przy- gotowanie czytelnego wyciągu z danych wymaga przejścia przez cztery etapy pracy. Każdy z nich jest dostępny za pośrednictwem linków wyświetlanych w górnej części okna. Zaczynamy od wska- zania źródła danych (Select Data Rysunek 4. Widok konsoli użytkownika po zalogowaniu się do systemu

32 6/2010 www.lpmagazine.org 33 ROZWIĄZANIA Pentaho – open source dla biznesu

Choć szablony dostarczane razem z oprogramowa- producenta oprogramowania, ale naszych własnych. niem prezentują się korzystnie, to i tak z pewnością W tym celu wykorzystamy dodatkowe narzędzia insta- będziemy chcieli dostosować ich wygląd do wyma- lowane niezależnie od serwera. Zanim jednak urucho- gań firmowych. Zajmiemy się tym za moment. Po po- mimy pierwszą z aplikacji, będziemy jeszcze musie- braniu i zapisaniu plików można natomiast zamknąć li pobrać ze stron Sourceforge odpowiednie pakiety. wszystkie zakładki otworzone wewnątrz konsoli użyt- Dodatkowe narzędzia klienckie nie są bowiem rozpo- kownika. Powrócimy wtedy do ekranu początkowe- wszechniane razem z serwerem. Pobierzmy zwłasz- go, z trzema przyciskami. Drugi z nich to New Ana- cza pakiety Report Designer, Data Integration oraz lysis View. Pozwala on na badanie struktury anali- Design Studio. Należy je rozpakować. Producent za- zowanych danych. Z kolei Manage Content umożli- leca umieszczenie wszystkich narzędzi w podkatalogu wia zarządzanie informacjami zgromadzonymi w sys- design-tools, utworzonym uprzednio w folderze, któ- temie, w tym ich edycję oraz współdzielenie. Kilka ry zawiera również oprogramowanie serwera (admini- przydatnych funkcji znajdziemy również za pośred- stration-console oraz biserver-ce). nictwem paska ikon oraz menu widocznych w gór- nej części ekranu. Przycisk Open da dostęp do przykła- dowych raportów oraz ana- liz, a w przyszłości umożli- wi nam korzystanie z wła- snych szablonów. Poza tym na pasku znajdują się cały czas ikony dające dostęp do generatora raportów oraz modułu analiz. Dodat- kowo możliwe jest uaktyw- nienie przeglądarki plików (Toggle Browser), która uła- twi nam otwieranie plików znajdujących się w syste- mie. Ikona Workspace po- zwala natomiast na szybkie przejrzenie listy zaplanowa- nych, oczekujących oraz zakończonych zadań skie- Rysunek 5. Analiza danych w konsoli użytkownika Pentaho rowanych do serwera. Podobny zestaw poleceń znajdziemy także w syste- mie menu. Ponadto umiesz- czone są tam komendy po- zwalające na wylogowa- nie się z panelu użytkow- nika (File > Log Out), od- świeżenie serwera (Tools > Refresh), a także na zmia- nę wersji językowej (Tools > Languages). Do tej pory korzystali- śmy jedynie z gotowych szablonów raportów, a tak- że z przykładowych analiz. Pentaho pozwala nam jed- nak na o wiele bardziej efek- tywną analizę danych – i to nie już dostarczonych przez Rysunek 6. Okienko powitalne programu Report Designer

34 6/2010 www.lpmagazine.org 35 ROZWIĄZANIA Pentaho – open source dla biznesu

Edytor raportów większy pakiet funkcji niż opisane wcześniej oprogra- Co znajdziemy w ściągniętych przez nas pakietach? mowanie klienckie obsługiwane przez przeglądarkę. W ramach projektu Pentaho dostępny jest między in- Ważny atut programu stanowi jego czytelny i intu- nymi rozbudowany edytor raportów – Report Designer. icyjny interfejs. Report Designer nie ustanawia w tej Pozwala on na przygotowanie raportów oraz umożli- dziedzinie żadnych nowych standardów. Naśladuje wia modyfikację istniejących szablonów. Program ofe- natomiast dość wiernie inne narzędzia tego typu oraz ruje bardzo bogaty zestaw funkcji, przewyższając pod aplikacje służące do tworzenia wszelkiego rodzaju in- tym względem podobne narzędzie tego typu, w tym terfejsów. Dzięki temu użytkownik nie musi poświęcać prezentowaną już na łamach Linux+ 2/2010 aplikację wiele czasu na rozpoznanie funkcji Report Designera, DataVision (http://datavision.sourceforge.net/). Report przystępując niemal od razu do efektywnej pracy. Designer został napisany w języku Java. Aplikację uru- Wraz z serwerem Pentaho dostępnych jest jesz- chamiamy, przechodząc do katalogu report-designer cze kilka innych programów klienckich z nim współ- i wydając komendę ./report-designer.sh. Powinni- pracujących. Wszystkie one są warte uwagi, jednak śmy zobaczyć logo programu, a po kilku sekundach szczególnie przydatne i bogate w funkcje jest narzę- główne okno. Pracę rozpoczynamy od utworzenia no- dzie Pentaho Data Integration, wcześniej znane jako wego raportu. Możemy również zdecydować się na Kettle. Stanowi ono aplikację ETL, czyli służącą do uruchomienie czarodzieja (Report Wizard). Jeśli chce- wspomagania migracji i transformacji danych w ob- my edytować istniejące szablony, to powinniśmy wy- rębie hurtowni danych. Ważną zaletą Pentaho Da- brać drugie z rozwiązań. Wskazanie opcji tworzenia ta Integration jest, tak jak w przypadku innych modu- raportu od podstaw spowoduje natomiast otwarcie pu- łów platformy Pentaho, wsparcie dla wielu źródeł in- stego szablonu. Składa się on z kilku podstawowych formacji (systemów zarządzania bazami danych). Do- elementów – nagłówków i stopek stron oraz rapor- puszcza się także wykorzystywanie danych zapisa- tu, a także właściwej zawartości. Szablon wyświetla- nych w plikach tekstowych oraz arkuszach kalkula- ny jest w centralnej części okna, z kolei po lewej stro- cyjnych. Bardzo duże znaczenie ma możliwość uży- nie znajduje się kolumna z elementami, które można cia Pentaho Data Integration poza środowiskiem Pen- osadzić wewnątrz raportu. Przeciągamy je za pomo- taho, dla innych zastosowań związanych z konwersją cą myszy. Po prawej stronie, w dolnej części okna, na danych i obsługą hurtowni danych. Jest to zatem na- dwóch osobnych zakładkach, wyświetlane są atrybuty rzędzie wszechstronne i warte uwagi, nawet jeśli nie elementu zaznaczonego w danym momencie, a także planujemy wdrożenia pozostałych komponentów opi- informacje dotyczące jego wyglądu. sywanej platformy. Osobną kwestię stanowi dostęp do danych. Nowe Pentaho Business Intelligence to bardzo rozbu- źródła informacji dodajemy za pośrednictwem pod- dowany projekt, a my poznaliśmy jedynie jego naj- menu Data > Add Data Source. Wybranie opcji JDBC bardziej podstawowe moduły oraz funkcje. Niektó- otworzy okno JDBC Data Source. Należy kliknąć re klienty oraz narzędzia wchodzące w skład pakietu w nim ikonę ze znakiem plusa, opisaną jako Add con- posiadają tak bogaty zestaw funkcji, że mogłyby one nection. W kolejnym okienku będziemy wówczas mo- z powodzeniem sprawdzić się jako samodzielne apli- gli określić rodzaj serwera baz danych oraz dane do- kacje biznesowe. Świetny przykład stanowi Pentaho stępowe. Data Integration (Kettle), będące doskonałym środo- Gotowe szablony można zapisywać, a także ge- wiskiem ETL. Inną wartościową funkcją jest wspar- nerować ich podglądy. Wszystkie niezbędne funkcje cie dla algorytmów przetwarzania danych stosowa- znajdują się w menu File. Szablony mogą zostać zapi- nych w aplikacji Weka. Rozszerza to zakres zastoso- sane w kilku formatach, dla każdego z nich dostępny wań Pentaho o możliwość wykorzystania zaawanso- jest osobny podgląd. Report Designer oczywiście po- wanych technik data mining. Nie należy też zapomi- trafi także wydrukować gotowe pliki. Dodatkowo moż- nać o wszechstronnej obsłudze systemów zarządza- liwe jest również opublikowanie gotowego raportu na nia bazami danych, a także o wchodzącym w skład serwerze Pentaho (File > Publish). To bardzo ważna systemu serwerze OLAP – projekcie Mondrian (http: funkcja, gdyż Report Designer oferuje zdecydowanie //mondrian.pentaho.org/). Tak bogaty zestaw możli- wości sprawia, że Pentaho to dobry wybór dla użyt- W Sieci kownika poszukującego systemu BI na licencji otwar- tego oprogramowania. • http://www.pentaho.com/ – Pentaho Business Intelligence; • http://community.pentaho.com/ – Pentaho Community – PAWEŁ WOLNIEWICZ open source; Autor korzysta z Linuksa od kilkunastu lat, zajmuje się wdra- • http://sourceforge.net/projects/pentaho/�les/ – Pentaho – pakiety do pobrania; żaniem oprogramowanie open source. Adres kontaktowy: pa- [email protected].

34 6/2010 www.lpmagazine.org 35 ROZWIĄZANIA Zimbra Collaboration Suite – Praca grupowa w OpenSource Zimbra Collaboration Suite – Praca grupowa w OpenSource Część 2 z 3 – Migracja, konfiguracja urządzeń W ostatnim numerze Linux+ można było przeczytać, czym jest Zimbra, czym różnią się wersje ZCS, na jakich urządzeniach można korzystać z systemu, jak wygląda wersja Offline. Dzisiaj chciałbym opisać, jak migrować do Zimbry, na co wtedy zwrócić uwagę i jakie narzędzia mogą być pomocne w trakcie tego procesu. Opiszę także, jak konfigurować urządzenia przenośne oraz jak optymalnie skonfigurować Zimbrę w firmie.

Zimbra z Exchange • określić, ile skrzynek równolegle ma być importo- Ten typ migracji wydaje się najbardziej oczywisty, ja- wanych. ko że oba produkty są bardzo zbliżone pod względem funkcjonalności. Najczęściej przeprowadzaną migracją Migracja ze „zwykłych” kont pocztowych jest Microsoft Exchange + Outlook na Zimbra Collabo- – IMAP/POP3 ration Suite + Zimbra Desktop. Standardowo zalecana jest migracja z IMAP poprzez Mimo że migracja wydaje się z pozoru trudna, w rzeczywi- linuxowe oprogramowanie imapsync – faktycznie, ten stości jest stosunkowo prosta. VMware, będący producen- sposób wydaje się być najłatwiejszy, wystarczy wyko- tem ZCS, zapewnia nam narzędzie zwane „ZCS Exchange nać polecenie: Migration Wizard”, które można pobrać z zakładki „Pobiera- nie” w panelu administracyjnym, lub poprosić o to swojego imapsync --buffersize 8192000 --nosyncacls --subscribe dostawcę usług (w przypadku usługi hostowanej). --syncinternaldates \ Migracja nie sprawia wiele trudności, ponieważ spro- --host1 imap.host.com --user1 [email protected] -- wadza się do przebrnięcia przez prosty kreator (Rysu- password1 imappasswd --sep1 "/" -- nek 1). Kolejne kroki do przejścia: prefix1 "" \ --host2 zimbra.host.com --user2 [email protected] -- • wybrać docelową domenę (można migrować tylko password2 zimbrapasswd jedną domenę naraz); • wybrać użytkowników do migracji lub określić gałąź Jednak jako administrator mogę zalecić użytkowni- Active Direktory do migrowania; kom bardziej intuicyjną migrację: wystarczy podpiąć • określić, do jakiej klasy usług (COS) mają przynale- do naszej Zimbry poprzez panel Web zewnętrzne kon- żeć nowi użytkownicy to IMAP poprzez Właściwości->Konta->Dodaj konto • określić hasło startowe dla importowanych użyt- zewnętrzne (Rysunek 2) i metodą przeciągnij i upuść kowników (nie trzeba go określać, można zrobić to przeprowadzić migrację (dotyczy to, w przeciwieństwie później lub użyć zewnętrznego mechanizmu uwie- do powyższego skryptu, zarówno IMAP, jak i POP3). rzytelniania LDAP); • zdecydować, czy importujemy kosz, wiadomości- Import z PST + Outlook Express śmieci; Wydawać by się mogło, że problemem będzie poczta

36 6/2010 www.lpmagazine.org 37 ROZWIĄZANIA Zimbra Collaboration Suite – Praca grupowa w OpenSource

często archiwizowana na lokalnych dyskach, czyli pli- wo poprzez ActiveSync i raczej nie wymaga komen- ki PST oraz dane Outlook Express. Na szczęście zno- tarza. Problemem są certyfikaty dla połączeń szyfro- wu przychodzi nam z pomocą prosty kreator ZCS PST wanych: Windows Mobile nie pozwala ściągnąć certy- Import Wizard (Rysunek 3). fikatów z ActiveSynca, trzeba umieścić je na urządze- Użycie samego narzędzia jest niezwykle proste (po- niu ręcznie. dajemy dane serwera Zimbry, wskazujemy plik PST Certyfikat główny, jak i certyfikaty urzędów certyfi- wraz z katalogami do importu, i gotowe). Przy tej opcji kujących można pobrać poprzez narzędzie SSLChain- warto jednak zwrócić uwagę na limity dotyczące naj- Server1 wykonując polecenie: większego przesłanego pliku po stronie serwera. Moż- na je zmienić po stronie serwera komendami (pamię- sslchainserver host.com tajmy jednak, że 0 nie oznacza nieskończoności, lecz po prostu 0!): Polecenie to generuje, poza plikami certyfikatów, pli- ki xml przydatne przy tworzeniu plików instalacyj- zmprov mcf zimbraMtaMaxMessageSize 51200000 nych CAB, które można wygenerować za pomocą zmprov mcf zimbraFileUploadMaxSize 51200000 polecenia:

Migracja z Outlook Express sprowadza się do impor- makecab host.com.wm5.xml wm5.cab tu danych do pełnego Outlooka, a następnie przepro- makecab host.com.wm6.xml wm6.cab wadzenie powyższej procedury. Dzięki czemu uzyskujemy certyfikaty na urządze- Konfiguracja urządzeń przenośnych – iPhone nia Windows Mobile 5 i 6. Oczywiście, zawsze mo- Urządzeniem, które podczas moich testów najlepiej żemy przegrać same pliki certyfikatów i importować współpracuje z Zimbrą, jest iPhone (Rysunek 4). Moż- je ręcznie, co jest jednak mniej eleganckim rozwią- na synchronizować pocztę, kalendarze, jak również zaniem. kontakty, dzięki czemu dodanie kontaktu do nasze- go telefonu będzie skutkowało automatycznym doda- Nokia Connecting with Zimbra, niem kontaktu na serwerze. Poza tym obsługa trybu czyli ZCS na Symbianie push działa doskonale. Element, który wymaga pod- Dla urządzeń fińskiego giganta sytuacja jest podob- kreślenia, stanowi fakt, że dodane zdarzenie do kalen- na jak dla telefonów sterowanych przez Windows Mo- darza na serwerze powoduje dodanie owego wydarze- bile – wszystko działa prawidłowo, poza certyfikatami nia w ciągu kilku sekund do naszego telefonu! Oczywi- (dla starszych wersji oprogramowania konieczne jest ście synchronizacja przebiega dwustronnie, a jej konfi- zainstalowanie aplikacji Mail For Exchange dostęp- guracja jest banalnie prosta:

Wybieramy Ustawienia->Poczta, kontakty, inne->Dodaj konto->Microsoft Exchange Ustawienia: E-mail: login@domena Domena: Użytkownik: login@domena Hasło: Twoje hasło Wybieramy: dalej Zaakceptuj certyfikat (jednorazowo) Serwer: nazwa naszego serwera Wybieramy: dalej

W następnym oknie wybierz elemen- ty, które chcesz, żeby były synchronizo- wane, i na tym kończy się konfiguracja urządzenia.

Konfiguracja urządzeń z systemem Windows Mobile Sama synchronizacja z urządzeniami (Rysunek 5) przebiega bezproblemo- Rysunek 1. Do migracji z Exchange służy prosty kreator

36 6/2010 www.lpmagazine.org 37 ROZWIĄZANIA Zimbra Collaboration Suite – Praca grupowa w OpenSource

nej na stronie nokia.com). W przypad- ku Symbiana połączenie SSL jest moż- liwe, ale przy każdej synchronizacji tele- fon będzie nas pytał o to, czy zaakcepto- wać certyfikat. Tym razem musimy użyć uprawnień administratora na serwerze ZCS i logu- jąc się przez ssh jako root, wykonać po- lecenia:

cd /opt/zimbra/ssl/zimbra/ca openssl x509 -in ca.pem -out ca.der - outform DER cp /opt/zimbra/ssl/zimbra/ca/ca.der /opt/ zimbra/jetty/webapps/ zimbra/downloads cd /opt/zimbra/httpd/htdocs vi /opt/zimbra/httpd/conf/mime.types

Na końcu tego pliku dodajemy linię:

application/x-x509-ca-cert der Rysunek 3. ZCS PST Import Wizard

Niestety, konieczny jest tutaj restart serwera poprzez sługę nowszych telefonów Nokia. Zatem w przypad- polecenie zmcontrol stop/start. ku problemów zalecany jest upgrade do przynajm- Na swoim urządzeniu mobilnym wchodzimy na niej tej wersji. stronę: Konta, współdzielone elementy, listy https://serwer.com:7071/zimbra/downloads/ca.der dystrybucyjne - czyli Zimbra w firmie Powyżej opisałem, jak przejść z innych popularnych Telefon powinien wykryć, że ściągany plik jest certyfi- systemów pocztowych na Zimbrę oraz jak skonfigu- katem głównym i zaproponować jego zainstalowanie. rować urządzenia przenośne. Jednak często pojawia Po tym kroku połączenia szyfrowane powinny działać się bardzo proste pytanie: „Jak skonfigurować Zim- bez zarzutu. brę u mnie w firmie”? Wbrew pozorom nie jest to py- Warto zwrócić uwagę na fakt, że w wersji 6.0.6 tanie proste. Pewne rzeczy w ZCS można zrobić na Zimbra Collaboration Suite wprowadzono wiele po- wiele sposobów, a co za tym idzie czasem może być prawek dotyczących urządzeń mobilnych, w tym ob- trudno wybrać ten najszybszy i najprostszy. Spróbuję

Rysunek 2. Migracja z IMAP/POP3 metodą przeciągnij i upuść za pomocą konta zewnętrznego

38 6/2010 www.lpmagazine.org 39 ROZWIĄZANIA Zimbra Collaboration Suite – Praca grupowa w OpenSource

przedstawić poniżej przykładową konfigurację syste- mu w średniej firmie. W firmie mamy n pracowników, tworzących dzia- ły, a każdy pracownik ma swoje konto ZCS. My chce- my utworzyć wspólny kontakt dla wszystkich pracow- ników biurowych [email protected]. Sposobów jest wiele, ale wiążą się one z różnymi sposobami ob- sługi takiego wirtualnego konta. Po pierwsze, możemy utworzyć listę dystrybucyj- ną [email protected], umieścić w niej wszyst- kich pracowników biurowych. Przy tej opcji problem stanowi fakt, że listy dystrybucyjne w ZCS działa- ją na zasadzie aliasu z wieloma adresami. Oznacza to, że kopia maila wysłanego na taką listę trafia do wszystkich odbiorców z osobna. Czasem jest to za- mierzone działanie, jednak w większości wypadków Rysunek 6. Symbian jest kolejną platformą obsługiwaną przez ZCS jest to problematyczne, ponieważ nie mamy kontro- li nad odpowiedziami na taką wiadomość. Innym pro- blemem są odpowiedzi, które wysyłane są z różnych szą firmą, będzie wyszukiwał zawsze jednego adre- adresów e-mail (adresu konkretnego pracownika). su e-mail. Osoba pisząca do naszej firmy na adres biuro@ mo- Warto również udostępniać kalendarze, dając innym że mieć problemy z ogarnięciem maili od 3 różnych wgląd czy też możliwość edycji naszych wydarzeń. pracowników, z 3 różnych adresów. Poza tym, pra- W takiej konfiguracji ogranicza nas tylko wyobraźnia: cownik firmy odpowiadając na taką wiadomość, po- możemy wyobrazić sobie system planowania produk- winien w kopii umieścić adres biuro@, tak żeby in- cji na zasadzie kalendarzy Zimbra. Linie produkcyjne ni wiedzieli, że na tę wiadomość już odpowiedziano, są w rzeczywistości zwykłymi kontami z udostępnio- unikając w ten sposób wielokrotnego odpisywania na nymi kalendarzami, kierownicy umieszczają plany pro- jedno zapytanie. dukcyjne w takim kalendarzu (mają prawa do edycji), Drugim sposobem, zdecydowanie bardziej zaleca- a pracownicy rozpoczynając zmianę sprawdzając, jaki nym, jest utworzenie dodatkowego konta biuro@na- jest plan (tylko do odczytu). szafirma.com i udostępnienie folderów odebrane i wy- słane wszystkim pracownikom biurowym. Dzięki takie- Podsumowanie mu rozwiązaniu można odpowiedzieć na wiadomość Powyższy artykuł to tylko fragment dużych działów, ja- w imieniu (on behalf of) [email protected] spra- kimi są migracja, konfiguracja urządzeń przenośnych wiając, że nasz klient, szukając korespondencji z na- czy też zastosowanie Zimbry. Pełne opisanie tych za- gadnień jest niemożliwe. W ostatniej części opiszę konfigurację i zarządza- nie ZCS od strony administratora (Hierarchical Stora- ge Management, prosty clustering, analiza wydajności i logów). Zapraszam !

1 http://www.microsoft.com/downloads/en/NoResults. aspx?displaylang=en-US&freetext=sslchainserver

PIOTR KUPISIEWICZ Open-Source to jego hobby, znany z projektów EKG i EKG2. Rysunek 4. iPhone najlepiej Rysunek 5. Windows Mobile Właściciel �rmy DELTEK. wspieranym przez ZCS sprawia problemy Kontakt: [email protected] urządzeniem z certy�katami http://deltek.pl/

38 6/2010 www.lpmagazine.org 39 ROZWIĄZANIA Okiem w chmurach Okiem w chmurach Nie jesteśmy dużą firmą, ale oferując projekt typu Open Source, pracujemy z takimi potentatami jak IBM, Telefonica czy SFR. Google ma ogromny rynek, ale jest też inny rynek użytkowników o konkretnych potrzebach – tajności informacji, prywatności i dostępności danych na platformie typu Cloud. Rynek ten chce kontrolować kod i opracowywać własne aplikacje, ten rynek szuka rozwiązań typu eyeOS. Jordi Collell – eyeOS Chief Communications Officer oraz eyeOS Community Global Leader

rzez wiele lat byliśmy świadkami nowych tren- się wrażeniu, że wymienione wyżej systemy operacyj- dów i zmian w sposobie użytkowania kompu- ne nie są do końca niczym nowym, a raczej dobrze zna- P terów, trudno jednak nazwać większość z tych nymi rozwiązaniami dostosowanymi do nowych potrzeb zmian rewolucyjnymi, a raczej należało by skłonić się i zmian. Są jednak rozwiązania, które starają się iść do określenia ich mianem ewolucji. Wszystko wskazuje o krok dalej, zrywając z koncepcją systemu rezydujące- jednak na to, iż nadchodzące lata przyniosą dużo rady- go na maszynie, przenosząc go w całości do przeglą- kalnych zmian. Zmiany te nie powinny jednak dziwić ni- darki internetowej, mowa tutaj o tak zwanych interneto- kogo, kto z wyprzedzeniem obserwuje rozwój Internetu, wych systemach operacyjnych. Jednym z najpopular- gdyż to właśnie w nim powinniśmy doszukiwać się nad- niejszych systemów tej klasy jest otwarto-źródłowy; roz- chodzącej przyszłości. wijany na licencji AGPL eyeOS, któremu to właśnie po- Nagły rozwój Chmur Obliczeniowych (ang. Cloud święcona będzie dalsza część tego artykułu. computing), które wbrew pozorom nie są niczym no- wym, rozpoczął się w roku 2007 za sprawą firm ta- Garść historii kich jak Google, Apple czy Microsoft. Tempo dodatko- EyeOS jest stosunkowo młodym projektem. Jego wo mocno zostało podkręcone przez firmę Asus, któ- pierwsza wersja ujrzała światło dzienne w 2005 roku, ra wprowadziła na rynek ukierunkowane na pracę w In- była to jednak bardziej koncepcja oraz próba stworze- ternecie; bardzo małe o niskich parametrach sprzęto- nia czegoś nowego, niż w pełni funkcjonalny i gotowy wych laptopy EeePC. Nie ulega wątpliwości, iż wraz ze do użytkowania produkt. Projekt dzięki swojej unikal- wzrostem popularności Chmur Obliczeniowych stopnio- ności bardzo szybko zaskarbił sobie uwagę dewelo- wo tracić będą na popularności oraz przydatności sys- perów i użytkowników z całego świata, czego konse- temy operacyjne, jakie w tej chwili znamy i używamy. kwencją było powstanie szybko rozwijającej się spo- Prekursorzy rozwiązań Cloud od niedawna zapowiada- łeczności pracującej nad eyeOS. W roku 2007 mia- ją nowe rozwiązania; Google opracowuje na bazie Li- ło miejsce wydanie pierwszej stabilnej wersji, a kilka nuksa swojego ChromeOS, Microsoft zapowiedział, iż miesięcy później doszło do otwarcia kodu projektu. Ey- Windows 7 będzie ostatnim systemem Windows, jakie- eOS od niedawna może pochwalić się również wspar- go znamy w formie, w której występował od swoich po- ciem ze strony takiego giganta jak IBM czy też wy- czątków. Nasze ulubione systemy spod znaku pingwina daniem w marcu tego roku nowej innowacyjnej wersji wcale nie są na tym polu w tyle. Trudno jednak oprzeć 2.0. Warto wspomnieć również, że przez te kilka lat ist-

40 6/2010 www.lpmagazine.org 41 ROZWIĄZANIA Okiem w chmurach

nienia eyeOS był wielokrotnie zdobywcą różnych na- ty czy procesor tekstu. Aplikacje te poza zmianami in- gród i wyróżnień. terfejsu wzbogaciły się w dodatkowe opcje i funkcjo- nalności, które zostały przede wszystkim ukierunko- EyeOS 2.0 – szybciej, wydajniej, prościej? wane na pracę grupową. W każdej chwili z poziomu Podczas prac nad nową wersją eyeOS w celu poprawy aplikacji mamy dostęp do Social Bar-u, dzięki które- wydajności systemu przeanalizowano i wprowadzono mu możemy błyskawicznie i intuicyjnie udostępniać w życie wiele nowych koncepcji. Pierwsze, co od razu pliki, dodawać do nich tagi oraz uzyskać szczegóło- powinno rzucić się nam w oczy po zalogowaniu do no- we informacje na ich temat. Użytkowników, którzy czę- wego eyeOS, to z pewnością pulpit. Poprzednie wersje sto pracują z dokumentami, ucieszyć powinna nowa eyeOS oferowały znane wszystkim ze standardowych wersja eyeDoc, która została wyposażony na przy- systemów operacyjnych podejście do pulpitu opierają- kład w dwa tryby pracy; podstawowy – oferujący tyl- cego się o panele i ikony. W nowej wersji systemu pul- ko niezbędne i kluczowe funkcje, oraz zaawansowa- pit został całkowicie przeprojektowany i dzięki temu stał ny. W tym drugim trybie otrzymujemy dostęp do ta- się on bardziej funkcjonalny i intuicyjny. Wyświetla on kich przydatnych, moim zdaniem, funkcji jak trans- teraz najistotniejsze informacje na temat aktualnej sesji, formacja zaznaczonego tekstu w duże litery i na od- ponadto w szybki i wygodny sposób umożliwia dostęp wrót. Ponadto pracując grupowo nad dokumentem, do najczęściej używanych aplikacji czy funkcji systemu. żaden użytkownik nie powinien mieć problemu z od- Wszystkie te zmiany sprawiają, że podczas pierwszego nalezieniem zmodyfikowanych przez innych użytkow- kontaktu z nowym eyeOS mamy wrażenie, iż jest to ra- ników linii tekstu, gdyż są one na bieżąco odpowied- czej narzędzie wspomagające pracę grupową czy sys- nio wyróżniane. Ponadto eyeDoc został wyposażo- tem zarządzania dokumentami(ang. Document Mana- ny w przydatną funkcję przeglądania historii zmian, gement System), niż wirtualny system operacyjny. Jed- dzięki której możemy śledzić postęp naszej pracy. nak zwolennicy standardowego podejścia do kwestii Niestety wielu dotychczasowych użytkowników, zarządzania pulpitem nie powinni zbyt długo narzekać, zwłaszcza domowych, może czuć się lekko rozczaro- gdyż w kolejnych wydaniach planowane jest zaofero- wana nową wersją eyeOS, gdyż wyraźnie została ona wanie użytkownikom możliwości wyboru modelu pulpi- zaprojektowana z myślą o wykorzystaniu w firmach i tu, który preferują. instytucjach. Zawiera ona także dużo mniej domyśl- nych aplikacji niż starsze wersje. Deweloperzy po pro- Praca w Chmurze stu postanowili skupić się na istotnych elementach sys- Dogłębnej przebudowie uległy również takie istotne temu, pozostawiając stworzenie dodatkowych aplikacji elementy systemu, jak menadżer plików, klient pocz- społeczności. W repozytorium aplikacji eyeOS Apps[1]

Rysunek 1. Centrum zarządzania wydarzeniami

40 6/2010 www.lpmagazine.org 41 ROZWIĄZANIA Okiem w chmurach

znaleźć możemy bogaty katalog dodatkowego opro- raz, zdaniem jego deweloperów, o 95% mniej wywołań gramowania. Jednak takie oprogramowanie może zo- w porównaniu z wcześniejszymi wersjami. Zrezygno- stać zainstalowane tylko przez administratora, powin- wano również z wykorzystania XML na rzecz JSON, co niśmy o tym pamiętać, korzystając z jednej z publicz- dodatkowo uczyniło cały proces komunikacji wydajniej- nie dostępnych instalacji tego systemu. Niestety pod- szym. Programiści zapewniają, że dzięki tym zmianom czas dłuższej pracy z nowym eyeOS szybko zauważy- udało się osiągnąć dużo większą integralność środowi- my, że nie wszystko działa jeszcze jak powinno. Klu- ska oraz znacznie lepszą wydajność działania całego czowe aplikacje, takie jak eyeDoc, posiadają kilka iry- systemu. Jednak, jak pisałem wcześniej, na razie by- tujących błędów, braków czy nie działających jeszcze wa z tym różnie, a całość potrafi czasem mimo wszyst- funkcji. Wiele osób zapewne zada pytanie; dlaczego ko strasznie zwolnić. Dużo pracy włożono również w takim razie doszło do publikacji wersji uchodzącej w usprawnienie i ułatwienie pisania nowych aplikacji. za stabilną, a która najwyraźniej taka nie jest? Sytu- Cały interfejs użytkownika został oparty o zorientowa- acja jest tutaj bardzo podobna, jak w przypadku wyda- ny obiektowo JavaScript-owy framework , na- nia pierwszej stabilnej wersji środowiska graficznego tomiast dzięki wykorzystaniu biblioteki GenericDao zy- KDE z serii 4. Główne komponenty eyeOS są już na skujemy możliwość odczytu i zapisu bazy danych bez tyle dopracowane, że programiści zdecydowali się wy- konieczności znajomości języka SQL. Ponadto osoby, dać wersję stabilną, by zachęcić niezależnych dewelo- które w przyszłości chciałyby zająć się tworzeniem apli- perów do prac nad nowymi aplikacjami czy też przepi- kacji dla eyeOS, powinny zainteresować się EyeDesi- saniem programów kompatybilnych ze starszymi wer- gner, który udostępnia programiście kompletne środo- sjami, by działały również z nową wersją eyeOS. wisko projektowe.

A pod maską silnik rwie! Dla kogo eyeOS? Nikogo nie powinno zdziwić, że nowy eyeOS to nie tyl- Jak pisałem wyżej, nowy eyeOS to przede wszystkim ko zmiany od strony wizualno-użytkowej. Podczas pro- spójne środowisko pracy grupowej oraz zarządzania jektowania tego wydania wydarzyło się bardzo wiele osobistymi informacjami (ang. Personal Information pod samą „maską” systemu. I tak mamy tutaj: komplet- Management). Dlatego też aktualny kształt i droga, nie nowe jądro oraz część bibliotek czy usług. Wszystko jaką obrali twórcy w nowym wydaniu, skłania mnie do zostało mocno zoptymalizowane, by radzić sobie jesz- wniosku, iż eyeOS oddał przynajmniej na razie część cze lepiej z większymi obciążeniami. Mocnym uspraw- rynku Chmur Obliczeniowych skierowanych do domo- nieniom został poddany również sposób komunikacji wych użytkowników Google i jego nadchodzącemu klienta z serwerem, tak że nowy eyeOS wykonuje te- ChromeOS. Skupiając się przy tym na niszy rozwią-

Rysunek 2. Kreator grup roboczych

42 6/2010 www.lpmagazine.org 43 ROZWIĄZANIA Okiem w chmurach

zań Cloud dla firm oraz użytkowników szukają- cych tego typu rozwią- zań oferujących więk- szą prywatność, spój- ność środowiska pra- cy oraz otwartość kodu czy też możliwość ho- stowania tego systemu na własnym serwerze, na przykład w naszej firmie. Dodatkowo dzię- ki możliwości zdobycia komercyjnego wsparcia technicznego czy też fakt współpracy eyeOS z takim gigantem jak IBM wpływa korzystnie Rysunek 3. Ekran logowania eyeOS na ewentualne rozważa- nia na temat wykorzystania go w komercyjnych zasto- nej pracy, i zalecał poczekać na wydanie odpowied- sowaniach. nich poprawek lub używanie przynajmniej na razie Oczywiście wymienione wyżej cechy najnowszego starszej wersji. eyeOS nie sprawiają jednoznacznie, iż stał się on nie- przydatny na przykład dla studentów, którzy chcieliby Podsumowanie mieć wszystkie notatki i materiały w Chmurze. Użyt- Wyraźnie widać, że deweloperzy podczas prac nad kowników domowych zachęcałbym jednak do zało- wersją 1.x zdobyli dość doświadczenia, by wyzna- żenia konta na jednej z wielu dostępnych instalacji czyć dla tego projektu konkretne zastosowanie, a tak- publicznej niż próby instalacji tego systemu na kon- że kierunek dalszego rozwoju. Duża część osób trak- cie hostingowym[2][3][4][5]. Za postępowaniem takim towała dotychczas eyeOS jako mało przydatny „sys- przemawiają znacznie większe wymagania stawiane tem w systemie”, nie widząc w nim przyszłości czy serwerowi, na którym mamy zamiar zainstalować ey- konkretnego zastosowania. Nowa wersja udowadnia eOS, który ponadto do osiągnięcia pełnej funkcjonal- że przeglądarkowe systemy posiadają potencjał, któ- ności wymaga na przykład instalacji po stronie ser- ry tylko czeka, by go wykorzystać, jednak, jak widać, wera OpenOffice z serii 2 w celu obsługi popularnych wymaga to zmiany podejścia i odcięcia się od utartych formatów dokumentów. Więcej na temat wymagań konwencji czy rozwiązań. Wykorzystanie rozwiązań systemowych znajdziemy tutaj[6], natomiast z prze- takich jak omawiany tutaj eyeOS w naszych przedsię- wodnikiem instalacji tutaj[7]. Starsze wersje mimo du- biorstwach może wyraźnie zredukować koszty zwią- żo niższych wymagań stawianych serwerowi często zane z zakupem odpowiednich licencji, czyniąc po- wymagały instalacji dodatkowego oprogramowania nadto środowisko pracy odpornym na awarie wynika- po stronie stacji klienckiej, co skutecznie uniemoż- jące z problemów po stronie klienta. Zyskujemy rów- liwiało uzyskanie pełnej funkcjonalności podczas ko- nież dostęp do naszych danych wszędzie tam, gdzie rzystania z rozwiązań typu Splashtop[8]. Niestety na tego sobie życzymy. dzień dzisiejszy z powodu różnych niedociągnięć od- Mimo wielu pozytywnych zmian jednym z większych radzałbym używania wersji 2.0 do normalnej codzien- braków, jakie można zarzucić eyeOS, jest wsparcie dla pracy w trybie offline. Udało mi się jednak dowiedzieć, Na skróty iż prace już trwają ,a wsparcia dla trybu offline powinni- śmy spodziewać się w nadchodzących wydaniach. • http://eyeos-apps.org/ • http://classic.eyeos.info/ – eyeOS 1.x • http://beta.eyeos.info/ – eyeOS 2.x • http://eye.linux.pl/ – eyeOS 1.x na serwerze Linux.pl • http://linux.pl/eye2/ – eyeOS 2.x na serwerze Linux.pl KACPER PLUTA • http://eyeos.org/index.php?p=downloads Na co dzień student Wyższej Szkoły Informatyki w Łodzi oraz • http://www.eyeos.org/installation_manual.pdf wiceprezeses stowarzyszenia Pleszew XXI. Pasjonat Wolnego • http://en.wikipedia.org/wiki/Splashtop/ Oprogramowania, dobrej muzyki i książek. Od niedawna stara się blogować na http://copyme.jogger.pl

42 6/2010 www.lpmagazine.org 43 ROZWIĄZANIA Oprogramowanie Open Source wspomagające zarządzanie serwerami Oprogramowanie Open Source wspomagające zarządzanie serwerami W niniejszym artykule chciałbym przedstawić narzędzia Open Source, które mogą być przydatne osobom zajmującym się administracją serwerów. Są to narzędzia darmowe i oferujące szerokie możliwości.

ak ciężka jest praca administratora serwera, nie trze- trustcom:~# wget -c http://prdownloads.sourceforge.net/ ba chyba wyjaśniać. Jeszcze więcej pracy pojawia webadmin/webmin_1.510-2_all.deb Jsię w sytuacji, gdy pod opieką mamy kilka lub na- wet kilkanaście/kilkadziesiąt serwerów. W takim przypad- A następnie: ku warto wspomóc swoją pracę narzędziami, które nie tyl- ko przyspieszą naszą pracę, ale również wpłyną na szyb- trustcom:~# dpkg --install webmin_1.510-2_all.deb szą reakcję na pojawiające się problemy. W przypadku otrzymania komunikatu o błędzie zależno- Panel administracyjny, analiza logów, ści należy wykonać polecenie uzupełniające brakujące monitoring serwerów pakiety. W tym celu wpisujemy: Bardzo często w momencie zakupu serwera dedykowa- nego lub VPS stajemy przed wyborem kilku komercyjnych trustcom:~# apt-get install -f paneli administracyjnych. Jeżeli do zarządzania dostaje- my nowy serwer, warto rozważyć zastosowanie paneli Otrzymamy informację o tym, jakie pakiety zostaną zain- Open Source, które oferują równie ciekawe funkcje co ich stalowane. Zatwierdzamy zmiany i powinniśmy otrzymać komercyjne odpowiedniki. pod koniec komunikat o treści:

Webmin ** initializing cache. This may take a while ** Wartym rozważenia panelem administracyjnym jest pakiet Setting up webmin (1.510-2) ... Webmin. Jest to bardzo proste oprogramowanie napisane Webmin install complete. You can now login to https:// w perlu i uruchamiane na zarządzanym serwerze. Zdalne localhost:10000/ zarządzanie oraz konfiguracje przeprowadzane są za po- as root with your root password, or as any user who can mocą przeglądarki internetowej, np. Opera, Firefox i wie- use sudo le innych. Aktualną dostępną wersją oprogramowania We- to run commands as root. bmin jest wersja 1.510. Pobrać ją można ze strony domo- trustcom:~# wej projektu. Instalacja pakietu również nie stanowi pro- blemu. W przypadku systemów Ubuntu/Debian wystarczy W tym momencie jest to dla nas informacja, że pakiet wykonać następującą sekwencję poleceń: Webmin został pomyślnie zainstalowany. Aby zalogować

44 6/2010 www.lpmagazine.org 45 ROZWIĄZANIA Oprogramowanie Open Source wspomagające zarządzanie serwerami

się do panelu, należy odwiedzić adres strony podany wy- Logwatch żej i zalogować się jako root lub użytkownik posiadający O tym, jak ważne jest przeglądanie logów systemowych, uprawnienia roota. Po wpisaniu adresu w przeglądarce nie trzeba chyba przekonywać żadnego szanującego się Firefox możemy otrzymać komunikat o błędnym certy- administratora. Pojawia się tylko pytanie, czy pamięta- fikacie. Można oczywiście dodać wyjątek i wtedy pojawi my o tym, żeby systematycznie przeglądać zawartość lo- się okno logowania. Bardziej zaawansowani użytkowni- gów? Najczęstszym przypadkiem jest przeglądanie logów cy mogą zaktualizować certyfikaty SSL. Pakiet Webmin w momencie pojawienia się problemów np. z pocztą elek- działa standardowo na porcie 10000. Okno logowania troniczną lub np. po włamaniu na serwer. Bardzo często wygląda tak jak na Rysunku 1. jest to przysłowiowa musztarda po obiedzie. Tym bardziej Po zalogowaniu się do panelu mamy dostęp do całej że pierwsze symptomy problemów pojawiają się wcześniej gamy funkcji umożliwiających zarządzanie takimi usługa- niż nastąpi faktyczna awaria. Zatem regularne przegląda- mi jak (w zależności od zainstalowanych pakietów na za- nie logów uchroni nas przed poważniejszymi problemami. rządzanym serwerze): Apache, Bind, MySQL, Fetchma- Warto w takim przypadku rozważyć zastosowanie oprogra- il, Postfix, Sendmail, Zadania Cron i wiele, wiele innych. mowania logwatch. Jakie możliwości oferuje nam ten pa- Oczywiście oprócz tego Webmin daje nam możliwość za- kiet? Otóż okazuje się, że jest to bardzo skuteczne narzę- rządzania typowymi pracami administratora, np. zarzą- dzie przy codziennej administracji. W zależności od konfi- dzanie logami systemowymi, wykonywanie kopii zapaso- guracji możemy na naszą skrzynkę pocztową otrzymywać wych itp. (Rysunek 2). zbiorcze zestawienie logów działających usług. Szczegól- Zaletą pakietu Webmin jest niewątpliwie jego szybkie nie jest to przydatne, kiedy pod opieką mamy kilka serwe- działanie, co nie jest bez znaczenia na słabszych maszy- rów i przeglądanie pojedynczych logów sprawiłoby pro- nach. Na pewno jest to pakiet warty rozważenia. Oczywi- blem. Instalacja pakietu jest bardzo prosta. W przypadku ście podobnych rozwiązań jest znacznie więcej i tak na- systemów Ubuntu/Debian wystarczy wydać polecenie: prawdę tylko od administratora serwera zależy, które opro- gramowanie będzie stosował w swojej codziennej pracy. trustcom:~# apt-get install logwatch

I tym samym mamy już zainstalowany pakiet lo- gwatch. Teraz pozostaje tylko odpowiednia kon- figuracja. Logwatch jest tak elastycznym opro- gramowaniem, że bez problemów można go do- pasować do własnych potrzeb. W zależności od dystrybucji położenie pliku konfiguracyjnego mo- że być różne. W przypadku dystrybucji Debian Rysunek 1. Okno logowania do panelu Webmin Lenny 5.0 jest to:

Rysunek 2. Panel administracyjny Webmin

44 6/2010 www.lpmagazine.org 45 ROZWIĄZANIA Oprogramowanie Open Source wspomagające zarządzanie serwerami

/usr/share/logwatch/default.conf/logwatch.conf mailer: „/usr/sbin/postfix”.

Jeśli chodzi o plik konfiguracyjny, warto zwrócić uwagę Kolejnym istotnym elementem jest okres czasu raporto- na kilka istotnych szczegółów. Po pierwsze, jeśli chce- wania. Logowatch obsługuje 3 możliwości (All, Yester- my otrzymywać informacje na maila, warto podać po- day, Today). Parametr odpowiedzialny za to: prawny adres mailowy. Może to być adres systemowy, np. Root, jak również [email protected]. Parametr odpo- Range = Today. wiadający za wysyłanie e-maili to: MailTo. Kolejnym ele- mentem jest archiwum. Warto się zastanowić nad tym, Warto pamiętać również o ustawieniu zadań Cron. czy logwatch ma „magazynować” zbiór logów. Parametr W przypadku domyślnych ustawień, raport jest genero- odpowiadający za tę funkcję to: Archives = Yes (lub No, wany około godziny 1 w nocy. Oczywiście nic nie stoi jeśli nie chcemy tworzenia archiwum). Kolejnym waż- na przeszkodzie, żeby zmienić te ustawienia w tabe- nym parametrem jest rodzaj MTA zainstalowanego na li Cron. Przykładowy raport otrzymany z programu lo- serwerze. W domyślnej konfiguracji obsługiwanym pro- gwatch (Listing 1). gramem jest sendmail. W przypadku Postfiksa należy Oczywiście w zależności od skonfigurowanych parame- zmienić parametr: mailer na: trów raport może być mniej lub bardziej szczegółowy. Bar-

Rysunek 3. Okno logowania monitora Zabbix

Rysunek 4. Panel administracyjny Zabbix'a

46 6/2010 www.lpmagazine.org 47 ROZWIĄZANIA Oprogramowanie Open Source wspomagające zarządzanie serwerami

Listing 1.

################### Logwatch 7.3.6+cvs20080702-debian (07/02/08) #################### Processing Initiated: Thu Apr 20 02:39:09 2010 Date Range Processed: today ( 2010-Apr-20 ) Period is day. Detail Level of Output: 5 Type of Output/Format: mail / text Logfiles for Host: localhost ################################################################## ------httpd Begin ------

0.30 MB transferred in 57 responses (1xx 0, 2xx 46, 3xx 4, 4xx 7, 5xx 0) 1 Archives (0.00 MB), 56 Content pages (0.30 MB),

dziej zaawansowane opcje są opisane w dokumentacji Teraz wystarczy w przeglądarce wpisać: pakietu dostępnej na stronie domowej projektu. http://localhost/zabbix Zabbix Nie można mówić o właściwym i poprawnym zarządza- i pojawi się okno logowania (Rysunek 3). niu serwerami bez ich stałego monitorowania. W jakim ce- Warto też pomyśleć nad tym, aby przeznaczyć jeden lu serwery są monitorowane? Przede wszystkim w celu komputer na monitorowanie serwerów, ze względu na to, uniknięcia poważniejszych awarii oraz szybkiego reago- że Zabbix oferuje nam możliwość pracy jako główny ser- wania na pojawiające się problemy (np. znaczne obcią- wer oraz jako agent. Jest to doskonałe rozwiązanie, jeśli żenie procesora, pamięci RAM itp.). Zastosowanie pakie- zależy nam na ciągłym obserwowaniu tego, co się dzieje tu Zabbix jest na pewno ciekawą alternatywą dla bardzo z serwerami będącymi pod naszą opieką. drogich monitorów sieci. Uwaga: do poprawnego działa- Zabbix oferuje nam możliwość monitorowania wielu nia wymagane są działające takie usługi jak: apache, php, funkcji, np. obciążenie procesora, ruch, wykorzystanie mysql. Instalacja w przypadku dystrybucji Debian Lenny pamięci i wiele innych. Poniżej przykładowy ekran (Ry- 5.0 wygląda następująco.: sunek 4). Konkurentem dla pakietu Zabbix jest Nagios. Jest to już trustcom:~# apt-get install zabbix-server-mysql zabbix- bardziej zaawansowane narzędzie i niestety dużo trud- frontend-php zabbix-agent niejsze w konfiguracji. Nie mniej jednak przy bardziej roz- budowanym środowisku warto wziąć go pod uwagę. W trakcie instalacji będziemy pytani o ustawienia zab- bix'a, np. nazwa i hasło użytkownika bazy danych, da- Podsumowanie ne serwera itp. Warto też sprawdzić w /etc/services, na Niestety, nie ma fizycznej możliwości omówienia wszyst- którym porcie działa Zabbix z tego względu, że czasa- kich niezbędnych narzędzi przydatnych w codziennej pra- mi (w zależności od dystrybucji) może się okazać, że do- cy administratora. Mam nadzieję, że powyższe narzędzia myślnym portem jest port 10000, na którym działa rów- poprowadzą Was w dobrym kierunku. Warto je stosować nież wyżej opisany Webmin. w codziennej pracy ze względu na to, że bardzo ułatwia- ją standardowe zadania. Szczególnie jest to ważne, jeśli W Sieci pod „naszymi skrzydłami” znajduje się kilkanaście serwe- rów i ew. awaria może spowodować duże szkody i utrud- • http://www.webmin.com – Strona domowa projektu We- bmin (en); nić życie nie tylko użytkownikom, ale przede wszystkim • http://www.isp-control.net – Rozbudowany panel IspCP (al- administratorom. ternatywa dla cPanel, DA); • http://www.logwatch.org/ – Strona domowa projektu lo- PRZEMYSŁAW SZOSTAK gwatch; Pasjonat Linuksa od przeszło 11 lat. Właściciel �rmy TRUST- • http://www.zabbix.com/ – Strona domowa projektu Zabbix; COM Systemy Informatyczne zajmującej się m.in. administra- • http://www.nagios.org/ – Strona domowa projektu Nagios – alternatywa dla Zabbix. cją serwerów. Kontakt z autorem: [email protected]

46 6/2010 www.lpmagazine.org 47 Już do pobrania ze strony SDJ Pobierz

SIECI KOMPUTEROWE Sieci komputerowe: część ósma Zostań administratorem sieci komputerowej Część ósma (8/9): Bezpieczeństwo sieci bezprzewodowych

W poprzedniej części cyklu przedstawione zostały podstawowe informacje niezbędne do budowy sieci bezprzewodowych standardu IEEE 802.11. W trakcie lektury zapoznałeś się również z przykładowymi konfiguracjami wykorzystującymi różne tryby pracy punktu dostępowego APPro 2405. W artykule przedstawione zostały jedynie podstawowe zagadnienia związane z bezpieczeństwem sieci bezprzewodowych; jest to jednak na tyle ważny temat, iż poświęcony jest mu cały niniejszy artykuł. Zapraszam do lektury!

e wstępie do siódmej części kursu przed- dowych sytuacja ulega komplikacji – podjęcie próby stawione zostały liczne zalety bezprzewo- połączenia możliwe jest w obrębie całego jej zasięgu. W dowych sieci komputerowych standardu Wskutek użycia odpowiedniego sprzętu przez włamy- IEEE 802.11 – łatwość konfiguracji i podłączania no- wacza (interfejsu sieciowego i anteny, a czasami rów- wych klientów, ograniczenie ilości uciążliwej pracy nież wzmacniacza) obszar ten może zostać znacz- przy montażu okablowania oraz swoboda, jaką uzy- nie zwiększony. Widać więc, iż granice naszej sieci są skują użytkownicy. Są to cechy, które sprawiły, iż bez- bardziej rozmyte niż mogłoby się nam wydawać. przewodowe sieci komputerowe pojawiają się w coraz Opisane powyżej zagrożenia nie wyczerpują proble- większych ilościach nie tylko w domach, lecz również mów z bezpieczeństwem sieci bezprzewodowych. Nie w firmach i urzędach. zniechęcaj się jednak – większość z nich można wyeli- Należy mieć jednak świadomość, iż nieprawidło- minować lub znacząco ograniczyć poprzez poprawną wa konfiguracja urządzeń bezprzewodowych mo- konfigurację sieci oraz stosowanie odpowiednich prak- że przyczynić się do narażenia całej sieci kompute- tyk, z których kilka zostanie omówionych w tym artyku- rowej (w tym części przewodowej). Zwróć uwagę, że le. Rozpoczniemy od krótkiej charakterystyki sieci bez- każda z zalet sieci bezprzewodowej jest również bar- przewodowych pod względem bezpieczeństwa w po- dzo atrakcyjna z punktu widzenia włamywacza. Nawet równaniu do przewodowych sieci Ethernet. Następnie w przypadku, gdy nasza sieć nie jest wykorzystywa- przedstawione zostaną podstawowe zasady popraw- na do przesyłania szczególnie poufnych danych, po- nej konfiguracji sieci bezprzewodowych, zapewniają- winniśmy koniecznie zastosować chociaż podstawowe ce poufność przesyłanych danych oraz bezpieczeń- techniki zwiększania bezpieczeństwa, takie jak szyfro- stwo jej klientów. Poznasz również dystrybucję Back- wanie danych przy użyciu odpowiedniego standardu. Track Linux, przygotowaną specjalnie do analizy bez- W przypadku sieci przewodowych, w celu uzyska- pieczeństwa sieci. W dalszej części omówione zostaną nia dostępu do jej zasobów na takich samych upraw- również najczęściej stosowane metody zabezpieczania nieniach, jak pozostałe komputery, włamywacz musiał sieci bezprzewodowych, wraz z analizą ich rzeczywistej mieć fizyczny dostęp do gniazda sieciowego. W więk- skuteczności. Na koniec zajmiemy się wykorzystaniem szości przypadków wiązałoby się to z koniecznością znanego już Czytelnikowi programu OpenVPN w celu dostępu do pomieszczeń przeznaczonych wyłącznie zabezpieczania szczególnie poufnych danych przesy- dla uprawnionego personelu. W sieciach bezprzewo- łanych przy pomocy sieci bezprzewodowych.

50 6/2010 www.lpmagazine.org 51 SIECI KOMPUTEROWE Sieci komputerowe: część ósma

Sieci bezprzewodowe Wi-Fi – charakterystyka Sieci bezprzewodowe standardu IEEE 802.11 dzia- pod względem bezpieczeństwa łają w nielicencjonowanym paśmie ISM 2.4/5 GHz. Zastosowanie dowolnej technologii sieciowej lub opro- Z jednej strony pozwala to na tworzenie nowych sie- gramowania serwerowego powinno być poprzedzone ci bez potrzeby uzyskania zgody odpowiednich urzę- staranną analizą potencjalnych problemów z bezpie- dów, z drugiej – znacznie ogranicza niezawodność czeństwem. Podobnie jest w przypadku sieci bezprze- łączności. Jedynym ograniczeniem, jakie narzucone wodowych – trudno mówić o świadomym zastosowa- jest urządzeniom działającym w tym paśmie jest mak- niu porad zawartych w tym artykule bez zrozumienia symalna moc, wynosząca 100 mW EIRP (Equivalent zagadnień przedstawionych w tym paragrafie. Isotropic Radiated Power – równoważną mocy wy- Należy pamiętać, iż rozwiązania przedstawione w tym emitowanej przez idealną antenę dookólną). Ogra- artykule dotyczą jedynie problemów powstających przy niczenie to ma służyć poprawieniu jakości transmisji zastosowaniu sieci bezprzewodowych. Zagadnienia oraz zwiększeniu maksymalnej liczby urządzeń ko- związane z bezpieczeństwem kablowych sieci Ethernet rzystających z łączności bezprzewodowej na danym omówione zostały w poprzednich częściach kursu. obszarze.

Określanie zasięgu sieci bezprzewodowej Sieć bezprzewodowa a lokalna sieć Ethernet Jednym z czynników o największym znaczeniu dla Sieci bezprzewodowe standardu IEEE 802.11 bar- bezpieczeństwa sieci bezprzewodowej jest jej za- dzo często stosowane są jako rozszerzenie przewo- sięg. Wydaje się to oczywiste, ponieważ brak możli- dowych sieci Ethernet. Poprzez odpowiednią konfi- wości nawiązania połączenia lub przechwytywania ra- gurację punktów dostępowych (opisaną w poprzed- mek z określonego miejsca uniemożliwia potencjalne- niej części kursu) umożliwia się bezpośredni dostęp mu włamywaczowi działanie. klientów bezprzewodowych do zasobów sieci prze- W poprzedniej części kursu przedstawione zosta- wodowej. W większości przypadków jest to jednak ły urządzenia wykorzystywane do budowy sieci bez- niepożądane i naraża całą sieć na nieuprawniony do- przewodowych: punkty dostępowe, interfejsy siecio- stęp. we oraz anteny. Okazuje się, iż obszar, w którym moż- Rozwiązaniem tego problemu jest zastosowanie fi- liwe jest nawiązanie połączenia z siecią bezprzewo- rewalla oddzielającego klientów sieci bezprzewodowej dową może być różny w zależności od sprzętu uży- od pozostałych segmentów i filtrowanie ruchu siecio- wanego przez klienta. Użycie dobrej jakości interfej- wego. Urządzenia bezprzewodowe powinny znajdo- sów wraz z odpowiednią anteną umożliwia nawiąza- wać się w obrębie jednej podsieci – znacząco zwięk- nie łączności na znacznie większym obszarze. Właści- sza to bezpieczeństwo i ułatwia konfigurację route- wość pozwalająca na polepszenie łączności poprzez rów. Zwróć uwagę, iż sieć bezprzewodowa jest w ta- poprawienie warunków pracy jednej z anten, nazywa- kiej sytuacji traktowana jako sieć niezaufana (publicz- na jest wzajemnością. na), a pochodzące z niej pakiety traktowane są na po- Paradoksalnie, sieć bezprzewodowa powinna cha- dobnych zasadach, jak w przypadku internetu i innych rakteryzować się jak najmniejszym zasięgiem, o ile sieci rozległych. pozwala on na podłączenie wszystkich klientów. Jak jednak w praktyce mierzyć poziom sygnału w róż- Podstawowe zasady budowy bezpiecznych nych miejscach oraz w jaki sposób należy rozmiesz- sieci bezprzewodowych czać punkty dostępowe? Problem ten zostanie szerzej Po zidentyfikowaniu zagrożeń dla sieci bezprzewodo- omówiony w dalszej części artykułu. wych Wi-Fi, przedstawione zostaną podstawowe za- sady ich bezpiecznej budowy. Dotyczyć one będą za- Ataki DoS na sieci bezprzewodowe równo zagadnień związanych z doborem sprzętu, jak Specyfika medium transmisyjnego, jakim są fale bez- i wykorzystania rozwiązań programowych oraz stan- przewodowe, zwiększa również podatność naszej sie- dardów szyfrowania. Szczególna uwaga zostanie po- ci na ataki typu DoS (Denial of Service – odmowa święcona bezpiecznemu podłączaniu sieci bezprze- usługi) na poziomie warstwy fizycznej. W zależności wodowych do kablowej sieci lokalnej. od stopnia wykorzystania pasma na danym obszarze, możliwe są również awarie transmisji nie spowodowa- Zasięg sieci powinien być ograniczony do ne świadomym działaniem osób trzecich. Uruchomie- wymaganego obszaru nie urządzenia na tym samym kanale (więcej informa- Zastosowanie odpowiednich anten oraz przemyślane cji na temat kanałów transmisyjnych w sieciach IEEE rozmieszczenie punktów dostępowych, wykorzystują- 802.11 zawartych zostało w poprzedniej części cyklu) ce przeszkody, pozwoli na uzyskanie pożądanego po- może zakłócić transmisję w dokładnie taki sam spo- krycia obszaru sygnałem, zmniejszając jednocześnie sób, jak celowe działanie włamywacza. ryzyko wykrycia przez osoby niepowołane.

50 6/2010 www.lpmagazine.org 51 SIECI KOMPUTEROWE Sieci komputerowe: część ósma

W przypadku pomieszczeń zamkniętych, punkty do- tów dostępowych jest bardzo ryzykowne. W przypad- stępowe należy umieszczać zawsze w centrum po- ku uzyskania nieuprawnionego dostępu do sieci bez- mieszczeń – pozwala to na pokrycie znacznej części przewodowej, włamywacz uzyskuje bowiem pełen do- pomieszczeń zasięgiem, nawet w przypadku zastoso- stęp do zasobów sieci. wania anten dookólnych o niewielkim zysku. Trudniej Odpowiednim rozwiązaniem jest w takiej sytuacji za- podać podobne porady dla połączeń punkt-punkt oraz stosowanie routera z firewallem filtrującym ruch sie- punkt-wielopunkt na dużych odległościach. Zawsze ciowy. Informacje na temat budowy takiego rozwiąza- warto jednak umieszczać anteny kierunkowe w poło- nia znajdziesz w poprzednich częściach cyklu: trzeciej żeniu utrudniającym osobom niepowołanym uzyskanie (podstawy routingu), czwartej (wykorzystanie kompu- wysokiego poziomu sygnału. tera z systemem Linux jako routera), piątej (podsta- Po każdej zmianie położenia anten lub punktów do- wy zabezpieczania sieci komputerowych) oraz szóstej stępowych, należy sprawdzić poziom sygnału na da- (konfiguracja firewalla przy zastosowaniu iptables). nym obszarze. Opisywany w dalszej części artykułu program Kismet (dostępny w dystrybucji BackTrack) Sieć bezprzewodowa – sieć zawodna doskonale sprawdzi się w tym celu. W trakcie budowy i rozbudowy sieci bezprzewodo- wych, szczególną uwagę powinniśmy poświęcić funk- Zawsze stosuj odpowiednie algorytmy szyfrujące cjom komputerów do niej podłączonych. Awaria bez- Dane przesyłane przy użyciu sieci bezprzewodowej przewodowej części sieci nie powinna bowiem unie- mogą zostać przechwycone przez każdą osobę znaj- możliwiać dostępu do ważnych zasobów sieciowych. dującą się w jej zasięgu. Od zastosowanych algoryt- W przypadku standardowych klientów, nieudostępnia- mów szyfrujących zależy, w jakim stopniu przechwyco- jących żadnych usług krytycznych dla działania sieci, ne informacje będą użyteczne dla potencjalnego wła- umieszczenie ich w bezprzewodowym segmencie sie- mywacza. ci jest zazwyczaj dobrym rozwiązaniem. Problem po- W sieciach bezprzewodowych standardu IEEE jawić się może w przypadku serwerów znajdujących 802.11 zastosowane mogą zostać trzy standardy szy- się w jej obrębie – w takim przypadku należy zastano- frujące: WEP (Wired Equivalent Privacy), WPA (Wire- wić się, czy nie istnieje możliwość podłączenia serwe- less Protected Access) oraz WPA2. Każdy z nich po- ra przy użyciu mniej wygodnego, ale bardziej nieza- siada wiele wersji, często specyficznych dla danego wodnego połączenia przewodowego. producenta sprzętu, co może niekiedy powodować Alternatywnym rozwiązaniem jest zastosowanie łącz problemy z kompatybilnością (jest to szczególnie czę- redundantnych, zapewniających awaryjne kanały łącz- ste w przypadku standardu WEP). ności. Ich rolę mogą pełnić zarówno standardowe po- łączenia kablowe Ethernet, jak i bardziej nietypowe WEP jest martwy! rozwiązania. W celu wykorzystania redundancji w sie- Różne systemy szyfrowania przesyłanych danych ci, konieczny jest zakup odpowiedniego sprzętu oraz charakteryzują się odmiennym poziomem bezpieczeń- zmiana konfiguracji routerów. stwa. Jest to fakt powszechnie znany, często jednak nie uświadamiamy sobie, iż niektóre z zabezpieczeń Stosuj wielopoziomowe systemy zabezpieczeń mogą jedynie sprowokować potencjalnego włamywa- W poprzednich częściach cyklu zostało wielokrotnie cza. Doskonałym przykładem takiej sytuacji jest sys- napisane, iż kluczem do bezpieczeństwa sieci jest nie tem WEP, który został złamany wiele lat temu, nieste- tylko jakość, lecz również ilość poziomów zabezpie- ty jest on jednak ciągle spotykany. czeń. Stwierdzenie to pozostaje prawdziwe dla sieci Zapamiętaj – stosowanie standardu WEP, niezależ- bezprzewodowych standardu IEEE 802.11. nie od długości klucza i charakterystycznych dla pro- Zastanówmy się, jak powinna wyglądać dobrze za- ducenta sprzętu rozszerzeń, nie uchroni Twojej sie- bezpieczona sieć bezprzewodowa. Na najniższym po- ci przed włamywaczami. Jak przekonamy się w jed- ziomie stosowane jest szyfrowanie przesyłanych da- nym z następnych paragrafów, złamanie tego zabez- nych przy użyciu standardu WPA/WPA2 – stanowi ono pieczenia nie wymaga żadnej wiedzy technicznej, ani pierwszą linię obrony, uniemożliwiającą osobom nie- specjalnego sprzętu. Dodatkowo ryzykujemy, że nie- uprawnionym połączenie z siecią oraz zmniejszają- doświadczeni script kiddies potraktują naszą sieć jako cą zagrożenia, wynikające z podsłuchiwania transmi- plac zabaw do testowania narzędzi służących do ła- sji. Dodatkowe zabezpieczenie stanowi wykorzystanie mania szyfrowania WEP. oprogramowania OpenVPN w celu tunelowania da- nych przesyłanych pomiędzy komputerami. Uwierzy- Sieć bezprzewodowa – sieć niezaufana telnianie odbywa się przy użyciu certyfikatów podpisa- Umożliwienie bezpośredniego dostępu do wnętrza nych przez lokalną jednostkę certyfikującą CA (Certi- sieci kablowej klientom łączącym się przy użyciu punk- fication Authority). Zastosowanie aż tak mocnych za-

52 6/2010 www.lpmagazine.org 53 SIECI KOMPUTEROWE Sieci komputerowe: część ósma

bezpieczeń może być dyskusyjne, doskonale spraw- częli wprowadzać rozwiązania, mające przedłużyć dzi się jednak w przypadku sieci służących do przesy- czas jego życia. Niestety, działania te przyniosły nie- łania szczególnie wrażliwych danych. wielki skutek, dodatkowo powodując problemy z kom- patybilnością pomiędzy urządzeniami różnych produ- Szyfrowanie w sieciach bezprzewodowych centów. Znajomość klucza potrzebna jest nie tylko do szyfro- W internecie znaleźć można wiele instrukcji opisu- wania przesyłanych danych – już na etapie nawiązy- jących krok po kroku, w jaki sposób złamać zabezpie- wania połączenia (tzw. asocjacja) konieczne jest jego czenia sieci wykorzystującej szyfrowanie WEP. W ar- wprowadzenie. W zależności od stosowanego stan- tykule tym, ze względu na przekonanie autora, iż nie dardu szyfrowania, zarówno nawiązywanie połącze- nie należy prezentować gotowych rozwiązań pozwala- nia, jak i szyfrowanie i odszyfrowywanie przesyłanych jących na penetrację sieci, temat ten nie będzie oma- danych mogą odbywać się w różny sposób. wiany. W paragrafie tym zajmiemy się krótkim omówieniem standardów szyfrowania wykorzystywanych w sie- WPA i WPA2 – pełne bezpieczeństwo? ciach Wi-Fi: WEP, WPA oraz WPA2. Problemy z bezpieczeństwem standardu WEP spo- wodowały, iż konieczne stało się opracowanie nowe- WEP – (nie)bezpieczne szyfrowanie? go standardu szyfrowania. Ze względu na dużą ilość W poprzednim paragrafie napisane zostało, iż wyko- sprzętu obsługującego WEP obecnego na rynku, jed- rzystanie w sieci standardu szyfrowania WEP nie przy- nym z podstawowych założeń twórców WPA była moż- czyni się do zwiększenia bezpieczeństwa jej użytkow- liwość dodania obsługi tego standardu poprzez aktu- ników. Nazwa WEP – Wired Equivalent Privacy – lepiej alizacje oprogramowania punktów dostępowych oraz opisuje intencję twórców, niż faktyczny poziom bezpie- interfejsów sieciowych. czeństwa. WPA częściowo rozwiązuje problemy z bezpieczeń- Standardowo WEP obsługuje klucze o długości wy- stwem standardu WEP poprzez cykliczną zmianę klu- noszącej 40 i 104 bity. Do klucza dołączany jest 24-bi- czy – umożliwia to zwiększenie bezpieczeństwa bez towy wektor inicjalizujący (IV – Initialization Vector). zmiany istniejących mechanizmów kryptograficznych. Bardzo często spotkać można niepoprawne twierdze- Pomimo znacznie większego poziomu bezpieczeń- nia, jakoby WEP używał 64-bitowych i 128-bitowych stwa, szyfrowanie WPA może być podatne na ataki kluczy. słownikowe oraz kryptoanalizę. Po wykryciu licznych problemów z bezpieczeństwem WPA2 jest najdoskonalszym dostępnym standardem standardu WEP, producenci sprzętu sieciowego za- szyfrowania dla bezprzewodowych sieci Wi-Fi. Używa

Rysunek 1. Dystrybucja BackTrack Linux 4 w akcji

52 6/2010 www.lpmagazine.org 53 SIECI KOMPUTEROWE Sieci komputerowe: część ósma

szyfrowania opartego o algorytm CCMP/AES, uzna- oraz diagnozowania problemów i pomiaru wydajności wany za w pełni bezpieczny. Jego zastosowanie z od- jej pracy. Najnowsza wersja BackTrack Linux dostęp- powiednio mocnym kluczem gwarantuje pełne bezpie- na jest na stronie internetowej http://www.backtrack-li- czeństwo sieci bezprzewodowej. nux.org/ (w chwili pisania artykułu jest to wersja Back- Zarówno WPA, jak i WPA2 obsługuje przydziela- Track 4 Final, wydana 11.01.2010). nie kluczy wielu użytkownikom przy użyciu serwerów BackTrack uruchamiany jest z płyty bootowalnej, RADIUS (Remote Authentication Dial In User Servi- może być jednak zainstalowany na twardym dysku ce). Dostępnych jest wiele implementacji, przezna- lub pamięci USB. Większość popularnych interfejsów czonych zarówno dla systemów Linux, jak i Micro- bezprzewodowych obsługiwana jest bez potrzeby in- soft Windows, pozwalających na budowanie tego ty- stalacji dodatkowych sterowników lub przeprowadza- pu rozwiązań. nia czasochłonnej konfiguracji.

BackTrack – charakterystyka dystrybucji Badanie zasięgu sieci przy pomocy Analiza bezpieczeństwa sieci, zarówno przewodo- programu Kismet wych, jak i bezprzewodowych, wymaga zastosowa- Badanie zasięgu sieci oraz poziomu sygnału jest jedną nia specjalistycznych narzędzi. W przypadku sieci z podstawowych czynności, które należy przeprowa- standardu IEEE 802.11 zadanie jest dodatkowo utrud- dzić po każdej zmianie punktu dostępowego lub jego nione, ponieważ przeprowadzenie dużej części za- położenia. Odpowiednie oprogramowanie pozwala na dań wymaga instalacji zmodyfikowanych sterowników, znaczne uproszczenie tego procesu. Przykładem do- umożliwiających wykorzystanie karty w trybie monito- skonałego narzędzia, które można wykorzystać w tym ra. Interfejs działający w tym trybie umożliwia prze- celu jest Kismet (http://www.kismetwireless.net/), do- chwytywanie pakietów należących do wszystkich sie- stępny w dystrybucji BackTrack. ci działających na danym obszarze. Instalacja sterow- Kismet wymaga do działania urządzenia działające- ników oraz odpowiedniego oprogramowania może być go w trybie monitora. Większość popularnych interfej- jednak dość czasochłonna. sów bezprzewodowych, w tym zintegrowanych, może Dystrybucja BackTrack (Rysunek 1) wychodzi na działać w tym trybie bez potrzeby instalacji dodatko- przeciw potrzebom osób odpowiedzialnych za bez- wych sterowników w dystrybucji BackTrack. Przełą- pieczeństwo sieci. Zawiera ona wszystkie narzędzia czenie karty w tryb monitora odbywa się przy pomocy i sterowniki niezbędne do kompleksowej analizy bez- polecenia airmon-ng start interfejs. Dostępne inter- pieczeństwa, przeprowadzania testów penetracyjnych fejsy bezprzewodowe możemy wyświetlić przy użyciu

Rysunek 2. Sieci wykryte przy użyciu programu Kismet

54 6/2010 www.lpmagazine.org 55 SIECI KOMPUTEROWE Sieci komputerowe: część ósma

programu iwconfig. Po zakończeniu działania progra- Skuteczność metody filtrowania adresów jest jednak mu airmon-ng w systemie powinien znajdować się do- niewielka – zmiana adresu MAC interfejsu nie spra- datkowy interfejs mon0. wia większego problemu zarówno w systemie Linux, Po przełączeniu karty w tryb monitora, możesz już jak i w systemach z rodziny . Rów- uruchomić program Kismet. Jego konfiguracja sprowa- nież zdobycie adresów MAC klientów przyłączonych dza się do odpowiedzi na kilka pytań w trybie interak- do sieci bezprzewodowej nie jest trudna – użycie na- cyjnym, m. in. podać należy nazwę interfejsu monitora. rzędzia airodump-ng umożliwia zdobycie wielu adre- Gdy proces konfiguracji zostanie zakończony, otwórz sów w bardzo krótkim czasie. drugie okno emulatora terminala i ponownie uruchom program Kismet. Na ekranie powinna pojawić się lista Ukrywanie identyfikatora SSID sieci, wraz z podstawowymi informacjami na ich temat W poprzedniej części cyklu omówione zostały identy- (Rysunek 2). Wybranie nazwy sieci powoduje wyświe- fikatory ESSID i BSSID, używane do identyfikacji sie- tlenie dokładniejszych danych: poziomu sygnału i szu- ci bezprzewodowych. Są one rozgłaszane przez bez- mu, liczby odebranych pakietów itd. przewodowe punkty dostępowe, co pozwala na two- Więcej informacji na temat zastosowania programu rzenie list sieci działających na danym obszarze wraz Kismet znajdziesz w dokumentacji. z ich parametrami, a następnie jej prezentację użyt- kownikowi komputera-klienta. Istnieje możliwość wyłą- Inne sposoby zabezpieczania sieci czenia rozgłaszania tych identyfikatorów, przez co sieć bezprzewodowych stanie się trudniejsza do wykrycia przez potencjalnych Wykorzystanie standardów szyfrowania jest podsta- włamywaczy oraz ciekawskich. wową metodą zabezpieczania sieci bezprzewodo- W przypadku punktu dostępowego APPro 2405, wy- wych. Większość dostępnych na rynku punktów dostę- łączenie rozgłaszania odbywa się przy użyciu opcji AP powych, w tym opisywany w poprzedniej części kursu Cloaking ze strony Wireless/Security interfejsu prze- APPro 2405, udostępnia ponadto dodatkowe funkcje, glądarkowego. Ten sam efekt można uzyskać po- takie jak filtrowanie adresów MAC, wyłączenie rozgła- przez wyłączenie funkcji Broadcast SSID na stronie szania identyfikatora SSID oraz blokowanie dostępu Wireless/Advanced Settings. do sieci bezprzewodowej w określonych godzinach. Ukrycie identyfikatora SSID nie zabezpieczy Two- Zajmiemy się teraz analizą przydatności i skuteczno- jej sieci przed włamywaczami – podobnie jak w przy- ści tych funkcji. padku filtrowania adresów MAC. Poprzez zastosowa- nie np. programu airodump-ng lub Kismet, możemy Filtrowanie adresów MAC zdobyć pełną listę sieci działających na danym obsza- Interfejsy bezprzewodowe, podobnie jak standardowe rze. Wykorzystanie tej funkcji może również powodo- interfejsy Ethernet, posiadają 48-bitowe adresy MAC, wać niedogodność dla użytkowników, tak więc powin- służące do identyfikacji hostów na poziomie warstwy na być używana z ostrożnością. łącza danych modelu ISO/OSI. Mogą być one rów- nież wykorzystane do identyfikacji hostów uprawnio- Blokowanie dostępu do sieci bezprzewodowej nych do połączenia z siecią. Połączenia nawiązywane w określonych godzinach przy użyciu interfejsów o adresach MAC nie znajdują- W przypadku większości sieci bezprzewodowych, cych się na odpowiedniej liście są w przypadku wyko- szczególnie tych działających w przedsiębiorstwach rzystania takiego rozwiązania odrzucane. oraz innych instytucjach, z łatwością można wskazać Dla urządzenia APPro 2405 uaktywnienie funkcji godziny, w których żaden z uprawnionych użytkowni- kontroli adresów MAC odbywa się przy użyciu stro- ków nie będzie korzystał z tego typu podłączenia do ny Wireless/Access Control interfejsu przeglądarko- zasobów sieciowych. Dobrym rozwiązaniem, zarówno wego. Adresy MAC dodajemy do listy Access Control z punktu widzenia oszczędności energii, jak i bezpie- List – każdy wpis może zostać włączony lub wyłączo- czeństwa, byłoby wyłączenie punktów dostępowych ny. Domyślną politykę ustawiamy przy użyciu funkcji lub samych nadajników. Access Control Mode. W praktyce, najczęściej blokuje Część dostępnych na rynku urządzeń umożliwia się wszystkich klientów, oprócz znajdujących się na li- ustawienie godzin pracy bezpośrednio z interfejsu ście (uzyskujemy to poprzez wybranie z listy rozwijal- przeglądarkowego. Opisywany w kursie punkt dostę- nej Allow). W przypadku, gdy korzystamy już z funk- powy APPro 2405 nie posiada niestety takiej funkcji. cji menedżera ruchu (Traffic Manager), możemy za- Przy pomocy połączenia poprzez telnet lub SSH mo- importować istniejącą listę adresów MAC poprzez za- żemy jednak przesłać odpowiedni skrypt do punktu znaczenie pola Use TFM MACs. Aktywacja filtrowania dostępowego, a następnie dokonać konfiguracji pro- adresów MAC ma miejsce po zaznaczeniu pola Ac- gramu cron, służącego do okresowego wywoływania cess Control. programów.

54 6/2010 www.lpmagazine.org 55 SIECI KOMPUTEROWE

W niektórych przypadkach dobrym rozwiązaniem Podsumowanie jest zastosowanie standardowego wyłącznika cza- W artykule zostały omówione podstawowe zagadnie- sowego, wpinanego pomiędzy zasilacz punktu do- nia związane z zabezpieczaniem sieci bezprzewodo- stępowego, a gniazdo sieciowe. Ogranicza to ilość wych standardu IEEE 802.11 przed podsłuchiwaniem zużywanej energii elektrycznej oraz zwiększa nieza- i nieuprawnionym dostępem. Mam nadzieję, iż zrozu- wodność sprzętu (krótsze cykle włączenie-wyłącze- miałeś, jak dużą wagę należy przykładać do bezpie- nie). czeństwa w tego typu sieciach. Omówione metody: stosowanie szyfrowania, od- OpenVPN w sieci bezprzewodowej powiednie rozmieszczenie sprzętu, umożliwiające W części kursu poświęconej budowie firewalli oraz wir- kształtowanie pokrycia obszaru zasięgiem, wykorzy- tualnych sieci prywatnych VPN, omówiona została in- stanie mechanizmów szyfrowania i uwierzytelniania stalacja, konfiguracja oraz wykorzystanie programu na poziomie warstwy aplikacji, umożliwiają uzyska- OpenVPN. Napisane zostało wtedy, iż do programu nie najwyższego stopnia bezpieczeństwa w sytuacji, tego wrócimy przy okazji omawiania zagadnień zwią- gdy wykorzystywane są jednocześnie. Spadek wydaj- zanych z zabezpieczaniem sieci bezprzewodowych. ności transmisji oraz drobne niedogodności wynika- OpenVPN doskonale nadaje się bowiem jako dodat- jące z konieczności instalacji oprogramowania Ope- kowa warstwa zabezpieczeń w transmisji bezprzewo- nVPN na komputerach klienckich, jest z pewnością dowej, zarówno typu punkt-punkt, jak i pomiędzy wie- usprawiedliwiony przez znaczne zwiększenie bezpie- loma klientami. czeństwa. W przypadku połączeń punkt-punkt o niewielkiej Podobnie jak w przypadku każdego artykułu z tej se- dynamice, dobrym rozwiązaniem jest zastosowanie rii, należy stwierdzić, iż zdobyte wiadomości zainte- kluczy statycznych o odpowiedniej długości. Jeże- resowany Czytelnik może poszerzyć poprzez zapo- li jednak wirtualna sieć prywatna ma służyć wymia- znanie się z informacjami znajdującymi się na stro- nie danych pomiędzy wieloma komputerami, to w ce- nach wymienionych w ramce W Sieci oraz innych stro- lu uwierzytelniania i szyfrowania warto zastosować nach internetowych. Szczególnie dużą uwagę pole- infrastrukturę klucza publicznego PKI. Obie te kon- cam zwrócić na zagadnienia związane z bezpieczeń- figuracje zostały dokładnie omówione w szóstej czę- stwem fizycznym oraz niezawodnością sprzętu siecio- ści kursu. wego. Pomimo iż zagadnienia te nie zostały omówione W przypadku sieci publicznych, w których istnieje w tym kursie z racji jego ograniczonej objętości, mają konieczność zapewnienia bezpiecznego kanału trans- one ogromne znaczenie dla każdego projektanta i ad- misji danych przy jednoczesnym braku szyfrowania ministratora sieci bezprzewodowych. (WEP/WPA/WPA2) zastosowanie OpenVPN lub in- W następnej, ostatniej części cyklu zajmiemy się nego oprogramowania do tworzenia wirtualnych sie- rozszerzeniem sieci o funkcje udostępniane przez ci prywatnych jest niemal koniecznością. Przykładem technologie VoIP. Wykorzystamy w tym celu dostępny może być sieć akademicka, z którą połączyć się mogą na wolnej licencji program Asterisk. Dowiesz się mię- wszyscy użytkownicy znajdujący się w jej obrębie (np. dzy innymi, w jaki sposób można udostępnić użytkow- w celu dostępu do internetu), jednak tylko uprawnieni nikom sieci możliwość taniego wykonywania połączeń użytkownicy (tzn. posiadający oprogramowanie Ope- międzynarodowych, zarówno przy użyciu standardo- nVPN oraz odpowiednie certyfikaty) powinni mieć do- wych telefonów analogowych, jak i softphonów (spe- stęp do usług udostępnianych przez serwery sieci we- cjalnych aplikacji obsługujących protokół SIP) oraz te- wnętrznej. lefonów VoIP. Do usłyszenia!

RAFAŁ KUŁAGA Autor interesuje się bezpieczeństwem systemów informatycznych, programowaniem, elektroniką, muzyką rockową, architek- turą mikroprocesorów oraz zastosowaniem Linuksa w systemach wbudowanych. Kontakt z autorem: [email protected]

W Sieci

• Strona główna dystrybucji BackTrack Linux - http://www.backtrack-linux.org/ • Strona główna programu Kismet - http://www.kismetwireless.net/ • Strona główna pakietu aircrack-ng - http://www.aircrack-ng.org/ • Forum poświęcone tematyce sieci komputerowych, w tym bezprzewodowych - http://www.trzepak.pl/

56 6/2010 ���������������� ��������

����������������������� ����������������������� �����������������

�����������������������

���������� ����������� ��� �������� ����� ������� �� ��� ���� ������� ������������ � ������� ������� ��������� ������������� ���������� �� ������������ ����������� ����� ���� ���������� ��� �������� ������ �������������������� ������ ������������ ����� ����������� ���������� �������� ���� ������� ������������� ���������� �� ������ ��������������������������������������������� �������������

��������������� � ����������������������� � ������������������������� � �������������������� � ��������������������������������� � ������������������������� ������������������������ � ������������������ ���������������� � �������������������� ������������������ ������������������ � ��������������������������������� �������������������������������� ���������������������������

����������������������������� ������������������������� ���������������������� � ����������������������� ���������������������������� ������������

��������������������� � ������������������������� � ������������������������ �������������������� � �������������������� �������������� � ������������������������ ������������������������������ � ����������������������������� ������������������ � ����������������������������� �������������������������� Systemy bankowe, ISOF TTS Company Sp. z o.o. HEUTHES istnieje na rynku od 1989 r. Obok Sprzedaż i dystrybucja oprogramowania kom- systemów informatycznych dla banków, ofe- puterowego. Import programów na zamówie- ruje nowoczesne oprogramowanie do obsługi nie. Ponad 200 producentów w standardowej firm. System ISOF jest udostępniany klientom ofercie. Chcesz kupić oprogramowanie i nie w trybie SaaS lub licencji. Pracuje na platfor- możesz znaleźć polskiego dostawcy? Skon- mie Linux i zawiera m.in. takie moduły jak taktuj się z nami – sprowadzimy nawet pojedyn- CRM, DMS, Magazyn, Sprzedaż, Logistyka cze licencje. oraz Rachunkowość. www.OprogramowanieKomputerowe.pl http://www.isof.pl

BetaSoft Sp. z o.o. Wyższa Szkoła Informatyki Jednym z naszych autorskich rozwiązań jest Informatyka, Ekonomia, Fizjoterapia (NO- system eDokumenty realizujący wymagania WOŚĆ, Pedagogika, Wychowanie Fizyczne, DMS i CRM. Pracuje on na platformach Li- Artystyczna Grafika Komputerowa, Architek- nux oraz Windows i należy do najnowocze- tura Wnętrz (NOWOŚĆ) Studia na odległość śniejszych aplikacji webowych działających e-learning (Informatyka II stopnia) Kompleks w technologii AJAX. System jest zintegrowany sportowy w Łodzi (hala, basen, siłownia, sau- z OpenOffice, MS Office i programami ERP. na). Wydziały zamiejscowe: Włocawek, Byd- www.betasoft.pl, goszcz, Opatówek. www.edokumenty.eu http://www.wsinf.edu.pl

OFERTA SKIEROWANA DO FIRM Wyślij do nas: logo firmy, dane kontaktowe i informacje o firmie. Reklama przez 12 kolejnych numerów tylko za 600 PLN + VAT.

Skontaktuj się z nami: [email protected] tel. 22 427 36 52 ZAJAWKA

Następny numer Linux+ ukaże się 30 maja. Temat numeru to:

E - commerce

W numerze tym planujemy zamieścić między innymi takie artykuły jak:

• Druga część z cyklu: Programowanie w Qt 4.6 pod Ubuntu • GRUB szyty na miarę • Prowadzenie projektów WWW dla małych i średnich przedsiębiorstw • Aplikacja SaaS w małych i średnich przedsiębiorstwach • Współtwórca polskiej wikipedii – wywiad dla Linux+ • Kontrola jakości projektu metodą client i server side control

Numer dostępny on-line na 30 maja

Redakcja zastrzega sobie możliwość zmiany zawartości pisma.

lama do pisma komp 1 14-04-10 14:38:5