Ntop

A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(ntop)
(ntop)
145. sor: 145. sor:
 
Az ntop egy hálózat monitorozó, amelynek segítségével figyelni tudjuk a hálózat aktuális használtságát. Megjeleníti azokat a hoszt neveket, akik éppen használják a hálózatot és megnézhetjük az egyes hosztok által generált, ill. fogadott forgalmat (cél és forrás szerint: ki kivel kommunikál?). A program által elkapott csomagok megjelenítésére egy web böngészőre is szükségünk van a webes admin felület miatt. Az Ntop egy kollektor program, amely a beküldött információ feldolgozására képes. Az adat lehet [[NetFlow]] adat , de ehhez NetFlow adatok kibocsájtására képes routerre van szükszégünk. Alapesetben pedig ntop egy virtuális Netflow-t valósít meg pl. az eth0-ás interfész figyelésével. Ha a szerver gépünkre telepítjük az Ntop-ot akkor megfigyelhetjük kik kapcsolódnak hozzánk és mekkora forgalmat bonyolítanak le. Az elkapott forgalomból statisztika szerkeszthető, a tartós forgalomról készült statisztika mentésére is képes. Számos protokollt támogat (IPv4/IPv6, IPX, AppleTalk, Netbios, OSI, DLC stb.) ezekre külön szűrni is lehet. Működik Linux, FreeBSD, Solaris, MAC és Windows (kivéve Vista) alatt is. A program a háttérben elfut nem zavar minket a munkavégzésben.
 
Az ntop egy hálózat monitorozó, amelynek segítségével figyelni tudjuk a hálózat aktuális használtságát. Megjeleníti azokat a hoszt neveket, akik éppen használják a hálózatot és megnézhetjük az egyes hosztok által generált, ill. fogadott forgalmat (cél és forrás szerint: ki kivel kommunikál?). A program által elkapott csomagok megjelenítésére egy web böngészőre is szükségünk van a webes admin felület miatt. Az Ntop egy kollektor program, amely a beküldött információ feldolgozására képes. Az adat lehet [[NetFlow]] adat , de ehhez NetFlow adatok kibocsájtására képes routerre van szükszégünk. Alapesetben pedig ntop egy virtuális Netflow-t valósít meg pl. az eth0-ás interfész figyelésével. Ha a szerver gépünkre telepítjük az Ntop-ot akkor megfigyelhetjük kik kapcsolódnak hozzánk és mekkora forgalmat bonyolítanak le. Az elkapott forgalomból statisztika szerkeszthető, a tartós forgalomról készült statisztika mentésére is képes. Számos protokollt támogat (IPv4/IPv6, IPX, AppleTalk, Netbios, OSI, DLC stb.) ezekre külön szűrni is lehet. Működik Linux, FreeBSD, Solaris, MAC és Windows (kivéve Vista) alatt is. A program a háttérben elfut nem zavar minket a munkavégzésben.
   
A piacon létezik olyan termék is (nbox néven) amely az adat gyűjtést és feldolgozást is elvégzi. Két fő része az nProbe és az ntop és egy kiegészítő az n2disk. Az nProbe egy firmware a routerekben van elhelyezve és ez küldi be az adatokat az ntop pedig feldolgozza őket és a végtermékük pedig egy Nbox szerver amely figyeli az eszközöket és az általuk küldött adatokból szép, csinos webböngészővel megcsodálható monitorozást biztosít nekünk. A kiegészítő az n2diszkkel pedig a szerverünk és többi gép terhelését tudjuk figyelni.
+
A piacon létezik olyan termék is (nbox néven) amely az adat gyűjtést és feldolgozást is elvégzi. Két fő része az nProbe és az ntop és egy kiegészítő az n2disk. Az nProbe egy firmware a routerekben van elhelyezve és ez küldi be az adatokat az ntop pedig feldolgozza őket és a végtermékük pedig egy Nbox szerver amely figyeli az eszközöket és az általuk küldött adatokból szép, csinos webböngészővel megcsodálható monitorozást biztosít nekünk. A kiegészítő az n2diszkkel pedig a szerverünk és többi gép terhelését tudjuk figyelni (memória felhasználás, I/O műveletek stb.).
   
 
=== Telepítés ===
 
=== Telepítés ===

A lap 2010. december 5., 15:04-kori változata

Tartalomjegyzék

1 vmstat (virtual memory statistics)

A vmstat egy olyan UNIX és UNIX jellegű (Linux, FreeBSD, Solaris) operációs rendszerben lévő rendszermonitorozó program, a virtuális memória használatáról tud különféle statisztikákat, kimutatásokat készíteni. Megmutatja, mennyi virtuális memóriánk van összesen, ebből mennyi szabad, illetve összefoglalja a lapkezeléssel kapcsolatos eseményeket. A legfontosabb azonban az, hogy segítségével a be- és kilapozásokat már megtörténésük pillanatában érzékelni tudjuk, azaz közel valós időben felügyelhetjük vele rendszerünk aktivitását. Ez pedig egy nagyon hasznos képesség.

Szintaktika:

      vmstat [-a] [-n] [delay [ count]]
      vmstat [-f] [-s] [-m]
      vmstat [-S unit]
      vmstat [-d]
      vmstat [-p disk partition]
      vmstat [-V]

Kapcsolók:

-V	verzió információ
-a	megjeleníti az aktív és inaktív memóriát (2.5.41 kernel kell hozzá vagy jobb),	
-n	a headereket csak egyszer jeleníti meg nem nyomtatja ki a képernyőre periodikusan,
-s	több fontos számláló és memória statisztikák megjelenítése (ez a megjelenítés nem ismétlődik) például: total memory, used memory, system CPU ticks stb.,
-m	rendszermag memóriahasználatáról (/proc/slabinfo) információ megjelenítése
-S unit	k, K, m, M kapcsolók után következhet kimenetek értéke: 1024, 1000000, vagy 1048576 byte,
-d	diszkünk vagy diszkjeink statisztikáját jeleníti meg pl. partíciók száma, mérete,
-p disk partition 	a partíciót nevét beírva információt kaphatunk a partícióról.	
delay [ count]]	delay segítségével beállíthatjuk, hogy hány másodpercenként kérjünk frissítést a kijelzésre, a count pedig a frissítések számát adja meg (ha nem adunk meg count értéket, akkor a default count érték végtelen). 

Írjuk be a terminálba a vmstat-ot! Az eredmény:

procs -----------memory---------- ---swap-- -----io---- -system-- -----cpu------
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
2  1 290316  14608   3132 163900   43   61   521   132 1662 3650 24 22 47  6  0

és a magyarázat:

Proceszek:
r: futási időre váró processek száma
b: (a nem megszakítható) alvó processek száma
Memória:
swpd: A felhasznált virtuális memória
free: A rendelkezésre álló memória.
buff: A pufferek által használt memória.
cache: cache-ként használt memória.
inact: inaktív memória.(-a kapcsoló használatakor jelenik meg)
active: aktív memória. (-a kapcsoló használatakor jelenik meg)
Swap:
si: A lemeztől becserélt memória /s
so: A lemeznek kiutalt memória (/s).
IO:
bi: Az eszköztől fogadott blokkolások száma (blocks/s).
bo: Az eszközöknek küldött blokkolások száma (blocks/s).
Rendszer:
in: megszakítás kérések száma egy másodperc alatt.
cs: context váltások száma másodpercenként
CPU- A teljes CPU idő %-ban kifejezve:
      us: a nem kernel kódra fordított idő,
      sy: a kernel kódra fordított idő,
      id: rendelkezésre álló idő (beleértve az I/O-várás idejét),
      wa: az I/O-várás ideje

2 Netstat

A netstat egy parancssori, hálózati program arra, hogy megnézzük a hálózati konfigurációt és annak aktivitását. Képes mind a kimenő, mind a bejövő hálózati forgalom, a routing táblák és a hálózati interfészek statisztikájának megjelenítésére.

Kapcsolók (csak a fontosabbak):

-nr	routing táblák kiíratása,
–n     kapcsolóval íratja ki a címeket, ponttal elválasztott formátumban, hoszt- és hálózati nevek helyett.
-i	a felkonfigurált hálózati interfészekről jelenít meg információt
-g	IPv4 és IPv6 multicast csoporttagságról jelenít meg információt,
-s	Minden egyes protokollról (IP, TCP, SNMP stb.)készít egy összefoglalót
-M	a maszkolt kapcsolatok kilistázása(Ip maszkolás például),
-l	a „hallgatózó” szerver socketek kilistázása,
-ta,   Ezek a kapcsolók megmutatják az aktív TCP,UDP,RAW vagy Unix socket kapcsolatokat. Ha „a”-t írunk utána akkor a kapcsolatra
-ua,   váró socketeket is megjeleníti.
-wa,
-xa

3 IPTraf

Az IPTraf egy nyílt forráskódú szoftver, amellyel monitorozható az IP hálózat és a jónéhány fontos protokoll a számítógépünkön. Ez egy tisztán szoftveres analizátor így csak a kernel által definiált interfészek figyelésére képes. Szűröket állíthatunk be, hogy csak az általunk kiválasztott protokollt figyelje a program.

Alkalmazható az alábbi protokollokra:

      •	User Datagram Protocol (UDP)
      •	Internet Control Message Protocol (ICMP)
      •	Open Shortest-Path First (OSPF)
      •	Interior Gateway Routing Protocol (IGRP)
      •	Interior Gateway Protocol (IGP)
      •	Internet Group Management Protocol (IGMP)
      •	General Routing Encapsulation (GRE)
      •	Address Resolution Protocol (ARP)
      •	Reverse Address Resolution Protocol (RARP)

Támogatott hálózati interfészek: lo, ethn, fddin, trn, pppn, slin, ipppn, isdnn, plipn, ipsecn, sbnin, dvbn, sm200, sm300, wlann, wvlann, hdlcnpvc.

Telepítése, elindítása:

1. Letölthető az alábbi helyről:

ftp://iptraf.seul.org/pub/iptraf/

2. Bontsuk ki (terminál ablakban):

tar zxvf iptraf-x.y.z.tar.gz

3. Lépjünk a / könyvtárba, majd./Setup (csak rootként engedi)

4. A telepítés végén, a programunk megtalálható a /usr/local/bin könyvtárban

5. A terminál ablakba csak írjuk be, hogy iptraf.

Ekkor egy "grafikus" kezelőfelületet kapunk, de használhatjuk terminálból is a következő kapcsolók segítségével:

-i iface	A iface helyére a figyelni kívánt interfész nevét írjuk pl. eth0. Így azonnal elindul az eth0 interfész figyelése.
-g		az interfészek alap statisztikáját írja ki.
-d iface	a kiválasztott interfészről közöl adatokat pl. bejövő, kimenő IP csomagok száma, bejövő/kimenő TCP/UDP szegmensek
-s iface	a kiválasztott interfész TCP/UDP forgalmának monitorozása.
-z iface	csomagméret szerint csoportosítja a forgalmat.
-l iface	LAN állomás monitorozása (ha minden LAN interfészt monitorozni szeretnénk, akkor –l all)
-t timeout	hány percig fusson a mérés, ha ezt nem állítjuk be a menüs mérés során az első gomb nyomásig mér,
-B	        a terminál ablakot a háttérbe küldi, így közbe nyugodtan folyhat a munka, míg ő mér. 
                Ez a beállítás csak a -i, -g, -d, -s, -z, -l paraméterekkel együtt érvényes,
–h	        segítség a programhoz.

4 ntop

Az ntop egy hálózat monitorozó, amelynek segítségével figyelni tudjuk a hálózat aktuális használtságát. Megjeleníti azokat a hoszt neveket, akik éppen használják a hálózatot és megnézhetjük az egyes hosztok által generált, ill. fogadott forgalmat (cél és forrás szerint: ki kivel kommunikál?). A program által elkapott csomagok megjelenítésére egy web böngészőre is szükségünk van a webes admin felület miatt. Az Ntop egy kollektor program, amely a beküldött információ feldolgozására képes. Az adat lehet NetFlow adat , de ehhez NetFlow adatok kibocsájtására képes routerre van szükszégünk. Alapesetben pedig ntop egy virtuális Netflow-t valósít meg pl. az eth0-ás interfész figyelésével. Ha a szerver gépünkre telepítjük az Ntop-ot akkor megfigyelhetjük kik kapcsolódnak hozzánk és mekkora forgalmat bonyolítanak le. Az elkapott forgalomból statisztika szerkeszthető, a tartós forgalomról készült statisztika mentésére is képes. Számos protokollt támogat (IPv4/IPv6, IPX, AppleTalk, Netbios, OSI, DLC stb.) ezekre külön szűrni is lehet. Működik Linux, FreeBSD, Solaris, MAC és Windows (kivéve Vista) alatt is. A program a háttérben elfut nem zavar minket a munkavégzésben.

A piacon létezik olyan termék is (nbox néven) amely az adat gyűjtést és feldolgozást is elvégzi. Két fő része az nProbe és az ntop és egy kiegészítő az n2disk. Az nProbe egy firmware a routerekben van elhelyezve és ez küldi be az adatokat az ntop pedig feldolgozza őket és a végtermékük pedig egy Nbox szerver amely figyeli az eszközöket és az általuk küldött adatokból szép, csinos webböngészővel megcsodálható monitorozást biztosít nekünk. A kiegészítő az n2diszkkel pedig a szerverünk és többi gép terhelését tudjuk figyelni (memória felhasználás, I/O műveletek stb.).

4.1 Telepítés

Telepítése (csomagból egyszerűen):

sudo apt-get install ntop –y

4.2 Használat

A terminál ablakból egyszerűen az alábbi parancsokkal indíthatjuk el és állíthatjuk meg:

sudo /etc/init.d/ntop start
sudo /etc/init.d/ntop restart
sudo /etc/init.d/ntop stop

Jelszó beállítási lehetőség:

sudo ntop --set-admin-password

Továbbá képes naplófájlok készítésére. Ezek az Apache naplófájljához hasonlítanak:

192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] - "GET / HTTP/1.1" 200 1489 4
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /index_top.html HTTP/1.1" 200 1854 4
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500]] "GET /index_inner.html HTTP/1.1" 200 1441 7
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /index_left.html HTTP/1.1" 200 1356 4
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500]] - "GET /home_.html HTTP/1.1" 200 154/617 9
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /home.html HTTP/1.1" 200 1100/3195 10
192.168.4.127 - - [04/Nov/2010:10:11:20 -0500] "GET /About.html HTTP/1.1" 200 2010 10

A böngészőbe írjuk be, hogy:

http://localhost:3000

5 httperf

A httperf segítségével mérhetjük a webszerverünk teljesítményét. Képes a HTTP/1.0 és HTTP/1.1 protokoll megértésére, és képes változatos terhelés generálásra. Futása közben számos teljesítmény jellemzőt rögzít majd a teszt végén az összegzést adja a kijelzőre. A legegyszerűbb művelete, hogy fix számú HTTP GET kéréssel bombázza a szervert, majd megméri hány válasz jön a szervertől rá és milyen rátával érkeznek ezek a válaszok. A mérés végeztével egy összesítő statisztikát jelenít meg a terminál ablakban. MEGJEGYZÉS: ha helyes eredményeket akarunk kapni, akkor lehetőleg egy httperf processt futassunk a kliens gépen és csak néhány háttérben futó process legyen, mind a szerver mind a kliens gépen.

Telepítés: töltsük le a legújabb verziót: http://sourceforge.net/projects/httperf/

A legegyszerűbb eset:

httperf −−hog −−server www

Ezzel a paranccsal létrehozunk egy kapcsolatot a hoszt és a kliens között, majd a kérésre adott választ figyeljük. A válasz beérkezése után lezárjuk a kapcsolatot. A www helyére kell beírni a vizsgált szerver hosztnevét vagy az IP címét. A kapott eredményekről a program egy statisztikát készít a mérés végeztével. A −−hog kapcsolóval annyi TCP portot használunk, amennyire szükség van, ha nem használjuk a program csak az 1024-5000 terjedő portok közül választ, ám ezek sok kapcsolat esetén hamar elfogyhatnak (ha például 4000 kapcsolódási kísérletet szeretnénk elindítani és mindegyiket külön portról akkor kifogynánk a rendelkezésre álló portokból).

Bővítések: Természetesen számos egyéb paraméter finom hangolható. Tekintsük meg a leglényegesebbeket:

−−add−header=S	 

Az S sztringet additív headerként tekinti, ami hozzáfűzhető a kérés fejrészéhez. Így több kérést is lehet küldeni egy fejrészben pl.: −−add−header "Referer: foo\nAuth: secret\n". Ebben az esetben minden kéréshez két fejrészt ad: „Referer” és „Auth”.

−−no−host−hdr	     A kliens HTTP kérése nem tartalmaz Hoszt fejrészt.
−−http−version=S    Az S sztringgel adhatjuk meg a HTTP protokoll verzióját. Alapállapotban 1.1-es verziót használ.
−−close−with−reset  A httperf  egy RESET küldéssel zárja le a TCP kapcsolatokat, a szokásos TCP hand shake-es
                    kapcsolat lezárás helyett.
−−max−connections=N Sessiönönként N darab kapcsolat lehet maximum.
−−method=S	     Ezzel állíthatjuk, hogy a HTTP kérésben milyen metódus legyen.Alapértelmezetten a GET-et használja. 
                    A következő metódusok elfogadottak(GET, HEAD, PUT és POST).
−−num−conns=N	     Maximum N darab kapcsolatot hozható létre a szerverrel. 
−−period=[D]T1[,T2] 

A kapcsolatok és sessiönök generálása közötti idő intervallum állítására szolgál. A D paraméter a kapcsolat/sessiön kérés érkezések eloszlása. Ha a D betű helyére „d”-t írunk akkor az determinisztikus kérés generálást jelent, „e”- exponenciális, „u”-t akkor egyenletes eloszlás T1 és T2 időintervallum között.

−−port=N	    

A Webszerver ezen a porton hallgatja a HTTP kéréseket. Alapértelmezetten a 80-as portot figyeli. Ha csak a kliens gépen használjuk a httperf-et akkor ez a beállítás lényegtelen.

−−print−reply[=[header|body]] és −−print−request[=[header|body]]

A kérés és a válasz fejrészének, vagy testének kinyomtatása a standard outputra.

−−rate=X	     Fix rátával (X) készüljenek az igények és sessiönök.
−−recv−buffer=N      A HTTP válaszokra szánt maximális puffer méret. Alapértelmezetten ez 16KB.
−−send−buffer=N      A HTTP kérésekre szánt maximális puffer méret. Alapértelmezetten ez 4KB.
−−server=S	     A Szerver (amit le szeretnénk tesztelni) hosztneve  vagy IP címe.  Ezt mindig kötelező megadni.
−−server−name=S      A kérés során a HTTP fejrész „Host” mezejébe ezt a szerver nevet írja a httperf.
−−session−cookie     Süti menedzselés engedélyezése.
−−ssl	             A httperf és a szerver közti kommunikáció SSL protokoll által biztosított.
−−ssl−ciphers=L 

Ha használnunk SSL protokollt, akkor az L paraméter helyére beírhatjuk a httperf által használt kulcsokat kettősponttal elválasztva egymástól. Ha szerver nem fogadja el ezeket a kulcsokat akkor a kapcsolat meghiúsul és a program kilép azonnal.

−−ssl−no−reuse	      Ha az SSL kapcsolat létrejött a kliens fogadja a szerver által küldött sessiön azonosítót (session id).
−−timeout=X	      X másodpercig ideig vár a szerver válaszára a httperf.
--wsess 1,2,3	      

Ezzel az opcióval több paramétert is finomhangolhatunk:1. a kapcsolatok száma, 2. kérések száma kapcsolatonként,3. a két küldési börszt közti várakozási idő.

−−version	      A httperf verzióját írja ki.
Személyes eszközök