Добрый день,
У меня в сети имеется свич с настроенным портом мониторинга, через который я делаю дамп всего web-трафика в файлы для последующего анализа командой:#tcpdump -s0 port 80 or port 443 -Zroot -C300 -W100 -w/tmp/capture_`date +%D.%M`.raw
Вопрос: кто как анализирует полученные данные (предпочтительно из командной строки)?
Например, мне надо узнать кто из пользователей заходил на "google.com" и в котором часу...
Я могу посмотреть, заходили ли с определенного адреса на вышеуказанный ресурс (примерно так):#tcpdump -r/tmp/capture_file.raw -Ann | grep -i referer | grep google.com
Но не могу сказать кто точно заходил. Тогда делаю:
tcpdump -r/tmp/capture_file.raw -Ann host 192.168.1.11 | grep -i referer | grep google.com
Узнаю заходил ли конкретный хост на гугль, но не вижу времени входа...
Одним словом, все эти приемы как-то не эфективны, и отнимают много времени.
Может кто-то поделится своим опытом в данной ситуации?Заранее благодарен.
обычно для этих целей применяется что-то вроде netflow
собирать полный дамп трафика слишком накладно получается
> обычно для этих целей применяется что-то вроде netflow
> собирать полный дамп трафика слишком накладно получаетсяТут, как говорится, с начальством не поспоришь...
Сказали дампить весь трафик, что я и делаю.. :-(P.S. Какую бесполезную информацию можно сопкойно исключить из дампов? Т.е цель всего этого мероприятия создать себе возможность в любое время отследить кто куда посылал файл, с каким паролем заходил в соц-сеть, с кем и о чем переписывался по аське и т.д.
>> обычно для этих целей применяется что-то вроде netflow
>> собирать полный дамп трафика слишком накладно получается
> Тут, как говорится, с начальством не поспоришь...
> Сказали дампить весь трафик, что я и делаю.. :-(
> P.S. Какую бесполезную информацию можно сопкойно исключить из дампов? Т.е цель всего
> этого мероприятия создать себе возможность в любое время отследить кто куда
> посылал файл, с каким паролем заходил в соц-сеть, с кем и
> о чем переписывался по аське и т.д.для полной перлюстрации трафика уже я не подскажу - не было такой задачи у меня. Но вообще такими вещами занимается СОРМ - поищите возможно есть уже готовые open-source решения для реализации подобной штуки.
Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный трафик за нужный период - чем-то типа Wireshark-а.
> Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и
> складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный
> трафик за нужный период - чем-то типа Wireshark-а.На данный момент, именно так я и делаю.
>> Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и
>> складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный
>> трафик за нужный период - чем-то типа Wireshark-а.
> На данный момент, именно так я и делаю.Может стоит подумать в сторону сбора всего трафика по netflow и систем мониторинга трафика, таких как network analyzer, flow tools, nfsen?
> Может стоит подумать в сторону сбора всего трафика по netflow и систем
> мониторинга трафика, таких как network analyzer, flow tools, nfsen?НетФлоу - штука полезная и мощная. Но проблема в том, что выдает данные на L3. Задача, озвученная автором
> Например, мне надо узнать кто из пользователей заходил на "google.com"
выполнена не будет, однако. НетФлоу не оперирует с сущностями, типа google.com. Только с IP-адресами, номерами портов и прочими параметрами, описанными в RFC и в документации. Имен там нет. :) Как известно, на одном IP может висеть куча виртуальных хостов.
>> Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и
>> складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный
>> трафик за нужный период - чем-то типа Wireshark-а.
> На данный момент, именно так я и делаю.tshark в консоли и если нужно автоматизировать
>>> Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и
>>> складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный
>>> трафик за нужный период - чем-то типа Wireshark-а.
>> На данный момент, именно так я и делаю.
> tshark в консоли и если нужно автоматизироватьмне тоже это надо сделать
>>>> Но я бы наверное сделал 2х ступенчатую систему. Т.е. пишем всё и
>>>> складируем(пока не понадобиться) - а потом при надобности уже парсим проскладированный
>>>> трафик за нужный период - чем-то типа Wireshark-а.
>>> На данный момент, именно так я и делаю.
>> tshark в консоли и если нужно автоматизировать
> мне тоже это надо сделатьКоллега, а в чём проблема то - надо сделать - делайте.
tshark - парсим что нужно - засовываем в БД.
Для просмотра данных делаем красивый Web-интерфейс(например на ExtJS).Ну т.е. никаких проблем кроме написания кода вроде как нет. Идея простая и понятная.