WNAM + Huawei AC6508

How can we help?

WNAM + Huawei AC6508

Навигация

Пример конфигурации связки беспроводного контроллера (AC) с внешним порталом авторизации (WNAM) как это видит Huawei приведен здесь. Настройки с точки зрения разработчиков WNAM здесь. Мы же в свою очередь исходим из того, беспроводная сеть ssid=wnam-huawei создана, доступ в Интернет для пользователей сети есть.

Схема взаимодействия в нашем примере выглядит так:

Рис.1

Важно!!! При наличии в схеме выше межсетевых экранов или NAT следует обеспечить беспрепятственный пропуск трафика от AC в сторону WNAM по UDP портам 1812 и 1813, а также от WNAM в строну АС по UDP порту 2000.

Далее рассмотрим конфигурацию контроллера АС6508 Software Version V200R019C00SPC500.

Во вкладке Configuration/Security/AAA/Portal Global Configuration/ External Portal содаем web-auth-server называем его например wnam-portal-server:

Рис.2
Рис.3

В текстовой конфигурации за эти настройки отвечают вот такие строчки:

#
web-auth-server wnam-portal-server
server-ip 10.70.44.198
port 50200
url-template urlTemplate_0
#
url-template name urlTemplate_0
url http://10.70.44.198/cp/huawei
url-parameter device-ip AC-IP ap-ip AP-IP ap-mac AP-MAC redirect-url redirect-url ssid ssid user-ipaddress user-ipaddress user-mac user-mac sysname sysname ap-name ap-name
url-parameter mac-address format delimiter : normal
#

Shared key на Рис.3 должен быть одинаковым на АС и на WNAM, самы простой вариант этого достичь удалить его на АС, для этого в режиме system-view переходим в настройки web-auth-server:

web-auth-server wnam-portal-server

И удаляем shared-key:

undo shared-key

Для корректной работы устройств Apple разработчики WNAM рекомендуют отключать режим байпас, также из режима system-view:

undo portal captive-bypass enable

При ассоциации с сетью wnam-huawei происходит перенаправление пользовательской сессии на портал вида:

http://10.70.44.198/cp/huawei?AC%2DIP=10%2E8%2E128%2E50&AP%2DIP=10%2E8%2E129%2E246&AP%2DMAC=fc73fba55bb0&redirect%2Durl=http%3A%2F%2Fwww%2Emsftconnecttest%2Ecom%2Fredirect&ssid=wnam%2Dhuawei&user%2Dipaddress=10%2E8%2E251%2E4&user%2Dmac=8cc681fd25e6&sysname=TI%2DPDL%2DWLC&ap%2Dname=TI%2DPDL%2DAP213%5FNEW

Далее во вкладке RADIUS создаем профиль радиус сервера в wnam-radius:

В текстовом варианте конфигурации:

radius-server template wnam-radius
  radius-server shared-key cipher %^%#;%,\5"*#7-xMK"M2'V8H%^%#
  radius-server authentication 10.70.44.198 1812 source ip-address 10.8.128.50 weight 80
  radius-server accounting 10.70.44.198 1813 source ip-address 10.8.128.50 weight 80
  radius-attribute nas-ip 10.8.128.50

Далее во вкладке Configuration/AP Config/Profile/AAA/Authentification-free Rule создаем профиль wnam-free-rules в котором разрешаем доступ к серверу WNAM, а также создаем и Portal Profile wnam, в котором указываем ранее созданный wnam-portal-server на который перенаправляется пользовательская сессия:

Текстовый вариант конфигурации:

#
free-rule-template name wnam-free-rules
 free-rule 1 destination ip 10.70.44.198 mask 255.255.255.255
#
portal-access-profile name wnam
 web-auth-server wnam-portal-server direct

Далее собираем VAP профиль в рамках которого создаем Authentification profile wnam:

Привязываем к нему ранее созданные RADIUS Server Profile wnam-radius:

wnam-free-rules:

wnam-portal-server:

Или в текстовом варианте:

authentication-profile name wnam
 portal-access-profile wnam
 free-rule-template wnam-free-rules
 authentication-scheme wnam-radius
 radius-server wnam-radius

На WNAM создаем сервер доступа в котором указываем IP адрес АС:

Во вкладке Radius указываем Shared Key (Секретный ключ) созданый ранее в профиле wnam-radius:

И создаем площадку в которой указываем используемый сервер доступа, подсети пользователей и SSID:

Вот и все настройки, связка должна работать. В нашем случае взаимодействию мешал межсетевой экран, ниже попытки понять причины …

Проверка доступности портов, как выясняется ни о чем не говорит, даже приблокировке сетевого экрана рапортует succeeded, видимо воспринимает drop как корректный ответ:

wnam@wnam:/home/wnam# nc -uv 10.8.250.50 2000
Connection to 10.8.250.50 2000 port [udp/*] succeeded!
^C
wnam@wnam:/home/wnam# nc -uv 10.8.250.50 1812
Connection to 10.8.250.50 1812 port [udp/radius] succeeded!
^C
wnam@wnam:/home/wnam# nc -uv 10.8.250.50 1813
Connection to 10.8.250.50 1813 port [udp/radius-acct] succeeded!
^C

Посмотрим есть ли обмен запросами, видим что запрос на 2000 порт контроллера уходит ответа нет:

wnam@wnam:/home/wnam# tcpdump -nv host 10.8.128.50
tcpdump: listening on ens160, link-type EN10MB (Ethernet), snapshot length 262144 bytes
08:19:20.098831 IP (tos 0x80, ttl 250, id 30960, offset 0, flags [none], proto UDP (17), length 58)
    10.70.44.198.34135 > 10.8.128.50.2000 > : UDP, length 31

Для сравнения аналогичный обмен при открытых портах на межсетевом экране:

wnam@wnam:/home/wnam# tcpdump -nv host 10.8.128.50
tcpdump: listening on ens160, link-type EN10MB (Ethernet), snapshot length 262144 bytes
08:19:20.098831 IP (tos 0x80, ttl 250, id 30960, offset 0, flags [none], proto UDP (17), length 58)
    10.8.128.50.2000 > 10.70.44.198.50200: UDP, length 30
08:19:20.098891 IP (tos 0xc0, ttl 64, id 40126, offset 0, flags [none], proto ICMP (1), length 86)
    10.70.44.198 > 10.8.128.50: ICMP 10.70.44.198 udp port 50200 unreachable, length 66
        IP (tos 0x80, ttl 250, id 30960, offset 0, flags [none], proto UDP (17), length 58)
    10.8.128.50.2000 > 10.70.44.198.50200: UDP, length 30
08:21:02.511773 IP (tos 0x0, ttl 64, id 26808, offset 0, flags [DF], proto UDP (17), length 89)
    10.70.44.198.59790 > 10.8.128.50.2000: UDP, length 61
08:21:02.523081 IP (tos 0x0, ttl 250, id 30961, offset 0, flags [none], proto UDP (17), length 484)
    10.8.128.50.60206 > 10.70.44.198.1812: RADIUS, length: 456
        Access-Request (1), id: 0x05, Authenticator: a655c89e41710136f32ab8365e9d5932
          User-Name Attribute (1), length: 19, Value: 9C:5A:81:AC:6C:2A
          User-Password Attribute (2), length: 18, Value:
          NAS-Port Attribute (5), length: 6, Value: 251
          Service-Type Attribute (6), length: 6, Value: Framed
          Framed-Protocol Attribute (7), length: 6, Value: PPP
          Framed-IP-Address Attribute (8), length: 6, Value: 10.8.251.6
          Calling-Station-Id Attribute (31), length: 16, Value: 9c5a-81ac-6c2a
          NAS-Identifier Attribute (32), length: 12, Value: TI-PDL-WLC
          NAS-Port-Type Attribute (61), length: 6, Value: Wireless - IEEE 802.11
          NAS-Port-Id Attribute (87), length: 36, Value: slot=0;subslot=0;port=0;vlanid=251
          Called-Station-Id Attribute (30), length: 31, Value: FC-73-FB-A5-5B-B0:wnam-huawei
          NAS-IP-Address Attribute (4), length: 6, Value: 10.8.128.50
          Acct-Session-Id Attribute (44), length: 36, Value: TI-PDL-00000000000251e7b83002008dd
          Unknown Attribute (186), length: 6, Value:
          Unknown Attribute (187), length: 6, Value:
          Unknown Attribute (188), length: 6, Value:
          Unknown Attribute (189), length: 6, Value:
          Vendor-Specific Attribute (26), length: 208, Value: Vendor: Unknown (2011)
            Vendor Attribute: 59, Length: 4, Value: c%..
            Vendor Attribute: 60, Length: 28, Value: 10.8.251.6 9c:5a:81:ac:6c:2a
            Vendor Attribute: 26, Length: 4, Value: ..H.
            Vendor Attribute: 254, Length: 13, Value: Huawei AC6508
            Vendor Attribute: 255, Length: 2, Value: AC
            Vendor Attribute: 141, Length: 14, Value: FC73-FBA5-5BB0
            Vendor Attribute: 153, Length: 4, Value: ....
            Vendor Attribute: 201, Length: 36, Value: AP-Device-Code=192203821fc73fba55bb0
            Vendor Attribute: 201, Length: 16, Value: TERMINAL-POS-X=0
            Vendor Attribute: 201, Length: 16, Value: TERMINAL-POS-Y=0
            Vendor Attribute: 201, Length: 16, Value: Wifi-Density=214
            Vendor Attribute: 201, Length: 25, Value: HW-Access-Time=1667452861
08:21:02.551816 IP (tos 0x0, ttl 64, id 26813, offset 0, flags [DF], proto UDP (17), length 54)
    10.70.44.198.1812 > 10.8.128.50.60206: RADIUS, length: 26
        Access-Accept (2), id: 0x05, Authenticator: 680721367c7c50f511c349e429f84c58
          Session-Timeout Attribute (27), length: 6, Value: 10:00 min
08:21:02.586064 IP (tos 0x0, ttl 64, id 26818, offset 0, flags [DF], proto UDP (17), length 89)
    10.70.44.198.33871 > 10.8.128.50.2000: UDP, length 61
08:21:02.590993 IP (tos 0x80, ttl 250, id 30962, offset 0, flags [none], proto UDP (17), length 60)
    10.8.128.50.2000 > 10.70.44.198.33871: UDP, length 32
08:21:02.596878 IP (tos 0x80, ttl 250, id 30963, offset 0, flags [none], proto UDP (17), length 68)
    10.8.128.50.2000 > 10.70.44.198.59790: UDP, length 40

Рекомендации по траблшутингу от Huawei здесь, отменить любую команду можно вводом undo, выход из любого режима quit. Включить наблюдение за клиентом из режима system-view:

trace object ip-address 10.8.251.6

или

trace object mac-address 9c5a-81ac-6c2a

и

trace enable

Включаем debug web (из обычного режима):

debugging web all
terminal debugging
terminal monitor
debugging timeout 0

Когда устройство получает запрос вызова портала или запрос аутентификации, должна появиться следующая информация:

[BTRACE][2022/10/31 15:23:50][9216][WEB_FC][12.12.12.197]:Receive challenge request packet from portal server.
[BTRACE][2022/10/31 15:23:50][9216][WEB_FC][12.12.12.197]:Receive authentication request packet from portal srever.

Если устройство не получает никаких запросов на вызов портала или запросов на проверку подлинности, из режима system-view смотрим слушается ли порт 2000:

display web-auth-server configuration
Listening port           : 2000
  Portal                   : version 1, version 2
  Include reply message    : enabled
  Source-IP                : -

Спрашиваем номер процесса выделенного STA для авторизации, на основе MAC-адреса STA:

diagnose
display access-user | include 9c5a-81ac-6c2a
 process  4:
 ------------------------------------------------------------------------------------------------------
 UserID  Username               IP address                               MAC            Status
 ------------------------------------------------------------------------------------------------------
 16966   9c5a81ac6c2a           10.8.251.6                               9c5a-81ac-6c2a Pre-authen

И с номером процесса запрашиваем:

display web statistics packet process 4
 process  4:
  Packet error Totol     :0
  Challenge req error    :0
  Auth req error         :0
  Recv auth req          :0
  Recv Challenge req     :0

Если количество пакетов запросов вызова, пакетов запросов аутентификации и пакетов ошибок равно 0, AC не получает пакеты от WNAM.

Основываясь на приведенной выше статистике количества пакетов, вы можете определить, получало ли AC пакеты от WNAM. Для дальнейшего подтверждения вы можете получить пакеты на исходящем интерфейсе, подключенном к серверу портала. Возможные причины :

1. Портал не видит AC. После того как STA авторизовался на странице портала, WNAM не может идентифицировать AC, с которого STA получает доступ к сети. Возможные причины этого следующие:

1.1. На WNAM не создан сервер доступа AC. Проверяем, добавлен ли АС в качестве сервера доступа.

1.2. Когда STA обращается к странице аутентификации, WNAM должен передавать IP-адрес STA или AC. :

2. Исключение возникает в промежуточной сети. Например, брандмауэр отключает порт портала (по умолчанию 2000) или конфигурация маршрута неверна.

3. Номер порта назначения, отправленный сервером портала, неверен. По умолчанию номер порта назначения для пакетов портала равен 2000, который изменен на сервере портала.