Весьма функциональный и достаточно мощный инструмент от разработчиков HOMERа поддержка pcap для отслеживания, захвата, отображения и диагностики неполадок SIP-сигнализации по IP-сетям, позволяющий пользователю указывать расширенные регулярные выражения
Похож на grep, но только sipgrep т.е. мы имеем grep утилиту по SIP-пакетам
Ставлю:
Склонировали, если не вышло, то обновляйте GIT, особенно на старой CentOS.
Ставим
Вот тут и пошло все криво
Сначала выдало:
configure: error: sipgrep requires but cannot find libpcap
Решил:
[root@localhost sipgrep]# yum install libpcap*
Делайте так, там не одина билиотека libpcap, а с ней еще идет libpcap-devel
Потом пожаловался вот на это:
configure: error: Could not find pcre headers !
Это библиотека регулярных выражений Перла
Тоже просто: yum install pcre-devel
И после этого прошел скрипт конфигурации
И выполнили мейк инсталл
ВАЖНО:
sipgrep -h
usage: sipgrep <-ahNViwgGJpevxlDTRMmqCJjxK> <-IO pcap_dump> <-n num> <-d dev> <-A num>
<-s snaplen> <-S limitlen> <-c contact user> <-j user agent>
<-f from user> <-t to user> <-H capture url> <-q autostop cond.>
<-Q split cond.> <-P portrange> <-F file> <-z duration>
<match expression> <bpf filter>
-h is help/usage
-V is version information
-e is show empty packets
-i is ignore case
-x is disable bad parsing notification
-v is invert match
-R is don't do privilege revocation logic
-w is word-regex (expression must match as a word)
-p is don't go into promiscuous mode
-l is make stdout line buffered
-D is replay pcap_dumps with their recorded time intervals
-T is print delta timestamp every time a packet is matched
-m is don't do dialog match
-M is don't do multi-line match (do single-line match instead)
-I is read packet stream from pcap format file pcap_dump
-O is dump matched packets in pcap format to pcap_dump
-n is look at only num packets
-A is dump num packets after a match
-s is set the bpf caplen
-S is set the limitlen on matched packets
-C is no colors in stdout
-c is search user in Contact: header
-f is search user in From: header
-t is search user in To: header
-F is read the bpf filter from the specified file
-H is homer sipcapture URL (i.e. udp:10.0.0.1:9061)
-N is show sub protocol number
-g is disabled clean up dialogs during trace
-G is print dialog report during clean up
-J is kill friendly scanner automatically
-j is kill friendly scanner automatically matching user agent string
-K is kill friendly scanner providing IP and port/portrange i.e.: 10.0.0.1:5060-5090
-q is auto stop condition:
duration:NUM - stop after NUM seconds
filesize:NUM - stop this file after NUM KB
-Q is pcap_dump split condition:
duration:NUM - switch to next file after NUM secs
filesize:NUM - switch to next file after NUM KB
-a is disable packet re-assemblation
-P is use specified portrange instead of default 5060-5061
-d is use specified device instead of the pcap default
-z is make statistics count maximum <duration> seconds
У меня особенно не пошел, так как и так хватает TCPDump, Tshark, SNGrep
Но всегда приятно когда есть еще один инструмент.
Если нихотите мучаться, то ставьте как я Убунту и apt install sipgrep и все
На десктоп версии все есть и библиотеки и по дефолту в репозиториях и все что хотите, а на серверных придется разбираться подробнее и понимать что творишь в системе.
Примеры:
Показать всю SIP-сигнализацию
От user 1234567
По коду сообщения в пакете
Разработчики пишут что можно аж так, носам еще не протестировал такой функционал
Похож на grep, но только sipgrep т.е. мы имеем grep утилиту по SIP-пакетам
Ставлю:
cd /usr/src
git clone https://github.com/sipcapture/sipgrep.git
Склонировали, если не вышло, то обновляйте GIT, особенно на старой CentOS.
Ставим
cd sipgrep
./build.sh
./configure
make && make install
Вот тут и пошло все криво
Сначала выдало:
configure: error: sipgrep requires but cannot find libpcap
Решил:
[root@localhost sipgrep]# yum install libpcap*
Делайте так, там не одина билиотека libpcap, а с ней еще идет libpcap-devel
Потом пожаловался вот на это:
configure: error: Could not find pcre headers !
Это библиотека регулярных выражений Перла
Тоже просто: yum install pcre-devel
И после этого прошел скрипт конфигурации
И выполнили мейк инсталл
ВАЖНО:
sipgrep -h
usage: sipgrep <-ahNViwgGJpevxlDTRMmqCJjxK> <-IO pcap_dump> <-n num> <-d dev> <-A num>
<-s snaplen> <-S limitlen> <-c contact user> <-j user agent>
<-f from user> <-t to user> <-H capture url> <-q autostop cond.>
<-Q split cond.> <-P portrange> <-F file> <-z duration>
<match expression> <bpf filter>
-h is help/usage
-V is version information
-e is show empty packets
-i is ignore case
-x is disable bad parsing notification
-v is invert match
-R is don't do privilege revocation logic
-w is word-regex (expression must match as a word)
-p is don't go into promiscuous mode
-l is make stdout line buffered
-D is replay pcap_dumps with their recorded time intervals
-T is print delta timestamp every time a packet is matched
-m is don't do dialog match
-M is don't do multi-line match (do single-line match instead)
-I is read packet stream from pcap format file pcap_dump
-O is dump matched packets in pcap format to pcap_dump
-n is look at only num packets
-A is dump num packets after a match
-s is set the bpf caplen
-S is set the limitlen on matched packets
-C is no colors in stdout
-c is search user in Contact: header
-f is search user in From: header
-t is search user in To: header
-F is read the bpf filter from the specified file
-H is homer sipcapture URL (i.e. udp:10.0.0.1:9061)
-N is show sub protocol number
-g is disabled clean up dialogs during trace
-G is print dialog report during clean up
-J is kill friendly scanner automatically
-j is kill friendly scanner automatically matching user agent string
-K is kill friendly scanner providing IP and port/portrange i.e.: 10.0.0.1:5060-5090
-q is auto stop condition:
duration:NUM - stop after NUM seconds
filesize:NUM - stop this file after NUM KB
-Q is pcap_dump split condition:
duration:NUM - switch to next file after NUM secs
filesize:NUM - switch to next file after NUM KB
-a is disable packet re-assemblation
-P is use specified portrange instead of default 5060-5061
-d is use specified device instead of the pcap default
-z is make statistics count maximum <duration> seconds
У меня особенно не пошел, так как и так хватает TCPDump, Tshark, SNGrep
Но всегда приятно когда есть еще один инструмент.
Если нихотите мучаться, то ставьте как я Убунту и apt install sipgrep и все
На десктоп версии все есть и библиотеки и по дефолту в репозиториях и все что хотите, а на серверных придется разбираться подробнее и понимать что творишь в системе.
Примеры:
Показать всю SIP-сигнализацию
sipgrep -d any
От user 1234567
sipgrep -f 2323232
По коду сообщения в пакете
sipgrep '^SIP/2.0 603' -m
Показывать только сообщения OPTIONS and NOTIFY в отчете
sipgrep '^(OPTIONS|NOTIFY)'
Разработчики пишут что можно аж так, носам еще не протестировал такой функционал
#Kill friendly-scanner
sipgrep -J
#Kill friendly-scanner with custom UAC
sipgrep -j sipvicious
#collect all Calls/Regisrations untill pcap_dump smaller than 20 KB.
sipgrep -q 'filesize:20' -O sipgrep.pcap
#collect all Calls/Regisrations dialogs during 120 seconds, print reports and exit.
sipgrep -g -G -q 'duration:120'
#split pcap_dump to 20 KB files in sipgrep_INDEX_YYYYMMDDHHMM.pcap
sipgrep -Q 'filesize:20' -O sipgrep.pcap
#split pcap_dump in sipgrep_INDEX_YYYYMMDDHHMM.pcap each 120 seconds
sipgrep -Q 'duration:120' -O sipgrep.pcap
Комментариев нет:
Отправить комментарий