projekt systemu ewidencji zasobów informatycznych z wykorzystanie oprogramowanie open source
DESCRIPTION
Projekt systemu ewidencji zasobów informatycznych z wykorzystanie oprogramowanie open sourceTRANSCRIPT
Projekt systemu ewidencji zasobów informatycznych z wykorzystaniem oprogramowania klasy open-source
W a r s z a w a 2010
Spis treści Wstęp ................................................................................................................................. 5 1. Charakterystyka systemu ewidencji zasobów informatycznych ..................................... 6
1.1 Inwentaryzacja ........................................................................................................... 61.2 Sprzęt ......................................................................................................................... 71.3 Oprogramowanie ........................................................................................................ 81.4 Analiza wymagań na systemy ewidencji zasobów informatycznych ...................... 10
1.4.1 Funkcjonalne ..................................................................................................... 101.4.2 Niefunkcjonalne ................................................................................................ 11
2. Przegląd istniejących rozwiązań klasy open-source do ewidencji zasobów informatycznych ................................................................................................................. 11
2.1 Oprogramowanie open-source ................................................................................. 112.1.1 Odmiany wolnego oprogramowania ................................................................. 122.1.2 Najpopularniejsze licencje ................................................................................ 142.1.3 Korzyści z użycia wolnego oprogramowania. ................................................. 15
2.2 Przegląd programów open-source ............................................................................ 172.2.1 Open-AudIT ...................................................................................................... 182.2.2 OCSI ................................................................................................................. 202.2.3 GLPI ................................................................................................................. 252.2.4 Paglo Crawler ................................................................................................... 272.2.5 Zabbix ............................................................................................................... 282.2.6 Pulse2 ................................................................................................................ 302.2.7 Projekty nierozwijane ....................................................................................... 30
3. Koncepcja wykorzystania i dobór oprogramowania klasy open-source do budowy systemu ewidencji zasobów informatycznych. ................................................................... 32
3.1 Docelowe przedsiębiorstwo ..................................................................................... 323.2 Klasyfikacja użytkowników ..................................................................................... 353.3 Wykorzystanie modułów open-source do budowy systemu. .................................... 363.4 Struktura systemu. .................................................................................................... 37
3.4.1 Architektura rozproszona .................................................................................. 383.4.2 Architektura scentralizowana ............................................................................ 39
3.5 Monitorowanie serwerów ......................................................................................... 41 4. Projekt wybranych elementów systemu ewidencji zasobów informatycznych ............. 43
4.1 GLPI - projekt rozszerzenia do tworzenia listy zakazanego oprogramowania ......... 434.2 Projekt architektury sprzętowo systemowej. ............................................................ 454.3 Projekt wykorzystania systemu przez grupy pracowników ...................................... 46
5. Implementacja systemu ewidencji zasobów informatycznych ..................................... 485.1 OCSI - poprawki do języka polskiego ...................................................................... 485.2 Implementacja rozszerzenia dla GLPI ..................................................................... 505.3 Instalacja systemu ewidencji .................................................................................... 53
5.3.1 Instalacja i konfiguracja OCSI .......................................................................... 545.3.2 Instalacja i konfiguracja GLPI .......................................................................... 555.3.3 Instalacja i konfiguracja Zabbix ........................................................................ 58
5.4 Konfiguracja systemu ewidencji dla instytucji o strukturze rozproszonej ................ 585.5 Proces inwentaryzacji .............................................................................................. 61
6. Testy .............................................................................................................................. 64
2
6.1 Projekt środowiska testowego ................................................................................. 646.2 Inwentaryzacja ......................................................................................................... 656.3 Raportowanie ........................................................................................................... 686.4 Rozszerzenie „Checker” ........................................................................................... 69
7. Porównanie wytworzonego systemu z rozwiązaniami komercyjnymi .......................... 707.1 Porównanie funkcjonalności .................................................................................... 707.2 Porównanie kosztów ................................................................................................ 73
Podsumowanie ................................................................................................................. 75 Bibliografia ...................................................................................................................... 76 Spis załączników .............................................................................................................. 77
3
Wstęp
Rozwój przedsi biorstw i ich informatyzacja powoduj , i obecnie ka dyę ą ż ż
pracownik wykonuj c swoj prac wspomagany jest przez komputer. Firma odpowiada zaą ą ę
komputery swoich pracowników, musi zapewni ich dost pno , wydajno oraz legalno .ć ę ść ść ść
Aby osi gn te cele nale y odpowiednio reagowa na problemy zg aszane przezą ąć ż ć ł
u ytkowników, oraz dba o legalno zainstalowanego oprogramowania. Jednocze nież ć ść ś
utrzymanie struktury informatycznej w firmie niesie za sob wiele kosztów. Mo emy jeą ż
minimalizowa poprzez trafne decyzje co do zakupu i modernizacji sprz tu. Aby dokonywać ę ć
w a ciwych wyborów musimy posiada wiedz na temat wykorzystania sprz tu ił ś ć ę ę
oprogramowania w przedsi biorstwie. W tym celu tworzone s systemy pomagaj ceę ą ą
ewidencjonowa infrastruktur informatyczn . Na rynku dost pnych jest wiele systemówć ę ą ę
komercyjnych. Wdro enie takowych systemów w du ych przedsi biorstwach wi e si zż ż ę ąż ę
bardzo du ymi kosztami, dlatego te warto zainteresowa si rozwi zaniami bezp atnymi,ż ż ć ę ą ł
które nie odbiegaj jako ciowo od p atnych rozwi za . ą ś ł ą ń
Celem pracy jest przygotowanie systemu który b dzie wykorzystywany wę
przedsi biorstwie do ewidencjonowania zasobów informatycznych. System powinien sk adaę ł ć
si z komponentów cechuj cych si dost pno ci kodu ród owego. W pierwszej cz cię ą ę ę ś ą ź ł ęś
zosta a przedstawiona tematyka inwentaryzacji, oraz wymagania na system wspomagaj cy j .ł ą ą
Nast pnie opisana jest idea oprogramowania open-source, jego zalety jak i wady. Zosta yę ł
opisane i zbadane pod k tem dost pnych funkcjonalno ci programy open-source.ą ę ś
Przyk adowym przedsi biorstwem, na podstawie którego przeprowadzono analiz jest ZUS.ł ę ę
Bazuj c na opisanych rozwi zaniach zosta zaprojektowany system. Brakuj ceą ą ł ą
funkcjonalno ci oraz architektura systemu zosta y opisane w rozdziale projektowanie.ś ł
Nast pnie wykonano instrukcje wdro enia systemu oraz implementacje wymaganychę ż
funkcjonalno ci. Tak wytworzony system zosta przetestowany w celu sprawdzenieś ł
poprawno ci dzia ania. Na koniec wykonano porównanie z wiod cymi projektamiś ł ą
komercyjnymi, pod k tem oferowanych mo liwo ci oraz kosztów. ą ż ś
4
1. Charakterystyka systemu ewidencji zasobów informatycznych
1.1 Inwentaryzacja
„Inwentaryzacja (remanent) – spis inwentarza z natury, stan zapasów danej rzeczy w danym
momencie w okre lonym dniu. Ustalenie rzeczywistego stanu zasobów maj tkowych , orazś ą
róde pochodzenia”ź ł 1. Poj cie inwentaryzacji wzi te z ekonomi w odniesieniu do ewidencjię ę
zasobów informatycznych tylko ideowo oddaje natur tego drugiego. Ewidencja zasobówę
informatycznych, ma wiele innych aspektów których nie ma po prostu przy inwentaryzacji w
ekonomi. Próba wzi cia przepisu z ekonomi na wykonanie inwentaryzacji nie sprawdzi si wę ę
odniesieniu do informatyki, gdy specyfika zasobów informatycznych i przydatno ichż ść
spisywania jest bardzo ró na i nie wszystko co mo emy spisa b dzie przydatne doż ż ć ę
czegokolwiek w przysz o ci. Ewidencja zasobów informatycznych powinna nie za sobł ś ść ą
przede wszystkim mierzalne korzy ci. Wed ug podr cznika do inwentaryzacjiś ł ę 1 powinny
istnie nast puj ce etapy w omawianym procesie:ć ę ą
1. przygotowanie
2. przeprowadzenie
3. rozliczenie
W odniesieniu do omawianej dziedziny taki podzia jest przydatny, aczkolwiek etapł
przygotowania, powinien by jednorazowy, samo przeprowadzanie i rozliczanie (u nasć
raportowanie) wykonywane okresowo przez zautomatyzowany mechanizm. Taki podzia jestł
bardziej praktyczny, gdy raz instalujemy oprogramowanie na serwerze do gromadzeniaż
informacji, a nast pnie z niego korzystamy monitoruj c stan w ca ej firmie. Nast pnieę ą ł ę
podr cznik podaje rodzaje inwentaryzacjię
1. pe na okresował
2. pe na ci g ał ą ł
3. wyrywkowa okresowa, b d ci g aą ź ą ł
Z tego podzia u najbli ej nam b dzie do punktu trzeciego (wyrywkowa okresowa, b dł ż ę ą ź
ci g a). W naszym przypadku mo emy przeprowadza w a ciwie dwa rodzaje inwentaryzacji:ą ł ż ć ł ś
1. jednorazowa cz ciowa,ęś
2. okresowa cz ciowa.ęś
1 D. Ma kowska, ł „Inwentaryzacja od A do Z”, Gda sk 2007, s.10.ń
5
Przeprowadzanie pe nej inwentaryzacji zasobów informatycznych, to poj cie trudne doł ę
zdefiniowania, gdy trudno okre li jak szczegó owo nale y spisywa sprz t: czy nale yż ś ć ł ż ć ę ż
liczy sztuki komputerów osobistych, czy równie ich elementy. Warto te zastanowi si czyć ż ż ć ę
warto inwentaryzowa wszystkie urz dzenia, np. urz dzenia peryferyjne(myszy, klawiatury,ć ą ą
g o niki, pen-drive). Oprogramowanie mo e te nie posiada funkcjonalno ci do wykryciał ś ż ż ć ś
ka dego sprz tu(trudno okre li np. jaki model g o ników podpi ty jest do stacji roboczej).ż ę ś ć ł ś ę
Dochodzi oczywi cie te zbieranie informacji o oprogramowaniu, które dzia a naś ż ł
komputerach.
G ównym zadaniem inwentaryzacji w klasycznym uj ciu jest „Ustalenieł ę
rzeczywistego stanu zasobów maj tkowych”, czyli policzenie co ile jest warte. W naszymą
przypadku takie rozliczenia nie stoj na pierwszym miejscu, cho by dlatego e wartoą ć ż ść
sprz tu komputerowego bardzo szybko spada i próba okre lenia ile wart jest dwuletni zestawę ś
komputerowy jest bardzo przybli ana. Podr cznik podaje równie , i podstawow metodż ę ż ż ą ą
inwentaryzacji jest spis z natury. Jednak nikomu po prostu nie chce si chodzi po pokojach wę ć
firmie i spisywa ka dy komputer oddzielnieć ż , poza tym jest to czasoch onne i obarczoneł
b dem. Mamy tutaj klasyczny przyk ad u yteczno ci rozwi za informatycznych dołę ł ż ś ą ń
zast pienia procesów powtarzalnych i czasoch onnych. Dlatego te istnieje zapotrzebowanieą ł ż
na oprogramowanie do inwentaryzacji zasobów informatycznych. W podr czniku znajdziemyę
równie wiele zasad inwentaryzacji:ż
• ograniczonego zaufania – dzi ki zastosowaniu specjalistycznego oprogramowania, któreę
zbiera informacje, eliminujemy czynnik ludzki,
• zaskoczenia – u ytkownik nie musi wiedzie , e w danej chwili jego sprz t jestż ć ż ę
poddawany inwentaryzacji (ma to du e znaczenie przy wykrywaniu nieporz dnegoż ą
oprogramowania b d tre ci na komputerze),ą ź ś
• kompleksowo ci i kompletno ci – oprogramowanie, które zbiera informacje b dzie naś ś ę
ka dym sprz cie dzia a o tak samo i nie pominie jakiego elementu. Oczywi cie twórcyż ę ł ł ś ś
oprogramowania musz okre li co b dzie spisywane.ą ś ć ę
1.2 Sprzęt
Kieruj c du ym czy ma y przedsi biorstwem mo emy napotka problemy zwi zane zą ż ł ę ż ć ą
zarz dzaniem sprz tem. Te trudno ci to m. in. :ą ę ś
6
• sprz t komputerowy szybko staje si przestarza y, ę ę ł o czym mówi prawo Moora, cytuj :ę
”optymalna liczba tranzystorów w uk adzie scalonym podwaja si co 18-24 miesi ce.” ,ł ę ą
• wiele podzespo ów w ró nych konfiguracjach,ł ż
• konieczno sprawdzania maszyn z osobna, ść
• ingerencja w zestawy komputerowe (komputer stacjonarny nie jest jednolit kostk ).ą ą
Dzi ki oprogramowaniu inwentaryzacyjnemu jeste my w stanie radzi sobie z tymię ś ć
problemami. Oprogramowanie samodzielnie zbierze automatycznie informacje o wszystkich
podzespo ach ł bez potrzeby podchodzenia do ka dej stacji. ż Dodatkowo posiadamy też
wymierne korzy ci z przeprowadzonej inwentaryzacji:ś
• atwe odnalezienie zapasowego sprz tu komputerowego,ł ę
• rozs dniejsze planowanie wydatków,ą
• sprawne decyzje dotycz ce nieu ywanego sprz tu.ą ż ę
1.3 Oprogramowanie
Mo emy wskaza nast puj ce tż ć ę ą rudno ci zwi zane z oprogramowaniem:ś ą
• konieczne pobieranie oprogramowania dla ró nych platform sprz towych(32bit/64bit,ż ę
AMD/Intel, Windows/Linux/Mac),
• mo liwo samodzielnej instalacji przez u ytkowników,ż ść ż
◦ piractwo komputerowe,
▪ P2p,
▪ P2m,
▪ serwisy typu http://rapidshare.com,
◦ wirusy,
◦ niepotrzebne oprogramowanie,
• licencje czasowe na aplikacje,
• wielo systemów operacyjnych.ść
7
8
Rys. 1: Popularne dostępne systemy operacyjne na rynku.
Je li chodzi o kś orzy ci z inwentaryzacji oprogramowania to mo emy tutaj wymieni :ś ż ć
• odnawianie i zakup nowych licencji,
• wykrywanie potencjalnych problemów: np. brak miejsca na dysku,
• informacje o niedzia aj cym oprogramowaniu,ł ą
• wykrywanie niepotrzebnych aplikacji (np. Gadu Gadu, p2p),
• atwiejsze szacowanie kosztu wykorzystywanego oprogramowania (pogl doweł ą
informacje o koszcie oprogramowania, np. koszt licencji na systemy operacyjny firmy
Microsoft, umo liwia szukanie oszcz dno ci),ż ę ś
• wykrywanie oprogramowania bez licencji.
Inwentaryzacja mo e nam równie pomóc w wykryciu programów, które sż ż ą
niepo dane na komputerach pracowników np. programy które posiadaj luki bezpiecze stważą ą ń
oraz programy do wymiany nielegalnych plików. Po wykonaniu inwentaryzacji mo emyż
sprawdzi , czy która z zainstalowanych aplikacji jest niepotrzebna b d te niebezpieczna,ć ś ą ź ż
lub te nie mamy na ni licencji.ż ą
1.4 Analiza wymagań na systemy ewidencji zasobów informatycznych
Wymagania stawiane przed omawianym systemem mo emy podzieli na dwie grupy:ż ć
funkcjonalne i niefunkcjonalne.
1.4.1 Funkcjonalne
System powinien:
• dokonywa automatycznego(okresowego) spisu sprz tu oraz elementówć ę
sk adowych ,ł
• dokonywa automatycznego(okresowego) spisu oprogramowania na nimć
zainstalowanego,
• posiada mo liwo r cznego wprowadzania informacji o urz dzeniach, których nieć ż ść ę ą
da si automatycznie zinwentaryzowa ,ę ć
• obs ugiwa systemy w ró nych konfiguracjach sprz towych jak i pod wzgl demł ć ż ę ę
oprogramowania(tj. zbiera informacje o oprogramowaniu zarówno z komputerów z
zainstalowanym systemem operacyjnym z rodziny Windows jak i Linux,
• umo liwia rozszerzanie jego mo liwo ci, oraz wspó prac z innymi systemami(np.ż ć ż ś ł ę
mo liwo napisania rozszerzenia zbieraj cego informacje z urz dze pod kontrolż ść ą ą ń ą
systemu android, Mac OS),
9
• posiada mo liwo ustawiania alertów zwi zanych np. z wyga ni ciem licencji,ć ż ść ą ś ę
• definiowa dostawców oprogramowania, tak by w razie wyga ni cia licencji mieć ś ę ć
kontakt,
• generowa raporty sprz tu który jest posiadany,ć ę
• generowa raporty oprogramowania zainstalowanego,ć
• umo liwia wykrywanie aplikacji niepotrzebnych,ż ć
• umo liwia szacowanie kosztów zakupu licencji,ż ć
• posiada mo liwo przypisania pracownika do jednostki.ć ż ść
1.4.2 Niefunkcjonalne
System powinien:
• by systemem scentralizowanym,ć
• atwo si skalowa ,ł ę ć
• by udost pnianym na jednej z licencji typu open-source.ć ę
10
2. Przegląd istniejących rozwiązań klasy open-source do ewidencji zasobów informatycznych
2.1 Oprogramowanie open-source
„Wolne Oprogramowanie (ang. free software) - ruch programistów i u ytkownikówż
komputerów zaanga owanych w dzia ania na rzecz wolnego dost pu do oprogramowania przezż ł ę
ogó u ytkowników.”ł ż 2. Ruch ten istnieje od pocz tku istnienia komputerów i oprogramowania,ą
kiedy nie by tak nazywany, gdy nie istnia a potrzeba nazywania go, poniewa wszystkieś ł ż ł ż
programy by y wolne i nikt nie nak ada ogranicze licencyjnych. Formalizacja ruchu zacz a sił ł ł ń ęł ę
w latach 80-tych, gdy firmy zacz y udost pnia tylko pliki wykonywalne programów nieęł ę ć
udost pniaj c przy tym kodu. Wszystko zacz o si od osoby Richarda M. Stallman'a, któryę ą ęł ę
maj c problemy z drukark w firmie, bra sterownik do drukarki i go poprawia , udost pniaj cą ą ł ł ę ą
zmiany wszystkim zainteresowanym. W dniu, w którym w firmie pojawi a si nowa drukarka ił ę
stare problemy, chc c naprawi j sprawdzonym sposobem, zorientowa si , i producent nieą ć ą ł ę ż
dostarczy kodu ród owego do oprogramowania steruj cego. My l c pocz tkowo, i jest toł ź ł ą ś ą ą ż
tylko niedopatrzenie, poprosi o takie kody, ale spotka si z wyra n odmow . Nie wynika ał ł ę ź ą ą ł
ona z braku yczliwo ci tylko z polityki firmy. W ten sposób u wiadomi sobie zjawiskoż ś ś ł
zamykania kodu. Przyzwyczajony do panuj cej w jego rodowisku dzielenia sią ś ę
oprogramowaniem, z biegiem lat zacz formowa idee „wolnego oprogramowania”. W rokuął ć
1991 wyda pierwsz licencj wolnego oprogramowania GNU Public Licence, której g ównymł ą ę ł
przes aniem i celem jest rozprzestrzenianie si wolnego oprogramowania.ł ę
Z ruchem open-source wi e si oczywi cie równie osoba Trowalda Linusa. Wąż ę ś ż
1991 w Helsinkach , jak mówi z pobudek czysto praktycznych, stworzy pierwsz wersjł ł ą ę
systemu Linux. Dzi ki temu, i widzia Stallman'a na wyk adzie o wolnym oprogramowaniuę ż ł ł
opublikowa swój kod na licencji GPL. Sta o si to w momencie, gdy ruch GPL mozolnieł ł ę
próbowa si dorobi w asnego wolnego systemu. Sta si nim Linux.ł ę ć ł ł ę
2.1.1 Odmiany wolnego oprogramowania
Jak to w yciu bywa ludzie maj ró ne pogl dy i nawet je li dzia aj weż ą ż ą ś ł ą
wspólnym celu, to tworz si frakcje. Nie inaczej jest z ruchem open-source. Tu roz amą ę ł
nast puje g ównie z przyczyn ideologicznych, oraz w zale no ci od tego jak bardzo duchowoę ł ż ś
2 http://pl.wikipedia.org/wiki/Wolne_oprogramowanie
11
traktuj swoja misj . Niektórzy jak Stallman bardzo dos ownie podchodz do wolno ci ią ę ł ą ś
przejawia si to we wszystkich dziedzinach ich ycia, oponuj za ca kowitym uwolnieniemę ż ą ł
informacji. Dlatego te licencja GPL jest licencj „wirusow ”, gdy program który korzystaż ą ą ż
z kodu GPL równie musi by na tej samej licencji (zż ć apobiega to wykorzystywaniu kodu
napisanego przez innych i podszywanie si pod, niego, oraz zarabianie na pracy innych). ę Inni
przedstawiciele ruchu podchodz troch bardziej praktycznie, gotowi po wi ci kilkaą ę ś ę ć
klauzur prawniczych w imi wi kszej popularyzacji open-source. St d te powsta o wieleę ę ą ż ł
licencji typu open-source, czyli takich które gwarantuj darmowy dost p do koduą ę
ród owego aplikacji. Napawa optymizmem, to i istniej inicjatywy typu FLOSS, któreź ł ż ą
scalaj wszystkich zapale ców i we wspólnym imieniu wyst puj na forum ogólnym.ą ń ę ą
„Istnieje wyra na rozbie no mi dzy filozofi free software a open-source. Free softwareź ż ść ę ą
k adzie g ówny nacisk na strony moralne i etyczne dost pno ci oprogramowania, natomiastł ł ę ś
open-source podkre la znaczenie technicznej doskona o ci kodu. W praktyce ka deś ł ś ż
oprogramowanie typu free software jest jednocze nie open-source, ale nie ka deś ż
oprogramowanie typu open-source jest zarazem free software (poniewa pierwotna idea jestż
bardziej radykalna, a w ruchu potomnym zosta a w pewnym sensie z agodzona). Ze wzgl duł ł ę
na istniej ce ró nice podej cia obu ruchów okre la si je nieraz zbiorczym terminem FLOSSą ż ś ś ę
(Free/Libre Open-Source Software), spotykanym g ównie w oficjalnych analizach i temuł
podobnych dokumentach”.
Open-Source - „Termin ten jest u ywany przez jego adwokatów z dwóch powodów. Poż
pierwsze eliminuje zamieszanie wokó s owa „wolny”, które biznes interpretuje zwykle jakoł ł
„o zerowych kosztach”. Po drugie pozwala firmom na rozpatrywanie zagadnienia wolnego
oprogramowania raczej z technicznego ni etycznego punktu widzenia”ż 3.
„Mówi c <<wolny>>, nie my l o wolnym, bezp atnym dost pie do piwa, lecz o wolno cią ś ł ę ś
wypowiedzi”4.
3 S. Williams, „W obronie wolności. Krucjata hakera na rzecz wolnego oprogramowania”, s. 35.4 S. Williams za R. Stallamen , patrz przypis 4, s. 78.
12
2.1.2 Najpopularniejsze licencje
GPL(Gnu Public Licence) - „Celem licencji GNU GPL jest przekazanie u ytkownikomż
czterech podstawowych wolno ci:ś
• wolno uruchamiania programu w dowolnym celu (wolno 0)ść ść
• wolno analizowania, jak program dzia a i dostosowywania go do swoich potrzebść ł
(wolno 1)ść
• wolno rozpowszechniania niezmodyfikowanej kopii programu (wolno 2)ść ść
• wolno udoskonalania programu i publicznego rozpowszechniania w asnych ulepsze ,ść ł ń
dzi ki czemu mo e z nich skorzysta ca a spo eczno (wolno 3).ę ż ć ł ł ść ść
Je eli program nie gwarantuje u ytkownikowi chocia jednej z powy szych wolno ci,ż ż ż ż ś
wówczas, wed ug FSF, nie mo e by uznany za Wolne Oprogramowanie”ł ż ć 5.
Nic nie stoi na przeszkodzie by firma wykorzysta a jaki program open-source, do budowył ś
w asnego, jednak e jest zobowi zana wynik swojej pracy udost pni spo eczno ci. Tenł ż ą ę ć ł ś
a cuchowy mechanizm zapewnia ywotno ruchowi.ł ń ż ść
LGPL (Lesser Gnu Public License) - troch ubo sza wersja licencji GPL, ubo sza je lię ż ż ś
chodzi o idee open-source, gdy pozwala na w czenie kodu na licencji LGPL do programuż łą
o zamkni tych ród ach. Jest to oczywi cie w sprzeczno ci z g ównymi ideami open-source,ę ź ł ś ś ł
gdy prowadzi do powstawania zamkni tego oprogramowania je li jednak firmaż ę ś
programistyczna, która wygrywa przetarg na program i w tym przetargu zastrze one sż ą
prawa licencyjne do wytworzonego kodu, to by aby zmuszona omija komponenty open-ł ć
source. Czyli z jednej strony pozwalamy wykorzystywa nasz prace do tworzeniać ą
zamkni tego oprogramowania a z drugiej strony skazujemy si na zapomnienie. Tak wi cę ę ę
wiele firm wydaje np. frameworki na licencjach innych ni GPL, z tego powodu, aby wi cejż ę
programistów mog o skorzysta z ich dorobku, np. Google wydaje freamwork GWT nał ć
licencji Apache.
MIT - „Licencja X11 (powszechnie, ale nieprecyzyjnie nazywana Licencj MIT) to jeden zą
najprostszych i najbardziej liberalnych typów licencji. Daje u ytkownikom nieograniczoneż
prawo do u ywania, kopiowania, modyfikowania i rozpowszechniania (w tym sprzeda y)ż ż
oryginalnego lub zmodyfikowanego programu w postaci binarnej lub ród owej. Jedynymź ł
5 http://pl.wikipedia.org/wiki/Wolne_oprogramowanie
13
wymaganiem jest, by we wszystkich wersjach zachowano warunki licencyjne i informacje o
autorze”6.
Creative Commons - „Licencje Creative Commons (CC) - zestaw licencji, na mocy których
mo na udost pnia utwory obj te prawami autorskimi. Licencje te s tworzone iż ę ć ę ą
utrzymywane przez organizacj Creative Commons. Licencje Creative Commons pozwalaję ą
twórcom utworów zachowa w asne prawa i jednocze nie dzieli si swoj twórczo ci zć ł ś ć ę ą ś ą
innymi. Zasada "wszelkie prawa zastrze one" zostaje zast piona zasad “pewne praważ ą ą
zastrze one”. Szacuje si , e na licencjach CC udost pnia si obecnie co najmniej 100ż ę ż ę ę
milionów utworów. Licencje CC s w chwili obecnej najpopularniejszymi wolnymią
licencjami stosowanymi do licencjonowania tre ci innych ni oprogramowanie.”ś ż 7 (Wikipedia
rozwa a publikacje wszystkich tre ci na licencji CC.) Na przyk adzie licencji Creativeż ś ł
Commons wida , i idee „wolnego oprogramowania” przenikaj te do innych dziedzin,ć ż ą ż
które nie s oprogramowaniem. ą
2.1.3 Korzyści z użycia wolnego oprogramowania.
Podmiotów, które mog czerpa korzy ci z wolnego oprogramowania jestą ć ś
bardzo wiele i mo na je podzieli na dwie grupy: u ytkownicy oraz wytwórcy. Cele iż ć ż
korzy ci tych dwóch grup s ró ne. To co jest korzystne dla jednej grupy przez drug jestś ą ż ą
postrzegane jako wada. Zdarza si , e w obr bie jednej grupy pewne cechy wolnegoę ż ę
oprogramowania s odmiennie odbierane. U ytkownik domowy b dzie widzia g ównieą ż ę ł ł
jego ni sz cen , raczej nie b dzie patrzy na idee, wi c tych odbiorców mo na zdobyż ą ę ę ł ę ż ć
jedynie lepsz funkcjonalno ci oraz cen . Natomiast wielkie korporacje te b d patrzy yą ś ą ą ż ę ą ł
na cen , aczkolwiek wchodzi tu te aspekt uniezale nienia si od konkretnego dostawcy ię ż ż ę
konkretnych rozwi za . Chroni je to przed windowaniem cen przez wytwórców orazą ń
przypadkiem, gdy firma dostarczaj ca oprogramowanie bankrutuje. Jeszcze inn grupą ą ę
u ytkowników stanowi mniejsi dostawcy na co zwraca uwag Sam Williams w swojejż ą ę
ksi ce.ąż
„Wolne oprogramowanie ami c pot g monopolu oprogramowania komercyjnego,ł ą ę ę
umo liwia bystrym mniejszym dostawcom konkurowanie z wielkimi za pomoc us ug iż ą ł
konsultacji – dwóch najbardziej dochodowych nisz rynku komputerowego.” 8
6 http://pl.wikipedia.org/wiki/Licencja_X117 http://pl.wikipedia.org/wiki/Licencje_Creative_Commonshttp://pl.wikipedia.org/wiki/Licencje_Creative_Commons8 S. Williams., „W obronie wolności. Krucjata hakera na rzecz wolnego oprogramowania”, s. 179.
14
Wytwórcy czyli programi ci, firmy produkuj ce oprogramowanie mog czerpa gar ciami zś ą ą ć ś
open-source: konsultacje, wytwarzanie oprogramowania dla firm na licencji open-source,
wsparcie przy wdro eniach projektów. To czy firmom to na r k czy nie, to inna sprawa,ż ę ę
jedne firmy, które w unikalno ci oprogramowania upatruj przewagi nad konkurencj nieś ą ą
b d tym zainteresowane. Z drugiej strony takie firmy mog zosta same ze swoimę ą ą ć
unikatowym oprogramowaniem, które jednak nie potrafi si czy z adnym innymę łą ć ż
programem. Gorzej, gdy firma która dostarcza a oprogramowania upadnie i nie b dzie miał ę ł
kto rozwija aplikacji, a bez kodów ród owych firma nic nie zdzia a. Drugi rodzaj firmć ź ł ł
które postawi na aplikacje które atwo jest dostosowa do w asnych potrzeb nie b dą ł ć ł ę ą
nara one na tego typu wydarzenia. Dodatkowo jest szansa, e inna firma te korzysta z tejż ż ż
aplikacji i publikuje usprawnienia, które u siebie wprowadzi a. Na przyk adzie firmł ł
produkuj cych frameworki do aplikacji, mo na zauwa y , i tylko firmy udost pniaj ceą ż ż ć ż ę ą
programistom technologie za darmo mog liczy na odbiorców. Je eli programista maą ć ż
wybra pomi dzy frameworkiem z zamkni tym a otwartym kodem, o porównywalnychć ę ę
funkcjonalno ciach, to wybierze ten drugi, gdy je li natrafi na ograniczenia frameworka, toś ż ś
b dzie móg go sobie zmodyfikowa do swoich potrzeb. Natomiast firmy produkuj ceę ł ć ą
rodowiska programistyczne obwarowane licencjami nie wolno ciowymi, musz po wi caś ś ą ś ę ć
swoje si y na marketing i próby przekonania kogokolwiek by skorzysta z ich rozwi za , ał ł ą ń
przede wszystkim zap aci za nie. Dlatego te j zyk PHP jest najpopularniejszym j zykiemł ł ż ę ę
do tworzenia stron www, a nie ASP, gdy ka dy pocz tkuj cy programista jest w stanież ż ą ą
zrobi serwis wydaj c tylko pieni dze na hosting. Dodatkowo wokó oprogramowaniać ą ą ł
wolno ciowego, tworzy zazwyczaj si spo eczno ludzi którzy opisuj swoje przej cia zś ę ł ść ą ś
ró nymi problemami. Przyk adem dobrego frameworka otwarto ród owego jest Ruby onż ł ź ł
Rails, posiadaj cy du e grono u ytkowników, gdy ma dost pny kod ród owy, a j zyką ż ż ż ę ź ł ę
Ruby pozwala na modyfikacje wszystkich klas wchodz cych w jego sk ad. Programi cią ł ś
ROR, udost pniaj swoje poprawki w postaci plug-inów. Dzi ki temu programista nieę ą ę
wymy la ko a od pocz tku, tylko szuka czy kto nie zrobi czego podobnego do ko a. ś ł ą ś ł ś ł
Oprogramowanie open-source ma t zalet , i programi ci nie musz odkrywaą ę ż ś ą ć
ko a na nowo, mog korzysta ze sprawdzonych pomys ów innych osób. Jest toł ą ć ł
niezaprzeczalny argument, który sprawdza si w a ciwie w ka dej dziedzinie nauki.ę ł ś ż
Minusem jest mo liwo wykorzystywania oprogramowania open-source, przez dos ownież ść ł
ka dego, a wi c i kogo kogo mo emy nie lubi , albo te kogo kto mo e mie wobec nasż ę ś ż ć ż ś ż ć
15
wrogie zamiary. Tak te by o z nag o nion spraw wykorzystania przez terrorystówż ł ł ś ą ą
wolnych programów szyfruj cych do przesy ania wiadomo ci mi dzy sob , coą ł ś ę ą
uniemo liwi o wywiadowi inwigilacje. Wydanie systemu Android przez firm Google, jakoż ł ę
oprogramowania open-source, przyczyni o si do wi kszego zainteresowania systemem,ł ę ę
który jest w fazie rozwojowej.
Na koniec jedna z porad z ksi ki o czytaniu kodu open-source: „Wartoąż
potraktowa korzy ci p yn ce z oprogramowania open-source jako swego rodzaju po yczk .ć ś ł ą ż ę
Jest wówczas rzecz oczywist , e nale y poszuka sposobów jej sp acenia poprzezą ą ż ż ć ł
przekazanie rodowisku open-source czego od siebie”ś ś 9. Do tego zalecenia zastosowa sił ę
w a ciciel firmy Canonical i od kilku lat finansuje tworzenie obecnie najpopularniejszejł ś
dystrybucji Linuksa, Ubuntu.
2.2 Przegląd programów open-source
Nieocenion stron podczas wyszukiwania oprogramowania open-source, któreą ą
w pewnym chocia stopniu pokrywa oby si z tematem tej pracy okaza si portalż ł ę ł ę
https://olex.openlogic.com. Przydatnymi informacjami zamieszczonymi na stronie poza
opisem projektu s rodzaj licencji, oraz wykorzystywane j zyki programowania. Podczasą ę
poszukiwa natrafiamy na programy, które tylko w niewielkim stopniu mog yby spe niań ł ł ć
wymagania np. skrypty s u ce tylko do zebrania informacji o sprz cie. W przypadku gdybył żą ę
spo eczno nie stworzy a gotowych rozwi za nale a o by si zastanowi nad u yciem tegoł ść ł ą ń ż ł ę ć ż
rodzaju skryptów przy konstruowaniu aplikacji. Rzeczywisto okazuje si jednak bardziejść ę
przychylna i istnieje kilka programów które w sposób bardziej kompleksowy podchodz doą
problemu. Podczas wybierania programów typu open-source warto kierowa si kryteriami: ć ę
• data ostatniej aktualizacji projektu – gdy prace nad projektem mog by ju dawnoż ą ć ż
zaniechane,
• mo liwo ci oferowane przez oprogramowanie,ż ś
• technologia wykonania(wi kszo rozwini tych projektów wykorzystuje PHP ię ść ę
MySQL),
• dost pno dokumentacji(z tym w projektach open-source jest niekiedy ubogo),ę ść
• informacje o wdro eniach.ż
9 D. Spinellis, „Czytanie kodu: punkt widzenia twórców oprogramowania open-source”, Helion 2005, s.143.D. Spinellis, „Czytanie kodu: punkt widzenia twórców oprogramowania open-source”, Helion 2005, s.143.
16
2.2.1 Open-AudIT
Projekt maj cy na celu dostarczenie pe nego systemu do zbierania informacji oą ł
urz dzeniach w sieci, programach zainstalowanych na nich. Wspó pracuje z systemami typuą ł
Linux oraz Windows. Wykorzystywany g ównie w przedsi biorstwach zatrudniaj cych doł ę ą
100 pracowników. W konfiguracji wyró niamy:ż
• serwer danych – MySQL który przechowuje informacje o obiektach,
• serwer aplikacji – serwer obs uguj cy PHP (np. Apache i mod_php). Odpowiedzialnył ą
jest za:
◦ przyjmowanie informacji od stacji klienckich, skanowanie sieci w poszukiwaniu
niezidentyfikowanego sprz tu, ę
◦ dostarczanie panelu administracyjnego,
17
Rys. 2: Architektura Open-AudIT
Zbieranie informacji o jednostkach w sieci odbywa si na kilka sposobów:ę
• dla systemów typu Windows, skrypt audit.vbs który zbiera informacje wykorzystuj cą
WMI, a nast pnie wysy a je do serwera aplikacji,ę ł
• dla systemów typu Linux, nale y uruchomi skrypt (audit_linux.sh) w jednostce, którż ć ą
chcemy zinwentaryzowa ,ć
• aby przeskanowa nasz sie w poszukiwaniu niezidentyfikowanych urz dze , nać ą ć ą ń
których nie mo emy uruchomi skryptów zbieraj cych informacje, u ywamy plikuż ć ą ż
nmap.vbs. Wykorzystywany jest tu program nmap10 na licencji GPL, który s u y doł ż
skanowania portów przy pomocy takich technik jak: skanowanie po czełą ń
TCP(listowanie portów z którymi udaje nawi za si po czenie), skanowanie SYN,ą ć ę łą
skanowanie portów UDP.
Skrypty zbieraj ce informacje o maszynach klienckich komunikuj si z serwerem aplikacjią ą ę
przy pomocy protoko u HTTP. Protokó ten jest jak najbardziej odpowiedni, gdy nie jest onł ł ż
blokowany w firmach. Dane, przy pomocy dania POST, wysy ane s do serwera wwwżą ł ą
który przetwarza je i zapisuje w bazie danych. System komunikacji klient-serwer oparty o
protokó HTTP jest obecnie najpopuł larniejszy. Tworzenie nowych programów, które chcia ył
by komunikowa si z serwerem, posiadaj c specyfikacj formatu danych jest wzgl dnieć ę ą ę ę
proste. Wystarczy wygenerowa danie POST, czy to za pomoc programu (curl, wget),ć żą ą
czy te przy pomocy bibliotek w wybranych j zyku programowania. Interesuj cż ę ą ą
funkcjonalno ci jest min. mo liwo po czenia z LDAP. Aplikacja oferuje wiele typówś ą ż ść łą
raportów dostarczaj cych informacji o:ą
10 http://pl.wikipedia.org/wiki/Nmaphttp://pl.wikipedia.org/wiki/Nmap
18
Rys. 3: Open-AudIT - panel administracyjny
• zinwentaryzowanych komputerach,
• zinwentaryzowanych serwerach,
• wyst puj cym oprogramowaniu,ę ą
• zainstalowanych poprawkach i „servicePack”,
• kluczach licencyjnych u ywanych w popularnych programach komercyjnych,ż
• udost pnionych zasobach sieciowych,ę
• informacje o u ytym miejscu na dysku na poszczególnych komputerach.ż
Projekt udost pniany jest na licencji GPL, ostania aktualizacja to 2009-04. Doę
jego uruchomienia wymagany jest serwer www obs uguj cy PHP, oraz baza danych MySql.ł ą
Instalacje wykonujemy wedle poni szych kroków:ż
1. Instalacja bazy MySQL oraz serwera www(np. Apache), PHP,
2. Pobieramy pliki aplikacji http://www.open-audit.org/downloads.php ,
3. Rozpakowujemy je do folderu aplikacji www.
sudo unzip OpenAuditReleaseCandidate.09.03.17.zip -d /var/www/.
4. Nadajemy odpowiednie uprawnienia do plików
sudo chmod 646 /var/www/OpenAuditReleaseCandidate
sudo chmod 646 /var/www/OpenAuditReleaseCandidate/audit.config
5. Ko czymy instalacj w przegl darce pod adresem:ń ę ą
http://localhost/OpenAuditReleaseCandidate/setup.php
Po konfiguracji pozostaje nam jeszcze edytowa plikć
/var/www/OpenAuditReleaseCandidate/audit.config ustawiaj c odpowiednie adresy serwera.ą
2.2.2 OCSI
Projekt rozwijany g ównie przez programistów z Francji. Przeznaczenieł
programu to zdecydowanie du e wdro enia, nie op aca si go wykorzystywa doż ż ł ę ć
zinwentaryzowania 10 stanowisk. Na stronie projektu znajduj si informacje oą ę
najwi kszych wdro eniach w firmach gdzie zinwentaryzowano powy ej 100 tys.ę ż ż
komputerów.
W konfiguracji wyró niamy: ż
• database server – serwer MySQL który przechowuje dane o obiektach,
• communication server – obs uguje komunikacje klientów po protokole HTTP zł
serwerem danych, wymagany serwer apache oraz mod_perl,
19
• deployment server – przechowuje konfiguracj oprogramowania wgrywanegoę
na klienty(wymaga HTTPS),
• administration console - udost pnia konsol administracyjn dost pn zę ę ą ę ą
poziomu przegl darki, wymagany serwer www z obs ug PHP (np. Apache).ą ł ą
Dla ró nych systemów operacyjnych przygotowane s odpowiednie wersje agentów(obecnież ą
Windows, Linux, Mac Os). S to pre-kompilowane aplikacje atwe do zainstalowania naą ł
maszynie klienckiej. Niektóre systemy Linux posiadaj w repozytoriach odpowiednie paczkią
(Ubuntu osci-agent). Jest te mo liwo wgrania agentów na wiele komputerów hurtowo.ż ż ść
Agenty wysy aj do serwera komunikacyjnego informacje zebrane ze stacji klienckiej, jak ił ą
w przypadku w czenia łą ipdiscover informacji o urz dzeniach znalezionych z sieci lokalnej.ą
Komunikacja odbywa si przy wykorzystaniu protoko u HTTP. System sk ada si zę ł ł ę
modu ów: ł
• OCS Inventory: Server - sk aduje dane o obiektach, udost pnia modu komunikacyjnył ę ł
oparty na mod_perl, s u cy do zbierania informacji od agentów. Informacje s wysy aneł żą ą ł
po protokole HTTP, równie z sieci internet. Dostarcza równie komunikacje z innymiż ż
20
Rys. 4: OCS Inventory – architektura – w opracowaniu http://ocsinventory.org
aplikacjami opart o Web serwisy I protokó SOAP. Z tej funkcjonalno ci korzystaą ł ś
projekt GLPI.
• OCS Inventory: UNIX Agent - agent przeznaczony na platformy typu UNIX , a wi cę
obs u ymy nim takie systemy jak Linux, Max Os, Solarisł ż
• OCS Inventory: Windows Agent - agent przeznaczony na komputery z systemem typu
Windows
• OCS Inventory Mobile – agent na platformy mobilne wspieraj ce Java, umo liwiaą ż
wykorzystanie na telefonach
• OCS Inventory: OCSReports - modu konsoli administracyjnej s u cy do zarz dzaniał ł żą ą
konfiguracj , przegl dania inwentaryzowanych jednosteką ą
• OCS Inventory: deploy tool - pozwala na zdaln instalacje agentów na komputerach zą
systemami Windows u ywaj c WNI, b d systemami Unix u ywaj c protoko u SSHż ą ą ź ż ą ł
• IPDISCOVER – skanowaniem sieci lokalnej w poszukiwaniu urz dze na których nieą ń
ma b d te nie mo na zainstalowa agentów, zajmuj si wyznaczeni przez nas agenci,ą ź ż ż ć ą ę
którzy skanuj wybran przez nas sie do której s pod czeni. Nast pnie w paneluą ą ć ą łą ę
administracyjnym mo emy opisa tak wykryte urz dzenia. ż ć ą
21
Oferowane funkcjonalno ci to zbieranie informacji zarówno o sprz cie jak iś ę
oprogramowaniu zainstalowanym na maszynach w sieci. Dodatkowo mamy mo liwoż ść
wgrywania na komputery monitorowane oprogramowania. S u y do tego oddzielny serwerł ż
“Deployment server”.
22
Rys. 5: OCS Inventory - schemat działania w opracowaniu http://www.ocsinventory-ng.org
Mimo wielu funkcji i budowy modu owej nie mo na uzna OSCI zał ż ć
pe nowarto ciowy system do ewidencji zasobów informatycznych. Brakuje modu u doł ś ł
tworzenia zaawansowanych raportów. Mo na przy pomocy jego zbiera informacje oż ć
komputerach, mo na w pewnym stopniu nimi zarz dza poprzez Deployment Server, doż ą ć
dyspozycji mamy wgrywanie na maszyny klienckie skryptów i uruchamianie ich. Jest też
mo liwo raportowania stanów, tj informacji o tym jak zako czy o si wgrywanie „paczki”ż ść ń ł ę
na poszczególne komputery. Zgromadzone dane mo emy w a ciwie wykorzysta tylko doż ł ś ć
tego, aby wydrukowa raport, sprawdzi ile sprz tu danego typu mamy na stanie.ć ć ę
Dysponuj c informacjami o komputerach i oprogramowaniu u ytkowników, mo emyą ż ż
szybciej rozwi zywa problemy z nimi zwi zane. Twórcy projektu skupili si na jasnymą ć ą ę
celu, którym jest zinwentaryzowanie wi kszo ci zasobów informatycznych jakie posiadamyę ś
w firmie. W celu zapewnienia pe nej funkcjonalno ci systemu ewidencjonuj cego polecajł ś ą ą
23
Rys. 6: OCSI - wgrywanie programów
na stronach projektu11 integracj projektem GLPI. Rozwijany jest on przy u yciu takichę ż
technologi jak C (aplikacje agentów na poszczególne platformy), MySql(sk adowanieł
zebranych informacji), PHP(panel administracyjny), PERL(modu przyjmuj cy informacjeł ą
od agentów). Polska wersja j zykowa programu jest niedoskona a. ę ł
2.2.3 GLPI
W tym projekcie brak modu u zautomatyzowanego inwentaryzowania maszyn,ł
korzysta on z zasobów OCSI, z którym integruje si wykorzystuj c web-serwisy i protokóę ą ł
SOAP. Projekt jest ukierunkowany nie na zbieranie informacji od pojedynczych agentów, a
na przetwarzanie pobranych informacji. czony jest on g ównie z systemem OCSI, któryŁą ł
s u y do zasilania danymi, dodatkowo umo liwia te zasilanie poprzez import plików CSV.ł ż ż ż
Program posiada mo liwo importu danych z aplikacji OCSI (Komputery, Wewn trznychż ść ę
urz dze , Oprogramowanie, Urz dzenia zewn trzne, Monitory, Drukarki, Producenci).ą ń ą ę
Uzupe nia j o funkcjonalno ci,ł ą ś
które w ogólno ci wykorzystujś ą
zgromadzone do dalszego
przetwarzania, m. in. :
• alerty w przypadku
przekroczenia metryk, czy też
wyga ni cia licencji,ś ę
• zarz dzanie zasobami informatycznymi (równie r czne dodawanie sprz tu),ą ż ę ę
• helpdesk z wykorzystaniem regu biznesowych (automatyczne przypisywanie zg osze ,ł ł ń
historia zg osze , zarz dzanie czasem i i koszty zwi zane ze zg oszeniem),ł ń ą ą ł
• zarz dzania kontraktami oraz informacje finansowe (umowy),ą
• zarz dzanie i nadzór dostaw (ą informacje o dostawcach),
• baza wiedzy/FAQ (najcz ciej zadawane pytania),ęś
• statystyki i raporty (informacje handlowe i finansowe, umowy, zg oszenia, statystykał
sprz tu, eksport PDF),ę
• zarz dzanie rezerwacjami sprz tu,ą ę
11 http://ocsinventory.org
24
Rys. 7: GLPI- definiowanie hierarchi administracyjnej
• zró nicowane typy u ytkowników.ż ż
Na uwag zas uguje te poka na liczbaę ł ż ź
rozszerze , obecnie powy ej 50.ń ż
Dostarczaj one takich funkcjonalno ci jak:ą ś
• zarz dzanie zamówieniami,ą
• graficzna topologia sieci
komputerowych.
Wszystkie rozszerzenia s pisane wed ugą ł
ustalonego standardu. U atwia to nam napisanie w asnej funkcjonalno ci, stosuj c si doł ł ś ą ę
instrukcji tworzenia nowych rozszerze .ń
Domy lnie po instalacji program nie posiadaś
adnych pre-definiowanych list sprz tu aniż ę
oprogramowania. Dzi ki temu mamy bardzoę
du e mo liwo ci konfiguracji poprzezż ż ś
tworzenie w asnych list.ł
Program dost pny w polskiej wersji.ę
Komunikuje si z istniej cymię ą
katalogami(LDAP, Active Directory, CAS).
Posiada mo liwo logowania si poprzezż ść ę
LDAP12.
12 http://wiki.lemonldap.ow2.org/xwiki/bin/view/NG/DocAppGLPI
25
Rys. 8: GLPI - dodawanie jednostki manualne
Rys. 9: GLPI - help desk
Projekt wykorzystuje: serwer danych (MySQL), serwer aplikacji(PHP), który generuje
interfejs u ytkownika. Na stronie programu podane s informacje o wielu wdro eniachż ą ż
(wraz z systemem OCSI), najwi ksze obs uguj ok 95000 komputerów. Ostatnia aktualizacjaę ł ą
projektu to 2009-11.
2.2.4 Paglo Crawler
Projekt nale y zaliczy do projektów komercyjnych, jednak e umieszczono goż ć ż
w tej kategorii z tej racji, i producent udost pnia tzw. agenta instalowanego na naszej stacjiż ę
roboczej do zbierania danych o urz dzeniach w sieci na licencji GPL. Jest to ciekaweą
podej cie, które czy w sobie w pe ni komercyjny produkt z modu em udost pnionym jakoś łą ł ł ę
open-source. Producent zdecydowa si na taki ruch, gdy u ytkownik wszystkie informacjeł ę ż ż
o swoich komputerach powierza firmie. Chc c zapewni u ytkownika, i jego dane zostaną ć ż ż ą
wys ane tylko na serwer producenta, kod agenta w ca o ci mo na przegl da . U atwia toł ł ś ż ą ć ł
26
Rys. 10: Autentyfikacja poprzez LDAP i GLPI
równie pisanie w asnych rozszerze , które np. b d zbiera y okre lone przez nasż ł ń ę ą ł ś
informacje.
Wida tu równie prób zlecenia innej firmie obs ugi inwentaryzacji naszejć ż ę ł
firmy. Przy takim podej ciu, rozwi zania oparte w du ej mierze, b d w ca o ci na open-ś ą ż ą ź ł ś
source mog przynosi dochody, klient, czyli firma, p aci w tym przypadku tylko za us ug ,ą ć ł ł ę
jak jest zbieranie, przechowywanie, zabezpieczenie i udost pnianie informacji. W asneą ę ł
rozszerzenia mo emy pisa wykorzystuj c j zyk Ruby. Strona projektu to ż ć ą ę http://paglo.com .
2.2.5 Zabbix
Projekt nie jest zaliczany do tych, które s nastawione na inwentaryzacjeą
zasobów komputerowych. Jego g ównym za o eniami jest monitorowanie stanu maszyn ił ł ż
us ug na tych maszynach dzia aj cych. ł ł ą
Zastanawiaj c si nad przyk adowym przedsi biorstwem i zasobami jakie wą ę ł ę
nim s , zawsze widzimy komputery u ytkowników, drukarki, urz dzenia sieciowe. Je lią ż ą ś
jednak zajrzymy do aplikacji z jakich korzysta przeci ty pracownik zobaczymy, ię ż
zazwyczaj s to us ugi udost pniane wewn trz firmy (ą ł ę ą email, ftp, samba, cms, systemy pracy
grupowej). Wszystkie te us ugi je li s utrzymywane przez firm s udost pniane przezł ś ą ę ą ę
27
Rys. 11: paglo - menu główne. W opracowaniu http://paglo.com
jednostki serwerowe. Jedn z najwa niejszych cech jakie powinna posiada taka jednostkaą ż ć
jest niezawodno , gdy od tego czy dzia a serwer np. WWW zale y czy np. dzia a naszaść ż ł ż ł
strona przyjmowania zamówie . Inwentaryzowanie takich jednostek, ma oczywi cie sens,ń ś
jednak z racji tego e najbardziej zale y nam na tym czy serwer dzia a czy nie, potrzebnyż ż ł
nam system, który b dzie monitorowa na bie co dzia anie takich jednostek i informowaę ł żą ł ł
nas w razie ich niedost pno ci. Zabbix posiada wy ej wymienione w a ciwo ci jak równieę ś ż ł ś ś ż
mo liwo monitorowania dost pno ci stron www, b d us ug internetowych. Zabbixż ść ę ś ą ź ł
napisano w technologii: C (serwer zbieraj cy dane, programy agentów), PHP( panelą
administracyjny), dane mo emy sk adowa w jednej z baz MySql, PostgeSQL, Oracle,ż ł ć
SqlLite. Strona projektu to http://zabbix.com/ .
28
Rys. 12: Zabbix - okno główne. W opracowaniu http://www.zabbix.com/screenshots.php
2.2.6 Pulse2
Projekt stworzony przez firm Mandriva (twórca dystybucji systemu typu Linuxę
- Mandriva). Dost pne funkcjonalno ci:ę ś
• szybki interfejs zdalnego pod czania si do maszyny klienckiej z wykorzystaniemłą ę
protoko u VNC,ł
• wgrywanie nowych wersji oprogramowania, uaktualnie bezpiecze stwa na maszynyń ń
zarz dzane,ą
• inwentaryzacja sprz tu i oprogramowania.ę
Cz serwerowa odpowiedzialna za zbieranie informacji napisana jest węść
j zyku C, panel administracyjny w PHP, natomiast zbierane dane mog by przechowywaneę ą ć
w jednej z baz: MySql, PostgreSQL, Oracle, SQLite. Strona projektu to
http://pulse2.mandriva.org . Projekt z powodu wczesnej fazy rozwoju oraz niedu ej liczbyż
wdro e produkcyjnych, nie jest brany pod uwag w tej pracy.ż ń ę
2.2.7 Projekty nierozwijane
Lista projektów nierozwijanych:
• WinInventory http://winventory.sf.net/ . Nastawiony na wspó prac z systemami klasył ę
Windows, zbieranie informacji obywa si poprzez uruchomienie skryptu VBScript naę
kliencie. Projekt obecnie ju nie rozwijany, jest to protoplasta Open-audIT.ż
• PCInventory http://www.andrioli.com/en/index.php
• phpMyInventory http://sourceforge.net/projects/phpmyinventory/
29
Rys. 13: Pulse2 w opracowaniu http://pulse2.mandriva.org/wiki/Screenshots
• Asset-tracker http://asset-tracker.sourceforge.net
Podsumowuj c, istniej projekty, rozwijane ju od kilku lat, które spe niaj naszeą ą ż ł ą
za o enia funkcjonalne. Nie ma co prawda jednego, który w pe ni i kompleksowo obs ugiwał ż ł ł ł
by nasze przedsi biorstwo, ale jeste my w stanie po czy ze sob kilka z nich.ę ś łą ć ą
30
3.Koncepcja wykorzystania i dobór oprogramowania klasy open-source do budowy systemu ewidencji zasobów informatycznych.
3.1 Docelowe przedsiębiorstwo
Planuj c budow systemu informatycznego warto jest mie wyobra enie, gdzieą ę ć ż
b dzie stosowany (w jakim typie przedsi biorstwa). Zak adamy, i nasze wzorcoweę ę ł ż
przedsi biorstwo posiada hierarchiczn struktur . Posiada oddzia y, które znajduj si wę ą ę ł ą ę
ró nych lokalizacjach. Mog one podlega innym oddzia om b d te same nadzorowa inneż ą ć ł ą ź ż ć
placówki. Przy takiej strukturze chcemy, aby by a mo liwo zarz dzania i raportowania dlał ż ść ą
poszczególnych oddzia ów jak ca o ci. Informacje z poszczególnych oddzia ów powinny był ł ś ł ć
zbierane przez nie same, z mo liwo ci raportowania wy ej. W przypadku mniejszychż ś ą ż
pododdzia ów powinna by mo liwo zlecenia zbierania informacji innemu oddzia owi. ł ć ż ść ł
Konkretnym przyk adem organizacji, która wpasowuje si w przyj ty schematł ę ę
jest Zak ad Ubezpiecze Spo ecznych (ZUS). Obecnie z us ug ZUS korzysta 20 mlnł ń ł ł
klientów. Struktura organizacyjna ZUS-u w liczbach przedstawia si nast puj co:ę ę ą
Centrala ZUS
• 42 oddzia ów ZUS ł
• 320 jednostek terenowych
• 1 COO (Centralny O rodek Obliczeniowy) przy Centrali ZUS ś
• oko o 40 000 stanowisk dost powych ł ę
• ponad 800 serwerów
31
Patrz c na przyk adowe przedsi biorstwo ZUS widzimy ogromn liczbą ł ę ą ę
stanowisk dost powych. Przy tak du ej ilo ci sprz tu komputerowego bardzo trudno jest nimę ż ś ę
zarz dza . Nale y zapewni dost pno , niezawodno oraz odpowiednio zabezpieczyą ć ż ć ę ść ść ć
stanowiska przed uruchomieniem nielegalnego oprogramowania. Je li tego nie zrobimy toś
pr dzej czy pó niej zaobserwujemy spadek wydajno ci, który b dzie konsekwencję ź ś ę ą
niedost pno ci sprz tu komputerowego przez jaki okres lub przydzielenia pracownikomę ś ę ś
sprz tu komputerowego nieadekwatnego do wykonywanej pracy przez nich pracy. Tu pojawiaę
si te problem niekontrolowania kosztów zwi zanych z zasobami informatycznymi. Podczasę ż ą
analiz finansowych cz sto podejmowane s z e decyzje, gdy osoby je podejmuj ce nie maję ą ł ż ą ą
odpowiedniej wiedzy na temat tego jak obecnie sprz t jest wykorzystywany. W przypadkuę
32
Rys. 14: Struktura ZUS
posiadania nielegalnych: programów, czy te plików, nara amy si równie na na o enie karyż ż ę ż ł ż
przez organy kontroli.
Zarz dzanie zasobami informatycznymi jest ci g ym procesem, w którym nale yą ą ł ż
efektywnie u ytkowa , nast pnie modernizowa oraz likwidowa zasoby maj c na uwadzeż ć ę ć ć ą
potrzeby jakie ma organizacja. Proces ten powinien by przede wszystkim: ekonomiczny,ć
wydajny pod wzgl dem technicznym oraz biznesowym. System, który wspomaga ten procesę
powinien zawiera dane o u ytkowanym sprz cie komputerowym, jego szczegó oweć ż ę ł
parametry techniczne oraz informacje takie jak: lokalizacja sprz tu, osoba do niegoę
przypisana, jednostka organizacyjna, w której si znajduje. Oprócz tego system powinienę
mie mo liwo generowania przydatnych raportów osobom, które s odpowiedzialne zać ż ść ą
obszary finansowe, strategiczne podejmowanie decyzji.
Zarz dzanie stacjami roboczymi mo e przysparza trudno ci, gdy stanowiskaą ż ć ś
znajduj si w ró nych lokalizacjach, lub te mamy do czynienia z maszynami przestarza ymią ę ż ż ł
albo w ró nych konfiguracjach. Zarz dzanie wszystkimi komputerami o zró nicowanejż ą ż
konfiguracji, na poziomie centrali organizacji wymaga zebrania informacji o wszystkich
stanowiskach. Dzi ki takim informacjom atwiej jest podj trafn decyzj o :ę ł ąć ą ę
• wymianie przestarza ego sprz tu,ł ę
• obni eniu kosztów u ytkowania, poprzez zliczenie kosztów licencji programów,ż ż
• okre leniu kosztów utrzymania takiego systemu.ś
Patrz c na struktur przyk adowej orgranizacji (ZUS), widzimy te du liczbą ę ł ż żą ę
jednostek serwerowych. Maszyny te s jednak (w wi kszo ci) u ytkowane przezą ę ś ż
przeszkolonych administratorów, którzy nie powinni mie problemów z instalacjć ą
programów, czy te ilo ci miejsca na dysku. Zbieranie informacji o konfiguracji tych maszynż ś ą
ma jak najbardziej sens, gdy dla nich te trzeba planowa modernizacje sprz towe.ż ż ć ę
Wi kszym jednak problemem przed jakim stoi administrator tych maszyn jest ich dost pno ,ę ę ść
gdy zazwyczaj udost pniaj one us ugi z których korzystaj aplikacje u ytkowane przezż ę ą ł ą ż
zwyk ego pracownika. System do ewidencji zasobów informatycznych mo e wspomagał ż ć
monitorowanie takich jednostek. Jednak e zakres funkcji, które pokrywa yby potrzebyż ł
monitorowania, jest obszerny i raczej nieprzydatny w spotkaniu z przeci tnym komputeremę
u ytkownika ko cowego. Dlatego te takie funkcjonalno ci powinny by wydzielone doż ń ż ś ć
oddzielnego modu u. Równie aplikacja agenta, która przy normalnych maszynach raz nał ż
33
jaki czas sprawdza co jest na niej zainstalowane, b d te wyszukuje nowe maszyny w sieciś ą ź ż
lokalnej nie nadaje si do ci g ego monitorowania ró nych paramentów dzia ania serwera.ę ą ł ż ł
Nale a oby wi c zastosowa na tych maszynach specjalne wersje agentów nastawione naż ł ę ć
zbieranie takich informacji jak:
• dost pno maszyny,ę ść
• dost pno udost pnianych us ug(bazy danych, aplikacje www, poczta, ftp itp.),ę ść ę ł
• obci enie maszyny.ąż
3.2 Klasyfikacja użytkowników
Przygl daj c si strukturze organizacji, oraz jej wymaganiom odno nie systemuą ą ę ś
wyodr bniamy w nim 4 grup u ytkowników. Podzia ról jest zgodny z funkcjami pe nionymię ż ł ł
przez te osoby w przedsi biorstwie.ę
• pracownik – osoba która u ytkuje komputer, który jest do niej przypisany. Osoba ta posiadaż
jedynie dost p do modu ów help-desk(tj. Zg aszanie problemów) oraz rezerwacje, tj.ę ł ł
wypo yczenia sprz tu, faq tj. dost p do listy najcz ciej zadawanych pyta ,ż ę ę ęś ń
• analityk biznesowy – posiada wszystkie uprawnienia pracownika oraz mo e sporz dzaż ą ć
raporty dotycz ce wykorzystania oprogramowania, sprz tu,ą ę
34
Rys. 15: Typy użytkowników
• pracownik help-desk – posiada wszystkie uprawnienia pracownika. Dodatkowo
odpowiedzialny jest za przyjmowanie zg osze od pracowników oraz wprowadzanieł ń
urz dze niezinwentaryzowanych automatycznie,ą ń
• administrator – zajmuje si konfiguracj systemu, jest odpowiedzialny za wprowadzanieę ą
r cznie danych do systemu tj. informacje o sprz cie, oprogramowaniu, cenach licencji.ę ę
Dodatkowo, ka dy u ytkownik w hierarchii jest przypisany do swojego oddzia u.ż ż ł
3.3 Wykorzystanie modułów open-source do budowy systemu.
Na tle dost pnych programów wyró nia si OCSI. Zosta wybrany jakoę ż ę ł
podstawa tworzonego systemu, gdy z dost pnych projektów o otwartych ród ach:ż ę ź ł
• dostarcza najwi cej funkcjonalno ci (je li chodzi o sam proces inwentaryzacji), jestę ś ś
projektem aktywnie rozwijanym,
• jest projektem wykorzystywanym przez innych, na stronie projektu przyk ady wdro eł ż ń
w firmach z liczba agentów powy ej 100 tys.,ż
• dostarcza agentów na platformy Unix I Windows,
• dost pny na licencji GPL,ę
• sk ada si z kilku modu ów, dzi ki czemu mamy wi ksz mo liwo skalowalno cił ę ł ę ę ą ż ść ś
systemu.
Interfejs administracyjny OCSI nie dostarcza jednak wszystkich oczekiwanych
funkcjonalno ci. Stosuj c si do zalece u ytkowników tego systemu oraz twórcówś ą ę ń ż
natrafiamy na projekt GLPI, który nastawiony jest na przetwarzanie informacji o
zinwentaryzowanych zasobach. Pozwala on na importowanie danych z wielu systemów OCSI.
Komunikacja jest realizowana przy pomocy protoko u SOAP. Wykorzystuj c ten protokół ą ł
wzgl dnie szybko jeste my w stanie dostosowa inny system zbierania danych tak, byę ś ć
generowa dane w zgodnym formacie. Nale y u y w tym celu informacji z pliku w formacieł ż ż ć
WSDL, który jest plikiem XML z opisem dost pnych metod oraz formatu danych. Mo liweę ż
jest równie zasilanie przy pomocy plików CSV. Dzi ki takiemu podej ciu mo emy wż ę ś ż
poszczególnych oddzia ach gromadzi informacje przy pomocy OCSI a na poziomie wy ejł ć ż
mo emy zbiera te informacje, nast pnie wykorzystywa do generowania raportów np. naż ć ę ć
potrzeby dzia u finansowego. Program pozwala na definiowanie hierarchicznej struktury wł
organizacji. Dzi ki czemu mo emy odwzorowa nasz organizacj i wed ug tej strukturyę ż ć ą ę ł
35
grupowa obiekty zinwentaryzowane. Kolejn ogromn zalet GLPI jest mnogoć ą ą ą ść
utworzonych rozszerze (plugin), które dostarczaj kolejnych funkcjonalno ci. Przyk adowe:ń ą ś ł
• Manufacturers Web Imports – pozwala na importowanie danych o cenie, gwarancji,
dacie produkcji wprost ze strony producenta, wspó pracuje z ł Dell, HP, Toshiba i Fujitsu-
Siemens. Rozszerzenie bardzo przydane w du ych korporacjach kupuj cych sprz t odż ą ę
jednego z obs ugiwanych producentów,ł
• Reports – dodatkowe raporty,
• Financial Reports – reporty finansowe,
• Network Architecture – przedstawia w postaci graficznej architektur sieci.ę
Wybór powy szych aplikacji podyktowany jest g ównie ich wysok funkcjonalno ci iż ł ą ś ą
zaawansowanym stadium rozwoju.
3.4 Struktura systemu.
Przegl daj c ró programy do ewidencji wida podobny model architektoniczny,ą ą ż ć
tj. baza danych i aplikacja, do której poprzez protokó http (b d https) przesy ane s daneł ą ź ł ą
poprzez poszczególnych agentów. Takie podej cie wynika z potrzeby zabezpieczenia ka dejś ż
jednostki oddzielnie - by kto zdalnie nie móg wykona czego na naszej maszynie.ś ł ć ś
Zezwolenie programowi na zdalny dost p do naszej maszyny i przeszukiwanie jej zasobówę
jest zbyt niebezpieczne. W zwi zku z tym stosuje si odwrotne podej cie polegaj ce na tym,ą ę ś ą
i maszyna u ytkownika „sama” wysy a informacje do serwera g ównego.ż ż ł ł Dlatego też
dominuje podej cie instalacji agentów na maszynach u ytkowników.ś ż
Chc c dostosowa nasz system do przedstawionego przedsi biorstwa, nale yą ć ę ż
uczyni go jak najbardziej modu owym, tak aby w du ych oddzia ach skalowalno systemuć ł ż ł ść
nie by a problemem. Jednocze nie us ugi, takie jak zbieranie informacji powinny był ś ł ć
dost pne poprzez sie nie tylko wewn trzn , ale te poprzez sie WAN z wykorzystaniemę ć ę ą ż ć
protoko u HTTPS. Musimy te pami ta o tym, i nasz system ma dzia a w konkretnejł ż ę ć ż ł ć
organizacji o okre lonej strukturze hierarchicznej. Korzy ci p yn ce z zastosowania systemuś ś ł ą
mog by wykorzystywane na ró nych szczeblach organizacji. ą ć ż
36
3.4.1 Architektura rozproszona
Architektura zak ada, i ka dy z oddzia ów sam zajmuje si zbieraniem informacji od swoichł ż ż ł ę
pracowników. Tak zebrane dane przekazuje do centrali. Rozmieszczenie aplikacji ma
miejsce na poszczególnych poziomach:
• lokalnym (jednostek terenowych) - mo emy wykorzysta OCSI do wgrywania naż ć
komputery klienckie oprogramowania. Projekt GLPI dodatkowo wykorzystamy do
obs ugi help-desku. Tu przede wszystkim znajdzie si oprogramowanie agentów, któreł ę
nale y zainstalowa na ka dej jednostce. Dodatkowo nale y okre li w projekcież ć ż ż ś ć
OCSI, które jednostki z agentami b d odpowiedzialne za wykrywanieę ą
niezidentyfikowanych urz dze ,ą ń
• oddzia u – tu b d znajdowa si serwery OCSI, do których b d sp ywa informacjeł ę ą ć ę ę ą ł ć
od agentów z podleg ych placówek(terenowych o rodków przetwarzania),ł ś
• centrali – na tym poziomie interesuj nas ju tylko funkcjonalno ci raportuj ce, a wi cą ż ś ą ę
GLPI, skonfigurowany tak aby importowa dane z oddzia ów.ł ł
37
Rys. 16: Architektura rozproszona
Zalet takiego rozmieszczenia aplikacji jest przeniesienie odpowiedzialno ci za zbieranieą ś
informacji z oddzia u na administratorów w nim pracuj cych. Osoby, które pracuj nał ą ą
miejscu du o lepiej b d si orientowa jakie obci enie b dzie generowane przez oddzia ,ż ę ą ę ć ąż ę ł
oraz na których agentach uaktywni opcje poszukiwania w sieci lokalnej urz dzeć ą ń
niezidentyfikowanych.
3.4.2 Architektura scentralizowana
Id c za ogólnych trendem wiatowym w informatyce nale y równie przedstawią ś ż ż ć
mo liwo ci wykorzystania systemu w modelu scentralizowanym. Z tej racji, i naszaż ś ż
przyk adowa organizacja posiada wiele oddzia ów mo emy pokusi si o scentralizowanieł ł ż ć ę
systemu, umo liwiaj c dost p do niego w sieci WAN. Wtedy ka dy agent b dzie wysy aż ą ę ż ę ł ł
informacje pod jeden wspólny adres. Systemy OCSI i GLPI b d zgromadzone w centrali.ę ą
GLPI b dzie zasilany tylko z jednego ród a. Wymaga to oczywi cie zastosowaniaę ź ł ś
wydajniejszych maszyn, mimo to sumaryczne koszty utrzymania mog by ni sze. W tymą ć ż
modelu jak i w poprzednim na poziomie oddzia ów równie znajduj si maszyny zł ż ą ę
zainstalowanymi agentami.
38
Zalety takiej architektury to przede wszystkim mo liwo zainstalowania wszystkich aplikacjiż ść
serwerowych w rodowisku ś zwirtualizowanym, wykorzystuj c takie rozwi zania jak:ą ą
Vmware, VirtualBox, PROXMOX. Mamy dzi ki temu u atwione zarz dzanie oraz obni enieę ł ą ż
kosztów poboru pr du. Zastosowanie takiej architektury jest mo liwe g ównie dzi ki temu, ią ż ł ę ż
wykorzystywane projekty to aplikacje dost pne z poziomu przegl darki po protokoleę ą
http/https, a wi c u ytkownik z najni szego oddzia u nie powinien mie problemów zę ż ż ł ć
dost pem do aplikacji (protoko y http/https nie s blokowane w sieciach korporacyjnych). ę ł ą
Do dalszych testów zosta wybrany model scentralizowany, który du o atwiejł ż ł
jest wdro y w przypadku niewielkiego rodowiska testowego.ż ć ś
39
Rys. 17: Architektura scentralizowana
3.5 Monitorowanie serwerów
Problem monitorowania dost pno ci serwerów i us ug, które s przez nieę ś ł ą
udost pniane jest zbli ony do problemu inwentaryzacji, jego rozwi zania równie jestę ż ą ż
podobne. Aby sprawdzi jakie s obecne parametry pracy serwera nale y wys a z niego przyć ą ż ł ć
pomocy „agenta” te informacje do aplikacji gromadz cej dane - czyli sytuacja podobna doą
inwentaryzacji. Ró nic jest potrzeba posiadania aktualnych informacji. Dlatego te agent doż ą ż
monitorowania, to kolejny proces uruchomiony w tle na serwerze. Informacje wysy ane sł ą
przez niego du o cz ciej. Wysy anie informacji odbywa si na danie serweraż ęś ł ę żą
gromadz cego dane. W przypadku rodowiska testowego jedna instancja serweraą ś
monitoruj cego jest wystarczaj ca. Programy pe ni ce role agentów s zainstalowane naą ą ł ą ą
serwerach zarówna na poziomie lokalnym, oddzia u jak i centrali. Do konsolił
administracyjnej pozwalaj cej sprawdzi stan serwerów i us ug maj dost p administratorzy.ą ć ł ą ę
Serwer Zabbixa posiada równie modu , który wysy a alerty do okre lonych osób poprzezż ł ł ś
dost pne kana y informacji: ę ł
• email,
• wiadomo ci przy wykorzystaniu protoko u sieci XMPP, ś ł
• SMS.
Na maszynach serwerowych równie przydatne b dzie zainstalowanie agentów dla aplikacjiż ę
OCSI, gdy tu równie powinni my monitorowa sprz t i zainstalowane oprogramowanie.ż ż ś ć ę
40
Podsumowuj c: dzi ki po czeniu aplikacji OCSI, GLPI i ZABBIX jeste my w stanieą ę łą ś
zbudowa system w du ej mierze zaspokajaj cy nasze potrzeby. Korzystaj c tylko zć ż ą ą
gotowych projektów nie zapewniamy obs ugi wykrywania na komputerach klienckichł
oprogramowania, które jest niepo dane. Wersja polska projektu OCSI nie jest kompletna.żą
Wykorzystuj c fakt, i projekty s otwarto ród owe, w nast pnym rozdziale postaramy sią ż ą ź ł ę ę
uzupe ni je o brakuj ce funkcjonalno ci.ł ć ą ś
41
Rys. 18: Architektura systemu ZABBIX
4.Projekt wybranych elementów systemu ewidencji zasobów informatycznych
4.1 GLPI - projekt rozszerzenia do tworzenia listy zakazanego oprogramowania
Przygl daj c si za o eniom funkcjonalnym mo emy zauwa y , ią ą ę ł ż ż ż ć ż
zaproponowane rozwi zanie nie w pe ni je spe niaj . Dzi ki temu, i wykorzystane systemyą ł ł ą ę ż
udost pniaj swój kod ród owy jeste my w stanie napisa potrzebn nam funkcjonalno .ę ą ź ł ś ć ą ść
Przyk adow funkcjonalno ci , której nie znajdujemy w gotowych projektach jest mo liwoł ą ś ą ż ść
wyszukania na komputerach programów, które s przez nas niepo dane. Takaą żą
funkcjonalno mo e si przyda do wykrywania oprogramowania, które mo e s u y dość ż ę ć ż ł ż ć
nielegalnej wymiany plików, oprogramowania, które nie jest przydatne pracownikowi w
pracy (gry), oprogramowania na które nie posiadamy licencji.
Modu o nazwie „ł checker”, który b dzie implementowa t funkcjonalnoę ł ą ść
b dzie realizowa nast puj ce funkcje:ę ł ę ą
• dodawanie oprogramowania do listy oprogramowania niepo danego,żą
• przegl danie listy oprogramowania niepo danego,ą żą
• usuwanie oprogramowania z listy oprogramowania niepo danego,żą
• wyszukiwanie komputerów z zainstalowanym oprogramowaniem znajduj cym si na li cieą ę ś
oprogramowania niepo danego.żą
Na poni szych diagramach (przypadków u ycia i diagramie ERD) elementy oznaczoneż ż
kolorem niebieskim to elementy istniej ce w systemie, natomiast elementy oznaczoneą
kolorem czerwonym to elementy dodane.
42
Przygl daj c si strukturze bazy danych projektu GLPI, na podstawieą ą ę
przypadków u ycia widzimy, i interesuj nas tabele odpowiedzialne za list u ytkowników,ż ż ą ę ż
a dok adniej za list komputerów, oraz tabele zawieraj ce informacje o zainstalowanych nał ę ą
nich programach. Po analizie schematu bazy danych wyodr bniamy nast puj ce obiekty:ę ę ą
• glpi_users – informacje o u ytkownikach,ż
• glpi_computers – informacje o komputerach, oraz do kogo nale ,żą
• glpi_software – informacje o znanym oprogramowaniu,
• glpi_inst_software – informacje o tym jakie programy zainstalowane s na konkretnymą
komputerze.
43
Rys. 19: Rozszerzenie checker - przypadki użycia
Chc c obs u y funkcjonalno listy programów niechcianych, tworzymy tabelą ł ż ć ść ę
która b dzie przechowywa informacje o programach, oraz jaki status ma to oprogramowanie.ę ć
Nasza tabela zgodnie z konwencj narzucon przez dokumentacj do tworzenia rozszerze wą ą ę ń
GLPI, powinna mie nazw glpi_plugin<nazwa_rozszerzenia>[_nazwa_opcjonalna], czylić ę
glpi_plugins_checker_softwares.
4.2 Projekt architektury sprzętowo systemowej.
Wykorzystuj c jedn z dwu przedstawionych architektur, zawsze mamy doą ą
czynienia z cie k OCSI-agent OCSI-server GLPI. Przedstawiona jest ona dok adniejś ż ą ł→ →
na poni szym schemacie. Widzimy tu wielokrotne wykorzystanie bazy MySql oraz serweraż
aplikacji Apache, równie projekt Zabbix mo e wykorzystywa baz MySql. W przypadkuż ż ć ę
mniejszych instalacji systemy mog by uruchomione na jednej maszynie, oraz korzysta zą ć ć
jednej instalacji serwera bazy danych i serwera www.
44
Rys. 20: Diagram ERD przedstawiający modifikacje w bazie danych(nowe tabele oznaczone kolorem czerwonym)
Mimo próby informatycznego wsparcia procesu inwentaryzacji pewne
czynno ci musz by wykonywane r cznie. ś ą ć ę Nale y manualnie wprowadza informacji oż ć
sprz cie, który nie zosta zinwentaryzowany do systemu GLPI.ę ł Równie r cznie musimyż ę
stworzy struktur hierarchiczn przedsi biorstwa.ć ę ą ę
4.3 Projekt wykorzystania systemu przez grupy pracowników
Bazuj c na klasyfikacji u ytkowników z rozdzia u 3, oraz mo liwo ciachą ż ł ż ś
systemów OCSI i GLPI nale y okre li z jakich kont mog korzysta poszczególne grupyż ś ć ą ć
pracowników. Wykorzystanie poszczególnych systemów przez grupy u ytkowników zosta oż ł
przedstawione na rysunku 29. Wi kszo grup pracowników korzysta wy cznie z systemuę ść łą
GLPI, u ywaj c kont wraz z odpowiadaj cymi im uprawnieniami: ż ą ą
• analitycy biznesowi – konta typu „normal”,
• pracownicy – konta typu „post-only” ,
• help-desk – konta typu „tech”.
• grupa pracowników administracyjnych ma dost p do OCSI i GLPI.ę
45
Rys. 21: Architektura systemu
Podsumowuj c z przedstawionych tu mo liwych struktur systemuą ż
(scentralizowana, b d rozproszona), do dalszych rozwa a zostanie przyj ta wersjaą ź ż ń ę
scentralizowana. Za ta opcj przemawia mniejsza liczba sprz tu potrzebna doą ę
przeprowadzenia podstawowej instalacji. Projekt rozszerzenia zostanie stworzony w j zykuę
PHP, wedle specyficznych wytycznych zamieszczonych na stronie projektu GLPI.
46
Rys. 22: Przypisanie grup użytkowników do poszczególnych systemów
5. Implementacja systemu ewidencji zasobów informatycznych
5.1 OCSI - poprawki do języka polskiego
W przypadku OCSI, nie posiada on dobrej polskiej wersji j zykowej. W celu jeję
poprawienia musimy dowiedzie si w jaki sposób realizowana jest internacjonalizacjać ę
(obs uga wielu j zyków). Po krótkim przegl daniu kodu projektu znajdujemy katalogł ę ą
plugins/language/polish/. W katalogu tym znajdziemy plik odpowiedzialny za t umaczenia.ł
Nie zawiera on wszystkich t umacze , brakuj ce wpisy skopiujemy z kataloguł ń ą
plugins/language/english/english.txt. Przy domy lnej instalacji i próbie w czenia obs ugiś łą ł
rodzimego j zyka otrzymujemy cz ciow polonizacj jednak napisy z polskimi znakami nieę ęś ą ę
s wy wietlane poprawnie. Problem stanowi tutaj rozbie no pomi dzy kodowaniem pliku zą ś ż ść ę
napisami (które jest ustawione na ISO-8859-2), a kodowaniem przyj tym na stronie HTMLę
(ustawione jest UTF-8). Mogliby my skonfigurowa aplikacj w taki sposób, aby stronaś ć ę
HTML by a w wy wietlana z u yciem kodowania ISO-8859-2, niestety mog oby toł ś ż ł
spowodowa problemy z innymi j zykami, poza tym wymaga to równie od nas dodatkowychć ę ż
zmian w konfiguracji strony. Najprostszym i najlepszym rozwi zaniem b dzie tutaj zmianaą ę
kodowania pliku na uniwersalny UTF-8.
Twórcy OCSI rozwijaj swój projekt w serwisie ą http://launchpad.net , który
wspomaga rozwój rozproszonych projektów open-source. Wykorzystywanym systemem
kontroli wersji jest bazaar, który tak jak git wspomaga rozproszone tworzenie
oprogramowania. Ka da nowa funkcjonalno tworzona jest w oddzielnej ga zi (ż ść łę branch),
która jest tworzona na podstawie g ównego kodu(ł trunk). Wprowadzone zmiany nale yż
zatwierdzi (ć bzr commit) i wypchn do repozytorium zdalnego (bzr push). Nast pnie wąć ę
serwisie launchpad.net nale y zg osi propozycj dokonania z czenia (ż ł ć ę łą merge) naszej ga zi złę
ga zi rozwojow (trunk). Dalej osoba odpowiedzialna za przegl danie kodu do cza (łę ą ą ą łą merge)
ga rozwojow do ga zi g ównej. Pozwala to na proste i przejrzyste zarz dzanie nowymiłąź ą łę ł ą
funkcjonalno ciami. Dzi ki temu mamy pewno e do g ównego kodu wchodz tylko teś ę ść ż ł ą
funkcjonalno ci, które zosta y zaakceptowane przez osoby upowa nione. ś ł ż
47
W celu rozpocz cia modyfikacji kodu, musimy zarejestrowa si w serwisieę ć ę
http://launchpad.net, a nast pnie zainstalowa oprogramowanie ę ć bazaar.
sudo apt-get install bzr
Pobieramy aktualny kod wersji rozwojowej
bzr branch lp:ocsinventory-ocsreports
#aktualizacja naszego kodu z gałęzią główną
bzr update
Nast pnie chc c wprowadza i publikowa nasze zmiany musimy skonfigurowa nasze kontoę ą ć ć ć
na launchpad.net
#w poleceniach podajemy nasz login i email
#użyty przy rejestracji (morii, [email protected])
bzr launchpad-login morii
bzr whoami "Piotr Bliszczyk <[email protected]>"
48
Rys. 23: bazaar - praca rozproszona. W opracowaniu http://bazaar-vcs.org
bzr whoami
Po dokonaniu zmian nale y je zatwierdzi (commit)ż ć
bzr commit -m 'opis wprowadzonych zmian, np. fixes in polish language file'
Teraz pozostaje nam wys anie (ł push) zmian do repozytorium zdalnego (repozytorium
zdalnym jest nasza w asna prywatna ga (ł łąź branch)), pierwszy raz musimy poda jegoć
lokalizacj .ę
bzr push lp:~piotr-bliszczyk/ocsinventory-reports/layout_fixes
Mo emy teraz zobaczy zmiany w serwisie, oraz np. zaproponowa do czenie naszychż ć ć łą
poprawek do kodu rozwojowego https://code.launchpad.net/~piotr-bliszczyk/ocsinventory-
ocsreports/layout_fixes. Nim zmiany pojawi si w wydaniu stabilnym minie troch czasu.ą ę ę
Aby do czy je ju do nasz istniej cej instalacji nale y przekopiowa plik z t umaczeniamiłą ć ż ą ż ć ł
na serwer.
scp -r ocsinventory-ocsreports/plugins/language/polish/ ubuntu@ubuntu-server:~/.
sudo cp polish/polish.* /usr/share/ocsinventory-server/ocsreports/languages/.
sudo /etc/init.d/apache2 restart
5.2 Implementacja rozszerzenia dla GLPI
Projekt GLPI rozwijany jest z wykorzystaniem serwisu http://forge.indepnet.net
i systemu kontroli wersji SVN. Projektanci tego systemu du wag przywi zali dożą ę ą
opracowania spójnego i funkcjonalnego api, które mo e by wykorzystywane przezż ć
rozszerzenia. Przed rozpocz ciem prac warto w czy tryb debugowania ( http://www.glpi-ę łą ć
project.org/wiki/doku .php?id=en:config:debug ). Chc c zaimplementowa interesuj c nasą ć ą ą
funkcjonalno zapewne wystarczy ść napisanie rozszerzenia zgodnie z zaleceniami
znajduj cymi si na stronie projektu. Instrukcja tworzenia rozszerze dost pna jest podą ę ń ę
adresem: https://forge.indepnet.net/wiki/plugins/WikiStart . Na wiki znajdziemy wiele
wytycznych:
• tabele
• nowo tworzone tabele nazywamy wedle schematu
glpi_plugin_<nazwa_rozszerzenia>_XXXX
• je li u ywasz tabl dla list rozwijanych to nazywamy je wedle schematuś ż
glpi_dropdown_plugin_<nazwa rozszerzenia>_XXXX
49
• struktura katalogów
• pliki zwi zane z rozszerzeniem umieszczamy w folderze o nazwieą
plugins/<nazwa_rozszerzenie>
• "locales": zawiera pliki t umaczeł ń
• wymagane pliki: fr_FR.php / en_GB.php
• "docs": zawiera dokumentację
• pliki: Readme.txt, Lisezmoi.txt, Roadmap.txt, Changelog.txt
• "inc": zawiera pliki z klasami i funkcjami (klasy to np. klasa odpowiadaj ca zaą
mapowanie tabeli z bazy danych)
• pliki zawieraj ce funkcje nazywamy wedle schematu:ą
plugin_<plugin_name>.db.function.php
• pliki zawieraj ce funkcje nazywamy wedle schematu:ą
plugin_<plugin_name>.db.class.php
• "front": pliki formularzy
• schemat nazw dla plików
• formularze tworz ce/edytuj ce obiekt: plugin_<plugin_name>.<object>.form.php ą ą
• formularze wy wietlaj ce obiekt : plugin_<plugin_name>.php ś ą
• "pics" : obrazki
• "ajax" : obs uga AJAX np. obs uga „massive actions”ł ł
• wymagane pliki w katalogu plugins/<nazwa_rozszerzenia>/
• hook.php – funkcja instalacji/de-instalacji (tworzenie i usuwanie tabel), funkcje
definiuj ce w jaki sposób rozszerzamy obecne funkcjonalno ci np. dodawanie nowychą ś
przycisków na stronie oprogramowania
• setup.php – dane o rozszerzeniu/twórcy, sprawdzanie wersji GLPI, sprawdzanie
konfiguracji, okre lenie po o enie rozszerzenia w menuś ł ż
• opcjonalnie index.php - strona która wy wietli si jako pierwszaś ę
• nazwy funkcji i klas
• dla klas stosujemy notacj Camel Case : class Plugin<Plugin_name>Xxxx (np :ę
PluginExampleDisplay)
• dla funkcji stosujemy notacj z podkre leniami: functionę ś
plugin_<plugin_name>_<function> (np. : plugin_example_getType())
50
Podsumowuj c, nale y ci gn ród a przyk adowego projektuą ż ś ą ąć ź ł ł
(https://forge.indepnet.net/tarballs-plugins/example.tar.gz) a nast pnie rozwija go. Przyę ć
próbie uruchomienia przyk adowego rozszerzenia, instalacja ko czy si niepowodzeniem. Wł ń ę
zwi zku z tym jako „wzorcowe rozszerzenie” zosta u yty plugin „Validation”. Na jego bazieą ł ż
zosta y stworzone: ł
• funkcje instalacyjne, tworz ce potrzebne tabele (plik hook.php):ą
function plugin_checker_install() {
$query = "CREATE TABLE `glpi_plugin_checker_softwares` (
ID INT NOT NULL AUTO_INCREMENT,
id_software INT NOT NULL,
status VARCHAR(50) NOT NULL DEFAULT 'blacklist',
comments VARCHAR(255),
PRIMARY KEY (`ID`)
) TYPE=MyISAM;";
• funkcje definiuj ce nowe akcje na zak adce Oprogramowanieą ł
function plugin_checker_MassiveActions($type) {
switch ($type) {
case SOFTWARE_TYPE:
return array(
"plugin_checker_add_to_blacklist"=>"Dodaj do czarnej listy"
• definicja nawigacji w menu (plik setup.php)
function plugin_init_checker() {
$PLUGIN_HOOKS['redirect_page']['checker'] = "front/plugin_checker.checker.php";
$PLUGIN_HOOKS['menu_entry']['checker'] = true;
$PLUGIN_HOOKS['helpdesk_menu_entry']['checker'] = true;
$PLUGIN_HOOKS['submenu_entry']['checker']['search'] = 'index.php';
$PLUGIN_HOOKS['submenu_entry']['checker']['add'] = 'add.php';
Instalacja rozszerzenia polega na skopiowaniu katalogu z gotowym
rozszerzeniem do katalogu produkcyjnego plugins/ projektu GLPI.
51
cd plugins
sudo cp -r checker /var/www/glpi/plugins/.
Nast pnie na stronie zarz dzania dodatkami (Ustawienia Dodatkię ą →
http://localhost/glpi/front/setup.plugins.php) powinni my zobaczy nasze rozszerzenie. Naś ć
tej stronie mo emy równie odinstalowa dodatki.ż ż ć
Musimy teraz kolejno zainstalowa , oraz aktywowa nasze rozszerzenie. Nować ć
funkcjonalno powinna by dost pna w menu Dodatki Checker.ść ć ę →
5.3 Instalacja systemu ewidencji
Przedstawione instalacja jest instalacja okrojon i ma na celu pokazanieą
konfiguracji, w której mamy do czynienia ze cie k przep ywu danych OCSI-agent OCSI-ś ż ą ł →
server GLPI. Przedstawiona tutaj architektura jest zbli ona do zaproponowanej→ ż
architektury scentralizowanej przedstawionej w rozdziale 5.3.1 , tj. zak adamy, i na jednejł ż
maszynie mamy zainstalowane wszystkie elementy systemu odpowiedzialne za zbieranie
informacji i ich przetwarzanie. Wykorzystane rodowisko do przyk adowego wdro enia toś ł ż
zestaw maszyn zbudowanych w oparciu o system do wirtualizacji VirtualBox firmy SUN,
udost pniany na licencji GPL. ę
52
Rys. 24: Instalacja stworzonego rozszerzenia
Jako serwer aplikacji OCSI i GLPI pos u y nam maszyna z dystrybucj Ubuntu-Serwer 9.10.ł ż ą
Maszyny klienckie to 2 komputery z systemem Ubuntu-Desktop 9.10 oraz 2 komputery
Windows XP, Windows 7.
5.3.1 Instalacja i konfiguracja OCSI
Do instalacji wymagany jest serwer www z obs ug j zyków PHP, Perl, bazał ą ę
danych MySql, program nmap. Do dzia ania narz dzia Deploy musimy skonfigurował ę ć
obs ug protoko u HTTPS, wykorzystamy do tego w asnor cznie wygenerowany i podpisanył ę ł ł ę
certyfikat.
sudo aptitude update
sudo aptitude install mysql-client #instalacja bazy danych
sudo aptitude install mysql-server
#serwer www, php perl
sudo aptitude install apache2 libapache2-mod-php5 libapache2-mod-perl2 php5-mysql
nmap
#communication server i deployment server
53
Rys. 25: Konfiguracja serwera
sudo aptitude install ocsinventory-server
sudo aptitude install ocsinventory-reports #konsola administracyjna
sudo aptitude install ocsinventory-agent
#konfiguracja narzędzia Deploy
sudo mkdir -p /var/lib/ocsinventory-reports/download
sudo chmod -R o+rw /var/lib/ocsinventory-reports/
#konfiguracja protokołu https w serwerze apache
#wykorzystanie certyfikatu z własnym podpisem
sudo aptitude install ssl-cert
sudo a2enmod ssl
sudo a2ensite default-ssl
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
sudo /etc/init.d/apache2 restart
cd /etc/ssl/certs/
sudo cp ssl-cert-snakeoil.pem cacert.pem
Nast pnie otwieramy w przegl darce ę ą http://ubuntu-server/ocsreports. Domy lny login i has oś ł
to: admin/admin.
5.3.2 Instalacja i konfiguracja GLPI
Wymagania systemu to serwer www z obs ug j zyka PHP oraz baza danychł ą ę
MySql. Z racji i oprogramowanie instalujemy na tej samej maszynie co OCSI,ż
wykorzystamy zainstalowany ju serwer Apache oraz stworzymy oddzielny schemat w bazież
danych, o nazwie glpi. Pozostaje nam ci gni cie najnowszej paczki ze strony projektu,ś ą ę
przekopiowanie plików na katalogu stron www oraz doko czenie instalacji pod adresemń
http://ubuntu-server/glpi .
wget http://www.glpi-project.org/IMG/gz/glpi-0.72.3.tar.gz
tar -xzf glpi-0.72.3.tar.gz
sudo cp glpi /var/www/.
sudo chown -R root.root /var/www/glpi
54
# dokańczamy instalacje na http://ubuntu-server/glpi
#zmieniamy parametry których nie spełnia nasza obecna konfiguracja, min limit
przydzielonej pamięci dla skryptu PHP
sudo vim /etc/php5/apache2/php.ini
memory_limit = 64M
#aby zmiany były widoczne musimy zrestartować serwer www
sudo /etc/init.d/apache2 restart
#nadajemy uprawnienia do zapisu do katalogów files i config
sudo chmod -R o+w /var/www/glpi/files
sudo chmod -R o+w /var/www/glpi/config
W konfiguracji po czenia do bazy danych podajemy:łą
mysql_server: 127.0.0.1
mysql_user: root
mysql_password: ubuntu
database_name: glpi
Je li proces instalacji przebieg pomy lnie powinni my otrzyma informacje o domy lnychś ł ś ś ć ś
u ytkownikach w aplikacji ż
Default logins / passwords are:
* glpi/glpi for the administrator account
* tech/tech for the technician account
Nast pnie chcemy skonfigurowa synchronizacj z OCSI, w tym celu logujemy si doę ć ę ę
aplikacji na u ytkownika admin/admin i w zak adce ż ł Ustawienia -> Ustawienia ->
Aktywuj tryb OCSNG aktywujemy obs ug OCSI. ł ę
W zak adce ł Ustawienia -> OCS-inventory podajemy dane dost powe do systemuę
OCSI, w tym miejscu mo emy skonfigurowa import z wielu systemów OCSI. ż ć
55
Przed importem musimy w OCSI przenie wykryte oprogramowanie z kategorii „NEW” dość
„UNCHANGED”, operacj wykonujemy wchodz c do zak adki „DICTIONARIES”, dzi kię ą ł ę
temu zostanie ono zaimportowane do GLPI.
Pozostaje nam ju tylko zaimportowa dane wchodz c do zak adki ż ć ą ł Narzędzia -> OCSNG
-> Importuj nowe komputery
56
Rys. 26: GLPI - ustawiania bazy danych OCSI
Rys. 27: OCSI - oprogramowanie
Rys. 28: GLPI - import z OCSI
5.3.3 Instalacja i konfiguracja Zabbix
Oprogramowanie Zabbix instalujemy na serwerze g ównym, wymagany jest tuł
serwer aplikacji np. Apache oraz baza danych MySql. Programy monitoruj ce (zabbix-agent)ą
instalujemy tylko na serwerach, które chcemy monitorowa , podczas tej instalacji musimyć
tylko poda adres serwera zabbix. Instalacja oprogramowania na serwerze sprowadza si doć ę
instalacji z gotowych paczek, dost pna wersja to 1.6, je li chcemy u y najnowszej wersjię ś ż ć
musimy instalowa system ze róde . Podczas instalacji podajemy jedynie has o do bazyć ź ł ł
danych.
sudo aptitude install zabbix-server-mysql
sudo aptitude install zabbix-frontend-php
Je li po instalacji nadal mamy problemy z po czeniem do bazy, nale y sprawdzi plik ś łą ż ć
/etc/zabbix/dbconfig.php
Je li nie mamy poprawnie ustawionej strefy czasowej w konfiguracji Apache, zmieniamy toś
poprzez ustawienie date.timezone = „Europe/Warsaw” w pliku konfiguracjnym
sudo vi /etc/php5/apache2/php.ini
Instalacja na maszynach klienckich sprowadza si do zainstalowania paczki zabbix-agent ię
modyfikacji pliku /etc/zabbix
sudo aptitude install zabbix-agent
sudo vi /etc/zabbix/zabbix_agent.conf
Pozostaje nam ju tylko konfiguracja serwera poprzez panel administracyjny, dost pny podż ę
adresem http://ubuntu-server/zabbix/ . Domy lny login i has o to: admin/zabbix. Dodajemyś ł
obserwowanie maszyny na zak adce Configuration Hosts Create Host.ł → →
5.4 Konfiguracja systemu ewidencji dla instytucji o strukturze rozproszonej
W celu pe nego wykorzystania mo liwo ci programu GLPI w przedsi biorstwieł ż ś ę
rozleg ym, przed przyst pieniem do w a ciwej inwentaryzacji nale y odtworzy strukturł ą ł ś ż ć ę
organizacji w projekcie. W tym celu musimy zdefiniowa :ć
57
• u ytkowników wedle grup, które zosta y zdefiniowane w rozdziale 4.3,ż ł
• oddzia y oraz hierarchie pomi dzy nimi,ł ę
• lokalizacje tj. spis miast z okre leniem przynale no ci do miast nadrz dnych,ś ż ś ę
• u ytkowników tj. poczynaj c od pracowników, ko cz c na administratorach.ż ą ń ą
Przed stworzeniem u ytkowników powinni my zdefiniowa grupy do którychż ś ć
b d przypisaniu. Wykonujemy to na zak adce Administracja Grupy. ę ą ł →
Uzupe niamy list grup wedle diagramu z rys. 22.ł ę
Projekt GLPI pozwala na odtworzenie hierarchicznej struktury naszego
przedsi biorstwa. Oddzia y i pododdzia y definiujemy jako u ytkownik z uprawnieniamię ł ł ż
„super-user” w sekcji Administracja Oddzia y. Najpierw dodajemy oddzia y wojewódzkie,→ ł ł
a nast pnie do ka dego z nich poszczególne oddzia y terenowe.ę ż ł
Powinni my jeszcze zdefiniowa lokalizacje w jakich mog znajdowa siś ć ą ć ę
komputery. Dokonamy tego w zak adce Ustawienia Listy rozwijane Lokalizacje.ł → →
58
Rys. 29: GLPI - definiowanie grup użytkowników
Rys. 30: GLPI - zdefiniowane grupy
Rys. 31: GLPI - definiowanie struktury hierarchicznej przedsiębiorstwa
Wprowadzanie tych danych r cznie przez administratorów jest zadaniem mudnym, dlategoę ż
nale y pos u y si plikami ż ł ż ć ę csv i poleceniem LOAD DATA INFILE w bazie MySql. Tak samo
mo emy post pi w przypadku wprowadzenia pracowników do systemu. Je li chcemyż ą ć ś
wykona dodawanie pracowników r cznie powinni my uda si do zak adki Administracja ć ę ś ć ę ł →
U ytkownicy Dodaj u ytkownika. ż ż→
W celu lepszego wykorzystania informacji zgromadzonych w GLPI, mo emyż
zainstalowa dodatkowe rozszerzenia, przyk adowym rozszerzeniem jest pakiet zć ł
dodatkowymi raportami - „Reports”. Pobieramy go ze strony projektu (http://plugins.glpi-
project.org/ ) i instalujemy poprzez rozpakowanie do folderu /plugins w katalogu instalacji
programu. Nast pnie nale y aktywowa go na zak adce Administracja Dodatki. Dopieroę ż ć ł →
po ponownym zalogowaniu w zak adce Narz dzia Raporty zobaczmy nowe opcje.ł ę →
Domy lnie wszystkie raporty mog wykonywa u ytkownicy z uprawnieniami super-admin,ś ą ć ż
mo emy to zmieni na zak adce konfiguracji dodatku Administracja Dodatki Reports.ż ć ł → →
Po instalacji dostajemy do dyspozycji nowe rodzaje raportów oraz narz dzie do prostszegoę
tworzenia w asnych raportów, tj. do stworzenia raportu wystarczy nam jeden plik PHP, nieł
musimy tworzy oddzielnego rozszerzenia.ć
59
Rys. 32: GLPI - dodawanie nowego użytkownika
Po zdefiniowaniu wszystkich wymaganych u ytkowników oraz poprawnejż
konfiguracji po czenia OCSI z GLPI (opis konfiguracji w rozdziale 5.3.2) , mo emyłą ż
przyst pi do codziennego monitorowania zmian oraz wykonywania okresowych raportówą ć
zbiorczych. Decyduj c si na wykorzystanie modu u help-desk, powinni my poinstruowaą ę ł ś ć
u ytkowników o parametrach dost pu do niego oraz zasadach i sposobie jego u ytkowania.ż ę ż
5.5 Proces inwentaryzacji
Maj c zainstalowane systemy sk adowe mo emy przej do uruchomieniaą ł ż ść
procesu inwentaryzacji. Mówimy tutaj o procesie, gdy inwentaryzacja zasobówż
informatycznych powinna by dzia aniem wykonywanym ci gle, b d te okresowo.ć ł ą ą ź ż
Spowodowane jest to ci g ymi zmianami polegaj cymi na zakupie sprz tu, wymianieą ł ą ę
jednostek przestarza ych, rotacji pracowników, instalacji oprogramowania, u ytkowaniemł ż
systemu. W procesie inwentaryzacji mo emy wyró ni nast puj ce etapy: ż ż ć ę ą
• instalacja/konfiguracja,
• inwentaryzacja automatyczna,
• inwentaryzacja r czna,ę
• raportowanie.
W pierwszym etapie musimy zainstalowa oprogramowanie „agentów” nać
maszynach klienckich. Nale y podj decyzj o tym, które maszyny b d mia y uaktywnionż ąć ę ę ą ł ą
opcj „Ip discover”, tak by zbiera y informacje o urz dzeniach z sieci lokalnej, na których nieę ł ą
60
Rys. 33: GLPI - dodatkowe raporty
mo e by zainstalowany „agent”. Instalacje mo emy przeprowadzi r cznie, jednak wż ć ż ć ę
przypadku tak du ej organizacji jak ZUS mija si to z celem. Wykorzystamy wi c programż ę ę
OCS Inventory NG Agent Deployment Tool, s u cy do zdalnej instalacji agentów nał żą
maszynach klienckich. Program dost pny jest tylko dla systemów klasy Windows, mimo toę
mo emy uruchomi go tak e na systemie klasy Linux, wykorzystuj c projekt WINEż ć ż ą
(http://www.winehq.org/). Jest on: „warstw t umacz c ( aduj c programy) zdolną ł ą ą ł ą ą ą
uruchomi Windowsowe aplikacje na Linuksie i innych systemach operacyjnych zgodnych zć
POSIXem” (http://www.wine hq.org/about/ ). U ywaj cż ą OCS Inventory nale y okre li zakres IPż ś ć
komputerów, na których zostanie przeprowadzona instalacja.
Dla komputerów z zainstalowanym systemem typu Windows, pracuj cych wą
domenie, mo emy wykorzysta inny sposób instalacji. Nale y wykorzysta narz dziaż ć ż ć ę
administracyjne (mechanizm GPO) i zdefiniowa skrypt logowania, który uruchomi instalacjć ę
agenta.
61
Po instalacji i wskazaniu serwera zbieraj cego dane (w naszym przypadkuą
ubuntu-server), agent po raz pierwszy wy le dane. Automatyczne uruchamianie agenta, któryś
wysy a informacje, odbywa si dzi ki programowi ł ę ę cron dla systemów typu Linux. Domy lnieś
agent b dzie uruchamiany raz dziennie.ę
R czne dodawanie informacji jest realizowane przez system GLPI, w systemieę
OCSI mogliby my jedynie importowa stosowne pliki CSV, aczkolwiek nie jest toś ć
najwygodniejsze rozwi zanie. Do r cznego dodawania informacji mo emy stworzyą ę ż ć
odpowiednie konto, b dzie je wykorzystywa pracownik z oddzia u lokalnego.ę ł ł
62
Rys. 34: źródło: http://wiki.ocsinventory-ng.org/index.php/Tools:Packager
Rys. 35: Ręczne dodawanie informacji o monitorze
6.Testy
6.1 Projekt środowiska testowego
W celu symulacji architektury przedsi biorstwa zbli onego do ZUSę ż
wykorzystano system do wirtualizacji VirtualBox (3.1.2). Dzi ki takiemu podej ciuę ś
dysponuj c wystarczaj co wydajn maszyn , mo emy przeprowadzi testy które normalnieą ą ą ą ż ć
wymaga y by od nas kilku jednostek oraz architektury sieciowej. rodowisko testowe zosta oł Ś ł
przygotowane zgodnie z schematem na rysunku poni ej. Rol serwera udost pniaj cegoż ę ę ą
aplikacje OCSI, GLPI, ZABBIX pe ni maszyna wirtualna z systemem Ubuntu-Server 9.10.ł
Maszyny klienckie wykorzystuj systemy Ubuntu-Desktop 9.10, Windows XP. ą
63
Rys. 36: Konfiguracja środowiska testowego
6.2 Inwentaryzacja
Proces inwentaryzacji sprowadza si do zainstalowania agentów na maszynachę
klienckich. Dla systemów typu Ubuntu wykonujemy polecenie:
sudo aptitude install ocsinventory-agent
Nast pnie w pliku /etc/ocsinventory/ocsinventory-agent.cfg ustawiamy parametr ę server na
10.43.42.2 . Dla systemów Windows mo emy wgra na nasz serwer aplikacje agenta, którż ć ą
pó niej u ytkownicy b d mogli pobra i zainstalowa . Jako u ytkownik admin na stronieź ż ę ą ć ć ż
http://ubuntu-server/ocsreports , na zak adce Agent, mo emy wgra plik z instalacj agenta.ł ż ć ą
Nast pnie pobieramy ze strony: ę http://ubuntu-server/ocsreports/download.php?dl=1&v=-
&o=windows&n=ocsagent.exe . Do instalacji na wi kszej liczbie komputerów mo emy się ż ę
pos u y ł ż ć OCS Inventory NG Agent Deployment Tool, opisany w rozdziale 5.4. Aby ustawić
adres serwera OCSI nale y wyedytowa plik C:\Program Files\OCS Inventoryż ć
Agent\service.ini . Po uruchomieniu r cznym agentów na maszynach klientów (b d teę ą ź ż
mo emy poczeka na uruchomienie ich przez mechanizmy uruchamiania zada o okre lonejż ć ń ś
porze, specyficzne dla danego systemu), powinni my zobaczy ich list w OCSI. ś ć ę
Nast pnie w GLPI w zak adce Narz dzia OCSNG musimy zaimportowa nowoę ł ę ć→
zinwentaryzowane jednostki.
Po zaimportowaniu, komputery s widoczne w zak adce Spis Komputery.ą ł →
Teraz mo emy przypisa komputery do odpowiednich oddzia ów. Aby nie wykonywa tegoż ć ł ć
64
Rys. 37: OCSI - lista komputerów zinwentaryzowanych
Rys. 38: GLPI - import komputerów z OCSI
r cznie mo emy, zautomatyzowa ten proces poprzez mechanizm regu . Regu y definiujemyę ż ć ł ł
w zak adce Administracja Regu y. Podajemy jakie warunki musz spe nia np. komputery,ł ł ą ł ć→
a nast pnie jaka akcja zostanie wykonana, w naszym przypadku przypisanie doę
odpowiedniego oddzia u.ł
65
Rys. 39: GLPI - automatyzacja zarządzaniem, poprzez mechanizm reguł
Po pomy lnej inwentaryzacji oraz imporcie, w zak adce Spis Komputery, mo emyś ł ż→
przegl da dok adne informacje o maszynach które dodali my. Poni ej lista programówą ć ł ś ż
zainstalowanych na przyk adowej jednostce z systemem typu Windows.ł
66
Rys. 40: GLPI - lista oprogramowania zainstalowana na komputerze z systemem Windows
6.3 Raportowanie
Do sprawdzenia funkcjonalno ci raportów u yjemy konta u ytkownika któryś ż ż
nale y do grupy „Analitycy biznesowi”. Test b dzie polega na uruchomieniu raportów,ż ę ł
wy wietlaj cych list zinwentaryzowanych komputerów. Aby zalogowa si naś ą ę ć ę
odpowiedniego u ytkownika u ywamy danych do konta typu „normal”, przy instalacjiż ż
tworzony jest domy lnie jeden u ytkownik z takimi uprawnieniami normal/normal. Raportyś ż
dost pne s w menu Narz dzia Raporty. ę ą ę →
Je li lista raportów zainstalowanych domy lnie nie jest dla nas wystarczaj ca, mo emy pobraś ś ą ż ć
rozszerzenia ze strony http://plugins.glpi-project.org/spip.php?mot15&lang=en . Pobrane
archiwa, nale y rozpakowa do folderu /var/www/glpi/plugins/ ,a nast pnie aktywowa . ż ć ę ć
67
Rys. 41: GLPI - raport roczny materiałów
6.4 Rozszerzenie „Checker”
Posiadaj c ju informacje o komputerach w naszej sieci oraz o oprogramowaniu,ą ż
mo emy wykorzysta stworzone rozszerzenie „Checker” do zdefiniowania listy programówż ć
niepo danych. Nast pnie postaramy si wykry , na których komputerach te programy sżą ę ę ć ą
zainstalowane. Wszystkie operacje wykonujemy jako u ytkownik nale cy do grupy „super-ż żą
admin”. Dodawanie programu do listy odbywa si na karcie z programem, czyli musimyę
wyszuka aplikacje w zak adce Spis Oprogramowanie, zaznaczy i z listy akcji wybieramyć ł ć→
„Dodaj do czarnej listy”.
Nast pnie na zak adce Dodatki Checker mo emy zobaczy list komputerów któreę ł ż ć ę→
posiadaj oprogramowanie którego nie chcemy.ą
Rozszerzenie nie pozwala w aden sposób na zdaln deinstalacj , wskazuje jedynież ą ę
te jednostki które nie spe niaj naszych wymaga . Przeprowadzone testy pokazuj , ił ą ń ą ż
podstawowe funkcjonalno ci inwentaryzowania i raportowania dzia aj poprawnie. ś ł ą
68
Rys. 42: GLPI - roszerzenie Checker, dodawanie oprogramowania do czarnej listy
Rys. 43: GLPI - rozszerzenie Checker i lista komputerów z niechcianym oprogramowaniem
7.Porównanie wytworzonego systemu z rozwiązaniami komercyjnymi
7.1 Porównanie funkcjonalności
Przyk adowym programem komercyjnym, który s u y do audytu i inwentaryzacjił ł ż
sprz tu komputerowego jest AuditProę 13. Jego podstawow funkcjonalno ci jestą ś ą
inwentaryzacja sprz tu i oprogramowania, zbieranie informacji o licencjach. Dodatkoweę
modu y pozwalaj na :ł ą
• zarz dzanie zasobami - czyli monitorowanie u ycia sprz tu, jego wypo yczeniaą ż ę ż
monitorowanie sprz tu - monitorowanie wykorzystania zasobów na bie coę żą
(wykorzystanie procesora, dysku, aplikacji)
• kody kreskowe - drukowanie kodów kreskowych i identyfikacja urz dze poprzez nieą ń
• help-desk - obs uga zg osze , baza wiedzy, wieloj zycznoł ł ń ę ść
Jak widzimy funkcjonalno ci oferowane przez zaproponowane rozwi zanie open-sourceś ą
pokrywaj si - brak jedynie kompletnie obs ugi kodów pocztowych. W czym w takim razieą ę ł
lepsze jest oprogramowanie komercyjne? Zalety:
• dopracowane oprogramowanie - p ac c za konkretny produkt wymagamy poprawnegoł ą
dzia ania funkcjonalno ci, za które zap acili my. Krótko mówi c nie powinno by w nimł ś ł ś ą ć
b dówłę
• wsparcie techniczne, które jest dost pne „w zestawie” lub za które musimy dodatkowoę
p acił ć
Wady
• inwentaryzacja tylko maszyn z systemem Windows - przygl daj c si programomą ą ę
komercyjnym nie spotkamy si ze wsparciem dla maszyn klienckich innych ni zę ż
zainstalowanym systemem firmy Microsoft, brak jakiegokolwiek wsparcia dla coraz
popularniejszych MacOSx czy Ubuntu stanowi powa n luk . ż ą ę
• instalacja tylko na serwerach z Windows - równie je li chodzi o rodowisko, w którymż ś ś
mo emy uruchomi serwer zazwyczaj jest ograniczone do serwerów z systemem firmyż ć
Microsoft. W przypadku zaproponowanego rozwi zania nie ma takich problemów, gdyą ż
13 http://www.auditpro.pl/
69
serwer Apache i baza MySql dost pna jest na wi kszo ci systemów operacyjnych ię ę ś
architektur sprz towych.ę
• ma a elastyczno w konfiguracji – je li kupujemy w pe ni gotowy produkt to musimył ść ś ł
go u ywa tak jak zaplanowa to twórca, je li wymagania czy to funkcjonalne, czy toż ć ł ś
podyktowane struktur naszej firmy nie odpowiadaj temu to jest w ofercie, b dziemyą ą ę
musieli poszuka innego produktu, b d zap aci za jego dodatkow modyfikacj .ć ą ź ł ć ą ę
• brak wersji konsoli administracyjnej z dost pem przez przegl dark , uaktualnianieę ą ę
aplikacji „desktop-owej”- to jeszcze jedna niedogodno programu AuditPro.ść
Kolejnym wiod cym komercyjnym programem jest Statlooką 14. Oferuje on takie
funkcjonalno ci jak: ś
• audyt oprogramowania,
• kontrola sprz tu.ę
Znajdziemy w nim równie narz dzia pozwalaj ce na monitoring wykorzystaniaż ę ą
komputerów przez pracowników. Mo emy ledzi m.in. :ż ś ć
• operacje drukowania,
• przegl dane strony internetowe oraz czas sp dzony na nich,ą ę
• czas u ywania poszczególnych programów.ż
Tego typu opcji nie znajdziemy w przedstawionym systemie, aczkolwiek takie
funkcjonalno ci nie s obj te zagadnieniami ewidencji systemów informatycznych.ś ą ę
Powinni my ich szuka w programach do ci g ego monitoringu i zarz dzania stacjamiś ć ą ł ą
roboczymi. Program dzia a tylko i wy cznie z systemami typu Windows, zarównoł łą
cz serwerowa, tj. gromadz ca dane jak i agenty s przeznaczone pod jednegoęść ą ą
producenta systemu operacyjnego.
14 http://statlook.pl
70
Zestawienie porównania funkcjonalno ci projektów komercyjnych z rozwi zaniemś ą
przedstawionym w pracy w tabelce poni ej.ż
71
Rys. 44: Porównanie funkcjonaloności OCSI/GLPI, AuditPro, StatLook
OCSI/GLPI AuditPro StatLookPodstawowa instalacja Windows/Unix Windows 98/NT+ Windows 9x/NT+
Baza danych MySql
Active Directory Tak NIE
Interfejs WEBowy Tak TAK NIE
Lokalizacje PL
Pomoc WinHelp
Wyszukiwanie tekstu w pozycjach Tak TAK NIEWindows Tak TAK TAKUnix, Linux Linux/Unix Linux LinuxApple Macintosh Tak NIE NIEEmbedded, Windows CE Tak(częściowo) TAK NIE
Sterowanie TCP TCP
Inwentaryzacja sprzętu i oprogramowania TAK TAK TAKRejestrowanie zdarzeń serwisowych TAK NIE TAKSkanowanie Plików NIE TAK TAKLogin-script TAK TAK NIE
Możliwość definiowania
Informacje z rejestrów Tak TAK TAKInformacje z instalatora Windows Tak TAK TAKHasło do połączenia agentów z masterem Nie TAK TAKZabezpieczenie przed usunięciem Nie Usługa NT 2 procesy
Obsługa WMI Tak System, WMI
Platformy TAK TAK
Wielkość bazy oprogramowania, sprzętu Brak wbudowanej listy 2380 Produktów
TAK TAK
Export/Import własnych definicji NIE TAK NIE
Automatyczny update z internetu TAK TAK
Informacje o cenach Software'u TAK NIE
Cena dla 100 agentów 0 PLN 13.000 PLN 12.000 PLN
MS SQL/MSDE 7.0/2000/2005
MSDE, MS SQL 2000 lub MS SQL 2005)
TAK, rozpoznani użytkownicy
SLO, HUN, ESP, FR, RUS, ENG, TUR, IT, GER
CZ, ENG, PL, RUS, SK, RO
Dokumentacja na stronie/ społeczność
kontekstowy WinHelp, Interaktywna pomoc
DCOM, TCP-IP, SKRYPTY, OFFLINE
Pliki z danymi (np. *.jpg, *.mpg, *.dll, *.exe itp.
TAK, możliwość definiowania typu
System, WMI wszystkie dostępne
TAK, rozpoznaje kolejne wersje systemów2259 producentów, Ponad 5000 produktów
Możliwość wprowadzenia własnych definicji (biblioteka użytkownika)
TAK, można definiować własne wartości w listach wyboru
NIE, jedynie poprzez pakiety systemoweTak, można samemu wprowadzać
7.2 Porównanie kosztów
Koszty wdro enia systemu komercyjnego z obs ug 50 000 agentów to rednioż ł ą ś
koszt powy ej 1 000 000 z . ż ł ( ród o ź ł http://www.auditpro.pl/cennik) Dochodz do tego jeszczeą
koszta rocznej aktualizacji na poziomie 100 000 z oraz koszt licencji na systemy. Jak widał ć
w przypadku du ych instalacji kwota jak nale a o by przeznaczy na komercyjny systemż ą ż ł ć
ro nie bardzo szybko. ś Za u ywanie dodatkowego modu u, czy te rocznych uaktualnież ł ż ń
równie musimy p aci . Je li przyb dzie nam pracowników to koszt stanowiskaż ł ć ś ę
komputerowego równie ro nie, gdy musimy dokupi licencj na program inwentaryzuj cy.ż ś ż ć ę ą
W przypadku open-source, wi kszo z tych problemów jest nam obca, je li kto opublikujeę ść ś ś
rozszerzenie np. do GLPI mo emy z niego skorzysta , je li przyb dzie nam komputerów toż ć ś ę
po prostu zainstalujemy na nich agenta. Je li chcemy mie wsparcie, to za nie zap acimy, aleś ć ł
w zamian mo emy oczekiwa wymiernych korzy ci.ż ć ś
Wykorzystuj c system, który sk ada by si z przedstawionych w tej pracyą ł ł ę
komponentów, nie mo emy oczywi cie mówi o zerowym koszcie. „Wolne oprogramowanie”ż ś ć
nie oznacza braku op at-dlatego lepiej stosowa okre lenie „otwarte oprogramowanie”. Kodł ć ś
ród owy jest dost pny dla ka dego i pobieraj c go nie ponosimy kosztów licencyjnych.ź ł ę ż ą
Mo emy równie unikn kosztów zwi zanych z zakupem licencji na systemy operacyjneż ż ąć ą
gdzie b d uruchomione aplikacje, je li wykorzystamy otwarte systemy (Debian, ubuntu,ę ą ś
CentOs itp.). Je li chodzi o bazy danych to równie mo emy, czy te w przypadku OCSI orazś ż ż ż
GLPI jeste my wr cz zmuszeni do wykorzystania darmowej bazy MySql. ś ę
Je li mo emy unikn wszelkich kosztów zwi zanych z zakupem licencji to naś ż ąć ą
co w takim razie musz pój fundusze przy wdro eniu przedstawionego systemu? Abyą ść ż
odpowiedzie na to pytanie wystarczy prze ledzi czynno ci jakie nale y wykona przyć ś ć ś ż ć
instalowania systemu. Sk ada si on z kilku modu ów których instalacj i konfiguracj musił ę ł ę ę
wykona op acony przez nas pracownik. Otrzymany system b dzie posiada okre loneć ł ę ł ś
funkcjonalno ci, które zapewne nie b d w 100% pokrywa y si z naszymi wymaganiami (wś ę ą ł ę
przypadku, gdy zakupimy program komercyjny równie mo e powsta taka sytuacja). W tymż ż ć
miejscu widzimy wad systemu, jak jest niespe nianie wymaga , jednak e mo emy ję ą ł ń ż ż ą
zlikwidowa t niedogodno poprzez stworzenie modu u, który b dzie dostarczać ą ść ł ę ł
wymaganych funkcjonalno ci. Musimy w tym momencie zatrudni pracownika (b d teś ć ą ź ż
zespó programistów), który b dzie odpowiedzialny za implementacje nowychł ę
funkcjonalno ci. Po stworzeniu tych funkcjonalno ci by mo e zajdzie koniecznoś ś ć ż ść
72
zatrzymania pracownika w firmie, do nadzorowania dzia ania systemu. Fundusze zostanł ą
wi c wykorzystane do stworzenie rozszerze systemu. To ile wydamy na nie zale y tylko odę ń ż
nas. Mo emy zacz si zastanawia na czym w takim razie zarabiaj ludzie którzy pracujż ąć ę ć ą ą
przy projektach OCSI, GLPI, Zabix? Na stronach projektów znajdziemy ofert wsparcia przyę
wdra aniu systemu i tworzeniu dedykowanych funkcjonalno ci. Je li nie dysponujemyż ś ś
odpowiednim zespo em programistów do stworzenia rozszerzenia mo emy zleci to firmieł ż ć
trzeciej. Przyjmuj c miesi czny koszt do wiadczonego programisty php na okre lonymą ę ś ś
poziomie mo emy oszacowa ile nas b dzie kosztowa nowa funkcjonalno .ż ć ę ć ść
73
PodsumowanieCelem pracy by o zaprojektowanie systemu ewidencji zasobów informatycznych,ł
wykorzystuj c komponenty open-source. W ramach pracy wykonano wszystkie przydzieloneą
zadania. Rozpocz to od przedstawienia problematyki inwentaryzacji. Opisano na czym onaę
powinna polega , jakich dziedzin powinna dotyczy , oraz jakie wynikaj z niej korzy ci.ć ć ą ś
Zdefiniowano potrzeby i wymagania systemu. Opisano idee open-source, jej wp yw nał
programistów tworz cych oprogramowanie i przyczynienie si do udost pniania koduą ę ę
ród owego aplikacji dla szerokiego grona odbiorców. Dokonano analizy dost pnegoź ł ę
oprogramowania open-source, które mo na by o wykorzysta do budowy systemu. Z racji, iż ł ć ż
nie wszystkie funkcjonalno ci by y dost pne nast pi etap projektowania nowych oraz ichś ł ę ą ł
implementacja. Do projektu OCSI zosta a uaktualniona polska wersja j zykowa, natomiast dlał ę
projektu GLPI stworzono rozszerzenie. Pozwala ono na sporz dzanie listy oprogramowaniaą
niepo danego oraz wykrywanie takich programów na komputerach u ytkowników.żą ż
Specjaln uwag zwrócono na potrzeb ci g ego monitorowania jednostek serwerowych.ą ę ę ą ł
Autor za przyk adow firm (w której wdro enie systemu do ewidencji przynosi du eł ą ę ż ż
korzy ci) wybra ZUS. Stosuj c oprogramowanie open-source w tym zak adzie unikamyś ł ą ł
wysokich kosztów licencji. Ostatnim etapem by o stworzenie rodowiska testowego, orazł ś
przetestowanie podstawowych funkcjonalno ci. Uzyskano opis projekt systemu, który sk adaś ł
si z komponentów darmowych. Mo liwa jest jego atwa rozbudowa, dzi ki dost pno koduę ż ł ę ę ść
ród owego.ź ł
Gdyby nie istnia y programy spe niaj ce nasze wymagania, nale a oby stworzył ł ą ż ł ć
taki system samodzielnie, wykorzystuj c np. skrypty zbieraj ce informacje o podzespo ach wą ą ł
komputerze. System trzeba by oprze o baz danych i tu mam do wyboru MySql, PostgreSql,ć ę
SqlLite, a nast pnie wybra w jakim j zyku zostanie stworzona potrzebna nam aplikacja.ę ć ę
74
Bibliografia1. Ma kowska D., ł „Inwentaryzacja od A do Z”, Gda sk 2007. ń
2. Spinellis D., „Czytanie kodu: punkt widzenia twórców oprogramowania open-source”,
Helion 2005
3. Williams S., „W obronie wolno ci. Krucjata hakera na rzecz wolnegoś
oprogramowania”, Helion 2003
4. Dragonia Magazine Nr. 14 http://www.dragonia.pl/download.php?view.34
5. Nowak T., „Inwentaryzacja zasobów informatycznych ” ,
http://security.psnc.pl/files/szkolenia/WEWN_071127_3.pdf
6. Ludwiszewski B., „Eksploatacja zasobów informatycznych przedsi biorstwa”ę
http://www.zie.pg.gda.pl/~blud/ezip/WYK_2.ppt
7. http://www.ocsinventory-ng.org/
8. http://www.glpi-project.org/
9. http://zabbix.com
10. http://statlook.pl
11. http://auditpro.pl
12. http://zus.pl
75
Spis załączników P yta zawieraj ca:ł ą
• ród o pracy w formacie ODTŹ ł
• Pliki diagramów u ytych w pracyż
• P yta zawieraj ca obrazy maszyn wirtualnychł ą
• P yta zawieraj ca kod stworzonych rozszerzeł ą ń
Praca zosta a stworzona w ca o ci przy pomocy wolno ciowego oprogramowania: ł ł ś ś
• Ubuntu – tworzenie zrzutów ekranu
• OpenOffice – edycja tekstu,
• Gimp – przycinanie obrazków,
• Xmind – mapy my li, ś
• Firefox – dost p do konsoli administracyjnych, ę
• Dia – diagramy i schematy,
• Netbeans – rodowisko deweloperskie dla j zyka PHP, ś ę
• MySql-workbench – diagramy ERD,
• Umlet – diagramy UML
• VirtualBox – tworzenie maszyn wirtualnych
76