Документация NetAMS
- Название:Документация NetAMS
- Автор:
- Жанр:
- Издательство:netams.com
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Документация NetAMS краткое содержание
Документация NetAMS - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
set log Phase Chat LCP IPCP CCP tun command
set radius /etc/ppp/radius.conf
set speed sync
set timeout 240
set ctsrts off
set accmap 000a0000
enable lqr
set cd 5
enable pap chap
set ifaddr HISADDR 192.168.0.253 # .253 is the server's end
#############################################################
### /etc/ppp/radius.conf ####################################
auth 192.168.0.1 secretkey 5 3
#############################################################
Запуск сервера PPPoE:
/usr/libexec/pppoed–p \* -l pppoe fxp0
Настройка FreeRADIUS
Для начала надо собрать FreeRADIUS из портов или исходников. Пакет не подойдет, т.к. там отсутствуют необходимые заголовочные файлы для сборки нашего собственного модуля.
cd /usr/ports/net/freeradius/
make && make install
Переходим в дистрибутив NeTAMS и копируем наш модуль rlm_netams куда следует; потом собираем:
cd ~/netams/addon/
cp–rp rlm_netams /usr/ports/net/freeradius/work/freeradius–1.0.1/src/modules/
cd /usr/ports/net/freeradius/work/freeradius–1.0.1/src/modules/rlm_netams
gmake
gmake install
Правим конфигурацию FreeRADIUS, чтобы использовать локальный сервер доступа с правильными паролями:
### /usr/local/etc/raddb/clients.conf #######################
client 192.168.0.1 {
secret = secretkey
shortname = pppoe_server
}
#############################################################
И чтобы использовать наш rlm_netams:
### /usr/local/etc/raddb/radius.conf #######################
…
modules {
…
netams {
server = «192.168.0.1» # netams server IP
port = 20001 # netams server port
login = «freeradius» # netams access username
password = «ABCDEF» # netams access password
swap–inout = «yes» # swap IN and OUT counters for accounting
defaultpolicy = «RadAcc»# policy for rawdata
billing–login = «no» # check username from unit or billing
}
}
authorize {
…
netams
}
authenticate {
…
netams
}
accounting {
…
netams
}
#############################################################
Настройка NeTAMS
Очень желательно добавить специального пользователя, от имени которого будет идти подключение к NeTAMS:
### /usr/local/etc/netams.cfg ###############################
user oid 0832ED name freeradius password ABCDEF permit radius
#############################################################
Если вы хотите использовать авторизацию доступа к веб–страницам со статистикой через mod_auth_radius, измените:
### /usr/local/etc/netams.cfg ###############################
service html
…
htaccess radius
…
#############################################################
Настройка Apache (опционально)
Берем mod_auth_radius отсюда: http://www.freeradius.org/mod_auth_radius/
Компилируем, ставим:
apxs–i–a–c mod_auth_radius.c
Настраиваем апач:
…
AddRadiusAuth 192.168.0.1:1812 secretkey 5:3
AddRadiusCookieValid 5
…
AllowOverride All
…
Запускаем все хозяйство. Допустим, в конфигурационном файле у нас присутствует юнит с именем client1 и паролем abc, у него установлен адрес 192.168.0.111, и есть политика фильтрации с именем filter1 и OID ABCFEF.
Можно проверить работоспособность NeTAMS через утилиту netamsctl:
~#netamsctl radius auth nas login client1 password abc nas–id TEST
1 2
Framed–IP–Address: 192.168.0.111
Filter–ID: ABCFEF filter1
Здесь в первой строке вывода число «1» означает «успешно», далее «2» говорит от том, что последуют две строки параметров.
Первая строка передает IP–адрес этого юнита, Вторая — OID и имя фильтра (может быть затем использовано вашим скриптом if–up). В случае неправильного пароля:
~#netamsctl radius auth nas login client1 password abcef nas–id TEST
0 password incorrect for client1
В обоих случаях информация о событии попадет в лог–файл и таблицу EVENTS базы SQL.
Узнать, как происходит работа RADIUS–сервера, что кому куда передается, можно запустив этот сервер с ключом–X:
/usr/local/sbin/radiusd–X
TODO
• Сделать обработку аккаунтинга, поступающего от NAS–сервера. Видимо, для этого придется сделать новый тип data–source.
• Протестировать работу сервера доступа Cisco (никто не хочет дать тестовый доступ?)
• Сделать более жестким ограничение на тип передаваемого фильтра: сделать новый target radius–filter XXX. Сделать пример скрипта, который этот XXX обрабатывает.
• Сделать аналог rlm_netams для другого RADIUS–сервера? FreeRADIUS считается наиболее распространенным.
Сбор произвольных данных через ds_raw
Начиная с версии NeTAMS 3.4.0 (build 3018) появилась возможность учета произвольных данных с использованием сервиса
service data–source 3
type raw
Команда:
rawdata unit name XXX policy YYY in AAA out BBB {as–is|incremental} [time]
Где XXX и YYY — имена юнита и политики
AAA и BBB — значения в байтах, допускается использование окончаний K, M, G.
As–is означает, что переданные значения напрямую добавятся в поток для данного юнита и присуммируются к статистике.
Incremental означает, что к статистике добавится разница между текущим и предыдущим значением rawdata. При этом первое переданное rawdata не учтется (мало ли, там гигантское число уже накопилось пока netams не работал). Если переданное значение меньше запомненного текущего, оно будет сохранено, а записана будет разница со следующим(большим) значением.
Time — время. Если опущено данные будут учтены с текущим временем.
Вопросы безопасности
Поскольку NeTAMS запускается с правами root, и отвечает за подсчет не бесплатного трафика, безопасность всей системы является очень важным фактором. Существует несколько потенциально небезопасных направлений:
• Взлом всей системы через программу
• Взлом защиты самой программы
• Действия, приводящие к неверному учету трафика
Автор программы не несет никакой ответственности за ее использование и за тот ущерб, который (явно или неявно) может быть нанесен кому–либо в результате работы этой программы или ее компонентов. Если вы несогласны с этим утверждением, деинсталлируйте программу и все ее компоненты немедленно!
При написании NeTAMS не предпринималось никаких попыток установить компоненты, позволяющие создателю или кому–либо осуществить несанкционированный доступ в систему с работающей программой. Вместе с тем, в результате неизбежных ошибок программирования, такая возможность может потенциально существовать. На данный момент ни одного случая взлома программы зарегистрировано не было.
Несанкционированный доступ к программе может быть получен путем узнавания пароля и присоединения к программе через telnet. Для защиты от этого пароли на доступ шифруются через crypt(); в статических HTML–страницах пароли заменяются звездочками (show config unsecure). Однако рекомендуется выполнить следующие действия:
• Установите права на чтение конфигурационного файла и лог–файлов только для пользователя root
• Отмените права на чтение локальных файлов HTML–статистики тем, кому не нужно
• Установите (средствами http–сервера) права на просмотр статистики «извне» только тем, кому нужно
• Отмените возможность логина в программу не с локальной машины:
• service server 0
• login localhost
• Отрежьте правилами firewall вашей системы нелокальное подключение к программе:
• ipfw add 100 allow ip from any to any via lo0
• ipfw add 110 deny tcp from any to me 20001
Неправильный учет трафика возможен при неверном расположении правил ipfw/iptables и при получении статистики netflow от неизвестного источника. Для избежания этого:
• Подумайте, как данные ходят по вашей сети
• Нарисуйте схему сети с именами интерфейсов
• Выпишите список имеющихся правил ipfw/iptables и придумайте номер (место) вашего правила, через которое будет осуществляться «заворачивание» трафика
Читать дальшеИнтервал:
Закладка: