...
Блок кода | ||
---|---|---|
| ||
# Порт для отправки PoD и CoA-запросов (по умолчанию - порт, заданный в устройстве в поле Хост/порт) radius.port=3799 # Режим поиска сервиса (аккаунта) договора: 0 (по умолчанию) - по логину, 1 - по интерфейсу на устройстве (в предобработке должны быть # проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или INTERFACE_ID), 2 - по VLAN на устройстве (в предобработке # должны быть проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или VLAN_ID), 4 - по VLAN на устройстве или # дочернем устройстве (в предобработке должны быть проставлены опции AGENT_REMOTE_ID и AGENT_CIRCUIT_ID или VLAN_ID), # 5 - по MAC-адресу на устройстве (в предобработке должна быть проставлена опция MAC_ADDRESS), 6 - по MAC-адресу на # устройстве или дочернем устройстве (в предобработке должна быть проставлена опция MAC_ADDRESS).IP-адресу (если в аккаунте указан статический адрес) radius.servSearchMode=7 # Нужно ли проверять пароль: 0 - нет (например, для IPoE), 1 (по умолчанию) - да. radius.password.verification=0 # Берем адрес из Access-Request radius.address.fromRequest=1 # Какие адреса выдавать при ответе Access-Accept в состоянии disable: # 0 (по умолчанию) - из radius.disable.ipCategories, 1 - так же, как если бы не было ошибки (в том числе привязанные к сервису в договоре) radius.disable.mode=0 # При выдаче Access-Accept добавлять запись в базу. # Hеобходимо, если используется Reject-To-Accept и по Start-пакету нельзя определить в каком состоянии соединение connection.start.fromAccept=1 # Таймаут перевода соединения в статус suspended при отсутствии радиус пакетов сессии connection.suspend.timeout=3600 # Таймаут закрытия соединения при отcутствии радиус пакетов сессии (не складывается с connection.suspend.timeout) connection.close.timeout=3600 # При закрытии соединения по таймауту, 0 (по умолчанию) - просто закрыть, # 1 - попытаться сбросить также на NAS'е (вызвать connectionClose у обработчика активации сервисов) #connection.close.timeout.forceClose=1 # Атрибуты, выдаваемые при авторизации по реалму default (default - реалм по умолчанию) # Acct-Interim-Interval - требуемый интервал между Accounting-Update запросами по сессии от NAS'а radius.realm.default.attributes=Acct-Interim-Interval=900;Idle-Timeout=4200 # Шаблон опций-параметров сессий radius.inetOption.1.template=cisco-SSG-Account-Info=QU;;$in;;D;;$out # Какие адреса выдавать при ответе Access-Accept в состоянии disable: # 0 (по умолчанию) - из radius.disable.ipCategories, 1 - так же, как если бы не было ошибки (в том числе привязанные к сервису в договоре) radius.disable.mode=0 # Коды ошибок, при которых вместо reject выдавать accept с заданными атрибутами # (пользователю выдается серый адрес и устанавливается HTTP-редирект) radius.disable.accessCodes=1,2,3,4,10,11,12,20,44 # Атрибуты, выдаваемые при ответе Access-Accept в состоянии disable radius.disable.1,2,3,4,11,20,44,62.attributes=Acct-Interim-Interval=90;cisco-SSG-Service-Info=AserviceBlock;Session-Timeout=86400 radius.disable.10,12.attributes=Acct-Interim-Interval=90;cisco-SSG-Service-Info=AserviceNomoney;Session-Timeout=86400 # # Атрибуты, выдаваемые при ответе Access-Accept в состоянии disable radius.disable.attributes=Acct-Interim-Interval=90;cisco-SSG-Service-Info=AserviceBlock # Атрибуты, отправляемые в CoA при необходимости ограничить доступ sa.radius.disable.attributes=Acct-Interim-Interval=90;cisco-SSG-Service-Info=AserviceNomoney # Атрибуты, отправляемые в CoA при необходимости включить доступ sa.radius.enable.attributes=Acct-Interim-Interval=600;cisco-SSG-Service-Info=Aservice300m # # При наличии данных сервисов в RADIUS-Accounting считаем, что у сессии состояние отключено (доступ ограничен) radius.serviceName.disable=serviceNomoney,serviceBlock # Логирование CoA/PoD-запросов (контекстное меню сессии - RADIUS-лог) sa.radius.log=1 # Атрибуты сессии, которые отправляются в CoA (для того, чтобы СКАТEconat идентифицировал, для какой сессии запрос) sa.radius.connection.attributes=User-Name # Не сбрасывать сессию при включении/отключении доступа (а менять параметры, отправлять CoA) sa.radius.connection.withoutBreak=1 # при значении 1 InetAccess при вызове для изменения состояния метода connectionModify из # CoAServiceActivator/ISGServiceActivator/SmartEdgeServiceActivator сразу поменяет состояние в БД (вызовет e.setConnectionStateModified( true ), # рекомендуется для CoAServiceActivator) # Для Econat не работает, т.к. после CoA создаётся новая сессия sa.radius.connection.stateModify=0 # Параметры активации сервисов # длина паузы, если возникла ошибка #sa.error.pause=60 # количество заданий за раз #sa.batch.size=20 # время (сек) ожидания завершения всех заданий (при асинхронной работе) #sa.batch.wait=5 # пауза (сек) после обработки заданий #sa.batch.pause=0 # время (сек) ожидания новой задачи перед вызовом disconnect. #sa.batch.waitNext=5 |
Статические IP-адреса
Если поиск абонента будет происходить по IP-адресу, указанному в сервисе договора, то в конфигурации типа сервиса нужно указать:
Блок кода | ||
---|---|---|
| ||
# Сервисы данного типа учавствуют в поиске по IP-адресу при RADIUS-аутентификации
serv.search.address=1 |
При изменении данного параметра в существующем типе сервиса, с которым сервисы договора уже заведены, требуется перезапуск InetAccess/InetAccounting.
Адреса, выданные по DHCP
Для того, чтобы биллинг находил абонента по IP-адресу, ранее выданному ему по DHCP (с помощью InetDhcpProcessor и, возможно, DHCP Option 82), нужно:
- В inet-access.xml и inet-accounting.xml нужно заменить radiusProcessor с "ru.bitel.bgbilling.modules.inet.radius.InetRadiusProcessor" на "ru.bitel.bgbilling.modules.inet.radius.InetRadiusHelperProcessor";
В конфигурации корневого устройства (Access+Accounting) указать в параметре radius.key.deviceTypeIds ID типа устройства Econat:
Блок кода language bash # Типы устройств с аутентификацией по IP-адресу () radius.key.deviceTypeIds=