Translations of this page:

Ipn

Модуль для подсчета трафика в локальной сети.

  • Позволяет разделять трафик на 65535 класов.
  • Возможно разделение трафика по IP-адресам или по портам.
  • Блокировка клиентов с отрицательным депозитом.
  • Авторизация клиентов через Web-интерфейс или по 802.1х
  • Club Monitor - упрощёный мониторинг для компьютерного клуба. Выдача карточек доступа к сети. Печать чеков.

Схема построения сети

Схема авторизации


Как работает

Модуль получает данные о трафике от внешних коллекторов (trafd, ipcad, Cisco Netflow). Получив данные от коллектора, система просматривает таблицу активных сессий (/ Monitoring/ Dialup / VPN/) и для них проводит подсчет трафика в зависимости от тарифного плана клиента. Модуль использует тарифные планы, описанные в модуле Dv (Dialup/VPN). Если данные о трафике не принадлежат ни одной из активных сессий, то они складываются в файл /usr/abills/abills2/var/log/ipn/unknown_ip.log при включённой опции UNKNOWN_IP_LOG.
Для получения данных и их подсчёта и складывания в базу используются следующие программы:

  • trafdstats - для получения данных от trafd и последующей их обработкой traffic2sql
  • traffic2sql - для получения данных от других коллекторов (Ipcad, flowtools).

Система периодически запускает их из cron.

Авторизация пользователей: При открытии страницы браузером пользователи автоматически попадают на страницу авторизации и только после успешной авторизации могут пользоваться интернетом.

Настройка Abills

(В качестве примера используется машина под управлением FreeBSD)

# cd /usr/abills/libexec/
# ln -s ../Abills/modules/Ipn/trafdstats trafdstats
# ln -s ../Abills/modules/Ipn/traffic2sql traffic2sql

Создать таблицы в базе.

#  mysql --default-character-set=utf8 -D abills < db/Ipn.sql

abills/libexec/config.pl

@MODULES = (
          'Ipn'
          );

Опции:

$conf{IPN_DETAIL}=1; Вести детальную статистику. на сервере где traffic2sql работает
$conf{IPN_DETAIL_MIN_SIZE}=1024; Задаёт минимальный размер пакета который будет попадать в детализацию. Данная опция предохраняет от замусоривания
$conf{IPN_STATIC_IP}=1; Использовать только статические адреса.
Система проверяет статические адреса всех имеющихся клиентов и присваивает им траффик. Исключая таким образом потери из за переподключений при использовании динамических адресов авторизации. При даной схеме работы трафик в журнал / Monitoring / Online не попадает он складывается непосредственно в статистику пользователя
$conf{IPN_FILTER}=»/usr/abills/libexec/ipn_filter.sh»; Полный путь к программе, которая запустится, если у клиента заполнено поле Filter ID. Программе передаются следующие аргументы %STATUS (ONLINE_ENABLE,ONLINE_DISABLE,HANGUP)
%LOGIN
%IP
%FILTER_ID
%PORT
%UID
в виде аргументов.
Также передаются переменные окружения:
NAS_IP_ADDRESS
NAS_MNG_USER
NAS_MNG_IP_PORT

Не забывайте, что при ручной активизации пользователя программа может выполняться с правами веб-сервера, поэтому лучше её запускать через sudo.
Пример: abills/misc/ipn_filter.sh
$conf{IPN_DETAIL_CLEAN_PERIOD}=30; Чистить лог детализации каждых 30 дней
$conf{IPN_USERMENU}=1; Включить в пользовательском интерфейсе меню открытия доступа
$conf{IPN_CLUBMONITOR}=1; Включить клуб монитор. Упрощённый интерфейс мониторинга активных сессий и меню создания карточек доступа
$conf{IPN_DEPOSIT_OPERATION}=1; Снимать деньги модулем IPN. При включении этой опции деньги со счёта снимаются в реальном времени после каждого обновления статистики.
$conf{IPN_FW_FIRST_RULE}=20000; Номер первого правила в брандмауэре
$conf{IPN_FW_START_RULE}=»« Правила для открытия доступа.
Программе всегда передаются следующие параметры:
%IP - ип адрес
%MASK - маска
%NUM - номер правила ($conf{IPN_FW_FIRST_RULE} + (PORT или последняя цифра IP адреса) )
%LOGIN - Логин

Примеры:
FreeBSD
»/usr/local/bin/sudo /sbin/ipfw -q delete %NUM;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from %IP to any;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from any to %IP»;
Пример с шейпером
$conf{IPN_FW_START_RULE}=»/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn up fxp1 %LOGIN %IP». ' > /dev/null 2>&1;'. »/usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from %IP to any; /usr/local/bin/sudo /sbin/ipfw -q add %NUM allow ip from any to %IP»;

Linux
»/usr/bin/sudo /sbin/iptables -t nat -I PREROUTING 1 -s %IP/%MASK -j ACCEPT;
/usr/bin/sudo iptables -I FORWARD 1 -s %IP -d 0/0 -j ACCEPT;
/usr/bin/sudo iptables -I FORWARD 1 -s 0/0 -d %IP -j ACCEPT»;
$conf{IPN_FW_STOP_RULE}=»« Правила для закрытия доступа.
FreeBSD
»/usr/local/bin/sudo /sbin/ipfw -q delete %NUM;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM deny ip from %IP to any;
/usr/local/bin/sudo /sbin/ipfw -q add %NUM deny ip from any to %IP»;
Пример с шейпером
$conf{IPN_FW_STOP_RULE}=»/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn down fxp1 %LOGIN %IP». ' > /dev/null 2>&1;'. »/usr/local/bin/sudo /sbin/ipfw -q delete %NUM»;

Linux
»/usr/bin/sudo /sbin/iptables -t nat -D PREROUTING -s %IP/%MASK -j ACCEPT;
/usr/bin/sudo iptables -D FORWARD -s 0/0 -d %IP -j ACCEPT;
/usr/bin/sudo iptables -D FORWARD -s %IP -d 0/0 -j ACCEPT»;
$conf{IPN_FW_RULE_UID}=1; Использовать UID (ID пользователя в системе) как префикс для создания правил разрешения доступа. Правила создаются следующим образом $conf{IPN_FW_FIRST_RULE} + UID. По умолчанию система в качестве префикса использует 4 байт IP адреса: для 192.168.10.23 - $conf{IPN_FW_FIRST_RULE} + 23.

Для ОС FreeBSD обязательно включите следующие опции в ядро:

options         IPFIREWALL
options         IPFIREWALL_DEFAULT_TO_ACCEPT
options         IPFIREWALL_FORWARD
options         DUMMYNET
options         IPFIREWALL_VERBOSE
options         IPDIVERT

Настройка сервера доступа

/ System configuration/ NAS/

Type ipcad

/ System configuration/ NAS/ IP POOLs/
Нужно внести пул адресов, с которых можно авторизоваться.

Тарифные планы

Модуль использует тарифную логику модуля Dv (Internet).

  • Заводим классы трафика / System configuration/ Internet/ Traffic Calsses. Глобальный класс трафика должен иметь номер 0.
  • Заводим тарифные планы в / System configuration/ Internet/ Tarif plans/ .
  • В тарифном плане выбираем Intervals. Заводим интервал времени. После заведения интервала времени заводим тарификацию трафика. В тарификации трафика обязательно указывать сети в противном случае модуль не будет вести подсчёт трафика.

Активизация пользователя администратором

/ Customers/ Logins/ Information/ Services/ IP Net/

IP: IP адрес клиента
NAS: Сервер доступа. Автоматически выбирается из списка, если IP адрес клиента находится в пуле адресов NAS

Traffic Collectors

Программы сбора статистики для последующей ее обработки биллингом

trafd

http://bpft4.sourceforge.net/ Коллектор трафика для FreeBSD

# cd /usr/ports/net-mgmt/trafd/
# make
# make install

/etc/rc.conf

trafd_enable="YES"
trafd_ifaces="rl0"

/etc/crontab

*/5 * * * * root /usr/abills/libexec/trafdstats 1 rl0

flow-tools

http://www.splintered.net/sw/flow-tools/
Пакет утилит для работы с NetFlow потоками отправляемыми маршрутизаторами Cisco или Juniper.

# cd /usr/ports/net-mgmt/flow-tools
# make
# make install

Запускаем

flow-capture -S 5 -n 287 -N 0  -d 5 -w /usr/abills/var/log/ipn/  0/0/9996

Параметры:
-S 5 - каждые 5 минут коллектор будет скидывать статистику о своей работе в лог. Самое интересное там - это количество потерянных посылок, которые не дошли до коллектора

-n 287 - количество ротаций файлов с записями о соединениях в сутки. 287 означает создание нового файла с данными netflow каждые 5 минут.

-N 0 - так называемый nesting_level; определяет структуру директорий которая, будет создаваться при записи файлов с соединениями, 0 - файл с данными netflow в каталоге.

-d 5 - Уровень отладки. Используется только для теста или выявления аномалий. Можно не указывать.

-w /usr/abills/var/log/ipn/ - Каталог, в котором сохраняются файлы с данными netflow.

0/0/9995 - по порядку: адрес, на котором коллектор будет принимать netflow, адрес с которого коллектор будет принимать netflow и порт, на который коллектор будет принимать netflow. Если первый заменить на 0, то коллектор будет принимать на любой адрес из доступных интерфейсов, если второй заменить на 0, то коллектор будет принимать netflow данные с любых адресов. Этого делать не рекомендуется по одной простой причине: netflow не имеет никаких средств авторизации, поэтому если адрес, на котором коллектор принимает netflow, доступен кому-то еще, то злоумышленник может послать ложные данные. Учитывая то, что данные netflow могут использоваться как для расчетов, так и выявления сетевых проблем и аномалий, лучше обезопаситься и задать все жестко.
Кроме того, можно запустить несколько коллекторов на разных адресах и/или портах, так же один колектор может работать с несколькими роутерами одновременно и различать их по полю engine-id.

Автоматический старт при загрузке в FreeBSD:

# chown flowtools /usr/abills/var/log/ipn/

/etc/rc.conf

flow_capture_enable="YES"
flow_capture_datadir="/usr/abills/var/log/ipn/" 
flow_capture_port="9996"
flow_capture_flags="-S 5 -n 287 -N 0 -d 5"

Запуск нескольких демонов flow_capture

Иногда возникают ситуации когда нужно запустить несколько процессов flow_capture для получения flow потоков от разных серверов доступа. /etc/rc.conf

flow_capture_enable="YES"
flow_capture_profiles="r1 r2"
# описание первого демона на порту 9997
flow_capture_r2_datadir="/usr/abills/var/log/ipn/"
flow_capture_r2_port="9997"
flow_capture_r2_flags="-S 5 -n 1400 -N 0 -d 5"
# описание второго демона 9996
flow_capture_r1_datadir="/usr/abills/var/log/ipn2/"
flow_capture_r1_port="9996"
flow_capture_r1_flags="-S 5 -n 287 -N 0 -d 5"

ipcad

http://sourceforge.net/projects/ipcad/ Демон, собирающий статистику по трафику на компьютере под управлением Linux или FreeBSD, с возможностью экспортирования её по NetFlow.

# cd /usr/ports/net-mgmt/ipcad/
# make
# make install

Правим /usr/local/etc/ipcad.conf

# Интерфейс для сбора статистики
interface fxp0;

# детализация по портам 
#capture-ports enable;

# Агрегировать порты, уменьшает размер базы детализации 
#aggregate 1024-65535    into 65535;     /* Aggregate wildly */
#aggregate 3128-3128     into 3128;      /* Protect these ports */
#aggregate 150-1023      into 1023;      /* General low range */

# Експортирование статистики на адрес 127.0.0.1 порт 9996
netflow export destination 127.0.0.1 9996;
netflow export version 5;       # NetFlow export format version {1|5}
netflow timeout active 30;      # Timeout when flow is active, in minutes
netflow timeout inactive 15;    # Flow inactivity timeout, in seconds
netflow engine-type 73;         # v5 engine_type; 73='I' for "IPCAD"
netflow engine-id 1;            # Useful to differentiate multiple ipcads.

dumpfile = ipcad.dump;
chroot = /var/ipcad/
pidfile = ipcad.pid;  

rsh enable at 127.0.0.1;
memory_limit = 16m;

Запуск скрипта обработки статистики
/etc/crontab

  */5 * * * * root /usr/abills/libexec/traffic2sql 8 flowdir=/usr/abills/var/log/ipn/

Если у Вас несколько NAS-серверов (коллекторов траффика), то для каждого нужно создать отдельную папку для логов.

Cisco

(aka kir)

no ip rcmd domain-lookup
ip rcmd rsh-enable
ip rcmd remote-host firewall 192.168.0.1  root enable
!
ip flow-export source FastEthernet0/1
ip flow-export version 5
ip flow-export destination 192.168.0.1 9996
!
access-list 100 permit 172.19.80.0 0.0.0.255 192.168.0.1
- Разрешаем прохождение пакетов на сервер статистики
access-list 100 dynamic ABILS permit IP any any
- Динамические правила будут добавляться тут
access-list 100 deny ip any any
Если правила нет, доступ пользователю по умолчанию закрыт!
!
interface FastEthernet0/1.21
 ip address 192.168.0.1 255.255.255.0
 ip access-group 100 in
Не забываем привязать группу правил к интерфейсу!
!

192.168.0.1 - Адрес коллектора для потока Netflow (flow-tools)

Для блокировки и открытия доступа можно использовать скрипт

# /usr/abills/misc/cisco_access
   ACTION - Allow/Deny
   IP     - Client IP
   debug  - Make debug log

/usr/local/etc/sudoers

www   ALL = NOPASSWD: /usr/abills/misc/cisco_access

Shaper control (Локальный NAS)

В качестве шейпера удобно использовать /usr/abills/libexec/linkupdown.

FreeBSD

fxp0 - Интерфейс к которому подключаются пользователи.

config.pl

$conf{IPN_FW_START_RULE}="/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn up getif %LOGIN %IP". ' > /dev/null 2>&1';
$conf{IPN_FW_STOP_RULE}="/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn down getif %LOGIN %IP". ' > /dev/null 2>&1';

При использовании шейпера ipfw система по умолчанию использует правила с номера 20000 по 40000. Для изменения номера начального правила можно воспользоваться опцией $conf{IPN_FW_FIRST_RULE}.

sudo

/usr/local/etc/sudoers

#Allow ABillS shapper
www   ALL = NOPASSWD: /usr/abills/libexec/linkupdown

Linux

Скрипт которые подготавливает интерфейс для использования шейпера. /etc/rc.d/init.d/shaper.sh

#!/bin/sh
# При использовании нескольких интерфейсов указываем их через пробел
INTERFACES='eth0 eth2';
TC="/sbin/tc"

for INTERFACE in ${INTERFACES}; do
  TCQA="${TC} qdisc add dev ${INTERFACE}"
  TCQD="${TC} qdisc del dev ${INTERFACE}"

  $TCQD root &>/dev/null
  $TCQD ingress &>/dev/null

  $TCQA root handle 1: htb
  $TCQA handle ffff: ingress

  echo "Shaper UP ${INTERFACE}"
done

eth0,eth1 - Интерфейс к которому подключаются пользователи.

config.pl

$conf{IPN_FW_START_RULE}="/usr/bin/sudo /usr/abills/libexec/linkupdown ipn up eth0 %LOGIN %IP". ' > /dev/null 2>&1';
$conf{IPN_FW_STOP_RULE}="/usr/bin/sudo /usr/abills/libexec/linkupdown ipn down eth0 %LOGIN %IP". ' > /dev/null 2>&1';
sudo

/etc/sudoers

#Allow ABillS shapper
apache   ALL = NOPASSWD: /usr/abills/libexec/linkupdown

Контроль доступа (Access Control)

sudo

Настройка sudo, для запуска правил фаервола от имени пользователя, под которым работает WEB сервер.

# cd /usr/ports/security/sudo

# make
# make install

/usr/local/etc/sudoers

Для FreeBSD:

#Allow ipfw operation without password for webserver user
www   ALL = NOPASSWD: /sbin/ipfw

Для линукса:

#Allow iptables operation without password for webserver user
www   ALL = NOPASSWD: /sbin/iptables

FreeBSD ipfw

Управление доступом, шейпером и переинициализация сессий при перезагрузке сервера:

FreeBSD
/usr/local/etc/rc.d/ipn_restart

#!/bin/sh

# Add Ipn NAS ID to /etc/rc.conf
# abills_ipn_nas_id="" ABillS NAS Ids
#
# abills_ipn_if="" Shapper interface
#
# abills_ipn_allow_ip="" Allow unauth ip

# PROVIDE: ipn_up
# REQUIRE: NETWORKING vlan_up abills_shaper
# BEFORE: mpd
# KEYWORD: shutdown

. /etc/rc.subr
name="ipn_up"
rcvar=`set_rcvar`
load_rc_config ${name}

echo "Ipn Sessions Restart";

: ${abills_ipn_nas_id=""}
: ${abills_ipn_if=""}
: ${abills_ipn_allow_ip=""}

if [ x${abills_ipn_nas_id} = x ]; then
  exit;
fi;

# Запуска шейпера Dummynet  
if [ w = w`grep ng_car /usr/abills/libexec/config.pl` ]; then
   /usr/abills/libexec/billd checkspeed NAS_IDS=${abills_ipn_nas_id} RECONFIGURE=1
fi;

if [ w${abills_ipn_if} != w ]; then
  IFACE=" via ${abills_ipn_if}"
fi;

ipfw=/sbin/ipfw

#Перенаправить все запросы неавторизированых клиентов на авторизатор
${ipfw} add 64000 fwd 127.0.0.1,80 tcp from any to any dst-port 80 ${IFACE}

# Разрешить ping к серверу доступа
${ipfw} add 64100 allow icmp from any to me  ${IFACE}
${ipfw} add 64101 allow icmp from me to any  ${IFACE}

if [ x${abills_ipn_allow_ip} != x ]; then
  # Доступ к странице авторизации  
  ${ipfw} add 10 allow tcp from any to ${abills_ipn_allow_ip} 9443  ${IFACE}
  ${ipfw} add 11 allow tcp from ${abills_ipn_allow_ip} 9443 to any  ${IFACE}
  ${ipfw} add 12 allow tcp from any to ${abills_ipn_allow_ip} 80  ${IFACE}
  ${ipfw} add 13 allow tcp from ${abills_ipn_allow_ip} 80 to any  ${IFACE}

  # Разрешить ДНС запросы к серверу
  ${ipfw} add 64400 allow udp from any to ${abills_ipn_allow_ip} 53
  ${ipfw} add 64450 allow udp from ${abills_ipn_allow_ip} 53 to any
fi;  

# Закрыть доступ неактивизированым хостам
${ipfw} add 65000 deny ip from not table\(10\) to any ${IFACE} in

Обязательно добавьте в

параметры /etc/rc.conf

abills_ipn_nas_id=«Номер IPN наса» Номер сервера доступа. Обязательный параметр
abills_ipn_if=«интерфейс к которому подключаются пользователи» Интерфейс к которому подключаются клиенты
abills_ipn_allow_ip=«разрешённые ип адреса» Разрешённые без авторизации IP адреса. Разделяются запятой

Linux iptables

# Доступ к странице авторизации
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 80
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 443 -j REDIRECT --to-ports 80

# Закрыть доступ неактивизированым хостам
iptables -A FORWARD -j DROP
eth0 интерфейс в локальную сеть
eth1 интерфейс наружу
192.168.0.1 локальный IP сервера
192.168.0.0/255.255.255.0 локальная сеть

Удалённый NAS

Управление удалённым сервером доступа.
Задача: открывать доступ пользователям на удалённом NAS.

При выполнении правил шейпера и фильтра в переменные среды передаются дополнительные параметры:

NAS_IP_ADDRESS IP адрес сервера доступа
NAS_MNG_USER Логин для управления сервером доступа
NAS_MNG_PASSWORD Пароль для управления сервером доступа

На сервере билинга

  1. Создать правила открытия доступа

abills/libexec/config.pl

$conf{IPN_FW_START_RULE}='/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.$NAS_MNG_USER $NAS_MNG_USER@$NAS_IP_ADDRESS '.
'"/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn up getif  %LOGIN %IP %DEBUG > /dev/null 2>&1"';

$conf{IPN_FW_STOP_RULE}='/usr/bin/ssh -o StrictHostKeyChecking=no -i /usr/abills/Certs/id_dsa.$NAS_MNG_USER $NAS_MNG_USER@$NAS_IP_ADDRESS '.
'"/usr/local/bin/sudo /usr/abills/libexec/linkupdown ipn down getif %LOGIN %IP %DEBUG > /dev/null 2>&1"';
  1. Создать SSH ключ для выполнения команд на удалённом сервере. Установить право чтения ключа для пользователя под которым работает Веб сервер.
   # abills/misc/certs_create.sh ssh abills_admin
   # chown www abills/Certs/id_dsa.abills_admin

На удалённом сервере

  1. Создать пользователя abills_admin на удалённом сервере.
  2. Скопировать созданный публичный ключ abills/Certs/id_dsa.abills_admin.pub в /home/abills_admin/.ssh/authorized_keys на удалённом сервере.
  3. Сделать копию биллинга на удалённом сервере
  4. Создать правила для выполнения команд с правами суперпользователя на удалённом сервере

/usr/local/etc/sudoers

#Allow ABillS shapper
abills_admin   ALL = NOPASSWD: /usr/abills/libexec/linkupdown
abills_admin   ALL = NOPASSWD: /sbin/ipfw

Apache

В конфиг веб-сервера Apache внесите следующие параметры

ErrorDocument 404 “/abills/”
DirectoryIndex "/abills" index.cgi

Club Monitor

Упрощёный интерфейс управления траффиком компьютерного клуба.
Для включения.
config.pl

$conf{IPN_CLUBMONITOR}=1;

traffic2sql

ABillS IPN Traffic collector
Анализатор трафика для модуля IPN

Параметры:

traffic2sql [NAS_IDS] [Options]

Опции:

NAS_IDS ID (NAS) серверов доступа. Формат: 1,2,3 или 1-100
log Расположение файла траффика для trafd
INTERFACE Интерфейс для trafd
flowdir Каталог в который складываются файлы работы flow-capture
FLOWTOOLS_IP_AGGREGATION Агрегация потоков по IP адресам. Поднимает скорость анализа.
FLOWTOOLS_FT_BACKUP=dir Переносить проанализированные файлы в бекапный каталог. Используется для отладки.
debug Режим отладки (1..6) режим 5 и 6 В БАЗУ ДАННЫЕ НЕ ВНОСИТ
DETAIL_ONLY Складывать в базу только детализацию для активных клиентов (присутствующих в /Monitoring).
UNKNOWN_IP_LOG Включить учёт адресов, не относящихся к активным пользователям
TCOLLECTOR Режим глобального коллектора. Складывать весь трафик, полученный от коллектора.
AMON_ALIVE Интервал получения подтверждения активности от AMon. Интервал задаётся в секундах (Значение по умолчанию 120). Если на протяжении 3 интервалов не пришло ни одного пакета активности система закрывает соединение.
daemon Режим демона (пока в разработке)
FLOW_CAT Местоположение Flow tools flow-cat
FLOW_PRINT Местоположение Flow tools flow-print
PREPAID_STORE Использования отдельной таблицы для хранения значений предоплаченного трафика. Поднимает скорость анализа.
VIRUS_ALERT=1000 Опция разрешает отслеживать заражённые хосты которые рассылаю вирусы. В данной опцие указывается количество мелких пакетов до размером 100 байт за единицу времени при котором хост попадает в чёрный список
LOG_FILE='…' Файл ведения лога работы анализатора

Переинициализация сессий

В начале каждого месяца происходит автоматическая переинициализация активных сессий клиентов.

Для ручного режима переинициализации сессий используется команда

# /usr/abills/libexec/periodic monthly MODULES=Ipn SRESTART=1 NO_ADM_REPORT=1 NAS_IDS=1

Параметры:

NAS_IDS=1,2 Идентификаторы серверов доступа. По умолчанию система переинициализирует пользователей на всех серверах доступа с типом 'ipcad'

Включение активных пользователей

Данная команда автоматически включает всех пользователей с положительным депозитом или правами получать сервис. Активируются только те пользователи у которых прописан IP адрес сервиса Internet. Также обязательно на IPN серверах доступа прописать пулы адресов для таких пользователей чтобы система знала на каких серверах доступа активировать абонентов.

# /usr/abills/libexec/periodic monthly MODULES=Ipn LOGON_ACTIVE_USERS

Параметры:

NAS_IDS=1,2 Идентификаторы серверов доступа. По умолчанию система переинициализирует пользователей на всех серверах доступа с типом 'ipcad'
TP_IDS=3,6 Номера тарифных планов для активации. По умолчанию все
LOGINS=test,test3 Логины пользователей. По умолчанию все
DEBUG=… Дебаг режимы

config.pl

$conf{IPN_DHCP_ACTIVE}=1; Включать сервис для всех IP адресов прописанных в IP (DHCP) секции абонента. С начало включаются адреса Internet сервиса если они не равны 0.0.0.0, а потом адреса IP сервиса.

Активация пользователя

Система разрешает пользоваться интернетом только пользователей у которых активизированы сессии. Активизация сесий пользователей может происходить двумя путями: активизация сессии администратором, активизация сессии из пользовательского кабинета.

  • Активизация сессии администратором


Включение сессии.

Таблица внизу отображает активные сессии пользователя

  • Активизация сессии пользователям. При активации сессии система автоматически определяет принадлежность пользователя к серверу доступа исходя из IP адреса клиента и пула прикреплённому серверу доступа.
 
abills/docs/modules/ipn/ru.txt · Последние изменения: 2012/02/03 12:06 — asmodeus
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki