Avanpost FAM/MFA+ : 5.4.10. Настройка метода Kerberos

Общие сведения 

Kerberos – это один из методов двухфакторной/многофакторной аутентификации на базе специализированного сетевого протокола аутентификации Kerberos, для обеспечения безопасности использующего криптографию с симметричными ключами.

Avanpost FAM поддерживает аутентификацию посредством механизма Kerberos в приложения, подключенные посредством следующих интеграционных механизмов и компонентов: 

Подключение Kerberos-аутентификации через Microsoft Active Directory

Общие сведения

  1. Сервисное имя, указываемые при выпуске keytab-файла (файл, содержащий пару значений «имя пользователя и ключ»/«принципал и секрет» и использующийся для автоматической аутентификации без необходимости ввода пароля): HTTP/base_url (параметр base_url берется из конфигурационного файла Avanpost FAM Server). Пример сервисного имени: HTTP/idp.avanpost.local
  2. В билете (ticket), направляемом клиентом серверу Avanpost FAM, содержится информация о пользователе в формате domain\user. Например, в MS AD эти поля соответствуют значению User logon name (pre-Windows 2000):
  3. Аутентификация посредством Kerberos работает только при публикации интерфейса Avanpost FAM по имени.

Настройка на стороне MS AD

Настройку метода аутентификации Kerberos требуется осуществлять следующим образом:

  1. В конфигурационном файле Avanpost FAM Server config.toml следует отредактировать параметры секции [kerberos], задав значения параметров keytab (путь к keytab-файлу, содержащему ключи аутентификации), serviceAccountName (имя службы, использующейся для представления приложения в Avanpost FAM), requireHostAddr (параметр, указывающий требуется ли при аутентификации совпадение IP-адреса хоста, с которого выполняется запрос, с IP-адресом, зарегистрированным в Kerberos). Пример настройки конфигурационного файла:
    [kerberos]
    keytab = "/opt/idp/krb5.keytab"
    serviceAccountName = "HTTP/idp.avanpost.local"
    requireHostAddr = false
  2. При использовании мультидоменной сквозной аутентификации возможно использовать несколько keytab-файлов, сгенерированных на каждом контроллере домена. В этом случае все keytab-файлы указываются в конфигурационном файле:
    [kerberos]
    
    [kerberos.one]
    keytab = "/opt/idp/krb1.keytab"
    serviceAccountName = "HTTP/idp.avanpost.local"
    requireHostAddr = false
    
    [kerberos.two]
    keytab = "/opt/idp/krb2.keytab"
    serviceAccountName = "HTTP/idp.avanpost.local"
    requireHostAddr = false
  3. Проверить, что имя публикации Avanpost FAM доступно с контроллеров домена, а полное имя домена доступно с сервера Avanpost FAM. В случае недоступности следует добавить A-запись (address. запись для связи домена с IP-адресом сервера) в DNS или в файл hosts. Пример записи на сервере с контроллером домена:
    C:\\Windows\\System32\\drivers\\etc
    hosts
    10.10.17.5 idp.avanpost.local
    Пример записи на сервере Avanpost FAM:
    /etc/hosts
    10.10.17.2 dc.avanpost.local
    10.10.17.2 avanpost.local
  4. Создать учетную запись пользователя в Active Directory:
    1. Запустить консоль Active Directory Users and Computers командой dsa.msc.
    2. Выбрать контейнер для нового пользователя, щелкнуть по нему правой кнопкой и выбрать New - User.
    3. Указать имя, фамилию и инициалы пользователя, выбрать его userPrincipalName.
    4. Установить пароль для учетной записи, выключить опцию истечения пароля (установить флаг в чекбоксе "Password never expires") и запретить пользователю изменять пароль (установить флаг в чекбокс "User cannot change password"). 
  5. Создать keytab-файл. Для этого следует войти на контроллер домена с правами администратора домена и выполнить от имени администратора команд по аналогии (пояснения к команде даны в таблице).

    ktpass -out c:\AP\krb5.keytab -princ HTTP/idp.avanpost.local@DOMAIN.NAME -mapUser domain\user -mapOp set -pass P@ssw0rd -crypto All -pType KRB5_NT_PRINCIPAL
    НаименованиеОписание
    c:\AP\krb5.keytabПуть, где будет находиться сгенерированный keytab-файл.
    HTTP/idp.avanpost.localИмя сервиса в формате HTTP/base_url.
    @DOMAIN.NAMEDNS-имя (обязательно в верхнем регистре).
    domain\userИмя учетной записи (с указанием домена), созданной в п.4. данной инструкции.
    P@ssw0rdПароль учетной записи, созданной в п.4. раздела "Настройка".
  6. Выполнить настройку автоматизированного рабочего места согласно инструкции Настройка рабочего места Windows для доменной Kerberos-аутентификации данного раздела. 
  7. Переместите файл krb5.keytab (расположен по адресу C:\AP\krb5.keytab) на сервер службы FAM в каталог /opt/idp/. При необходимости следует предоставить права на данный файл.
  8. Перезапустить службу Avanpost FAM Server, используя команду: 
    sudo systemctl restart idp

Настройка рабочего места Windows для доменной Kerberos-аутентификации

Сервер должен быть прописан в зоне Local Intranet. Для этой зоны должны быть выполнены следующие настройки:

  • User Authentication – Logon – Automatic logon only in Intranet zone;
  • Security – Enable Integrated Windows Authentication.

Перед использованием метода аутентификации Kerberos для сквозной аутентификации пользователя в приложениях без дополнительного ввода логина и пароля требуется провести настройку браузера:

  1. В панели управления войти в раздел "Свойства браузера" во вкладку "Безопасность" (или запустить командную строку клавишами Win+R и запустить команду inetcpl.cpl).
  2. Выбрать зону безопасности "Местная интрасеть" ("Local Intranet") и нажать кнопку "Сайты" ("Sites").
  3. Нажать кнопку "Дополнительно" и в открывшемся окне "Местная интрасеть" внести запись вида http://idp.avanpost.local и http://localhost: для добавления ввести в текстовую строку и нажать "Добавить" ("Add"), после добавления нажать "Закрыть" ("Close") и ОК.
  4. Открыть расширенные настройки зоны "Местная интрасеть" нажатием на кнопку "Другой..." ("Custom level...").image2021-5-21_18-19-36.png
  5.  В разделе "Проверка подлинности пользователя" установите параметр "Автоматический вход в сеть только в зоне интрасети".
  6. Перейти во вкладку "Дополнительно" и в разделе "Безопасность" выбрать "Разрешить встроенную проверку подлинности Windows*" ("Enable Integrated Windows Authentication*").
  7. Сохранить настройки и перезапустить компьютер. После настройки вход в приложения посредством Avanpost FAM будет осуществляться без требования ввода логина и пароля.

При необходимости настройки метода на множестве рабочих машин рекомендуется проводить настройку через групповые политики (Microsoft Active Directory Group Policy Management).

Настойка метода Kerberos в Avanpost FAM Agent

Перед осуществлением настройки требуется установить Avanpost FAM Agent согласно инструкции по установке.

Настройку метода аутентификации Kerberos для Avanpost FAM Agent проводить следующим образом:

  1. В административной консоли Avanpost FAM Server из режима "Приложения" перейти в профиль Enterprise SSO-приложения (тип Agent), созданного при установке Avanpost FAM Agent.
  2. В профиле данного приложения перейти во вкладку MFA нажать и добавить фактор аутентификации "Password". 
  3. Добавить в группу пользователей, которые будут аутентифицироваться в настроенном приложении. Ручное добавление пользователей администратором реализуется в профиле группы. Также доступ пользователя к группам и ролям допускается редактировать в УЗ пользователя
  4. Запустить Avanpost FAM Агент на АРМ пользователя и инициировать аутентификацию. Ауетнтификация посредством метода Kerberos должна пройти успешно.




Обсуждение