Книга: Документация NetAMS

Часто задаваемые вопросы

Часто задаваемые вопросы

• Какие пакеты мне нужно поставить, чтобы NeTAMS заработал?

• Все зависит от комбинации желаемых data–source и storage. В общем виде список пакетов для Linux приведен тут. Для FreeBSD ничего дополнительного помимо SQL и веб–сервера ставить не надо.

• Как мне создать базу и таблицы SQL?

• Специально создавать базу данных не нужно (MySQL). NeTAMS сам создаст ее при первом старте; таблицы с данными (raw и summary) будут создаваться, когда пойдет реальный трафик и начнется учет. Для Postgres вы можете создать таблицы вручную (они лежат в каталоге addon/), для Oracle вы ДОЛЖНЫ создать схему вручную (addon/oracle/).

• При компиляции не нашелся SQL. Как быть?

• Обычно, при сборке, скрипт configure.sh сканирует набор системных каталогов в поиске клиентских библиотек и заголовочных файлов. При этом на консоль выводится что–то вроде:

freebsd–vm:~/netams#make

/bin/sh configure.sh

##########################################################

## Configuring NeTAMS for build targets… ##

FreeBSD operating system…

With FreeBSD 5.XX, will have netgraph module…

Will have MYSQL support

[ /usr/local/lib/mysql /usr/local/include/mysql ]

Will have POSTGRESQL support

[ /usr/local/lib /usr/local/include ]

Will have BILLING service

Will have DEBUG flag set

Will have RADIUS support

Will have private portion of Makefile

## Configuration file was built. ##

##########################################################

К сожалению, стандартного места для таких библиотек нет, ваш конкретный дистрибутив может ставить программы куда угодно (особенно славится этим Linux), в связи с чем configure.sh может не найти библиотеки и при старте программа само–выключится с сообщением:

parse: registering storage: 1

parse: using storage:2 as source for READ and STAT requests

parse: creating service storage:1

parse: storage type is unknown

В таком случае вам необходимо вручную добавить соответствующие пути в верхние строки (начало) файла configure.sh, и пересобрать программу через:

make distclean && make

• Как мне блокировать трафик, если я использую libpcap?

• В общем случае — никак. Библиотека libpcap позволяет только слушать проходящий мимо интерфейса трафик. Все возможность блокировки через fw–policy или sys–policy работают ТОЛЬКО при наличии «перехватывающего» сервиса data–source, например IPFW или iptables/IPQ. Вы также можете написать свой скрипт (де)блокировки, который будет вызываться сервисом processor каждый раз, когда изменяется состояние системной политики юнита (см. документацию и пример).

• Почему бы не хранить конфигурацию в SQL?

• По историческим причинам NeTAMS держит ВСЮ свою конфигурацию в текстовом файле. Один и тот же код отвечает за разбор конфигурационного файла при старте, и настройку работающей программы через интерфейс командной строки. Хранение (части) конфига в SQL–базе, вообще–то очень полезная фича, потребует дублирования кода разбора конфига, дублирование кода записи конфига, и нетривиальных механизмов синхронизации SQL и внутренних структур данных работающей программы. К тому же, для управления SQL–конфигом придется писать отдельный веб–интерфейс. Эта задача (пробовали, не получилось) слишком трудоемка, чтобы браться ее реализовать в рамках бесплатного проекта и за разумное время.

• У меня чего–то не компилируется/не настроено/не работает, помогите!

• У вас есть две возможности. Можно обратиться к авторам программы за платной поддержкой по инсталляции и настройке (потребуется доступ по SSH, схема сети, описание задачи и в среднем $200). Можно обратиться за поддержкой в форум, где надо указать: версию ОС, netams, установленного софта; подробное описание проблемы; лог–и конфиг–файл (последний — сделанный через save); ключи запуска netams.

• Программа падает, что делать?

• См. предыдущий вопрос. Попробуйте по очереди отключать неиспользуемые опциональные сервисы (html, quota, ..), и пробовать снова. Для корректного разбирательства надо научиться пользоваться GDB. Получить вывод «gdb /usr/local/sbin/netams netams.core», в котором посмотреть «bt full».

• Делаю как написано в документации, команда не срабатывает.

• Документация относится к версии CURRENT. Возможно ваша (более старая) версия netams просто еще понимает ту команду, которую вы задаете.

• FreeBSD+NAT+SQUID. Конфигурация для подсчета трафика.

• При помощи divert или tee трафик, проходящий через NAT и SQUID, нужно завернуть для подсчета а нетамс.

• Для этого нужно добавить в файервол divert или tee на нетамс трафика по порту 3128(прокси)

• Допустим правило трансляции стоит под номером 800.

• Тогда, один divert или tee на нетамс до NAT–а и один после.

• В этоге в netams.cfg нужно прописать следующее:

service data–source 0

type ip–traffic

source divert/tee 199

rule 400 «tcp from any to any 3128»

rule 500 «tcp from any 3128 to any»

rule 700 «ip from any to any via rl1»

rule 900 «ip from any to any via rl1»

получим в IPFW

• …..

• 00400 divert/tee 199 tcp from any to any 3128

• 00500 divert/tee 199 tcp from any 3128 to any

• ……

• 00700 divert/tee 199 ip from any to any via rl1

• 00800 divert 8668 ip from any to any via rl1

• 00900 divert/tee 199 ip from any to any via rl1

• ……

• rl1 — это внешний интерфейс, который смотрит в интернет.

• service scheduler — суммарная информация по группе

• Если

• send report on GROUP

• заменить на

• send report on GROUP+

• тогда в письме будет не только суммарная информация по группе, но и данные по всем ее членам.

• Ошибки, связанные с работой cgi–скриптов в Admintool

• (http://www.netams.com/ubb/cgi–bin/ultimatebb.cgi?ubb=get_topic&f=2&t=002270) Стандартная ситуация, когда при вызове скрипта из Admintool (типа аccounts.cgi) появляется Internal Server Error.

• Решение:

• Смотрим лог Apache и выясняем на что идет ругань

• [Wed Apr 19 23:22:32 2006] [error] [client 192.168.1.3] Can't locate Crypt/GeneratePassword.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.6/i386

• далее идем на http://search.cpan.org/ и устанавливаем недостающей модуль

• После сборки NetAms был проинсталлирован без поддержки MySQL.

• (http://www.netams.com/ubb/cgi–bin/ultimatebb.cgi?ubb=get_topic&f=2&t=002301)

• Редактируем PATH в configure.sh указывая путь к MySQL в своей системе, чтобы при сборки NeTAMS включить поддержку MySQL.

#!/bin/sh

# Configuration script for NeTAMS project

# $ Id: configure.sh,v 1.41 2005/07/21 15:48:24 anton Exp $

##########################################################

PATH=/usr/local/sbin:/bin:/usr/bin:/usr/sbin:/sbin:/usr/local/bin

export PATH

makefile=Makefile.run

##########################################################

Оглавление книги


Генерация: 0.113. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз