Instalacja i konfiguracja Jffnms
1.
Podstawy Jffnms
Wprowadzenie
Jffnms jest systemem monitorowania i
zarządzania siecią. Pozwala na pobieranie informacji z różnego rodzaju
komputerów/hostów i protokołów. W przewodniku tym pokażemy jak poprawnie
zainstalować Jffnms oraz w jaki sposób monitorować własne systemy za pomocą
tego wspaniałego narzędzia.
2.
Wstępne ustawienia
Wybór flag USE
Ebuild Jffnms posiada następujące flagi USE, które pozwalają na dopasowanie
możliwości programu do indywidualnych potrzeb:
| Flagi USE dla Jffnms |
Opis |
| mysql |
Użycie Mysql do przechowywania danych Jffnms |
| postgres |
Użycie PostgreSQL do przechowywania danych Jffnms |
| snmp |
Dodaje wsparcie dla protokołu snmp, który uaktywnia zbieranie informacji
z innych komputerów.
|
Flagi USE dla PHP
Jako program napisany w PHP, Jffnms jest niezwykle zależny od flag USE użytych
dla PHP.
| Flagi USE dla PHP |
Opis |
| gd |
Dodanie wsparcia dla media-libs/gd (generowanie grafiki w locie) |
| wddx |
Dodanie wsparcia dla rozproszonego systemu wymiany danych poprzez Internet
(Web Distributed Data eXchange)
|
| sockets |
Dodanie wsparcia dla gniazd tcp/ip |
| session |
Obsługa ciągłych sesji |
| spl |
Dodanie wsparcia dla standardowej biblioteki PHP |
| cli |
Uaktywnienie CLI SAPI |
Instalacja
Jak każdy pakiet w Portage, jffnms można zainstalować przy pomocy
emerge:
Listing 2.1: Instalacja Jffnms |
# emerge jffnms
|
Jffnms powinien zostać zainstalowany w /opt/jffnms/.
Konfiguracja Apache 2
Ostrzeżenie:
Ten prosty opis konfiguracji Apache nie wyczerpuje wszystkich możliwych
aspektów konfiguracji tego serwera www.
|
Czasami chcemy uruchomić Jffnms na swoim komputerze zamiast na zdalnym
serwerze. Jeżeli tak jest w rzeczywistości, to jest możliwe, że nie mamy
zainstalowanego ani skonfigurowanego apache'a. Portage powinno zainstalować go
w naszym imieniu. Niemniej wciąż musimy go skonfigurować i uruchomić, co (na
szczęście) nie jest takie trudne. Zaczynamy od dodania Apache do domyślnego
poziomu uruchomieniowego:
Listing 2.2: Dodawanie apache 2 do domyślnego runlevel'a |
# rc-update add apache2 default
|
Następnie uruchamiamy apache2:
Listing 2.3: Uruchamianie apache2 |
# /etc/init.d/apache2 start
|
Wreszcie kierujemy swoją przeglądarkę na adres http://localhost, aby
zobaczyć stronę z informacjami o świeżo zainstalowanym Apache 2. Teraz, gdy już
wiemy, że Apache działa, możemy przejść do konfiguracji mod_php. Uruchamiamy
ulubiony edytor, otwieramy plik /etc/conf.d/apache2 i dodajemy
-D PHP5 do zmiennej APACHE2_OPTS.
Listing 2.4: Konfiguracja Apache 2 |
# nano -w /etc/conf.d/apache2
APACHE2_OPTS="-D DEFAULT_VHOST -D PHP5"
|
Następnie tworzymy dowiązanie symboliczne z katalogu z instalacją Jffnms do
katalogu głównego Apache. W Gentoo Apache domyślnie używa
/var/www/localhost/htdocs. Należy więc wykonać następujące
polecenie:
Listing 2.5: Tworzenie dowiązania do Jffnms |
# cd /var/www/localhost/htdocs && ln -s /opt/jffnms/
|
Konfiguracja PHP
Teraz, gdy Apache działa, czas skonfigurować PHP. Jffnms wymaga pewnych
zmiennych w php.ini do poprawnego działania. Plik php.ini domyślnie znajduje
się w /etc/php/apache2-php5/php.ini. Musimy ustawić następujące
zmienne:
Listing 2.6: Konfiguracja PHP |
# nano -w /etc/php/apache2-php5/php.ini
register_globals = On
register_argc_argv = On
error_reporting = E_ALL & ~E_NOTICE
allow_url_fopen = On
include_path = ".:/usr/share/php5:/usr/share/php:/usr/share/php/PEAR"
short_open_tag = On
|
Instalacja bazy danych
Ostrzeżenie:
Jest to bardzo podstawowa procedura konfiguracji bazy danych.
|
Jffnms pozwala używać zarówno PostgreSQL jak i MySQL jako bazy danych. Skupimy
się tutaj na tworzeniu bazy, jak i odpowiednich tabel, w których Jffnms będzie
przechowywał swoje dane. Jffnms nie wymaga bazy danych zainstalowanej lokalnie.
Jedyna różnica w instalacji polega na wykonywaniu niżej zamieszczonych poleceń
na komputerze zdalnym.
Ustawianie PostgreSQL
Uwaga:
Posiadacze działającej bazy PostgreSQL mogą przejść do następnej sekcji.
|
Należy dodać PostgreSQL do domyślnego poziomu uruchomieniowego, aby był
uruchamiany za każdym razem przy starcie komputera.
Listing 2.7: Dodawanie PostgreSQL do domyślnego runlevela |
# rc-update add postgresql default
|
Teraz należy przygotować PostgreSQL.
Listing 2.8: Przygotowywanie PostgreSQL |
# emerge --config postgresql
|
Następnie uruchamiamy PostgreSQL.
Listing 2.9: Uruchamianie PostgreSQL |
# /etc/init.d/postgresql start
|
Używanie bazy PostgreSQL
Po uruchomieniu bazy PostgreSQL należy utworzyć użytkownika i bazę dla Jffnms.
Listing 2.10: Tworzenie użytkownika oraz bazy danych Jffnms |
# psql template1 postgres
template1=# create user jffnms password 'jfnms' createdb;
template1=# \connect template1 jffnms
template1=# create database jffnms;
template1=# \q
|
Listing 2.11: Tworzenie tabel Jffnms |
# psql jffnms jffnms < /opt/jffnms/docs/jffnms-0.8.3.pgsql
|
Po uruchomieniu tych skryptów, PostgreSQL powinien być gotowy do współpracy z
Jffnms.
Użycie MySQL jako bazy danych dla Jffnms
Ostrzeżenie:
Instalacja i konfiguracja bazy danych MySQL nie jest zawarta w tym przewodniku.
Należy zapoznać się z Wprowadzeniem do
systemu zarządzania bazą danych MySQL.
|
W przypadku, gdy baza którą wybrano to MySQL, należy najpierw utworzyć w w niej
użytkownika a następnie tabelę:
Listing 2.12: Tworzenie tabeli mysql |
# mysql -u jffnms -pjffnms jffnms < /opt/jffnms/docs/jffnms-0.8.3.mysql
|
Wykrywanie i monitoring portów UDP
Ostrzeżenie:
Sekcja ta opisuje konfigurację i uruchamianie programów z suid. Może ona być
nieodpowiednia dla systemów, w których bezpieczeństwo ma priorytet.
|
Jeżeli chcemy, by wykrywanie i monitorowanie portów UDP funkcjonowało
poprawnie, musimy uruchomić nmap i fping jako programy SUID. W
przypadku gdy w którymś z tych programów znajdzie się błąd, może to stworzyć
dziurę w zabezpieczeniach. By uruchomić je z SUID, należy wykonać poniższe
polecenia:
Listing 2.13: Konfiguracja wykrywania i monitoringu portu udp |
# chmod +s /usr/bin/nmap ; chmod a+x /usr/bin/nmap
# chmod +s /usr/sbin/fping ; chmod a+x /usr/sbin/fping
|
3.
Konfiguracja Jffnms
Konfiguracja procesu zbierającego informacje
Proces zbierający informacje jest odpowiedzialny za pobieranie danych z hostów.
By pobierał on dane w regularnych odstępach czasu, musi zostać dodany do
crontaba.
Listing 3.1: Zbieranie danych w regularnych odstępach czasu |
# crontab -u jffnms /opt/jffnms/docs/unix/crontab
# crontab -e -u jffnms
|
Końcowe ustawienia
Od tej chwili Jffnms powinien być poprawnie zainstalowany w naszym systemie.
Jednakże musimy go jeszcze odpowiednio skonfigurować. Na szczęście, wraz z
Jffnms dostarczane jest narzędzie dostępne jako strona internetowa, które służy
do konfiguracji baz danych, zezwoleń dla użytkowników i do kontroli czy
aktualna konfiguracja zapewni Jffnms poprawne działanie. Do panelu możemy się
dostać poprzez adres: http://localhost/jffnms/admin/setup.php.
Zalogować można się używając nazwy użytkownika i hasła admin. Dodatkowo
powinniśmy odwiedzić stronę domową programu
Jffnms, aby dokładniej poznać proces konfiguracji.
4.
Wsparcie techniczne
Pomimo że Jffnms jest wspaniałym programem, nie jest prosty w instalacji. W
przypadku, gdy pojawią się problemy jest kilka miejsc gdzie można szukać
pomocy:
Materiał udostępniany na podstawie licencji Creative Commons -
Attribution / Share Alike.
|