Документация
Releases
База знаний
Примеры конфигурации
|
|
По 10 правил и юнитов
Здесь собрана "лучшая десятка" наиболее интересных и полезных правил (политик) учета трафика, и 10 описаний различных юнитов. Этот документ поможет вам а) лучше понять механизм работы netams и б) наиболее правильным образом создать ваш конфигурационный файл для ваших задач.
политики учета трафика
Задаются в настройках сервиса processor, формат команды имеет вид:
policy { oid XXX | name NNNNN } target ....
- policy name ip target proto ip
позволяет выделить весь IP-трафик. простейший случай, т.к. под это правило попадает все, что проходит через netams
- policy name www target proto tcp port 80 81 8080 3128
определяет TCP-трафик по списку портов, фактически сюда попадет весь WWW-трафик
-
policy name t_dns target proto tcp port 53 addr 1.2.3.4
policy name u_dns target proto udp port 53 addr 1.2.3.4
policy name extdns target policy-or t_dns u_dns
если вам вдруг хочется посчитать трафик с/до определенного DNS-сервера, расположенного вне вашей сети и имеющего адрес 1.2.3.4, можно воспользоваться этим примером. для начала определите две политики, отдельно для UDP и TCP (DNS использует оба!), затем скомбинируйте их при помощи правила с логическим ИЛИ
- policy name remote target units oid 0ABCDF
unit net oid 0ABCDF name remotelan ip 215.236.28.0/24
если у вас есть удаленный офис, в котором работает подсеть 215.236.28.0/24, можно выделить весь трафик между машинами вашей сети и этой удаленной подсетью.
юните назначения target может быть любым - хостом, сетью, кластером. полезно также, если вас интересует трафик до какого-то вашего сервера, расположенного снаружи у провайдера, на collocation.
- policy name anekdotes target addr 217.16.28.51
аналогичный предыдущему, если вас интересует трафик только до одного определенного ip-адреса, возможно обойтись даже без задания отдельного соответствующего юнита.
- policy name rus target file /etc/ru_networks.txt
по этой политике подсчитается трафик, предназначенный для сетей, перечисленных в файле префиксов. там может содержаться отображение вашей национальной сети (украинской, русской, молдавской), полученное из базы RIPE или сгенерированное из BGP view
- policy name cust1_in target proto ip ifindex s10
policy name cust1_out target proto ip ifindex d10
policy name isp_up_in target proto ip ifindex s8
policy name isp_up_out target proto ip ifindex d8
если ваш маршрутизатор Cisco работает с несколькими каналами "наружу", и каждый подключен через свой физический интерфейс, возможно использовать поле номера интерфейса из потока NetFlow.
- policy name worktime target time 9-18 day Mon-Fri
по этой политике учтётся только трафик, прошедший с 9 до 18 часов в дни с понедельника по пятницу - рабочее время
- policy name sun_night target day Sun time 00:00-06:00
по этой политике учтётся только трафик, прошедший с 0 до 6 утра воскресенья
- policy name smb target proto tcp port 135 139 445
policy name day target time 8-20
policy name daynotsmb target policy-and day !smb
таким образом можно отделить весь дневной не-SMB трафик. обратите внимание на комбинацию двух ранее определенных политик через логическое И и обращение смысла (!) для учета не-SMB трафика.
создание юнитов
Задаются в настройках сервиса processor ПОСЛЕ политик, формат команды имеет вид:
unit { host | user | cluster | group} { oid XXX | name NNNNN } параметры ....
- unit host name server ip 192.168.0.1 acct-policy ip
Создается запись о компьютере с IP-адресом 192.168.0.1, ведется учет всего IP-трафика с/на этот адрес
- auto-units 1 type user naming prefix2 "IP-" group CLIENTS
unit group name CLIENTS acct-policy ip
unit net name LAN ip 192.168.0.1/24 auto-units 1 acct-policy ip www
Производится "автодобавление" в конфигурацию всех работающих в сети ip 192.168.0.1/24 юнитов. Юниты получают свои имена на базе двух последних октетов адреса, политики учета ip и www, и помещаются в группу CLIENTS.
- restrict all drop local pass
unit net name LAN ip 192.168.0.1/24 no-local-pass
acct-policy ip www
unit host name pupkin ip 192.168.0.18 acct-policy ip www
Пользователь Пупкин будет иметь доступ наружу с адреса 192.168.0.18. При этом если юнита с адресом, например, 192.168.0.19, в системе не прописано, этот юнит будет блокирован несмотря на то что адрес проходит по юниту типа "сеть" (192.168.0.1/24). Причина - параметр "no-local-pass".
- unit host name pupkin ip 192.168.0.18 mac 00:03:47:c5:81:33
acct-policy ip
Задает MAC-адрес юниту. Если включена проверка соответствия MAC-адресов, то при появлении в сети "вредителя" с другим MAC-адресом, поставившим себе IP-адрес Пупкина, юнит будет блокирован. Также, если пользователи выходят в сеть через PPPoE и RADIUS, то возможно организовать дополнительную проверку на основе этого адреса.
- unit host name pupkin ip 192.168.0.18
description "Вася Пупкин, д.32 кв.169, тел. 333-22-77"
email pupkin@gmail.com acct-policy ip
Значение параметра "description" будут появляться в HTML-страницах со статистикой, что добавляет удобства администратору. Адрес электронной почты юнита используется для сообщения тому о, например, превышении квоты.
- unit host name pupkin ip 192.168.0.18 bw 64K in acct-policy ip
Пупкин не сможет ничего скачать со скоростью более чем 64 килобита в секунду.
ВАЖНО! Чтобы ограничение скорости работало, необходимо пересобрать NeTAMS с включенной опцией HAVE_BW. Это делается так: make distclen && FLAGS=-DHAVE_BW make
- unit user name pupkin ip 0.0.0.0 password ABCDEF
acct-policy ip parent CLIENTS
Пупкин, имея пустой IP-адрес по умолчанию, может использовать сервис логинов со включенным параметром set-user-ip, для выхода в сеть с любого локального компьютера, используя веб-интерфейс и указанный пароль.
- policy name ip target proto ip
policy name russian target file /etc/ru-networks.txt
policy name www target proto tcp port 80 81 8080 3128
policy name non-www1 target proto ip
policy name non-www2 target proto tcp port 80 81 8080 3128
unit host name pupkin ip 192.168.0.18
acct-policy ip !russian %www non-www1
Для Пупкина будем считать статистику по IP-трафику, по разубежному трафику, по WWW-трафику, и по всему остальному кроме WWW. Обратите внимание на политику учета non-www1: на самом деле это "весь IP-трафик", однако до учета дойдет только не-WWW-трафик из-за флага "%". Аналогичного эффекта можно добиться, если применить политику "non-www2". Это такая же по сути политика, что и www, однако применена в инвертированном ("!") виде:
unit host name pupkin ip 192.168.0.18
acct-policy ip !russian www !non-www2
Обратите внимание на то что нельзя указывать одно и то же имя политики два раза с разными флагами (например "acct-policy www !www" - неправильно), так как в базе данных статистика сохраняется на основании policy oid, которые должны быть разными
|