#c #dictionary #client #radius #freeradius
#c #словарь #клиент #radius #freeradius
Вопрос:
Я пытаюсь загрузить словарь, который поставляется с Debian Squeeze. К сожалению, в библиотеке radius-client произошел сбой в каком-то включенном файле с:
rc_read_dictionary: unknown Vendor-Id encrypt=1 on line 7 of dictionary /usr/share/freeradius/dictionary.compat
Строка является
ATTRIBUTE Password 2 string encrypt=1
Freeradius устанавливается из пакета, поэтому я предполагаю, что это должно работать просто отлично… В чем здесь может быть проблема?
Комментарии:
1. @sixlettervariables C, но, я думаю, здесь это не имеет особого значения. rc_read_dictionary поступает из API radius-клиента и уже запущен.
2. Пытаюсь добавить теги, чтобы привлечь ваше внимание к вопросу.
3. Какую версию FreeRADIUS вы используете?
Ответ №1:
Поздний ответ, но он все еще может помочь другим, у меня возникла связанная с этим проблема.
Вы получаете эту ошибку, потому что пытаетесь использовать файл словаря, предназначенный для сервера FreeRADIUS. Клиентская библиотека «freeradius-client» не на 100% совместима с этим форматом. В частности, в вашем случае он не может обрабатывать encrypt=1
свойство атрибута.
Причиной жалобы на неизвестный идентификатор поставщика является другая несовместимость между сервером FreeRADIUS и клиентской библиотекой freeradius. Сервер FreeRADIUS ожидает файлы словаря с атрибутами, специфичными для поставщика (VSA), такими как следующие:
VENDOR Cisco 9
BEGIN-VENDOR Cisco
ATTRIBUTE Cisco-AVPair 1 string
ATTRIBUTE Cisco-NAS-Port 2 string
...
END-VENDOR Cisco
Однако библиотека freeradius-client может анализировать VSA только в следующей форме:
VENDOR Cisco 9
ATTRIBUTE Cisco-AVPair 1 string vendor=Cisco
ATTRIBUTE Cisco-NAS-Port 2 string vendor=Cisco
Вышесказанное верно для FreeRADIUS server версии v2.1.x и freeradius-client версии v1.1.6.
Комментарии:
1. Я работал над проблемой и, вероятно, не буду тестировать решение, но в Интернете есть много похожих вопросов, поэтому я надеюсь, что кто-то еще найдет это полезным в будущем. Спасибо! Я считаю, что это правильно.