- •Aaa в сетях подвижной радиосвязи
- •Рис 1.1. Агентская последовательность
- •2. Radius Основные положения
- •Архитектура radius
- •Общая схема взаимодействия при использовании протокола radius
- •Алгоритмы аутентификации, авторизации и учета radius Базовая схема работы протокола
- •Взаимодействие с технологиями рар и chap
- •Работа посредников (прокси) в протоколе radius
- •Протокол учета radius (radius Accounting)
- •3. Реализация ааа в различных сетях aaa-сервер в ims сети
- •Aaa-сервер в WiMax сети
- •Функциональность современного aaa-сервера
Алгоритмы аутентификации, авторизации и учета radius Базовая схема работы протокола
При использовании протокола RADIUS-клиентом (NAS-сервером) пользователь должен передать ему свою аутентификационную информацию. Это может производиться посредством приглашения в систему (login promt) или при помощи встроенных механизмов передачи данной информации канальным протоколом (например, РРР). На участке «пользователь - NAS» используются различные технологии передачи необходимых данных, например, РАР [60], CHAP [69], и ЕАР [11].
Обобщенные схемы обмена сообщениями при входе пользователя в систему приведены на рис. 2.2 и рис. 2.3.
Рис. 2.2. Процесс обмена сообщениями по протоколу RADIUS, успешный исход
Рис. 2.3. Процесс обмена сообщениями по протоколу RADIUS, неуспешный исход
После получения аутентификационных данных NAS-сервер проводит аутентификацию с использованием протокола RADIUS. При этом NAS формирует пакет Access-Request.
Пакет Access-Request передается по сети серверу. Если через некоторое время ответ на него не приходит, то запрос передается повторно.
Защита паролей при передаче по сети обеспечивается благодаря шифрованию RSA MD5 с использованием разделяемого ключа (shared secret).
Для каждой пары клиент-сервер имеется свой разделяемый ключ. Он конфигурируется администратором и по сети никогда не передается. После получения клиентского запроса RADIUS-сервер проверяет, имеется ли для этого клиента (NAS-сервера) разделяемый ключ. Если он не находит ключа, то пакеты отбрасываются без уведомления. Если проверка завершается успешно, то сервер приступает к поиску профиля пользователя в базе данных.
Пользовательская запись (профиль) в базе данных содержит список требований, необходимых для работы данного клиента с определенным перечнем услуг. К таким требованиям может относиться проверка пароля, порта или идентификатора NAS-сервера, через который разрешен доступ к услугам для запросившего услугу пользователя.
RADIUS-сервер в некоторых ситуациях может выступать в качестве посредника и пересылать запросы другим серверам. Специфика работы по такой схеме будет раскрыта ниже. При невыполнении любого из условий, приведенных в запросе, NAS-серверу, передается сообщение Access-Reject, показывающее некорректность запроса пользователя. В сообщение может включаться атрибут или вложенное сообщение, которое должно быть передано пользователю от NAS-сервера. При выполнении всех условий NAS-серверу передается сообщение Access- Accept, включая список необходимых конфигурационных параметров.
Схема Challenge/Response
Режим Challenge/Response необходим для проверки прав доступа или запроса дополнительной информации у пользователя. В случае использования схемы Challenge/Response процедура аутентификации пользователя несколько усложняется по сравнению с базовой и выглядит следующим образом. Сервер NAS передает RADIUS-серверу пакет Access-Request с заданными атрибутами, на что тот возвращает ответ - сообщение Access-Challenge. Обычно оно содержит поле Reply-Message, включающее запрос (challenge), который необходимо передать конечному пользователю; это поле заполняется случайным числом специального вида. Запрос обычно получают от внешнего сервера, которому известен идентификатор, используемый пользователем, и который сможет генерировать случайное число с подходящим основанием и длиной.
У пользователя, в свою очередь, установлено приложение, которое позволяет по имеющемуся запросу вычислить ответ по определенному алгоритму. Этот ответ (вычисленное число) включается в повторный пакет Access-Request наряду с атрибутом State, взятым из запроса. Так делается для того, чтобы сервер смог правильно интерпретировать полученное сообщение. Если отклик совпадает с ожидаемым сервером, то в ответ посылается пакет Access-Accept, иначе передается Access-Reject. В случае необходимости допускается также повторная посылка сервером пакета Access-Challenge. Схематично процедура Challenge/Response изображена на рис. 2.4.
Рис. 2.4. Общая схема реализации режима Challenge/Response для протокола RADIUS