[service data–source]

[service data–source]

type { ip–traffic | netflow | libpcap | netgraph | raw }

Задает тип источника данных

• ip–traffic

• данные берутся путем перехвата ip–пакетов из ядра через divert socket (FreeBSD) или netfilter (Linux 2.4.x)

• netflow

• данные о прошедшем трафике приходят от маршрутизатора Cisco, отдающего поток информации в пакетах NetFlow, или от любого другого коллектора, поддерживающего NetFlow v.5 (ulog2netflow, ipfw2netfloe, flowprobe)

• libpcap

данные берутся путем перехвата пакетов с помощью библиотеки libpcap, которая копирует в программу проходящие через ядро системы определенные пакеты. так же работает, например, tcpdump. Смотри этот раздел.

• netgraph

данные передаются от установленного модуля ядра. Только для FreeBSD 5.xx. Смотри этот раздел.

• raw

• данные передаются от произвольного источника (например коммутатор Cisco или сервер Radius) и учитываются через команду rawdata .

source { tee XXX | divert XXX | ipq | ulog NL1 [NL2 … NL32] | A.B.C.D | ifname [promisc] | nodename [divert] }

Задает источник данных:

Для FreeBSD

• tee XXX

• пакеты будут копироваться в программу и параллельно обрабатываться системой, номер divert–порта XXX

• divert XXX

• пакеты будут заворачиваться в программу и она может отдать или не отдать их системе обратно, номер divert–порта XXX

• nodename [divert]

• установится соединение с модулем NETGRAPH ядра nodename. Параметр divert указывает на необходимость проводить авторизацию потока перед его пропусканием. Смотри этот раздел.

Для Linux

Необходимо наличие в системе netfilter.

Подробнее можно прочитать man iptables и на сайте www.netfilter.org

• ipq

• пакеты будут заворачиваться в программу и она может отдать или не отдать их системе обратно. Используется библиотека libipq.

• Для работы должен быть загружен модуль ip_queue (modprobe ip_queue). Чтобы активировать передачу пакетов из ядра, необходимо задать это в firewall, например командой:

• iptables–A FORWARD–j QUEUE …

• ulog NL1 [NL2 … NL32]

• пакеты будут копироваться в программу и параллельно обрабатываться системой, NLx определяет номера мультикаст групп в которых программа будет слушать пакеты отправляемые через ULOG.

• Чтобы активировать передачу пакетов из ядра, необходимо задать это в firewall, например командой:

• iptables–A FORWARD–j ULOG --ulog–nlgroup NLx …

• nlgroup NLx должно быть в границах 1–32

Общие

• A.B.C.D

• поток NetFlow будет идти с хоста (маршрутизатора) с IP–адресом источника A.B.C.D на локальный UDP–порт 20001 или тот, который будет указан в команде listen

• ifname [promisc]

• имя локального сетевого интерфейса, на котором будут захватываться проходящие пакеты

• Если указан флаг promisc, то интерфейс будет помещен в promisc mode. По умолчанию — не указан.

listen { 0 | ip } port_number

Задает IP адрес и UDP–порт, на который будут приниматься пакеты NetFlow от источника информации о трафике (коллектора).

clock { remote | local }

Указывает, какое значение текущего времени создания пакета использовать для занесения информации в базу — локальное или указанное в NetFlow–сообщении.

layer7–detect { none | urls }

Включает механизм определения ссылок (URL) в трафике, проходящем через этот сервис data–source. Допустимые значения «none» (выключено) или «urls». Во втором случае, первые несколько пакетов в потоке на порты назначения 80, 81, 8080, 8000, 3128 будут проанализированы на предмет поиска полей Host: и GET. Эта информация может быть учтена через сервис мониторинга (новое поле layer7 в таблице monitor).

rule ID rule_string

Задает системное правило, по которому данные будут попадать в программу:

• ID

• номер правила, для Linux не имеет смысла т.к. правила ставятся в конец цепочки

• rule_string

• правило в виде текстовой строки, которое будет передано системе (Linux или FreeBSD) для установки перехватчика пакетов.

no rule ID

Отменяет правило с номером ID.