Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| dpi:dpi_options:use_cases:dpi_bestpractice_wifi_login:start [2023/08/29 12:47] – создано elena.krasnobryzh | dpi:dpi_options:use_cases:dpi_bestpractice_wifi_login:start [Дата неизвестна] (текущий) – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | ====== Идентификация абонента в сети WiFi с помощью мобильного телефона ====== | ||
| - | {{indexmenu_n> | ||
| - | <note important> | ||
| - | Ниже представлен вариант для самостоятельной реализации данного модуля.\\ | ||
| - | {{ dpi: | ||
| - | |||
| - | ===== Введение ===== | ||
| - | В связи с ужесточением правил доступа через публичные WiFi hotspots к сети оператора связи, появилась необходимость идентифицировать абонента одним из способов по телефонному номеру, | ||
| - | |||
| - | ===== Схема работы ===== | ||
| - | Последовательность действий: | ||
| - | - абонент подключается к сети WiFi | ||
| - |   - появляется welcome page с информацией, | ||
| - |   - абонент отрывает браузер, | ||
| - | - абонент вводит телефонный номер, запрашивает код доступа | ||
| - | - код доступа отправляется на телефонный номер через SMS | ||
| - | - абонент вводит полученный код доступа | ||
| - | - происходит запись сессионной куки на абонентское устройство с сохранением в течении суток ((сессионные куки используются для повторной идентификации абонента в сети что бы не требовалось снова идентифицировать абонента через отправку SMS, срок хранения может регулироваться оператором связи самостоятельно.)) и происходит переход на запрошенный пользователем URL | ||
| - | |||
| - | Для настройки сети потребуется, | ||
| - |   - DHCP сервер для организации централизованной выдачи адресов абонентам, | ||
| - |   - Виртуальная машина с установленным WEB-сервером Apache (httpd), [[dpi: | ||
| - | - Доступ к сервису для отправки SMS сообщений((в примере используется сервис www.smsdirect.ru)) | ||
| - |   - (опционально) NAT для уменьшения к-ва используемых IPv4 адресов, | ||
| - | - (опционально) Radius для аутентификации в сети по идентификатору абонента ((не будет рассматриваться далее, для упрощения схемы)) | ||
| - | |||
| - | Схема сети (упрощенно): | ||
| - |   - WiFi роутер, | ||
| - | - Роутер(ы) сети | ||
| - | - СКАТ DPI | ||
| - | - Граничный роутер | ||
| - | |||
| - | таким образом весь трафик абонентов проходит через СКАТ DPI. | ||
| - | |||
| - | Последовательность работы: | ||
| - | - абонентское устройство подключается к WiFi роутеру | ||
| - | - WiFi роутер обращается за новым IP к DHCP серверу | ||
| - |   - DHCP сервер вызывает shell скрипт, | ||
| - | - shell скрипт по выданному IP на СКАТ DPI активирует услугу белый список и тариф с ограничениями доступа | ||
| - | - WEB-сервер получает запрос на welcome page, абонент активирует браузер и переходит на любой URL | ||
| - |   - WEB-сервер получает запрос на страницу идентификации ((так же проверяется наличие куки, если куки есть, то происходит автоматическая регистрация в сети абонента по данным сохраненным в куки)), абонент вводит телефонный номер и нажимает " | ||
| - |   - WEB-сервер получает запрос на код доступа, | ||
| - |   - WEB-сервер получает запрос на подтверждение кода доступа, | ||
| - | |||
| - | [[http:// | ||
| - | |||
| - | ===== Настройка DPI ===== | ||
| - | используем описание классов protocols.txt | ||
| - | http cs0 | ||
| - | https cs0 | ||
| - | dns cs0 | ||
| - | default cs1 | ||
| - | |||
| - | Конвертируем: | ||
| - |   cat protocols.txt|lst2dscp / | ||
| - | |||
| - | из архива с исходниками копируем на DPI сервер директорию: | ||
| - |   htdocs/ | ||
| - |    | ||
| - | создаем файл тарифа default_policing.cfg для доступа к интернет через WiFi - 10 mbit: | ||
| - | htb_inbound_root=rate 10mbit | ||
| - | htb_inbound_class0=rate 1mbit ceil 10mbit | ||
| - | htb_inbound_class1=rate 1mbit ceil 10mbit | ||
| - | htb_inbound_class2=rate 8bit ceil 10mbit | ||
| - | htb_inbound_class3=rate 8bit ceil 10mbit | ||
| - | htb_inbound_class4=rate 8bit ceil 10mbit | ||
| - | htb_inbound_class5=rate 8bit ceil 10mbit | ||
| - | htb_inbound_class6=rate 8bit ceil 10mbit | ||
| - | htb_inbound_class7=rate 8bit ceil 10mbit | ||
| - | htb_root=rate 10mbit | ||
| - | htb_class0=rate 1mbit ceil 10mbit | ||
| - | htb_class1=rate 1mbit ceil 10mbit | ||
| - | htb_class2=rate 8bit ceil 10mbit | ||
| - | htb_class3=rate 8bit ceil 10mbit | ||
| - | htb_class4=rate 8bit ceil 10mbit | ||
| - | htb_class5=rate 8bit ceil 10mbit | ||
| - | htb_class6=rate 8bit ceil 10mbit | ||
| - | htb_class7=rate 8bit ceil 10mbit | ||
| - | |||
| - | создаем файл тарифа captive_portal_hard.cfg для блокировки доступа к интернет совместно с белым списком: | ||
| - | htb_inbound_root=rate 256kbit | ||
| - | htb_inbound_class0=rate 8bit ceil 256kbit | ||
| - | htb_inbound_class1=rate 8bit ceil 8bit | ||
| - | htb_inbound_class2=rate 8bit ceil 8bit | ||
| - | htb_inbound_class3=rate 8bit ceil 8bit | ||
| - | htb_inbound_class4=rate 8bit ceil 8bit | ||
| - | htb_inbound_class5=rate 8bit ceil 8bit | ||
| - | htb_inbound_class6=rate 8bit ceil 8bit | ||
| - | htb_inbound_class7=rate 8bit ceil 8bit | ||
| - | htb_root=rate 256kbit | ||
| - | htb_class0=rate 8bit ceil 256kbit | ||
| - | htb_class1=rate 8bit ceil 8bit | ||
| - | htb_class2=rate 8bit ceil 8bit | ||
| - | htb_class3=rate 8bit ceil 8bit | ||
| - | htb_class4=rate 8bit ceil 8bit | ||
| - | htb_class5=rate 8bit ceil 8bit | ||
| - | htb_class6=rate 8bit ceil 8bit | ||
| - | htb_class7=rate 8bit ceil 8bit | ||
| - | |||
| - | Настроить услугу белый список: | ||
| - |   cp_server=yoursite.ru/ | ||
| - | |||
| - | ===== Настройка DHCP ===== | ||
| - |   - настроить [[dpi: | ||
| - |   - установить на триггер на выдачу нового IP: ssh dpi_user@dpi_host "/ | ||
| - | |||
| - | ===== Настойка Web-сервера ===== | ||
| - |   - настроить [[dpi: | ||
| - |   - настроить конфигурацию Apache, пример в директории архива conf/: \\ в conf.d/ | ||
| - |   - скопировать htdocs/ в / | ||
| - |   - отредактировать / | ||
| - |   - отредактировать / | ||