Начиная с версии 1.5.2074 система WNAM поддерживает динамическую авторизацию пользователей административного веб-интерфейса по протоколу RADIUS. Данная возможность является востребованной у заказчиков, имеющих в штате значительное число специалистов с различными ролями (администраторов, операторов, операторов портала, менеджеров), которым необходимо работать с системой WNAM, но при этом не желательно статическое хранение их учетных записей в БД системы. Как правило, заказчики применяют внешние средства хранения такой информации, например,  Active Directory или RADIUS-сервера с целью централизованной аутентификации и авторизации доступа к различным информационным системам. Система WNAM позволяет производить допуск пользователя в интерфейс администратора на основе проверки пары "логин-пароль" и получения назначенной роли (прав) у внешнего RADIUS-сервера, в котором могут быть настроены как локальные учетные записи, так и интеграция с Active Directory.

Далее в качестве примера приведены настройки RADIUS-сервера Cisco ACS 5.8 с локальными записями.

В первую очередь, необходимо создать (привязать) какой-либо RADIUS-атрибут, через который будет передаваться название роли пользователя интерфейса (администратор, оператор и т.п.). В примере рассмотрен незанятый стандартный атрибут номер 208 из перечня атрибутов IETF.

При редактировании атрибута следует установить имя (произвольно, например, WNAM-208) и указать тип: String.

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

В качестве имени поля использовано WnamRole.

Далее следует создать группу сетевых устройств (RADIUS-клиентов) - сервера WNAM (WNAM servers).

Далее в группу сетевых устройств необходимо добавить сервер WNAM с адресом 172.16.135.6, указав RADIUS-ключ (пароль на взаимодействия WNAM и RADIUS-сервера).

Далее требуется создать группу локальных пользователей (администраторов WNAM, WNAM admins).

Далее необходимо добавим локальную учетную запись в эту группу локальных пользователей и задать пароль (дважды), а также в поле роли (WnamRole) указать требуемую роль на выбор:

  • ADMIN;
  • OPERATOR;
  • OPERATOR_LIM;
  • PORTAL;
  • VIEWER.

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

Далее необходимо создать авторизационный профиль (применяется, когда авторизация проходит успешно).

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

Далее следует установить политику доступа (что проверяется и что применяется) в разделе идентификации.

Свойство правила Rule-WNAM: если клиент - типа "сервер WNAM" и тип авторизации - PAP, то источник авторизационных данных - локальная таблица, Internal Users.

Далее следует задать политику доступа: что делать, когда авторизация прошла успешно.

Необходимо настроить использование профиля "WNAM admin access", т.е. передавать заполненный 208й атрибут.

С сервера WNAM из командной строки рекомендуется проверить, что запрос к серверу проходит успешно, и в ответе присутствует имя роли (оно будет в hex-представлении 208-го атрибута):

root@debian64:~# radtest support support acs58.local 1 wnam
Sending Access-Request of id 111 to 72.211.44.19 port 1812
User-Name = "support"
User-Password = "support"
NAS-IP-Address = 127.0.1.1
NAS-Port = 1
Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: Access-Accept packet from host 72.211.44.19 port 1812, id=111, length=86
User-Name = "support"
Class = 0x434143533a61637335382f3332383334323737352f313733373238
Message-Authenticator = 0x2eddfaf2d924b50f6f21290d9d2bc908
Attr-208 = 0x4f50455241544f52

Если проверка прошла успешно, то можно приступать к настройке системы WNAM. За авторизацию пользователей веб-интерфейса через RADIUS-сервер отвечает набор параметров конфигурационного файла /etc/wnam.properties, представленный в таблице.

Имя параметраЗначение
radius_webuser_authTrue или false (по умолчанию), включает механизм динамической авторизации через RADIUS.
radius_webuser_serverСтрока, IP-адрес или DNS-имя RADIUS-сервера.
radius_webuser_secretСекретный ключ взаимодействия с сервером.
radius_webuser_attrНомер атрибута, в котором передается имя роли.
radius_webuser_createTrue или false (по умолчанию). Отвечает за создание постоянной учетную записи в "пользователях веб-интерфейса" при первой RADIUS-авторизации. Если запись будет создана, пользователь сам сможет устанавливать постоянные значения своего адреса электронной почты, преференции по языку интерфейса или единицам объёма трафика. Проверка пароля будет идти через RADIUS-сервер.


  • No labels