Navod na spustenie meracej platformy BasicMeter
Je niekolko sposobov ako rozbehat
BasicMeter. Ako prve si musime uvedomit, ci ho chceme spustit na vlastnom pocitaci (localhost), alebo na nejakom servri (napr. qos-meter.cnl.tuke.sk).
!!!!! Jednotlive komponenty meracej platformy treba spustat v nasledovnom poradi: kolektor > exporter > analyzujuca aplikacia !!!!!
Spustenie BM na localhoste pomocou Live CD
Ak ste sa rozhodli pre spustenie BM na localhoste, odporucam vam pouzit spustitelne tzv. Live CD, ktore je stiahnutelne na
http://qos-dev.cnl.tuke.sk/svn/BasicMeter/Releases/v0.9/ . Image subor .iso musi byt napaleny ako tzv. boot cd. Po vlozeni media do CD mechaniky sa automaticky nacita distribucia operacneho systemu Ubuntu Linux s predinstalovanymi potrebnymi komponentmi, kniznicami, databazou a vsetkym potrebnym pre spravny chod celej meracej platformy. System pre svoj chod nevyzaduje instalaciu, avsak v tomto pripade budu po restarte pocitaca vsetky zmenene udaje, a teda aj namerane data, stratene. Preto sa pre dlhodobejsie pouzivanie systemu odporuca jeho instalacia, ktora je mozna z tohto CD.
LiveCD :
Vsetky potrebne veci su na ploche, vratane dokumentacie.
Kolektor :
Pred spustenim programu je potrebne najprv ho nakonfigurovat. To sa vykona editaciou konfiguracneho suboru JXColl.conf.
Program sa spusti zadanim konzoloveho prikazu:
$ cd /home/bm/Desktop/JXColl_3.1/dist/
$ java -jar JXColl_3.1.jar JXColl.conf
Zakladne nastavenia pre kolektor (JXColl.conf), default hodnoty:
listening port, na ktorom prijima data od exportera: 4739
Direct Connection:
dcport: 2138
dclogin: bm
dcpassword: bm
PostgreSQL export:
pgdbHost: 127.0.0.1
pgdbPort: 5432
pgdbName: bm2
pgdbLogin: bm
pgdbPassword: bm
Exporter :
Pred spustenim programu je potrebne najprv ho nakonfigurovat. To sa vykona editaciou konfiguracneho suboru config.xml. Pre spustenie programu su potrebne prava administratora - root (pass: bm) , z toho dovodu ze beem potrebuje prepnut sietovu kartu do promiskuitneho modu.
Program sa spusti zadanim konzoloveho prikazu:
$ cd /home/bm/Desktop/mybeem/
$ sudo ./beem
Zakladne nastavenia pre exporter (config.xml), default hodnoty:
interface, na ktorom sa meria prevadzka: eth0
host, na ktorom bezi kolektor: 127.0.0.1
port, na ktorom pocuva kolektor: 4739
Analyzujuca aplikacia:
System pre detekciu narusenia siete je webova aplikacia. Spustime ho tak, ze do internetoveho prehliadaca zadame adresu
http://[IP adresa servera]:8080/bm_IDS. V nasom pripade to bude
http://127.0.0.1:8080/bm_IDS.
Modul uctovania (Analyzer_acc) je desktopova aplikacia dodavana vo forme spustitelneho jar archivu. Spustime ho pravym tlacidlom mysi -> "Open with Sun Java 6 Runtime".
Prihlasovacie udaje na pripojenie k databaze:
IP/Host: localhost (alebo 127.0.0.1)
Port: 5432
DB name: bm2
User: bm
Password: bm
Moze sa stat, ze internetovy prehliadac sa nedokaze pripojit na 127.0.0.1:8080. Znamena to, ze sa automaticky nespustil server Apache Tomcat. Manualne ho spustime spustenim suboru s nazvom "start Tomcat", ktory sa nachadza na ploche. Ak by z nejakeho dovodu ani to nepomohlo, najspolahlivejsim sposobom je spustit ho v konzole prikazom:
$ sudo /usr/local/tomcat/bin/startup.sh
Nahlad do databazy
Pre nahlad do databazy, do ktorej kolektor posiela data o IP tokoch, je potrebne zadat nasledujuce konzolove prikazy:
$ psql -h 127.0.0.1 -d bm2 -U bm //pripojenie na postgresql databazu, pass: bm
$ \dt //zobrazi zoznam tabuliek
$ \q //ukonci pracu s databazou
nasledne mozu byt zadavane sql prikazy, napr:
select count (*) from records_main;
Spustenie BM na localhoste bez Live CD
Pred spustenim je nutne editovat vsetky konfiguracne subory!
Pre uspesne skompilovanie, spustenie a beh programu je nevyhnutné nasledujuce programove vybavenie:
Kolektor:
- Java Virtual Machine (JVM)
- Java Runtime Environment (JRE)
- kniznice Log4J , Xerces, Xerces DOM3
- ovladace pre databazove systemy PostgreSQL a MySQL
program sa spusta v konzole príkazom:
java –jar JXColl.jar JXColl.conf
Exporter:
- operacny system Linux s verziou jadra 2.4, alebo vyssou
- prekladac z jazyka C, gcc verzie 3.3 alebo vyssej - na preklad zdrojovych suborov
- kniznica libpcap 0.8.3 alebo vyssia
- knižnica libXML 2.6.23 alebo vyssia
kompilacia zo zdrojovych kodov sa vykona pomocou:
make clean
make
program sa spusti pomocou
sudo ./beem
Analyzujuce aplikacie:
System pre detekciu narusenia siete
Modul uctovania (Analyzer_acc)
- Java Virtual Machine (JVM)
- Java Runtime Environment (JRE)
spracovane vdaka laskavemu suhlasu Dalibora Kudlu k pouzitiu materialov z jeho diplomovej prace :D
Spustenie BM na servri
Pre spustenie BM na servri pouzijeme napr. server qos-meter.cnl.tuke.sk. Postupuje sa rovnako ako v pripade
Spustanie BM na localhoste bez LiveCD , netreba zabudnut spravnu editaciu konfiguracnych suborov. Pre spustenie exportera sa vyzaduju administratorske prava (root) na server!
Dlhodobe spustenie BM na servri (s vyuzitim prikazu screen):
Ak chcete spustit BM na servri dlhodobo, to znamena zabezpecit aby po vasom odhlaseni zo servra ostali bezat procesy java(JXColl_3.1) a beem(mybeem), musite pouzit prikaz screen a postupovat nasledovne:
1.) spustit terminal a pripojit sa na server
2.) spustit screen managera pomocou prikazu
$ screen
3.) pomocou Ctrl-a-c (pripadne Ctrl-a Ctrl-c) vytvorit nove okno terminalu
4.) v tomto okne spustit JXColl_3.1:
$ java -jar JXColl_3.1.jar JXColl.conf
5.) opakovat bod 3.) a spustit mybeem:
$ sudo ./beem a pripojit sa na databazu:
$ psql -h 127.0.0.1 -d bm2 -U bm
6.) vytvorit nove okno (Ctrl-a-c) v nom napisat prikaz
$ screen -ls Tento prikaz nevytvori dalsi screen, ale vypise zoznam
pid.tty.host retazcov, ktore identifikuju vase screen sessions. Sessions oznacene ako 'attached' aktualne bezia vo vasom terminali. Tie, ktore su oznacene ako 'detached' su sice aktivne, no nebezia vo vasom terminali, mozu byt obnovene/pripojene/attached-nute pomocou priakazu
$ screen -r [pid.tty.host]. Vas screen je v tejto chvili 'attached'.
7.) odpojit screen session pomocou prikazu
$ screen -d [pid.tty.host] alebo len
$ screen -d [pid]. Vas screen session je v tejto chvili 'detached'
8.) pomocou prikazu
$ top pripadne
$ sudo top mozete skontrolovat, ze procesy screen, java(JXColl_3.1) a beem(mybeem) stale bezia na servri
9.) mozete sa logout-nut zo servra
__________________________________________
10.) spustit terminal a pripojit sa na server
11.) pomocou prikazu
$ top pripadne
$ sudo top mozete skontrolovat, ze procesy screen, java(JXColl_3.1) a beem(mybeem) stale bezia na servri
12.) vylistovat zoznam beziacich screen sessions pomocou
$ screen -ls
13.) attached-nut vasu screen session pomocou
$ screen -r [pid.tty.host]
_________________________________________
uzitocne kombinacie klaves:
Ctrl-a-c: vytvori nove okno v screen session
prepinanie medzi oknami:
- Ctrl-a-p: previous okno
- Ctrl-a-n: next okno
kompletny manual prikazu screen:
http://linuxreviews.org/man/screen
--
RastislavKudla - 26 Oct 2009