Linux: Слушаем сетевые интерфейсыВ среде Linux Ubuntu есть два наиболее распространенных способа слушать сетевой трафик. Первый - всем известная консольная утилита tcpdump. Второй - известная не только Linux но и Windows пользователям утилита Wireshark.

[ad#ad-2]
Начнем с консольной утилиты tcpdump. tcpdump служит для создания дампа проходящего через интерфейс пакетов. Т.е. позволяет нам на нашем сервере записывать весь сетевой трафик. Если Ты админ - тебе рано или поздно придется этим заниматься.
Пример использования.

sudo  tcpdump -i eth2 'udp port 53'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 96 bytes
17:57:33.140121 IP tester.2464 > relay.testDNS.ua: 4+ A? ya.ru. (23)
17:57:33.141210 IP tester.43571 > relay.testDNS2.ua: 24611+ PTR? 2.160.91.80.in-addr.arpa. (42)
17:57:33.141349 IP relay.testDNS2.ua > tester.43571: 24611 3/0/0[|domain]
17:57:33.141657 IP tester.54703 > relay.testDNS2.ua: 17053+ PTR? 27.1.0.10.in-addr.arpa. (40)
17:57:33.141767 IP relay.testDNS2.ua > tester.54703: 17053* 1/0/0 (75)
17:57:33.141803 IP relay.testDNS.ua > tester.2464: 4 3/2/2 A 213.180.204.8,[|domain]
^C
6 packets captured
8 packets received by filter
0 packets dropped by kernel
korleone@dg-butenkoivan:~$

В данном примере мы записываем весь трафик на 53 порту (на нем работает DNS). В нашем случае компьютер пользователя запрашивал DNS об ip адресе сайта ya.ru

При помощи tcpdump можно записывать все пакеты какого либо компьютера.
Попробуем записать пакеты от нашего тестового рабочего места до нашего сайта.

sudo tcpdump -i eth2 'dst 80.91.180.142'
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 96 bytes
18:05:20.660179 IP tester.2515 > feyhoa.org.ua.www: Flags [S], seq 1694778942, win 65535, options [mss 1460,nop,nop,sackOK], length 0
18:05:20.661400 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 1238270054, win 65535, length 0
18:05:20.661676 IP tester.2515 > feyhoa.org.ua.www: Flags [P.], seq 0:1232, ack 1, win 65535, length 1232
18:05:21.377108 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 2761, win 65535, length 0
18:05:21.379201 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 5521, win 65535, length 0
18:05:21.381451 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 8281, win 65535, length 0
18:05:21.425255 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 9882, win 65535, length 0
18:05:21.425387 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 11262, win 65535, length 0
18:05:21.425617 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 14022, win 65535, length 0
18:05:21.427239 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 16782, win 65535, length 0
18:05:21.445230 IP tester.2517 > feyhoa.org.ua.www: Flags [S], seq 3526801635, win 65535, options [mss 1460,nop,nop,sackOK], length 0
18:05:21.446515 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 1213521906, win 65535, length 0
18:05:21.446588 IP tester.2517 > feyhoa.org.ua.www: Flags [P.], seq 0:1229, ack 1, win 65535, length 1229
18:05:21.487736 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 18236, win 65535, length 0
18:05:21.487822 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 19616, win 65535, length 0
18:05:21.488152 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 22376, win 65535, length 0
18:05:21.488374 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 24970, win 65535, length 0
18:05:21.551350 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 27730, win 65535, length 0
18:05:21.551667 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 30490, win 65535, length 0
18:05:21.551839 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 33008, win 65535, length 0
18:05:21.682006 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 35768, win 65535, length 0
18:05:21.682268 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 38528, win 65535, length 0
18:05:21.682499 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 41288, win 65535, length 0
18:05:21.682701 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 44048, win 65535, length 0
18:05:21.682832 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 45554, win 65535, length 0
18:05:21.779630 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 48314, win 65535, length 0
18:05:21.910999 IP tester.2515 > feyhoa.org.ua.www: Flags [.], ack 48463, win 65386, length 0
18:05:22.241123 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 2761, win 65535, length 0
18:05:22.243323 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 5521, win 65535, length 0
18:05:22.244948 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 8281, win 65535, length 0
18:05:22.245053 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 9538, win 64278, length 0
18:05:22.297119 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 12298, win 65535, length 0
18:05:22.297414 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 15058, win 65535, length 0
18:05:22.299352 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 17691, win 65535, length 0
18:05:22.358253 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 20451, win 65535, length 0
18:05:22.514459 IP tester.2517 > feyhoa.org.ua.www: Flags [.], ack 20681, win 65305, length 0
^C
36 packets captured
64 packets received by filter
0 packets dropped by kernel

Для того что бы полученная информация не выдавалась на экран а записывалась в файл надо выполнять команду с таким параметром

sudo tcpdump -i eth2 'dst 80.91.180.142' >> 1.txt

Так же для прослушивания сетевого трафика можно воспользоваться утилитой Wireshark. В Ubuntu Linux для ее установки надо выполнить следующее

sudo aptitude install wireshark

После окончания установки запустим ее. Для работы она требует права привелегированного пользователя.

sudo wireshark

В открывшемся окне можно выбрать какой интерфейс слушать (или же выбрать сразу все интерфейсы). Так же можно настроить разнообразнейшие фильтры. Записывать собранные данные в файл, открывать файлы с данными для последующего изучения. И очень многое.
В данной статье мы пожалуй не будем останавливаться подробно на утилите wireshark. На сайте разработчиков есть очень много документации, учебного видео. Не смотря на то что вся информация на английском языке разобраться в ней не составит особого труда для заинтересовавшихся. Мы же покажем несколько скриншотов программы:
Ubuntu Wireshark_ Capture Options
ubuntu The Wireshark Network Analyzer

Теги: