Часть 1. Введение.
Часть 2. Подготовка.
Часть 3. Samba 4 AD DC.
Часть 4. FreeRadius. NTLM-авторизация.
Часть 5. Точка доступа Wi-Fi при помощи HOSTAPD.
Часть 6. Доступ в интернет при помощи PPPoE. Фаервол IPTables.
Часть 7. Подключение уже созданного RAID-массива. NFS server.
Часть 8. Баг при подключении к Wi-Fi внутри домена. FreeRadius.
В процессе подключения к Wi-Fi я наткнулся на досадный баг. До тех пор, пока я заходил в систему под локальным пользователем, подключение к Wi-Fi работало прекрасно по моим доменным логину и паролю. Но стоило только занести систему в домен и зайти в неё под оменным пользователем — Wi-Fi не подключался, а FreeRadius в дебаг-режиме выдавал следующую ошибку:
[peap] Client rejected our response. The password is probably incorrect. [peap] We sent a success, but received something weird in return.
Судя по всему эта ошибка актуальна для систем Windows 8-10. По крайней мере, на всех устройствах с Windows 10, которые у меня есть, эта ошибка проявляется.
Решить эту проблему можно двумя способами:
1) Заходить в сеть Wi-Fi еще до входа пользователя в систему на экране ввода пароля, что неудобно.
2) Использовать своеобразный workaround, который я опишу ниже.
Для начала нам потребуется зайти в файл /etc/freeradius/modules/mschap и привести стоку ntlm_auth к следующему виду:
ntlm_auth = "/usr/bin/ntlm_auth --request-nt-key --username=%{mschap:User-Name:-None} --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Response}:-00}"
От первоначальной конфигурации она отличается тем, что вместо Stripped-User-Name используется mschap:User-Name.
Затем необходимо перезапустить FreeRadius:
/etc/init.d/freeradius restart
Начиная с этого момента, если система была введена в домен, регистрация в сети будет происходить по имени хоста системы и ключу Nt-response, а доменные логин и пароль не понадобятся при входе в сеть Wi-Fi — подключение произойдет автоматически.
Это автоматическое подключение будет работать только если система до этого была введена в домен. Исходя из этого есть и минус: если войти на этой же системе под локальным пользователем — пользователь также успешно подключится к сети Wi-Fi. Несмотря на это, для того чтобы получить доступ к доменным шарам, ему все равно придется ввести логин и пароль.