Вопрос по статье NeTAMS ч1

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-12 20:00:06

Добрый день!
Строю учет трафика на MPD4+FreeRadius+MySQL+NeTAMS
NeTAMS настраивал по статье http://www.lissyara.su/?id=1608
--------------------------------------------------
Сервер имеет два интерфейса :
vx0 внешний (назначен адрес 192.168.0.150)
re0 внутренний
mpd4 раздает адреса из диапазона 10.0.0.0/8

Вопрос вот в чем : NeTAMS не считает статистику. Вообще. Хотя инет через него ходит (сейчас пишу сюда через pppoe соединение на этом сервере) :

Код: Выделить всё

# ipfw show
01000 2300  397372 divert 199 ip from 10.0.0.0/8 to any out xmit vx0
01100 2300  397372 divert 8668 ip from 10.0.0.0/8 to any out xmit vx0
01200 2121 1193390 divert 8668 ip from any to me in recv vx0
01300 2115 1192620 divert 199 ip from any to 10.0.0.0/8 in recv vx0
Отрывок конфига netams.cfg (секция processor)

Код: Выделить всё

service processor 0
service processor
lookup-delay 30
flow-lifetime 180
policy name ip target proto ip
restrict all drop local pass

unit host oid 000001 name user_test ip 10.1.1.1 description "ip 10.1.1.1" email root@localhost password 123 acct-policy ip
unit net oid 022222 name all_network ip 10.0.0.0 mask 255.0.0.0 description "net 10.0.0.0" password 123 no-local-pass acct-policy ip
unit host oid 033333 name server ip 192.168.0.150

ifconfig :

Код: Выделить всё

ng0: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1480
        inet 10.20.30.254 --> 10.1.1.1 netmask 0xffffffff
ng2: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> mtu 1500

Помогите разобраться пожалуйста.
Изображение

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение schizoid » 2008-04-12 22:15:39

1. покажите секцию service data-source
2. данные попадают в базу нетамса? если нет - то проверьте может ли нетамс вообще писать в базу, хватает ли прав.
3. не считает вообще это вы по чем видите? если не отображается страничка со статистикой - проверьте секцию service html.
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-14 18:08:31

schizoid писал(а): 2. данные попадают в базу нетамса? если нет - то проверьте может ли нетамс вообще писать в базу, хватает ли прав.
Точно, не хватало прав для записи в базу MySQL. Большое спасибо.
Теперь статистика собирается, НО после перезагрузки (через reboot) обнуляется и статистика и квоты. Как побороть? Версия NeTAMS'a 3.4.0.r2 (последняя доступная в портах).

И еще, в одной из последних версий поменялся синтаксис команд, а именно :
netamsctl "service quota && set name eugene policy ip day 5M sum && exit" <-- не работает (invalid command set)
netamsctl 'en && conf t && service quota && set name cadaver day 5M in active && exit && exit' <-- (работает)
Изображение

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение schizoid » 2008-04-16 14:13:17

1. перегружайте сервер shutdown -r now, и выстовить

Код: Выделить всё

service processor
lookup-delay 30
flow-lifetime 180
т.е. если у вас больше, то лучше меньше поставить, что б он по-чаще сбрасывал данные в бд.
2. на сайте поправлю, скоро, вот уже почти скоро :)
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-16 18:38:37

schizoid писал(а):1. перегружайте сервер shutdown -r now, и выстовить

Код: Выделить всё

service processor
lookup-delay 30
flow-lifetime 180
т.е. если у вас больше, то лучше меньше поставить, что б он по-чаще сбрасывал данные в бд.
2. на сайте поправлю, скоро, вот уже почти скоро :)
Не торопись, есть еще кое - какие наработки по секции quota. Выложу на этой неделе.
Изображение

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-20 18:38:13

Итак, после недельного копания форума netams.com выяснилось следующее :

Релизы 3.3.х и 3.4.х сильно отличаются синтаксисом, одно и то же действие -- выставление ограничения в 50МБ в месяц для user27:

3.3.х :

Код: Выделить всё

netamsctl "service quota && set name user27 policy ip month 50M in && exit"
3.4.х :

Код: Выделить всё

netamsctl 'en && conf t && service quota && set name user27 month 50M in active && exit && exit'
Лично мне не совсем ясно зачем нужно было менять синтаксис команд, тем более что документация на сайте NeTAMS http://www.netams.com/doc/index.html актуальна примерно наполовину (это со слов форумных завсегдатаев), т.е. с какого - то момента перестала обновляться. Кто - то говорит, что синтаксис стал похож на цисковский (наверно это круто =)

Дальше больше :wink:

Релиз 3.4.0.r2 (самый свежий из портов FreeBSD) работоспособен условно, а именно, передо мной стояла банальная задача продажи инета в общаге -- т.е. пришел бедный студент купил на 100 рублей инету и мы выставили ему квоту в 100Мб (для простоты 1Мб = 1р). Через неделю студент накопил еще денег и принес 50 руб, нужно увеличить его квоту до 150Мб. Так вот у меня не получилось изменить однажды заданную квоту. Т.е. создаем обязательно через консоль квоту в 100Мб, экзит, экзит сейв, все проходит нормально -- show quota показывает созданную квоту. Но изменим теперь 100Мб на 150Мб. Тот же набор команд, затем экзит, экзит, сей.... :shock: ОППАА! Нетамс повисает создавая пустой netams.cfg

Причем, сервис квота очень капризен, вот что пишет народ на форуме, разговор идет о том, что не срабатывает квотировние :
Решил проблему благодаря Flanker - отпишу способ лечения данной проблеммы:
1)Останавливаем Netams, удаляем из конф. файла информацио о сервисе quota, идем в mysql и удаляем таблицу - quota
2)запускаем Netams, коннектимся telnet к netams, при выборе команды show quota - ничего не должно быть, т.к. еще нет такого сервиса
3)продолжаем работать в telnet
>enable
#con term
(config)# service quota
creating service quota:0

после чего exit
exit
save
главное кроме создания quota, БОЛЬШЕ НИЧЕГО НЕ СОЗДАВАТЬ(policy и т.д)
3а)для страховки я после этого презапустил netams
4)И только после этого можно нормально создавать quotu для unit, при создании тоже есть нюанс - необходимо создавть ПО ОДНОМУ unitu, иначе говоря:
set name TestQ day 2K in
exit
exit
save
проверяем
# show quota
OID: 0B72C5 (TestQ) policy: ip
soft-treshold: 80% ACTIVE
Notification: soft owner , hard owner , return owner
должно быть ACTIVE и только это

для страховки и уверенности можно проверить базу netams - таблицу - quota - там ДОЛЖНА быть создана запись

5)Если надо еще кому-то квоту поставить процедру повторяем - пункты 3) - 4)
Вот такая веселуха =)
Выход из своей ситуации (невозможность изменения величины квоты) я нашел, надо сказать, не без помощи добрых форумчан, выход следующий : ставить NeTAMS 3.3.5 он хотя бы на изменения квот реагирует нормально, проверено лично.

Еще бросилась надпись на сайте
latest stable
version is 3.4.1rc1
почему же она в портах FreeBSD не появляется :?:

И странно почему форум закрыт от посторонних глаз даже на чтение? Ведь там собрана огромная база знаний (по глюкам в том числе) -- нет нужно обязательно регистрироваться.

Несмотря на то, по NeTAMS'у возникает много вопросов, да он не идеален, я хочу сказать большое спасибо разработчикам за работу. Сервер сдан в эксплуатацию.
Изображение

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение schizoid » 2008-04-20 22:15:51

по поводу изменения квот, помнится года 4 назад тоже наткнулся на такой трабл, выяснилось, что перед тем как изменить квоту ее нужно было удалить...по-моему так.
на сайт добавлю , как только появится свободная минутка
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-20 22:29:58

schizoid писал(а):по поводу изменения квот, помнится года 4 назад тоже наткнулся на такой трабл, выяснилось, что перед тем как изменить квоту ее нужно было удалить...по-моему так.
на сайт добавлю , как только появится свободная минутка
Может быть, а может быть при втором изменении квот не нужно делать сейв -- нет возможности проверить сейчас.
Вообще настрои форумчан таковы что рекомендуют юзать 3.3.5 вместо 3.4.х
Изображение

2008_god_mouse
рядовой
Сообщения: 45
Зарегистрирован: 2007-11-12 9:44:22

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение 2008_god_mouse » 2008-04-21 2:11:06

а как создать базу netams? У меня почему-то в mysql, как описано в примере, она не создалась!!!

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-21 7:58:41

2008_god_mouse писал(а):а как создать базу netams? У меня почему-то в mysql, как описано в примере, она не создалась!!!
значит нетамсу не хватает прав на запись в МайСКЛ. Попробуй вручную создать базу с правами юзера указанного в netams.cfg
Изображение

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение schizoid » 2008-04-21 9:08:16

жаль , что я обновился с 3.3.5 ...
хотя с єтой вроде траблов пока не замечено...
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
Grishun_U_S
сержант
Сообщения: 221
Зарегистрирован: 2008-04-12 18:26:54
Откуда: Samara
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение Grishun_U_S » 2008-04-21 9:37:42

schizoid писал(а):жаль , что я обновился с 3.3.5 ...
хотя с єтой вроде траблов пока не замечено...
Работает? Не трогай.
Бэкапь базы и конфиги!
Изображение

2008_god_mouse
рядовой
Сообщения: 45
Зарегистрирован: 2007-11-12 9:44:22

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение 2008_god_mouse » 2008-04-24 3:43:51

поставил собирать статистику по

service data-source 1
type libpcap
source rl1
rule 11 "ip"

но статистика не ведется!!! :twisted:

Аватара пользователя
GreenDay
мл. сержант
Сообщения: 100
Зарегистрирован: 2008-02-21 20:25:39
Откуда: Новосибирск
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение GreenDay » 2008-04-25 9:14:16

ну я в другой теме вопрос уже задал - "почему не работает связка netams+squid(не транспарентный)?"
в дайверт данные приходят, но нетамс показывает логи порядка килобайт всего
Бесполезно рассказывать о высоком моральном облике коллектива человеку, имеющему доступ к логам прокси-сервера этого коллектива.

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение alex3 » 2008-07-10 13:07:45

и опять подниму тему... в статье, как я понял, рассматривается простейший вариант нетамс на рутере (2 сетевухи, одна - инет, вторая - локалка). В инете только этот вариант и раскуривают, что очень грустно.
курил ее и доки с оффсайта программы, так и не понял, как сделать то, что мне надо.
Итак.
Дано:
рутер под фрей. fxp0 - один канал в инет с лимитом входящего траффика 15 Гб, fxp1 - второй канал в инет (имеется бесплатный локальный траффик), fxp2 - локалка.
На оба канала поднято по нату
Надо:
1. Статистика обшего траффика (in/out/total) по каждому каналу, причем по второму каналу локальный траффик (допустим 172.16.0.0/12)
2. Статистика по пользователям в локалке.
3. слежение за объемом входящего траффика на первом канале (ибо когда он достигает 15 Гб у меня врубается скрипт, меняющий маршруты)
????
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение manefesto » 2008-07-10 22:01:42

а кто мне скажет вот что. Когда формируется статистика по трафику.
Когда через телнет даешь команду ? Или как то через крон ?
я такой яростный шо аж пиздеЦ
Изображение

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение alex3 » 2008-07-10 22:29:18

Данные о трафике накапливаются в виде "потоков" (flows), которые периодически (за это отвечает параметр flow-lifetime сервиса processor) сбрасываются в базу данных (таблица raw), дополнительно в системе поддерживаются значения счетчиков о прошедшем трафике с начала текущего часа, дня, недели и месяца для каждой комбинации юнит + политика учета. По истечении соответствующего временного интервала данные о трафике за прошедший интервал все равно остаются в базе (таблица summary), обеспечивая надежность и целостность данных на время случайный или запланированных перезагрузок системы.

Информацию о текущем и прошедшем трафике можно получить, подсоединившись к программе через telnet и набрав команды:
show list full
send report to {user_name} on {unit_name} (при настроенном сервисе alerter)
html (при настроенном сервисе html - и это наилучший вариант)
с оффсайта..
правда там есть и приблуда
Что это такое?
netamsctl - примитивный telnet-клиент, позволяющий передать одну или несколько команд для работающего netams. Он работает через обычный TCP-сокет. Открывается соединение, отправляется команда, получается и выводится на экран ответ сервера.

Зачем это нужно, когда все можно сделать и через telnet?
Вам не надо все время вводить логин-пароль для авторизации, указывать имя хоста и порт. Эта информация берется из файла .netamsctl.rc
Вызов netamsctl с нужной командой можно поместить, например, в cron, в вашу любимую самописную программу, в sudo-скрипт для исполнения секретаршей-блондинкой.
оттуда же.
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

barsykoff
мл. сержант
Сообщения: 132
Зарегистрирован: 2007-07-26 10:36:59
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение barsykoff » 2008-07-11 9:25:08

GreenDay писал(а):ну я в другой теме вопрос уже задал - "почему не работает связка netams+squid(не транспарентный)?"
в дайверт данные приходят, но нетамс показывает логи порядка килобайт всего
У меня стоит сквид нетранспарентный, и все считает. Просто надо считать исходящий трафик с локального интерфейса в локалку. У меня так:

Код: Выделить всё

00208 divert 199 tcp from 192.168.0.0/24 to 192.168.0.6 dst-port 3128 via rl0
00209 divert 199 tcp from 192.168.0.6 3128 to 192.168.0.0/24 via rl0
00210 allow ip from 192.168.0.0/24 to 192.168.0.0/24 via rl0
где 192.168.0.6 - шлюз со сквидом и нетамсом, 192.168.0.0/24 - локалка, а rl0 - внутренний интерфейс.
manefesto писал(а):а кто мне скажет вот что. Когда формируется статистика по трафику.
Когда через телнет даешь команду ? Или как то через крон ?
Смотри доку на предмет service html. Вот кусок моего конфига:

Код: Выделить всё

service html
path /usr/local/www/stat
run 1min
client-pages all
display-top 25
display-health yes
account-pages none
Да и вообще, ставил 3.4.0r2 - работает через раз. Часто падала в корку. Поэтому поставил 3.3.5 - уже года как пашет. Я скачал порт с сайта, заменил в /usr/ports, а в конфиге портснапа прописал, чтоб он нетамс не обновлял :-D

Аватара пользователя
schizoid
подполковник
Сообщения: 3228
Зарегистрирован: 2007-03-03 17:32:31
Откуда: Украина, Чернигов
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение schizoid » 2008-07-15 15:21:04

alex3 писал(а):и опять подниму тему... в статье, как я понял, рассматривается простейший вариант нетамс на рутере (2 сетевухи, одна - инет, вторая - локалка). В инете только этот вариант и раскуривают, что очень грустно.
курил ее и доки с оффсайта программы, так и не понял, как сделать то, что мне надо.
Итак.
Дано:
рутер под фрей. fxp0 - один канал в инет с лимитом входящего траффика 15 Гб, fxp1 - второй канал в инет (имеется бесплатный локальный траффик), fxp2 - локалка.
На оба канала поднято по нату
Надо:
1. Статистика обшего траффика (in/out/total) по каждому каналу, причем по второму каналу локальный траффик (допустим 172.16.0.0/12)
2. Статистика по пользователям в локалке.
3. слежение за объемом входящего траффика на первом канале (ибо когда он достигает 15 Гб у меня врубается скрипт, меняющий маршруты)
????
не пробовал такого делать, т.к. нет необходимости пока.
нетамс позволяет задать несколько data-source? может в эту сторону капнуть?
это чисто предположение.
ядерный взрыв...смертельно красиво...жаль, что не вечно...

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение alex3 » 2008-07-15 16:20:23

поставил его на тестовой машинке - буду ломать :st:
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

barsykoff
мл. сержант
Сообщения: 132
Зарегистрирован: 2007-07-26 10:36:59
Контактная информация:

Re: Вопрос по статье NeTAMS ч1

Непрочитанное сообщение barsykoff » 2008-07-16 9:09:53

Подкину идейку, попробуй. Писал из головы, но, думаю, под себя доделаешь :smile:
Во-первых, создаешь четыре data-source:

Код: Выделить всё

# Считаем трафик пользователей, пользующих инет через fxp0
service data-source 1
type ip-traffic
source divert 199
---> тут вставляй правила, охватывающие НАТ на fxp0 <---

# Считаем трафик пользователей, пользующих инет через fxp1
service data-source 2
type ip-traffic
source divert 199
---> тут вставляй правила, охватывающие НАТ на fxp1 <---

# Считаем общий трафик на лимитном интерфейсе
service data-source 3
type libpcap
source fxp0
rule 1 "host 111.111.111.111"

# Считаем общий трафик на втором внешнем интерфейсе, сюда же попадет
# и локальный безлимитный трафик.
service data-source 4
type libpcap
source fxp1
rule 1 "host 222.222.222.222"
Далее создаем юниты в service processor:

Код: Выделить всё

# Общий траф по внешним интерфейсам
unit host oid 000100 name FXP0 ip 111.111.111.111 ds-list 3 acct-policy all http ftp pop3 smtp icq
unit host oid 000200 name FXP1 ip 222.222.222.222 ds-list 4 acct-policy all http ftp pop3 smtp icq
# Группа "Пользователи"
unit group oid 000300 name USERS ds-list 1,2 acct-policy all proxy http ftp pop3 smtp icq
# И далее, по отдельности каждого пользователя, например:
unit host oid 000400 name Pupkin ip 172.16.0.10 ds-list 1,2 parent USERS acct-policy http ftp all
.....
В этом случае в статистику по пользователю будет записываться сумма по первому и второму внешнему интерфейсу. Если хочешь считать отдельно и на том, и на этом, то вместо одного юнита для каждого юзера придется создать два: в первом ds-list 1, а втором - ds-list 2.

По поводу скрипта, менюящего маршруты, ничего не могу сказать... На сайте в доке что-то написано, но про скрипт, блокирующий трафик, однако, я думаю, можно подсунуть ему этот скрипт:
access-script path
устанавливает имя скрипта, который будет использоваться для блокировки трафика. полезно для систем, использующих не data-source ip-filter, а другие механизмы.
path - полный путь до скрипта
например:
access-script "/usr/home/anton/script.pl"
при этом скрипт имеет вид:

Код: Выделить всё

#!/usr/bin/perl -w
print shift, " ", shift, " ", shift, " ", shift, "\n";
При наступлении события отключения-включения сервис processor вызывает его с параметрами:
Действие(DENY|ALLOW)
Идентификатор_юнита(OID)
IP(IP)
Причина(QUOTA|LOGIN|...)