Донецкий техникум промышленной автоматики

OpenNET: стаття - Візуалізація мережевого трафіку за допомогою NetFlow і FlowScan (netflow cisco traffic graph statistic)

Візуалізація мережевого трафіку за допомогою NetFlow і FlowScan (netflow cisco traffic graph statistic)
Ключові слова: netflow

, cisco , traffic , graph , statistic , ( знайти схожі документи )
From: Сгибнев Михайло < http: //dreamcatcher.ru&gt ; Date: Mon, 20 Oct 2005 14:31:37 +0000 (UTC) Subject: Візуалізація мережевого трафіку за допомогою NetFlow і FlowScan Оригінал: http://dreamcatcher.ru/docs/netflow_visio.html Michael W. Lucas 09/15/2005 Переклад: Сгибнев Михайло В Минулого моєї статті ми розглянули як збирати дані про трафік мережі за допомогою протоколу NetFlow. У цій ми розглянемо як перетворити отримані дані в красиві кольорові картинки. Я рекомендую вам звернутися до попередньої статті, так як буду вважати що flowscan вже налаштований, а якщо ви не використовуєте softflowd і flow-tools і не маєте встановленого Cflow.pm, то реалізація описаного тут може потерпіти невдачу. FlowScan є скриптом, написаним на Perl і, аналізуючи записи NetFlow, зберігає їх у базі даних RRD. RRD використовують досить багато коштів візуального відображення інформації, ця база дозволяє зберігати велику кількість інформації не вимагаючи багато дискового простору. FlowScan дозволяє стороннім модулів використовувати свої процеси, для генерування власних звітів і ми розглянемо зараз один з цих модулів - CUFlow. Установка FlowScan Установку flowscan ми будемо робити з системи портів, каталог програми знаходиться в / usr / ports / net-mgmt / flowscan. Таже будуть встановленні кілька модулів Perl в якості залежностей. Звістка інструментарій FlowScan буде за замовчуванням встановлений в / usr / local / var / db / flows / bin. Врахуйте, що відразу після установки FlowScan не працездатний! Перш за все, нам необхідно оновити модуль FlowScan, так як офіційний дистрибутив довгий час не оновлювався і не здатний обробляти записи потоку. Автор написав оновлений модуль flowscan.pm, але не включив його до складу дистрибутива. Отримайте [6] FlowScan.pm version 1.6 і скопіюйте її в каталог / usr / local / var / db / flows / bin, перезаписавши модуль версії 1.5. У Цьому ж самому каталозі знаходиться зразковий файл конфігурації FlowScan flowscan.cf.sample. В першу чергу необхідно вказати FlowScan, де шукати файли потоку. FlowScan намагатиметься обробити кожен файл в каталозі, якщо ви не вкажіть регулярний вираз, що описує необхідні файли, включаючи тимчасові файли і вкладені каталоги. У наступному прикладі ми обробляємо тільки завершені файли потоку, що зберігаються в каталозі / var / log / netflows: FlowFileGlob / var / log / netflows / ft-v * [0-9] В ReportClasses перераховуються всі використовувані для виведення звітів модулі. FlowScan поставляється з двома модулями: CampusIO і SubNetIO. Можливо, вони виявляться комусь корисними, але мені зручніше використовувати CUFlow. ReportClasses CUFlow Параметр WaitSeconds задає інтервал очікування між спробами FlowScan перевірити каталог. Досить багато інструментальних засобів використовують п'ятихвилинний інтервал і можуть функціонувати належним чином з меншим значенням. WaitSeconds 300 На закінчення, включимо налагодження для перевірки правильності встановлення: Verbose 1 Конфігурація FlowScan закінчено, але нам все ще необхідно налаштувати модуль звітів для правильного відображення інформації. Конфігурація CUFlow Скачайте [7] CUFlow, розпакуйте і скопіюйте CUFlow.pm і CUFlow.cf в / usr / local / var / db / flows / bin. Сам модуль можна залишити без змін, але необхідно відредагувати cuflow.cf, щоб він відповідав вашим налаштувань Perl. Інструкція Subnet вказує належать вам мережі. На підставі цих даних CUFlow буде розрізняти вхідний і вихідний трафік. Subnet 192.168.2 / 23 Інструкція Network описує мережі, які ви хочете обробляти окремо один від одного. Кожна інструкція буде відображатися як варіант в CGI скрипт. Як ви бачите в цьому прикладі, діапазони можуть перекриватися: Network 192.168.2.3,192.168.2.5,192.168.3.80 webservers Network 192.168.2.9,192.168.3.1 mailservers Network 192.168.2.0/25 infrastructure Network 192.168.2.128/25 dmz Network 192.168. 3.0 / 25 administration Network 192.168.3.128/25 development Директивою OutputDir вказується, де зберігати звіти. Не зберігайте їх у доступному по мережі місці або в каталозі flow-capture. OutputDir / var / log / cuflow CUFlow також обчислює найактивніші сайти і будує "хіт-парад" IP адрес, які передали більшу кількість трафіку протягом 5 хвилин. За цей параметр відповідає опція Scoreboard. Ця опція використовує три аргументи: число IP в "хіт-параді", ім'я каталогу для зберігання старих списків і ім'я файлу поточного списку. У наступному прикладі вказується вести "Top 10" IP адрес, зберігати звіти в / usr / local / www / data / scoreboard і поточним вважати файл /usr/local/www/data/scoreboard/topten.html: Scoreboard 10 / usr / local / www / data / scoreboard \ /usr/local/www/data/scoreboard/topten.html у той час як список найбільших споживачів / генераторів трафіку в даний п'ятихвилинний період корисний для запобігання проблем, так само був би корисний список найактивніших хостів . Опція AggregateScore дозволяє вам зробити це: AggregateScore 10 /var/log/cuflow/agg.dat /usr/local/www/data/overall.html Якщо у вас досить складна мережа, то може виникнути необхідність в декількох сенсорах Netflow. CUFlow може відокремлювати дані від різних сенсорів, при цьому різні маршрутизатори буду доступні в CUFlow CGI. Router 192.168.2.1 fred Router 192.168.3.1 barney Директива Services призначена для вказівки TCP / IP портів, які ви хочете відстежувати окремо. Ця директива дозволяє вам робити такі висновки як "80% нашого трафіку припадає на HTTP" тощо. Врахуйте, що це підвищує навантаження на сервер, тому не варто тут вказувати весь / etc / services. Не варто вказувати сервіси, які заблоковані, наприклад Gnutella, Edonkey і т.д: Service 20-21 / tcp ftp Service 22 / tcp ssh Service 23 / tcp telnet Директива Protocol дуже схожа на Services, тільки замість Layer 4 використовується Layer 4 моделі OSI . Я рекомендую вказувати Protocol 1 (ICMP), Protocol 6 (UDP) і Protocol 17 (TCP) в якості базового мінімуму. Якщо є багато користувачів VPN то варто відстежувати IPSec і GRE. Protocol 1 icmp Protocol 6 tcp Protocol 17 udp Так як Netflow був розроблений в Cisco, то не дивно, що багато Netflow датчиків включають інформацію BGP. CUFlow може відображати інформацію про трафік до / від різних AS, використовуючи для цього номер AS (опція ASNumber), softflowd НЕ предосталяет інформацію про номер автономної системи. У разі використання softflowd закоментуйте опцію ASNumber. Збереження записів Netflow з FlowScan За замовчуванням, FlowScan видаляє записи після обробки. Я пропоную вам зберігати ці записи протягом декількох місяців або поки дозволяє дисковий простір. Створіть підкаталог saved в директорії Netflow і тоді FlowScan автоматично буде зберігати там оброблені файли. Навіть якщо ви не плануєте зберігання старих файлів потоку, я рекомендую робити це хоча б перший час, поки ви не переконаєтеся, що FlowScan працює правильно. У разі, якщо щось піде не так, наявність цих данни облехчіть пошук і усунення несправності. Запуск FlowScan Теоретично у нас все готово до запуску: # / usr / local / var / db / flows / bin / flowscan FlowScan повинен запуститися, виводячи подібні повідомлення: 2004/09/02 11:35:18 flowscan-1.020 CUFlow: Cflow: : find took 1 wallclock secs (0.60 usr + 0.02 sys = 0.62 CPU) for 43011 flow file bytes, flow hit ratio: 2759/2760 2004/09/02 11:35:18 flowscan-1.020 CUFlow: report took 0 wallclock secs ( 0.15 usr 0.19 sys + 0.02 cusr 0.09 csys = 0.44 CPU) FlowScan аналізує всі старі файли потоку, при цьому процес можеть зайняти досить тривалий час, все залежить від того, скільки файлів накопичилося в системі. Гідну згадки річчю тут є "flow hit ratio", котороя вказує на кількість файлів, які не відповідають формату FlowScan і це дуже хороший показник. Якщо цей параметр дорівнює 0, то швидше за все ви неправильно вказали параметр Subnet. Якщо FlowScan видає помилку "Invalid index in cflowd flow file", то швидше за все, ви не встановили нову версію модуля Flowscan.pm. Після обробки всіх файлів FlowScan виведе повідомлення "sleep 300 ...", протягом цього часу ви можете перевірити появу нових файлів потоку. Ви можете натиснути Ctrl-C для виходу з FlowScan. Ймовірно ви захочете запускати FlowScan на етапі початкового завантаження. Для цього перейдіть в каталог /usr/local/etc/rc.d і скопіюйте туди зразково-показовий скрипт flowscan.sh. Для його роботи зовсім необов'язково його редагувати, але можна змінити параметр logfile в разі, якщо ви використовуєте інший каталог. Побудова графіків На щастя, побудова графіків з RRD файлів є досить тривіальним завданням. До складу CUFlow входить CGI скрипт, CUGrapher.pl. Скопіюйте його в каталог cgi-bin вашого web-сервера. Необхідно встановити дві змінні: $ rrddir і $ organization. Параметр $ rrddir вказує на каталог, де CUFlow зберігає файли RRD. my $ rrddir = "/ var / log / cuflow"; Для виведення імені організації у верхній частині сторінки використовується змінна $ organization: my $ organization = "LogicaCMG US IDT development area"; Тепер перейдемо на URL і виберемо, для прикладу, мережа. Ви повинні будете побачити масив розкривних меню. Виберете будь-який і натисніть "Generate graph". Вітаємо, у вас є графіки значно більш інформативні, ніж MRTG. Одним великим недоліком CUFlow є недостатня деталізація. Для усунення цієї проблеми необхідно використовувати додаткові модулі. Про них реч піде в наступній статті.

Обговорення [ RSS ]

  • 1.1 , Володимир (??), 3:57, 10/05/2007 [ відповісти ]
+

/ - /   -   # Make install   ===> flowscan-1 # Make install
===> flowscan-1.006_7 depends on executable in: ksh - found
===> flowscan-1.006_7 depends on executable in: rrdtool - found
===> flowscan-1.006_7 depends on file: / usr / local / sbin / cflowd - not found
===> Verifying install for / usr / local / sbin / cflowd in / usr / ports / net-mgmt / cflowd
===> cflowd-2.1.b1_9,1 is marked as broken: Does not compile.
*** Error code 1

Stop in / usr / ports / net-mgmt / cflowd.
*** Error code 1

Stop in / usr / ports / net-mgmt / flowscan.

cflowd не збирається ні з портів, ні з бінарного набору, викладеного на оф. сайті.
Якщо я правильно зрозумів це посилання http://www.freshports.org/net-mgmt/cflowd/ - то полагоджений він не буде. Власне навіть не "хелп !!!", а просто - що робити?

  • 2.2 , frv (?), 14:20, 21/05/2007 [ ^ ] [ ^^ ] [ ^^^ ] [ відповісти ]
+

/ - > # Make install
> ===> flowscan-1.006_7 depends on executable in: ksh - found
> ===> flowscan-1.006_7 depends on executable in: rrdtool - found
> ===> flowscan-1.006_7 depends on file: / usr / local / sbin / cflowd - not found
> ===> Verifying install for / usr / local / sbin / cflowd in / usr / ports / net-mgmt / cflowd
> ===> cflowd-2.1.b1_9,1 is marked as broken: Does not compile.
> *** Error code 1
>
> Stop in / usr / ports / net-mgmt / cflowd.
> *** Error code 1
>
> Stop in / usr / ports / net-mgmt / flowscan.
>
> Cflowd не збирається ні з портів, ні з бінарного набору, викладеного на
> Оф. сайті.
> Якщо я правильно зрозумів це посилання http://www.freshports.org/net-mgmt/cflowd/ - то полагоджений він не
> Буде. Власне навіть не "хелп !!!", а просто - що робити?

Така ж байда була. Просто після установки cflowd не з портів, а як було порадитися (contrib) просто видалили рядок в makefile flowscan'a посвещенная cflowd. ну і всі проблеми


  • 1.3 , Max Yurchak (?), 17:18, 03/07/2007 [ відповісти ]
+

/ - /   -   Що то нічого не виходить точніше виходить але мало Що то нічого не виходить точніше виходить але мало.
запускаю
# / Usr / local / var / db / flows / bin / flowscan
виводить наступне

2007/07/03 17:14:03 working on file /usr/local/netflows/ft-v05.2007-07-03.170501+0400 ...
2007/07/03 17:14:03 flowscan-1.020 CUFlow: Cflow :: find took 0 wallclock secs (0.00 usr + 0.00 sys = 0.00 CPU) for 923 flow file bytes, flow hit ratio: 11/53
2007/07/03 17:14:03 flowscan-1.020 CUFlow: report took 0 wallclock secs (0.01 usr + 0.00 sys = 0.01 CPU)
sleep 300 ...
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
Use of uninitialized value in numeric gt (>) at /usr/local/lib/perl5/site_perl/5.8.8/HTML/Table.pm line тисячі сімсот тридцять-два.
І висимо певний час ~ 300сек.
Хто небудь може поділитися міркуваннями?

  • 1.4 , mik (??), 16:27, 27/07/2007 [ відповісти ]
+

/ - все правильно, тепер дивись результат

  • 2.6 , romeo (Ok), 18:00, 24/12/2008 [ ^ ] [ ^^ ] [ ^^^ ] [ відповісти ]
+

/ - /   -   а у мене чомусь графіки малює, але все значення стоять в nan а у мене чомусь графіки малює, але все значення стоять в nan

  • 2.7 , mustdie (?), 17:46, 13/11/2009 [ ^ ] [ ^^ ] [ ^^^ ] [ відповісти ]
+

/ - /   -   Те ж саме - все підняв по інструкції, видається меню, графіки не будуються Те ж саме - все підняв по інструкції, видається меню, графіки не будуються.
У балці апача пише наступне:

Variable "$ debug" will not stay shared at / usr / local / www / apache22 / trafman / index.
pl line 88.
Variable "$ imageType" will not stay shared at / usr / local / www / apache22 / trafman / in
dex.pl line 89.
Variable "$ width" will not stay shared at / usr / local / www / apache22 / trafman / index.
pl line 94.
...

У кого-небудь взагалі це справа запрацювало?



Додати коментар

Спонсори:

Хостинг:



А просто - що робити?
А просто - що робити?
Хто небудь може поділитися міркуваннями?
У кого-небудь взагалі це справа запрацювало?