Поиск по этому блогу

понедельник, 10 августа 2015 г.

Обновление радиуса с версии 2.1 до версии 2.2

Имеется основной радиус сервер на базе Debian 7.8 и Freeradius 2.1.12 (настраивался давно человеком. который больше не работает), необходимо поднять backup сервер с аналогичной конфигурацией. Будит использоваться Debian 8.1 Freeradius 2.2.5, все устанавливается из стандартных репозиториев.

!Прежде, чем производить, какие-либо изменения в конфигурационных файлах, необходимо остановить сервис freeradius. Если это не сделать то при перезапуске может появиться примерно примерно такая ошибка: ExecStart=/etc/init.d/freeradius start (code=exited, status=1/FAILURE). Лечиться убиванием радиуса через kill, возвращением измененых файлов в исходное состояние и запуском сервиса снова.
Замечание может несколько наивное и явное, но в ubuntu 14.01 можно было менять конфиг не останавливая радиус. И при последующем перезапуске никаких ошибок не вылезало.

Перенесли конфиг, запустили радиус в дебаг режиме (freeradius -X), затем запустили сервис - ошибок ненаблюдается, создали тестового юзера, запустили radtest (radtest testing password localhost 0 testing123). Проблем не наблюдалось. Т.к. freeradius используется для аутентификации про протоколу 802.1X и MAB, а пользователи хранятся в файлах, то необходимо привести имена и mac-адреса к нормализованному виду.

Как об этом пишет freeradius:
NAS usually send the MAC address in the Calling-Station-ID attribute. There are several common formats: 00:11:22:33:44:55 00-11-22-33-44-55 0011.2233.4455 upper-case hex lower-case hex


И если при настройке радиуса версии 2.1 вы поудаляли все лишние модули и настройки, к ним относящиеся (как в моем случае), то вероятнее получите ошибку о том, что Login Invalid. В логах появляется такая ошибка: WARNING: Unknown module "tolower" in string expansion "%".

Freeradius к релизу 2.2.1 пишет:
rlm_expr is now responsible for registering many of the xlat expansions. This is cleaner than bundling them all in the server core. You should ensure 'expr' is listed in instantiate to ensure correct operation of xlat expansions.
Т.е. что бы корректно работала трансформация hostname и mac-адресов необходимо явно указать модуль expr в основном конфигурационном файле радиус сервера

Добавляем модуль expr в /etc/freeradius/modules, в файл /etc/freeradius/radiusd.conf добавляем секцию
instantiate { 
     expr 
}
. Перезапускаем и аутентификация прекрасно работает.

Комментариев нет:

Отправить комментарий