2015-05-25 2 views
-2

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

ERROR: No authenticate method (Auth-Type) found for the request: Rejecting the user 
Failed to authenticate the user. 

Есть ли что-то, что мне не хватает в одном из файлов Radius, который я должен добавить?

ответ

0

Вам нужно настроить радиус, чтобы добавить недостающие заголовки

Вы можете включены полные отладки на сервере радиуса, он покажет вам все получить сервера радиуса пакетов.

Freeradius позволяет добавлять любой заголовок в пакет на любом этапе, см. Документ.

+0

Я просмотрел пакеты RADIUS, и RADIUS получает запрос от сервера Asterisk для аутентификации клиента, но ничего не выходит из RADIUS. Но я ничего не добавлял к RADIUS о клиентах, которые у меня есть, может быть, это проблема –

+0

Таким образом, вы неправильно настроили радиус. Вы должны поместить int config, что ответить на такой пакет (sql или другое правило), и радиус сделает для вас. Nore, freeradius - это всего лишь набор libs для протокола радиуса. Без конфигурации он ничего не делает, но ОЧЕНЬ гибкий. – arheops

+0

Итак, я понял, что я новичок в RADIUS, и я пытаюсь узнать его больше, у вас есть полезные ссылки, которые я могу посмотреть на это было бы замечательно Спасибо –

1

Проблема заключается в том, что ни один модуль в разделе авторизации вашего виртуального сервера не несет ответственности за обработку запроса.

Вы должны удалить содержимое раздела авторизовать, и перечислить следующие модули:

authorize { 
    pap 
    chap 
    mschap 
    digest 
    eap 
} 

Затем вы должны запустить сервер в режиме отладки radiusd -X, чтобы увидеть, какой модуль берет на себя ответственность за запрос (вы» ll см. один возвращает ok или updated, где остальные возвращаются noop). Мы назовем это auth module

После того, как вы выяснили, какой модуль возьмет на себя ответственность за запрос, вам необходимо предоставить подходящий хэшированный пароль.

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

  • мазок - любой
  • глава - Cleartext-Password, CHAP-Password
  • MSCHAP - Cleartext-Password, NT-Password
  • переваривать - Cleartext-Password, Digest-HA1
  • еар - Зависит от внутреннего метода (ответить на этот ответ, и я могу дать дополнительные рекомендации).

Для тестирования вы можете поместить пароль в плоский файл, локальный на сервер. Модуль, который имеет дело с этими плоскими файлами, - это модуль files.

Чтобы добавить записи в файл пользователя, сначала обрезайте /etc/raddb/users (измените для своей установки).

Затем добавьте следующую запись к вершине:

<username> <password attr> := <password> 

со значениями в <> заменены реальными значениями.

Удалите неиспользуемые модули авторизации и добавьте модуль files наверху.

authorize { 
    files 
    <auth module> 
} 

Затем удалите все модули из подтверждать подлинность и добавить <auth module>

authenticate { 
    <auth module> 
} 

Это должно дать вам и работает. Если ни один модуль не отвечает за запрос, отправьте список атрибутов в запросе из верхней части отладочного вывода, и я помогу вам идентифицировать его.

Смежные вопросы