Здесь мы обсудим вопрос обработки netflow-статистики. Будем при этом считать, что сенсор настроен и готов отдавать нам статистику.

Ставим 3 пакета:

# проверяем, что будет ставиться % emerge -pvt net-analyzer/flow-tools net-analyzer/FlowScan dev-perl/CUFlow # ставим % emerge -vt net-analyzer/flow-tools net-analyzer/FlowScan dev-perl/CUFlow

Правим /var/lib/flows/bin/CUFlow.cf:

# список наших подсетей Subnet 111.222.55.0/24 Subnet 111.222.33.0/24 Subnet 172.16.0.0/16 Subnet 172.17.0.0/16 # список наших хостов и подсетей, которые мы хотим выделять из общего трафика: Network 111.222.33.12/32 altair2 Network 111.222.33.2/32 ash Network 111.222.33.19/32 atc Network 111.222.33.4/32 elib Network 111.222.33.3/32 elm Network 111.222.33.112/32 fir Network 111.222.33.113/32 ic Network 111.222.33.27/32 kite Network 111.222.33.114/32 klv Network 111.222.33.23/32 ok Network 111.222.33.118/32 quant3 Network 111.222.33.117/32 quant Network 111.222.33.5/32 til Network 111.222.33.11/32 xxx Network 111.222.33.22/32 yam Network 111.222.33.21/32 yew Network 111.222.55.0/24 n95 Network 111.222.33.0/24 n116 Network 172.16.0.0/16 n16 Network 172.17.0.0/16 n17 Network 172.16.0.0/24 nS # куда будем сваливать rrd файлы OutputDir /var/lib/flows/rrds # Если у нас есть только один раутер, то все хорошо, # а если больше и надо их разделять, то перечисляем Router 10.0.1.1 router1 Router 10.0.1.2 router2
# маска имени файла, который нало обработать FlowFileGlob /var/lib/flows/ft-v05.* # имя перлового класса, который будет считать статистику ReportClasses CUFlow

Всё, после этого в директории /var/lib/flows/scoreboard/ будут складываться html файлы с обсчитанной статистикой. Для удобства работы, разумно, в конфиге апача прописать что-то такое:

Alias /netflow /var/lib/flows/scoreboard <Directory "/var/lib/flows/scoreboard"> Options Indexes AllowOverride None </Directory>

Кроме того, пакет dev-perl/CUFlow ставит CGI-скрипт /var/www/localhost/cgi-bin/CUGrapher.pl, который позволяет строить различные графики по имеющимся rrd-файлам.

Tracedump:

newBaseSize: 16pt
newBaseSizeInPt: 16