czwartek, 29 stycznia 2009

Logowanie ruchu sieciowego

Jeśli mamy router na Linux'ie możemy sobie poradzić czymś takim:

tcpdump -i eth1 -t -q tcp[tcpflags]=tcp-syn | awk -v TIME="date +'%Y:%m:%d.%T'" 'function Time(t){ TIME | getline t; close(TIME); return t }{print Time() " " $2 " > " $4}' >> net.log

Z pliku tworzonego w powyższy sposóp np. możemy wyciągnąć listę miejsc z którymi nawiązano połączenie:

cat net.log | grep SPRAWDZANY_HOST | awk '{print $4}' | sort | uniq -c

Ewentualnie możemy odfiltrować za pomocą grep'a: np. grep -v "http\|pop3" albo grep -v "google\|gadu"

Brak komentarzy:

Prześlij komentarz

Archiwum bloga