You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Для корректной работы WNAM необходимо спроектировать и настроить соответствующее сетевое окружение.

Типовая схема сети приведена на рисунке. В сети вашей компании (это может быть внутренняя сеть небольшого офиса, либо отдельный сегмент большой сети, предназначенный для служебных нужд) устанавливается сервер, на котором будет работать программное обеспечение WNAM, и сопутствующие службы. Это может быть как физический сервер, так и виртуальная машина.

Ключевым компонентом сети является устройство, на котором производится перенаправление HTTP-сессии Wi-Fi пользователя на внешний портал авторизации. Это может быть:

  • контроллер беспроводных точек доступа, который имеет соответствующие функции hostspot/wispr/external captive portal и т.п.: Cisco WLC, Bluesocket vWLC, Ruckus, Zyxel NXC
  • маршрутизатор с функцией портала перехвата hotspot, возможно со встроенной точкой доступа: Mikrotik (модели RB951Ui-2HnD, RB951G-2HnD, RB750UP, RB2011iL-IN, RB1100AHx2 и т.п.)
  • сервер-маршрутизатор Linux, выполняющий роль шлюза по умолчанию и NAT для пользователей Wi-Fi
  • сервер-концентратор доступа BRAS, например Cisco 7200 или ASR

Вы должны построить беспроводную сеть доступа для ваших абонентов. В случае контроллерно-управляемых точек доступа, точки должны соответствовать контроллеру. В остальных случаях можно использовать любые точки доступа. Из соображений безопасности крайне желательно разграничить сетевые сегменты открытой (публичной части), и вашей внутренней сети. Такое разграничение можно обеспечить либо на физическом уровне, либо при помощи VLAN.

В приведенном ниже примере в качестве точек доступа используются Ubiquiti UniFi, в качестве маршрутизатора/хотспота Mikrotik.

 

Для идентификации через СМС сервер будет отправлять команды на отправку СМС с кодом доступа через шлюз СМС-провайдера (в настоящее время поддерживаются провайдеры SMSCWebsms.By, smstraffic, отправка через локально установленный USB GSM модем (утилита gammu) или любому провайдеру по протоколу SMPP v3.4 через утилиту kannel).

Если у вас несколько площадок, где вы предоставляете доступ пользователям, вы можете установить на каждой из них по своему маршрутизатору Mikrotik. В таком случае вам необходимо настроить несколько экземпляров "серверов доступа" и "площадок" в соответствующих разделах интерфейса WNAM (внимание: количества лицензируются). Вы можете связать площадки с центральным узлом (где находится сервер) при помощи VPN (OpenVPN, VPLS, VLAN и т.п.). Вы можете также привязать несколько площадок на один маршрутизатор MikroTik (несколько экземпляров HotSpot).

Для успешной работы необходима настройка трёх компонентов: WNAM, RADIUS-сервера, портала HotSpot.

При первоначальном подключении абонента проводится его идентификация и перенаправление сессии на внешний сайт или рекламу, при последующих - только перенаправление. При идентификации производится привязка МАС-адреса абонентского устройства к номеру мобильного телефона абонента. При этом производится отправка абоненту кода подтверждения, который тот должен ввести на специальной странице. Таким образом становится реальным розыск абонента, пользовавшегося вашей радио-сетью, по запросу от соответствующих органов. Схема работы "по шагам" приведена ниже.

  1. Пользователь подключает свое беспроводное устройство (ноутбук, смартфон, планшет) к беспроводной сети (без авторизации), построенной на основе UniFi или иного радио-оборудования, получает IP-адрес от маршрутизатора (DHCP).
  2. Пользователь открывает какую-либо страницу в сети Интернет (либо его устройство само открывает страницу).
  3. Маршрутизатор или контроллер (компонент HotSpot) считает сессию пользователя "неавторизованной" и производит перенаправление сессии пользователя "на себя".
  4. HotSpot отображает пользователю собственную страницу авторизации rlogin.html (для Mikrotik). Указанная страница (шаблон) должны быть предварительно загружена в маршрутизатор, и в ней указана автоматическая отправка формы на внешний сервер WNAM.
  5. Форма содержит ссылку на встроенный в WNAM веб-сервер, который показывает пользователю страницу СМС-идентификации.
  6. Пользователь вводит номер своего телефона
  7. При получении номера телефона WNAM генерирует случайный (4 или 6-циферный) код активации, и через СМС-шлюз отправляет его на заявленный телефон.
  8. Пользователь вводит код подтверждения, при совпадении WNAM производит редирект сессии пользователя в сторону HotSpot маршрутизатора, либо открывает доступ пользователю иным способом.
  9. HotSpot производит проверку МАС-адреса пользователя путём отправки RADIUS-запроса серверу WNAM
  10. RADIUS-сервер, получив запрос на авторизацию, через Perl-модуль wnam-freeradius-bridge.pl передает в WNAM запрос на авторизацию (MAC-адрес абонентского устройства пользователя, идентификаторы площадки, текущий IP-адрес и т.п.).
  11. WNAM авторизует любое обращение, создает в своей базе учётную запись абонента (пользователя) по МАС-адресу (если такого адреса ещё не было), возвращает ответ RADIUS-серверу
  12. RADIUS-сервер возвращает ответ маршрутизатору, тот авторизует на своем портале HotSpot сессию пользователя, открывая ему доступ в Internet. Одновременно с этим отправляет RADIUS-серверу запрос начала сессии (Accounting-Start).
  13. RADIUS-сервер транслирует запрос начала учёта сессии в WNAM, тот создаёт запись о новой сессии. Периодически получая сообщения о статусе сессии, WNAM ведет статистику о переданном абонентом трафике.
  14. По завершении сессии (тайм-аут) сессий закрывается, а пользователь, если ещё не отключился, перенаправляется снова на страницу подтверждения.

На один номер телефона можно привязать несколько устройств (МАС-адресов). Время жизни такой авторизации определяется в параметрах (меню "Конфигурация" - "Общие настройки" - "Параметры активации по SMS" - "Длительность авторизации телефонного номера"), либо в индивидуальных настройках площадки. При повторных подключениях того же пользователя, если с момента авторизации не прошло указанное выше время, производится безусловная (без подтверждений и СМС) авторизация сессии.

  • No labels