Агент FreeRADIUS (FRA)
Протокол удаленной аутентификации RADIUS (Remote Authentication Dial-In User Service) предназначен для централизованного управления удаленным доступом пользователей, которые подключаются к корпоративной сети через серверы удаленного доступа. Клиент RADIUS передает учетные данные удаленного пользователя центральному серверу RADIUS, который проверяет эти данные в своей локальной или внешней базе данных учетных записей и подтверждает либо отклоняет запрос.
RADIUS обеспечивает взаимную аутентификацию клиента и сервера, а также защищает от перехвата учетные данные пользователя, используя для этого популярные протоколы аутентификации. Кроме того, сервер RADIUS может работать в режиме прокси, перенаправляя запросы от клиентов другим серверам RADIUS
Интегрировать через RADIUS можно сервисы, где есть поддержка этого протокола, чаще всего это сетевое оборудование, серверы VPN и прочие, а также модуль PAM для Linux. Клиент RADIUS, встроенный в такой сервис, обращается к серверу RADIUS и передает ему все учетные данные пользователя, который проходит аутентификацию. Сервер RADIUS в свою очередь обращается к серверу аутентификации, отправляя ему для проверки строку с PIN-кодом и одноразовым паролем.
Шлюз FreeRADIUS
Для интеграции целевых ресурсов с сервером аутентификации по протоколу RADIUS используется агент для ПО FreeRADIUS. Этот агент вместе с сервером FreeRADIUS выполняет функцию шлюза, через который запросы от целевых ресурсов попадают к модулю аутентификации, а ответы от этого модуля к целевым ресурсам.
При интеграции целевых ресурсов по протоколу RADIUS может потребоваться возвращать атрибуты RADIUS после успешной аутентификации пользователя. Эта возможность нужна для поддержки расширенных возможностей аутентификации и авторизации, например динамических групп, членство в которых определяется значением возвращаемого атрибута.
Отказоустойчивость и балансировка
Для распределения потока запросов к нескольким шлюзам RADIUS можно использовать функцию списка серверов RADIUS в целевых ресурсах, прописав в качестве первого сервера разные шлюзы. При этом запросы в зависимости от логики клиента RADIUS в целевом ресурсе будут отправляться на первый шлюз или распределяться статистически в нужных пропорциях, а при отказе или критической перегрузке основного шлюза перенаправляться на резервный. Серверы RADIUS после обработки запроса на аутентификацию не хранят никакой информации о статусе, поэтому привязывать целевые ресурсы к определенным шлюзам RADIUS не требуется.
Для распределения запросов к серверам аутентификации можно указывать их в конфигурации разных шлюзов в разном порядке. Также можно использовать внешний балансировщик нагрузки или объединить серверы в кластер выравнивания нагрузки с помощью соответствующей службы ОС.