Оставьте заявку

Текст сообщения:


Доступ к сети Wi-Fi через на Микротик по логину и паролю без внешнего RADIUS сервера.

Данная статья написана на базе статьи  Сам себе РКН или родительский контроль с MikroTik (ч.3) ссылка

Предистория. Была поставлена задача ограничить свободный доступ к Wi-Fi, это было на объекте и Радиус сервера там нет, поэтому решения искалось целиком на базе ресурсов Микротик. Была найдена статья с Хабра, выполнено все по инструкции, но ничего не заработало. Начались поиски решения проблемы, решение было найдено  Далее повторю статью с Хабра, но с иправлениями и дополнениями, в результате, которых у меня все заработало.

Итак в наличии Микротик hAP AC Lite прошивка версии 7,19,2. На время поиска решения нем все порты LAN и WI-Fi собраны в бридж и этот бридж получает по DHCP IP адрес от роутера. Оганичения доступа в интернет в данной статье не рассматриваются.

1. Введение

Всё, о чём написано выше — не сразу бросилось в глаза, но зато моментально было отмечено членами сообщества в комментариях к предыдущим статьям. Начиная с версии iOS 14, iPadOS 14 и watchOS 7, устройства Apple улучшают приватность при работе с беспроводными сетями, а именно, делают MAC адрес уникальным (private Wi-Fi address) для каждой сети. 

Дополнительно, смена MAC адреса происходит при сбросе всех настроек телефона (разумеется, при повторном подключении). А начиная с iOS 15, iPadOS 15 и watchOS 8, указанное выше расширяется ещё и дополнительными условиями. Смена MAC происходит, если телефон не подключался к сети более 6 недель, после выбора функции «Забыть сеть», если от последнего использования прошло более 2 недель. Подробнее можно почитать здесь. С операционными системами Android 10 и выше происходит примерно аналогичная ситуация. Кроме этого, частный (рандомный) MAC адрес Wi-Fi активирован в мобильных устройствах по умолчанию. (в моем телефоне данная функция тоже была включена)

Описанные выше функции сделаны для повышения информационной безопасности, усложняя анализ мест нахождения людей, чьи телефоны непрерывно сканируют радиоэфир и подключаются к известным им беспроводным сетям, например, MT_FREE. В первую очередь это было введено для управляющих фреймов (Management MAC Protocol Data Unit» – MMPDU), предназначенных для обнаружения известных точек доступа. Необходимо выделить, что существует пассивное сканирование – беспроводной клиент ждёт широковещательный сигнальный beacon от известной ему точки доступа. И активное сканирование – клиент сам отправляет широковещательный пробный запрос (probe) в поисках доступных точек доступа. Во вторую очередь, это было введено для открытых сетей, так как они широко распространены и позволяют реально проводить поведенческую аналитику. Затем это логично распространилось на Wi-Fi сети с шифрованием.

На текущий момент имеем то, что имеем: современные мобильные устройства рандомизируют MAC адрес беспроводного интерфейса при тех или иных условиях.

2. Radius протокол на службе.

RADIUS (Remote Authentication Dial-In User Service) – протокол для реализации аутентификации, авторизации и сбора сведений об использованных ресурсах, разработанный для передачи сведений между центральной платформой и оборудованием. В Wi-Fi сетях он может быть задействован в Enterprise mode – режиме аутентификации на базе Radius (WPA-EAP), вместо привычного режима аутентификации Personal mode, имеющего символьный пароль (WPA-PSK).

Общая схема предлагаемого решения следующая: «MikroTik + WiFi + Radius + VLAN». Каждому сотруднику будет выдан собственный логин и пароль от беспроводной сети. После его ввода MikroTik обратится для аутентификации к Radius серверу, который дополнительно вернет настройки VLAN. Для них будет функционировать отдельный виртуальный интерфейс с собственным DHCP сервером и пулом IP адресов. Проверьте версию операционной системы маршрутизатора, она должна быть 7-ой:

Устанавливаем пакет user-manger

Список пакетов

Добавляем Vlan интерфейс.

Vlan

/interface vlan
add interface=bridge_home name=vlan.100-wifi vlan-id=100

Назначаем адрес виртуальной сети

Address

/ip address
add address=10.10.0.1/24 interface=vlan.100-wifi network=10.10.0.0

Далее настраиваем новый пул IP адресов:

pool

/ip pool
add name=pool-wifi ranges=10.10.0.10-10.10.0.250

Добавляем новый DHCP сервер для нашей сетей:

DHCP server

/ip dhcp-server
add address-pool=pool-wifi interface=vlan.100-wifi lease-time=4h30m name=server-wifi

DHCP network

/ip dhcp-server network
add address=10.10.0.0/24 gateway=10.10.0.1

NAT img-1

NAT img 2/ip firewall nat
add action=masquerade chain=srcnat out-interface=bridge src-address=10.10.0.0/24

Настраиваем RADIUS сервер. Т.к. использую RADIUS сервер установленный на Микротике то адрес 127.0.0.1

RADIUS server img1

/radius
add address=127.0.0.1 require-message-auth=no service=wireless

RADIUS server img 2
/radius incoming
set accept=yes

Далее генерируем новый сертификат и подписываем его (Сертификат для работы не используется, но нужен для работы RADIUS сервера):

/certificate add name=certForRadius country=Ru state=Spb locality=VO organization=unit common-name=unitCertForRadius days-valid=3650 trusted=yes
/certificate sign certForRadius

Настраиваем User Manager

Активируем сервер.

User manager img 1
/user-manager
set certificate=certForRadius enabled=yes

Добавляем новый сервер.

User manager img 2


/user-manager router
add address=127.0.0.1 name=thisRouter

Создаем пользователей RADIUS сервера.

RADIUS user

/user-manager user
add attributes=Mikrotik-Wireless-VLANID:100 name=user123 password=000 shared-users=1

Добавляем новый профиль для беспроводных подключений, в котором выбираем EAP аутентификацию: (Вот в этом пункте и находится главная ошибка статьи на Хабре) (в приведенном примере использован as-username-and-password, но можно оставить и as-username)

Secury profile img1

Secury profile img2

Secury profile img3

/interface wireless security-profiles
add authentication-types=wpa2-eap mode=dynamic-keys name=RADIUS \
radius-called-format=ssid radius-eap-accounting=yes radius-mac-mode=\
as-username-and-password supplicant-identity="" tls-certificate=\
certForRadius tls-mode=dont-verify-certificate

Настраиваем Wi-Fi интерфейс (сразу переключаем в Advenced Mode)

Wi-Fi интерфейс

/interface wireless
set [ find default-name=wlan1 ] band=2ghz-b/g/n country=russia4 disabled=no distance=indoors frequency=auto \
installation=indoor max-station-count=20 mode=ap-bridge name=wlan2GHz preamble-mode=short \
security-profile=RADIUS ssid=Test station-roaming=enabled  vlan-id=100 vlan-mode=use-tag \
wireless-protocol=802.11 wmm-support=enabled wps-mode=disabled

Далее можно включить логирование работы RADIUS сервера

/system logging
add topics=radius

И в принципе на этом настройка закончена

берете телефон находите сеть выбираете набираете логин пароль а на сертификат устанавливаете не использовать.

Результат