РЕДАКТИРОВАТЬ:
Я смог сузить проблему. Видимо, это не проблема с Surface, но Windows 8.1 (вероятно, 8 тоже) и 10. Сначала я этого не уловил, так как сначала использовал не доменный ноутбук и пользователя для тестирования с Windows 8.1.
Когда я использую локальную учетную запись пользователя, подключение к Wi-Fi RADIUS работает безупречно. Как только я попробую это с учетной записью пользователя домена (я попробовал одну с одной и без локальных прав администратора), он не подключится. Обратите внимание, что я говорю о домене, а не AD, так как мы все еще используем Samba 3.
Оригинал:
Мы работаем по сети радиуса Wi-Fi с использованием сервера FreeRADIUS (PEAP с MSChapv2). Он работает безупречно на всех машинах (протестировано на Windows 7 и 8.1, Android 4.3, Arch Linux), за исключением всех наших Surface Pro 3. На компьютерах с Windows используются те же настройки, что и для настройки Wi-Fi с использованием сценария powershell. Я также пытался настроить его вручную с различными параметрами много раз. Мы используем сертификат, подписанный специализированным центром сертификации нашей компании для сервера FreeRADIUS. Я проверил, что CA правильно установлен в Windows, а также попытался установить соединение без проверки сертификата.
Вот что отображается в лог-файле FreeRADIUS:
Wed Jul 15 10:32:52 2015 : Auth: Login OK: [someuser] (from client stg-wlan-core port 0 via TLS tunnel)
Wed Jul 15 10:32:55 2015 : Auth: Login incorrect: [someuser] (from client stg-wlan-core port 217 cli C0-33-5E-33-10-8F)
Вот что появляется, если вы используете отладку на FreeRADIUS:
[eap] EAP packet type response id 221 length 43
[eap] Continuing tunnel setup.
++[eap] returns ok
Found Auth-Type = EAP
# Executing group from file /etc/freeradius/sites-enabled/default
+- entering group authenticate {...}
[eap] Request found, released from the list
[eap] EAP/peap
[eap] processing type peap
[peap] processing EAP-TLS
[peap] eaptls_verify returned 7
[peap] Done initial handshake
[peap] eaptls_process returned 7
[peap] EAPTLS_OK
[peap] Session established. Decoding tunneled attributes.
[peap] Peap state send tlv success
[peap] Received EAP-TLV response.
[peap] Client rejected our response. The password is probably incorrect.
[peap] We sent a success, but received something weird in return.
[eap] Handler failed in EAP/peap
[eap] Failed in EAP select
++[eap] returns invalid
Failed to authenticate the user.
Login incorrect: [someuser] (from client stg-wlan-core port 112 cli 50-1A-C5-F4-F6-87)
Using Post-Auth-Type Reject
Это говорит о неправильном пароле. Я не уверен, о каком пароле идет речь, так как уверен, что учетная запись пользователя существует и пароль правильный.
Трассировка с поверхности:
[500] 07-15 10:19:48:898: RasEapCreateConnectionProperties, eap type id = 26
[500] 07-15 10:19:48:899: CopyXmlDoc returned: 0x0
[500] 07-15 10:19:48:899: ReadConnectionData
[500] 07-15 10:19:48:900: Setting the defaults to use win-logon
[500] 07-15 10:19:48:900: Use Winlogon credentials is set to No
[500] 07-15 10:19:48:900: Successfully generated blob for MSChapV2 Connection Properties
[500] 07-15 10:19:49:831: RasEapCreateConnectionProperties, eap type id = 26
[500] 07-15 10:19:49:831: CopyXmlDoc returned: 0x0
[500] 07-15 10:19:49:832: ReadConnectionData
[500] 07-15 10:19:49:833: Setting the defaults to use win-logon
[500] 07-15 10:19:49:833: Use Winlogon credentials is set to No
[500] 07-15 10:19:49:833: Successfully generated blob for MSChapV2 Connection Properties
[500] 07-15 10:19:49:843: RasEapCreateConnectionProperties, eap type id = 26
[500] 07-15 10:19:49:843: CopyXmlDoc returned: 0x0
[500] 07-15 10:19:49:844: ReadConnectionData
[500] 07-15 10:19:49:845: Setting the defaults to use win-logon
[500] 07-15 10:19:49:845: Use Winlogon credentials is set to No
[500] 07-15 10:19:49:845: Successfully generated blob for MSChapV2 Connection Properties
[500] 07-15 10:19:50:109: InitLSA.
[500] 07-15 10:19:50:109: InitLSA: returning 0x0
[500] 07-15 10:19:50:109: ChapInit: exit: fInitialize=0x1, g_dwRefCount = 0x1, g_hLsa = 0x1147e5d0
[500] 07-15 10:19:50:109: EapMSCHAPv2Initialize Exit: fInitizlize = 1, dwRefCount = 0x1,
[500] 07-15 10:19:50:109: EapMSCHAPv2Initialize: fInitizlize = 0, dwRefCount = 0x1,
[500] 07-15 10:19:50:109: ChapInit: fInitialize=0x0, g_dwRefCount = 0x1, g_hLsa = 0x1147e5d0
[500] 07-15 10:19:50:135: RasEapGetIdentity
[500] 07-15 10:19:50:135: ReadUserData
[500] 07-15 10:19:50:135: NULL user blob is passed, size: 0
[500] 07-15 10:19:50:135: ReadConnectionData
Единственная причина, о которой я могу думать больше, состоит в том, что это проблема с адаптером Wi-Fi или его драйвером. Если у вас есть идеи или вам нужна дополнительная информация, пожалуйста, дайте мне знать.