Версия документа | Дата выпуска | Содержание изменений |
Версия 1.0 | 21.08.2017 | Первая публикация. |
Версия 1.1 | 21.09.2017 | Выгрузка в СОРМ-3 изменений в записях пользователей Wi-Fi |
Версия 1.3 | 24.10.2017 | Добавление данных оператора в выгрузку СОРМ-3 |
Версия 1.4 | 07.12.2017 | Добавление параметра sorm3.enabled |
Версия 1.6 | 27.02.2018 | Корректировка п.5.3.3 |
Версия 1.7 | 20.04.2018 | Формата даты в выгрузках приведен к виду yyyy-MM-dd HH:mm:ss |
Версия 1.8 | 14.05.2019 | Добавлен DPI |
Рисунок 1 – Общая сетевая топология решения
Между ESR и точками доступа поднимаются SoftGRE-туннели сквозь L3-инфраструктуру оператора. От каждой точки доступа формируется два туннеля: Management-туннель для передачи трафика управления и Data-туннель для передачи абонентского трафика.
Внутри Management-туннеля передается трафик управления точкой доступа в отдельной сети управления. Данная подсеть невидима для L3-сегмента оператора, скрываясь за заголовками GRE-туннеля. Внутри Data-туннеля передается абонентский трафик. Этот трафик терминируется на ESR и далее маршрутизируется в сеть оператора (в сторону его NAT).
Рисунок 2 – Порядок прохождения трафика в схеме BRAS
Данная схема актуальна:
Клиент, подключается к открытой SSID, отправляет DHCP запрос. Этот запрос проходя через ESR-10 инкапсулируется в GRE туннель и передается к ESR. На ESR DHCP-relay перенаправляет запросы к серверу SoftWLC. Ответ проходит в обратном направлении до клиента. Клиенту выдается IP адрес.
При прохождении авторизации на WEB портале, HTTP запросы пользователя проксируются в ESR, при этом происходит замена Source адреса (USER IP) клиента на адрес ESR (PROXY IP). Поэтому между ESR и SoftWLC весь HTTP(S) трафик будет идти с IP адресом ESR а не клиента. Весь остальной трафик будет идти с USER IP адресом.
После прохождения авторизации, весь трафик пользователя в сторону NAT, будет идти без подмены Source адреса (USER IP). Если используется функционал URL фильтрация, то после прохождения авторизации HTTP(S) трафик пользователя проксируются в ESR, при этом происходит замена Source адреса (USER IP) клиента на адрес ESR (PROXY IP). Поэтому между ESR и NAT весь HTTP(S) трафик будет идти с IP адресом ESR а не клиента. Весь остальной трафик будет идти с USER IP адресом. При прохождении через NAT, для трафика пользователя будет устанавливаться «Белый» IP адрес NAT.
При снятии трафика СОРМ, должна учитываться эта реализация.
Рисунок 3 – Порядок прохождения трафика в схеме ТД «Элтекс»
Данная схема актуальна:
При прохождении авторизации на WEB портале, HTTP запросы пользователя проксируются в ТД. После прохождения авторизации весь трафик клиента будет идти с IP-адреса (User IP), который он получил по DHCP.
На ТД «Элтекс» настроены SSID с авторизацией Enterprise, данные RADIUS accounting передаются с ТД в GRE туннеле до ESR (в VRF AP), а затем к SoftWLC в (VRF Baskbone).
На ТД «Элтекс» c Hotspot авторизацией данные RADIUS accounting передаются с ТД в GRE туннеле до ESR (в VRF AP), а затем к SoftWLC в (VRF Baskbone).
На ТД «Элтекс» c Hotspot авторизацией и интеграцией с HotWiFi данные RADIUS accounting формируются на ESR (BRAS), а затем передаются к SoftWLC в (VRF Baskbone).
На ТД других производителей, включенных через ESR в режиме clien, с Hotspot авторизацией, данные RADIUS accounting формируются на ESR (BRAS), а затем передаются к SoftWLC в (VRF Baskbone).
Таким образом весь accounting трафик проходит через VRF Core, от регионального ESR к SoftWLC.
Рисунок 4 – Порядок прохождения RADIUS accounting через сеть оператора
Рисунок 5 – Порядок прохождения RADIUS accounting в системе SoftWLC
Eltex-sorm2-replicator является дополнительным модулем системы SoftWLC. Основные задачи данного модуля:
На серверах принимающих RADIUS accounting в системе SoftWLC, средствами iptables нужно настроить пересылку всего потока RADIUS accounting c DST портов 1813 и 31813 в сторону Eltex-sorm2-replicator на DST порт 41813. Eltex-sorm2-replicator принимает данный поток, извлекает данные RADIUS протокола формирует csv выгрузку и определяет адрес съемника для дальнейшей пересылки пакета. Адрес съемника задается в настройках домена в системе SoftWLC (ЛК B2B). Поиск съемника осуществляется вверх по дереву (от домена точки доступа во всех родительских узлах). Таким образом настроить съемник нужно только в доменах уровня МРФ или только в корневом домене, если съемник используется один.
Информация о домене может быть из (в порядке уменьшения приоритета):
После получения данных формируется пакет и отправлять на IP-адрес регионального съёмника, IP-адрес, DST порт и ключ RADIUS берутся из настроек съемника (ЛК B2B). Таким образом в регион уходит трафик предназначенный только для него, а не весь поток RADIUS accounting.
Информация по соединениям абонентов выгружается в файл:
где N ‐ IP‐адрес Eltex-sorm2-replicator в HEX, с которого выгружается данный файл.
При выставлено флаге DPI в EMS, Eltex-sorm2-replicator добавляется атрибут Eltex-DPI-Step-logic и отправляет обогащенный трафик на указанный съемник, далее по данному флагу будет происходить анализ трафика на стороне DPI.
Если ни одним из способов не удалось найти Ap-Domain точки доступа, то трафик не может быть отправлен на Региональный съемник (привязки которых настраиваются в пункте 4.6). Однако, в этом случае трафик все равно может быть отправлен на Глобальный съемник (global.clients в eltex-sorm2-replicator.json), если хотя бы один из них настроен в конфигурации. Глобальный съемник получает весь трафик, обрабатываемый sorm2-relicator'ом. |
Eltex-radius-sorm3-federal является дополнительным модулем системы SoftWLC. Основная задача данного модуля – подготовка и выгрузка данных об абонентах и базовых станциях на FTP сервер для системы ИС СОРМ «Январь» (МФИ-СОФТ). Работу данного модуля можно разделить на две части:
Доступ к базе данных, в которой хранится информация об абонентах осуществляется через общий Northbound-интерфейс системы, по протоколу SOAP/XML (спецификация представлена в отдельном документе). Доступ к данному API – это обязательное условие работы модуля Eltex-radius-sorm3-federal. Настройка доступа (URL) производится в системных настройках модуля. Запрос информации производится раз в сутки в 04:00.
Информация об hotspot абонентах выгружается в файлы:
Информация об enterprise абонентах выгружается в файлы:
Информация о ваучерах выгружается в файлы:
Информация о WIFI-базовых станциях выгружается в файлы:
Тип выгрузки – инкрементальный. В первой выгрузке содержатся все записи, в последующих выгрузках измененные и новые записи. Данные о базовых станциях выгружаются каждый раз в полном объеме.
2. Загрузка сформированных данных на FTP сервер.
Установку нужно производить на ОС: Linux Ubuntu Server 16.04 x64 LTS. Для корректного формирования выгрузок, нужно настроить время и часовой пояс. Для работы модуля необходимо установить следующий пакет:
‒ Oracle JDK8.
Для установки Oracle JDK8 нужно выполнить следующие команды:
mkdir /usr/lib/jvm tar -zxf /root/jre-8u211-linux-x64.tar.gz -C /usr/lib/jvm |
3. Java машина должна расположиться в директории /usr/lib/jvm/jre1.8.0_211. Теперь нам необходимо создать символьные ссылки на установленную версию java. Делаем это с помощью update-alternatives.
update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jre1.8.0_211/bin/java" 1500 update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jre1.8.0_211/bin/javaws" 1500 |
4. Зададим переменную JAVA_HOME, которую используют некоторые приложения. Для этого добавляем в файл /etc/environment следующую строку.
JAVA_HOME="/usr/lib/jvm/jre1.8.0_211" |
5. Сохраняем его и применяем изменение.
source /etc/environment |
6. Проверяем версию.
java -version echo $JAVA_HOME |
7. Увеличиваем размер буфера сетевых соединений и применяем изменения
sudo echo net.core.rmem_max=134217728 >> /etc/sysctl.conf
sudo echo net.core.rmem_default=134217728 >> /etc/sysctl.conf
sudo sysctl -p
Установка пакета
Устанавливаем пакет Eltex-sorm2-replicator sudo dpkg -i eltex-sorm2-replicator_X.X-XXX_all.deb
После установки пакет нужно настроить и запустить сервис. При обновление пакета требуется ручной запуск. Конфигурационный файл лежит в директории /etc/eltex-sorm2-replicator/eltex-sorm2-replicator.json
{ "acct.address" : "0.0.0.0", "acct.port" : [41813], "acct.receive.buffer.byte" : 134217728, "web.monitoring.port" : 7071, "cluster.enable" : false, "cluster.eventBusPort" : 5802, "radius" : { "url" : "jdbc:mysql://localhost/radius?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&autoReconnect=true", "user" : "javauser", "password" : "javapassword", "max_pool_size" : 16 }, "sql.ems" : { "url" : "jdbc:mysql://localhost/eltex_ems?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&autoReconnect=true", "user" : "javauser", "password" : "javapassword", "max_pool_size" : 16 }, "mongo.sorm2" : { "connection_string": "mongodb://localhost:27017/sorm2" }, "mongo.pcrf" : { "connection_string": "mongodb://localhost:27017/pcrf" }, "global.clients" : { "enabled" : true, "clients" : [ { "host" : "127.0.0.1", "port" : 11813, "secret": "eltex" } ] }, "sorm3" : { "enabled" : true, "host" : "127.0.0.1", "port" : 21, "period_s" : 900, "user" : "ftp", "pass" : "ftp", "acct_dir" : null }, "sorm2" : { "enabled" : true, "federated" : false }, "dpi.step.logic" : { "enabled" : true, "verbose" : true } } |
enabled=false - не вычитывает SSID, высылает все пакеты, не подставляет новые статусы
enabled=true - вычитывает SSID, подcтавляет аргументы dpi и cms в radius
verbose=false - высылает пакет только если dpi = 1 (точка и ссид)
verbose=true - всегда высылает пакет, в пакете значения dpi 0 или 1
Для корректной работы модуля нужно изменить адреса подключения к БД и FTP серверу. Для подключения к кластеру MongoDB нужно указать адреса серверов через запятую, пример:
"connection_string": "mongodb://10.62.18.36:27017,10.62.18.37:27017/pcrf?replicaSet=WIFI"
Eltex-sorm2-replicator распределяет файл в папках FTP сервера по дням, чтобы не столкнуться с проблемой Все файлы в одной директории на FTP. Имя директории имеет вид yyyyMMdd (годМесяцДень). Если бы все файлы сохранялись в одной директории, то рано или позно мы бы уперлись в Maximum number of files per directory, значение которого варьируется в зависимости от типа файловой системы, или банальные неудобства (задержки) при навигации по файлам. Таким образом путь к файлу будет иметь вид yyyyMMdd/file.csv. Корневую директорию для файлоы на FTP сервере можно изменить в параметре acct_dir. Например, acct_dir: ACCO. Тогда путь к файлу будет иметь вид ACCO/yyyyMMdd/file.csv. По умолчанию acct_dir: null, путь к файлу yyyyMMdd/file.csv.
Для изменения списка колонок нужно внести изменения в конфигурационный файл /etc/eltex-sorm2-replicator/sorm3-columns.json и перезапустить сервис Eltex-sorm2-replicator.
Содержимое файла sorm3-columns.json:
tester@tester-6:~$ cat /etc/eltex-sorm2-replicator/sorm3-columns.json { "CONNECTION_TIME": true, "REGION_ID": true, "POINT_ID": true, "LOGIN_TYPE": true, "SESSION_ID": true, "ALLOCATED_IPV4": true, "ALLOCATED_IPV6": true, "USER_NAME": true, "CONNECT_TYPE": true, "CALLING_NUMBER": true, "CALLED_NUMBER": true, "NAS_IPV4": true, "NAS_IPV6": true, "NAS_IP_PORT": true, "IN_BYTES_COUNT": true, "OUT_BYTES_COUNT": true, "USER_PASSWORD": true, "USER_EQ_MAC": true, "USER_EQ_VPI": true, "USER_EQ_VCI": true, "APN": true, "SGSN_IPV4": true, "SGSN_IPV6": true, "GGSN_IPV4": true, "GGSN_IPV6": true, "SERVICE_AREA_CODE": true, "LAC_START": true, "CELL_START": true, "TA_START": true, "WL_CELL_START": true, "WL_MAC_START": true, "LAC_END": true, "CELL_END": true, "TA_END": true, "WL_CELL_END": true, "WL_MAC_END": true, "PHONE_CARD_NUMBER": true, "IMSI": true, "IMEI": true, "ESN": true, "POOL": true, "L2_INTERFACE": false } |
По умолчанию включены все колонки кроме "L2_INTERFACE".
Устанавливаем пакет mailutils ssmtp. Настраиваем адрес smtp сервера и логин/пароль для доступа к нему в /etc/ssmtp/ssmtp.conf
hostname=vagrant-ubuntu-xenial-64
mailhub=mail.eltex.nsk.ru
AuthUser=tester@eltex.nsk.ru
AuthPass=tester
UseTLS=NO
UseSTARTTLS=NO
Настраиваем адрес отправителя в /etc/ssmtp/revaliases:
root:tester@eltex.nsk.ru:mail.eltex.nsk.ru:25
Настраиваем адрес назначения в /etc/default/eltex-sorm2-replicator
#Send notification
NOTIFICATION_ADDR= "email@tester.ru"
Для проверки нужно остановить eltex-sorm2-replicator
service eltex-sorm2-replicator stop
Выполнить скрипт /usr/lib/eltex-sorm2-replicator/check.sh, сервис должен запустится, на адрес назначения придет уведомление.
На серверах принимающих RADIUS accounting нужно настроить пересылку в Eltex-sorm2-replicator, при помощи набора правил IPTables. Данные правила копируют оригинальный пакет пришедший на DST порт 1813 или 31813 и отправляют его на DST порт 41813 в Eltex-sorm2-replicator. У исходящего пакета производится подмена SRC и DST IP-адресов.
Настройку производим на RADIUS-серверах SoftWLC (Eltex-pcrf и Eltex-radius). Создаем файл IPTables-sorm2 с содержимым:
*raw #-A OUTPUT -p udp --sport 1813 -j LOG --log-prefix "raw output : " # отключаем обработку пакетов от локальных процессов conntrack`ом -A OUTPUT -p udp --sport 1813 -j NOTRACK -A OUTPUT -p udp --sport 31813 -j NOTRACK COMMIT *mangle :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A PREROUTING -p udp --dport 1813 -m mark --mark 1 -j MARK --set-mark 2 -A PREROUTING -p udp --dport 31813 -m mark --mark 1 -j MARK --set-mark 2 -A PREROUTING -p udp --dport 1813 -m mark --mark 0 -j MARK --set-mark 1 -A PREROUTING -p udp --dport 31813 -m mark --mark 0 -j MARK --set-mark 1 -A PREROUTING -p udp --dport 1813 -m mark --mark 1 -j TEE --gateway 127.0.0.1 -A PREROUTING -p udp --dport 31813 -m mark --mark 1 -j TEE --gateway 127.0.0.1 #-A OUTPUT -p udp --dport 1813 -j LOG --log-prefix "mangle output : " COMMIT *nat :PREROUTING ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] # Подменяет destination в маркированном пакете для sorm2 # send to other host # 211 - сорм2 # 213 - этот хост -A PREROUTING -p udp --dport 1813 -m mark --mark 1 -j DNAT --to 192.168.107.211:41813 -A PREROUTING -p udp --dport 31813 -m mark --mark 1 -j DNAT --to 192.168.107.211:41813 -A POSTROUTING -p udp --dport 41813 -m mark --mark 1 -j SNAT --to 192.168.107.213 COMMIT |
Где:
192.168.107.211 – IP-адрес Eltex-sorm2-replicator
192.168.107.213 – IP-адрес RADIUS-сервера SoftWLC
Корректируем IP-адреса и загружаем правила из файла IPtables-sorm2:
iptables-restore < IPtables-sorm2
Для сохранения изменений после перезагрузки сервера, нужно установить пакет, а затем выполнить команду:
apt-get install iptables-persistent
service iptables-persistent save
Для включения маршрутизации ip пакетов нужно в файле
/etc/sysctl.conf
Раскомментировать строку
sysctl net.ipv4.ip_forward=1
Применить изменения
sudo sysctl -p
Для активации подключения к БД mongo SORM2 и подключения к API интерфейсу Eltex-sorm2-replicator, в конфигурационном файле "radius_nbi_config.txt" необходимо исправить следующие строки:
/etc/eltex-radius-nbi/radius_nbi_config.txt
Нужно активировать подключение к БД mongo SORM2 и подключение к API интерфейсу Eltex-sorm2-replicator
#Eltex.SORM2.replicator MongoDB 'sorm2' connect* sorm2.mongodb.enabled=true sorm2.mongodb.uri=mongodb://localhost:27017/sorm2 #Eltex.SORM2.replicator host to use API* sorm2.enabled=true sorm2.url=http://192.168.107.211:7071 sorm2.username=admin sorm2.password=password #Для подключения к кластеру MongoDB нужно указать адреса серверов через запятую, пример: sorm2.mongodb.uri=mongodb://10.62.18.36:27017,10.62.18.37:27017/sorm2?replicaSet=WIFI |
Для применения конфигурации нужно перезапустить Tomcat7
service tomcat7 restart
Для корректно работы Eltex-sorm2-replicator, для всех доменов в которых расположены RADIUS клиенты, нужно задать IP-адреса съёмников, данная настройка производится в Личном кабинете B2B.
Для активации меню настройки нужно перейти в меню Настройки-> Система-> Система и активировать настройку «Настройка СОРМ-2 в «Дереве доменов»». Для применения, перезайти в Личный кабинет B2B.
Сначала необходимо создать профиль. Переходим во вкладу "СОРМ-2" и нажимаем кнопку "Добавить"
Далее заполняем все поля. "Кодовое слово" - кодовое слово radius, будет передаваться вместе с атрибутами radius. Данные профилей сохраняются MongoDB sorm2.profiles.
Далее необходимо наш профиль закрепить в "Дереве доменов" за доменом. Нажимаем иконку и выбираем тот домен за которым хотим закрепить профиль.
Данные привязок профилей к доменам сохраняются MongoDB sorm2.links.
Установку нужно производить на ОС: Linux Ubuntu Server 16.04 x64 LTS. Для корректного формирования выгрузок, нужно настроить время и часовой поля. Для работы модуля необходимо установить следующие пакеты:
‒ Oracle JDK8;
Установка JDK8 описана в пункте 4.1 https://docs.eltex-co.ru/pages/viewpage.action?pageId=36480442#id-СОРМ.v2-_Toc4967248094.1УстановкаинастройкаEltex-sorm2-replicator
Запуск установки:
dpkg -i eltex-radius-sorm3-federal_X.X-XXX_all.deb.deb
Пример успешного выполнения:
root@vagrant-ubuntu-xenial-64:~$ sudo dpkg -i eltex-radius-sorm3-federal_1.8-248_all.deb
Selecting previously unselected package eltex-radius-sorm3.
(Reading database ... 63224 files and directories currently installed.)
Preparing to unpack eltex-radius-sorm3-federal_1.8-248_all.deb ...
Unpacking eltex-radius-sorm3 (1.8-248) ...
Setting up eltex-radius-sorm3 (1.8-248) ...
root@vagrant-ubuntu-trusty-64:/home/vagrant#
Конфигурационный файл лежит в директории
/etc/eltex-radius-sorm/eltex-radius-sorm3.conf
Содержимое конфигурационного файла:
app_name=eltex-radius-sorm3-1.8-federal.jar nbi_ip=192.168.26.205 nbi_port=8080 auth_username=admin auth_password=password export_path=/var/log/eltex-radius-sorm3/export_data domain= ftp_url=ftp://acs:acs@192.168.26.26:/ftp/ start_count=128 max_count=1000 |
Где:
В домашней директории FTP сервера, нужно создать директории:
Выгрузка запускается раз в сутки в 04:00.
Для изменения интервала выгрузки нужно отредактировать задание в CRON:
cat /etc/cron.d/sorm_export
MAILTO=""
00 4 * * * root /usr/share/eltex-radius-sorm3/export_sorm.sh
Рекомендуется выбрать период наименьшей загрузки сети и минимизировать возможность пересечения с другими мониторами EMS и cron softwlc. |
Для корректной выгрузки поля REGION_ID в справочники, нужно заполнить поле «Регион» в свойствах домена. Для данного поля работает наследование сверху вниз. Поиск региона проходит от нижестоящего узла к вышестоящему, при нахождение первого узла с заполненным регионом поиск прекращается. Для заполнения поля регион нужно перейти в меню «Домены», Администрирование-> Права и пользователи-> Домены, и отредактировать домен.
Заполнение нужно произвести до запуска пакетов, так как полный список абонентов выгружается при первой выгрузке, в последующих выгрузкаx только измененные и новые записи. Если поле заполнить после запуска Eltex-radius-sorm3-federal, то в первой выгрузке оно будет пустым. Если поле заполнить после запуска Eltex-sorm2-replicator, то в выгрузки RADIUS accounting оно будет пустым.
Для выполнение требований по СОРМ нужно заполнить адрес установки и географические координаты у ТД.
В привязках правил инициализации ТД добавлены новые поля «Широта» и «Долгота», при добавление нового правила эти поля обязательные для заполнения. Координаты нужно вводить в формате «37.587614». Для заполнения адреса можно воспользоваться функционалом заполнения по КЛАДРу (кнопка «Заполнить местоположение»), если адрес уже заполнен и нужны только географические координаты можно воспользоваться функционалом заполнения геокоординат (кнопка «Заполнения геокоординаты»). Функционал автоматического заполнения местоположения и геокоординат требует доступ до одного серверов:
так как запросы идут с сервера EMS. Выбор системы для геокодирования осуществляется в системных модулях EMS, по умолчанию используется Google.
Альтернативный способ получение координаты через https://yandex.ru/maps или https://www.google.ru/maps
Для активации, геоданных объектов и сделать поля обязательным для заполнения. необходимо выставить флаги «Включить геоданные объектов» и «Включить обязательность геоданных объектов» в системных модулях EMS
Информация в Привязках инициализации и вкладке Доступ меняется синхронно. Изменение в одном месте, автоматически изменяет данные в другом. Повторная инициализация ТД, добавленных до включения блока геоданных, не требуется.
Для заполнения поля Framed-IP-Address в start пакетах RADIUS accounting нужно включить опцию «Accounting wait IP» в настройках SSID с типом авторизации WPA Enterprise. Данная опция активирует отправку start пакет только после получения IP-адреса клиентом. Опция «Accounting wait IP» отображается если выставлен флаг «Режим суперпользователя» в настройках апплета.
Для корректной выгрузки информации о базовых станциях, должен работать монитор синхронизации устройств.
Чтобы включить DPI, необходимо активировать его на точке доступа и на SSID.
Активировать возможно тремя способами.
Первый способ
Включить DPI на конкретной точке доступа, для этого необходимо:
Второй способ
Данный способ подходит для группового включения на нескольких точках.
2. Затем во вкладке "Список устройств", выбрать устройства на которых нужно включить DPI. Для удобства выборки устройств, их можно отсортировать по типу.
3. Далее в "Групповых операциях" находим "Смена параметров Доступ'' и нажимаем "Выполнить"
4. Устанавливаем 2 флага и жмем "Применить"
DPI Включен
DPI Выключен
После этого на всех выбранных точках доступа будет включен DPI, далее необходимо включить его на SSID.
Это можно сделать через менеджер ssid.
2. Выбираем SSID на котором хотим включить DPI, и нажимает "Редактировать"
3. Включаем "DPI (Step Logic)" и применяем изменения.
4. Далее необходимо обновить информацию на точках доступа, перейдем в "Привязки SSID", выберем SSID в котором мы установили флаг и нажмем
Способ создания SSID с включенным DPI
Данный способ подходит для группового включения на точках с помощью скриптов, путем создания SSID с включенным параметром DPI Step Logic с помощью API NBI.
В данном примере создается SSID с режимом безопасности wpa personal.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:nbi="http://nbi.radius.eltex.org" xmlns:xsd="http://response.object.nbi.radius.eltex.org/xsd"> <soapenv:Header/> <soapenv:Body> <nbi:CreateSSID> <!--Optional:--> <nbi:name>Test_wpa</nbi:name> <!--Optional:--> <nbi:domain>root</nbi:domain> <!--Optional:--> <nbi:descr></nbi:descr> <!--Zero or more repetitions:--> <nbi:params> <xsd:name>DPI_Step_Logic</xsd:name> <xsd:value>true</xsd:value> </nbi:params> <nbi:params> <xsd:name>Security_Type</xsd:name> <xsd:value>1</xsd:value> </nbi:params> <nbi:params> <xsd:name>Broadcast_Key_Refresh_Rate</xsd:name> <xsd:value>0</xsd:value> </nbi:params> <nbi:params> <xsd:name>VAP_Status</xsd:name> <xsd:value>up</xsd:value> </nbi:params> <nbi:params> <xsd:name>Radio</xsd:name> <xsd:value>ALL</xsd:value> </nbi:params> </nbi:CreateSSID> </soapenv:Body> </soapenv:Envelope> |
Подробнее про NBI можете прочесть по ссылке:
Настройка DPI на этом заканчивается.
Примеры настройки:
Пример трафика с включенным и выключенным DPI
DPI выключен.
DPI включен.
В конфигурационном файле
/etc/eltex-radius-nbi/radius_nbi_config.txt
Нужно активировать параметр sorm3.enabled
#It enables records export to SORM3 while editing wifi users sorm3.enabled=true |
Для применения конфигурации нужно перезапустить Tomcat7
service tomcat7 restart
Этот параметр активирует:
После активации параметра sorm3.enabled, взаимодействие с NBI под учетной записью по умолчанию (admin) будет запрещено, если у записи не заполнены обязательные поля. Для корректной работы портала нужно использовать служебную запись softwlc_service/softwlc для взаимодействие с NBI. Для изменения данных доступа к NBI, нужно в конструкторе порталом перейти на вкладку «Доступ к NBI» и прописать новые данные.
Поля ФИО и номер телефона стали обязательными у учетных записей администраторов ЛК B2B. При создании/редактировании пользователей Wi-Fi, фиксируются данные администратора, который внес изменения в учетную запись. Если поля не заполнены, то администратор не сможет редактировать и создавать учетные записи пользователей Wi-Fi.
Для заполнения данных нужно перейти на вкладку Настройка->Системные пользователи, выбрать учетную запись и заполнять обязательные поля.
Для выполнения требования по СОРМу, необходимо заполнить обязательные поля у учетных записей пользователей Enterprise. Для корректирования текущих записей нужно в личном кабинете B2B открыть запись для редактирования и заполнить соответствующие поля.
Модули Eltex-sorm2-replicator и Eltex-radius-sorm3 можно расположить на одном сервере. Для высоконагруженных систем нужно использовать кластер из двух и более нод Eltex-sorm2-replicator. В кластере весь RADIUS трафик приходит на определенную ноду Eltex-sorm2-replicator , а обработка делится между остальными участниками. Eltex-radius-sorm3 нужно запускать только на одной ноде.
Для настройки кластера нужно подготовить второй сервер аналогично первому, настройка описана в п. 4. Между серверами Eltex-sorm2-replicator нужно открыть порты 5701 tcp, 5801 tcp На серверах в файлах конфигурации /etc/eltex-sorm2-replicator/hazelcast-cluster.xml нужно указать адреса сетевых интерфейсов (в строках 3 и 24 в примере - адрес самого сервера, в строке 8 адрес сети, где нужно искать участников кластера, в строках 16-17 - список всех членов кластера ), отключить multicast и включить tcp-ip режим обнаружения.
<network> <!-- Write here public address of the node --> <public-address>192.168.0.1</public-address> <port auto-increment="false" port-count="100">5702</port> <outbound-ports> <ports>0</ports> </outbound-ports> <join> <multicast enabled="false"> <trusted-interfaces> <interface>192.168.0.*</interface> </trusted-interfaces> </multicast> <tcp-ip enabled="true"> <!-- Write here IP of all members of the cluster (including this) --> <member>192.168.0.1</member> <member>192.168.0.2</member> </tcp-ip> <discovery-strategies> </discovery-strategies> </join> <interfaces enabled="true"> <!-- Write here IP of the interface to use for cluster --> <interface>192.168.0.1</interface> </interfaces> |
В конфигурации /etc/eltex-sorm2-replicator/eltex-sorm2-replicator.json нужно разрешить запуск кластера:
"cluster.enable" : true,
Для проверки кластера, нужно перейти в открыть веб интерфейс Eltex-sorm2-replicator http://server_ip:7071/system. Пример вывода:
{ "key" : "PcrfErrorCode.success", "message" : "Success", "code" : 0, "args" : [ ], "data" : { "version" : "1.8-162 (20171017-1233)", "java_memory" : { "used" : 40, "free" : 267, "total" : 308, "max" : 455 }, "java" : { "vendor" : "Oracle Corporation", "title" : "Java Runtime Environment", "version" : "1.8.0_144" }, "system" : { "cpu" : 6 }, "vertx" : { "clustered" : true }, "hazelcast" : { "cluster" : { "members" : { "192.168.107.211" : { "local" : true }, "192.168.107.212" : { "local" : false } }, "state" : "ACTIVE" } } } } |
В списке hazelcast должны присутствовать все ноды.
Большая часть параметров кэшируется и инвалидируется только по времени.
Там где инвалидации кэша по запросу нет, запись будет жить со старыми параметрами в течение TTL, потом удалиться и при следующем обращении заново закачается из БД с новыми параметрами. То есть параметры DPI например, применяются не мгновенно, а в ближайшие 600 секунд. |