Ntop

A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(IPTraf)
(IPTraf)
122. sor: 122. sor:
 
4. A telepítés végén, a programunk megtalálható a /usr/local/bin könyvtárban
 
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
+
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:
 
Ekkor egy "grafikus" kezelőfelületet kapunk, de használhatjuk terminálból is a következő kapcsolók segítségével:

A lap 2010. november 7., 15:37-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 libcap alapú hálózat monitorozó, amelynek segítségével figyeli 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 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.

Telepítése: sudo apt-get install ntop –y

Indítása, újraindítása, megállítása:

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 Web szerver 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