Добавление домена аутентификации RADIUS

Добавление домена аутентификации RADIUS

Для добавления домена аутентификации RADIUS необходимо включить экспериментальный параметр experimental.radiusauth.enabled   в соответствии с подразделом  Управление экспериментальными параметрами Termidesk.

После включения экспериментального параметра администратору Termidesk следует перейти «Компоненты - Домены аутентификации», затем нажать экранную кнопку [Создать] и выбрать из выпадающего списка «Radius».

Затем необходимо заполнить данные, перечисленные в столбце «Параметр» следующей таблицы.

Данные для добавления аутентификации Radius

ПараметрОписание
«Название»Текстовое наименование домена аутентификации
«Комментарий»Информационное сообщение, используемое для описания назначения источника сведений о субъектах и их полномочиях
«Приоритет»

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

Порядок отображения доменов зависит от приоритета домена и его наименования:

  • чем ниже приоритет, тем выше домен в списке;
  • при наличии доменов с одинаковым приоритетом действует сортировка по алфавиту
«Метка»Информационное поле, используемое для идентификации объекта во внутренней структуре данных Termidesk.

Начиная с Termidesk версии 5.1 поле может состоять из букв латинского алфавита, цифр, знаков «-» (дефис) и «_» (подчеркивание)

«Субъекты»

Выбор субъектов, для которых будет доступен домен аутентификации. 

Возможные значения:

  • «Все» - домен аутентификации будет доступен как для пользователей, так и для администраторов и персонала. Такое значение выбирается, если домен аутентификации должен быть доступен на «Портале администратора», «Портале пользователя», «Портале универсальном», и при подключении из компонента «Клиент»;
  • «Администраторы и персонал» - домен аутентификации будет доступен только для администраторов и персонала. Такое значение выбирается, если домен аутентификации должен быть доступен только на «Портале администратора» или «Портале универсальном»;
  • «Пользователи» - домен аутентификации будет доступен только для пользователей. Такое значение выбирается, если домен аутентификации должен быть доступен на «Портале пользователя», «Портале универсальном» или при подключении пользователя из компонента «Клиент»;
  • «Система» - домен аутентификации не будет доступен ни для пользователей, ни для администраторов и персонала
«Radius сервер»IP-адрес или доменное имя ресурса, являющегося источником сведений о субъектах и их полномочиях (сервер RADIUS)
«Аутентификационный порт»Порт для обработки запросов на аутентификацию
«Секрет» Набор символов (пароль), подтверждающий подключение к серверу RADIUS
«Время ожидания соединения, с» Максимальное время ожидания (в секундах) для установки соединения

Валидация заданных параметров экранной кнопкой [Тест] проверяет корректность заданного имени сервера (возможность получить IP-адрес, используя DNS), доступность сервера (корректный порт, работоспособность сервера RADIUS).

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

При дальнейшей эксплуатации сервер Termidesk, обрабатывая запрос на аутентификацию, получает актуальный список групп пользователя и сравнивает со своей конфигурацией. Если ни одного совпадения не обнаружено, то пользователю будет отказано в доступе.

Конфигурация сервера RADIUS должна учитывать передачу списка групп пользователя в атрибуте с ключом 25 (Class) в ответе со статусом авторизации.

Для корректного получения списка групп на Termidesk сервер RADIUS может быть настроен следующим образом:

Пример настройки приведен для сервера freeRADIUS.

  • файл /etc/freeradius/3.0/mods-enabled/ldap должен содержать конструкцию вида:
ldap {
...
  update {
     ...
     reply:memberOf                  += 'memberOf'
  }
...
}
  • в файл /etc/freeradius/3.0/dictionary необходимо добавить строку:
ATTRIBUTE       memberOf                3001    string 
  • в файле /etc/freeradius/3.0/sites-enabled/default необходимо найти секцию post-auth и добавить регулярное выражение, фильтрующее название группы из получаемых от сервера атрибутов:
foreach &reply:memberOf {  
       if ("%{Foreach-Variable-0}" =~ /CN=([^,=]+)/) {  
             update reply { Class += "%{1}" }  
           } 
  • в файле /etc/freeradius/3.0/mods-enabled/exec указать для параметра wait значение yes:
wait = yes