4.6. Авторизация с помощью Kerberos

Авторизация Kerberos позволяет прозрачно (без запроса имени пользователя и его пароля) авторизовать пользователей домена Active Directory. При авторизации через Kerberos сервер UserGate работает с контроллерами домена. Контроллеры домена выполняют проверку пользователя, который получает доступ в интернет.

Примечание

Для авторизации пользователей через Kerberos пользователи должны входить в группу Domain users (пользователи домена) в AD.

Для настройки авторизации Kerberos необходимо выполнить следующие действия (для настройки авторизации Kerberos предварительно был создан домен test1.net).

  1. Создать DNS-записи для сервера UserGate. Необходимо создавать записи типа A, не создавайте записи типа CNAME. В качестве IP-адреса необходимо указать IP-адрес интерфейса UserGate, подключенного в зону Trusted.

image21

image22

  1. Создать пользователя в домене AD, например kerb@test1.net с параметром учётной записи password never expires (срок действия пароля не ограничен). Установить пароль пользователю, например, kerb.

Примечание

Не используйте символы национальных алфавитов, например, кириллицу, в именах пользователя kerb или в организационных единицах AD, где вы планируете создать учетную запись kerb. Пользователь для Kerberos и пользователь для LDAP-коннектора должны отличаться. Не используйте одну и ту же учетную запись.

  1. Создать keytab файл на контроллере домена. Для этого необходимо запустить командную строку от имени администратора и выполнить следующую команду.

ktpass.exe /princ HTTP/auth.test1.net@TEST1.NET /mapuser kerb@TEST1.NET /crypto ALL /ptype KRB5_NT_PRINCIPAL /pass * /out C:\utm.keytab

Примечание

Команда в одну строку. Команда чувствительна к регистру букв.

Далее введите пароль пользователя kerb. Keytab файл создан (в корне диска С:\).

image23

В данном примере:

  • auth.test1.net - DNS - запись, созданная для сервера UserGate в пункте 1.

  • TEST1.NET - Kerberos realm domain, обязательно большими буквами.

  • kerb@TEST1.NET - имя пользователя в домене (созданное ранее в пункте 2), имя realm-домена обязательно большими буквами.

После успешного создания keytab файла Имя входа пользователя (Userlogon name) изменилось (можно проверить в свойствах пользователя kerb во вкладке Учётная запись).

image24

  1. Произвести настройку UserGate.

На UserGate-сервере предварительно произведены сетевые настройки, протокол QUIC запрещён (можно запретить, настроив правило межсетевого экрана в разделе Политики сети --> Межсетевой экран), включено правило дешифрования всех неизвестных пользователей (раздел Политики безопасности --> Инспектирование SSL: можно использовать правило, созданное по умолчанию Decrypt all for unknown users). Это необходимо для авторизации пользователей, которые делают свои запросы по зашифрованному протоколу HTTPS.

Вариант 1. В разделе Сеть --> DNS --> Системные DNS-серверы укажите IP-адреса контроллеров домена (в данном примере 10.0.0.20).

image25

Настройте синхронизацию времени с контроллером домена: в разделе UserGate --> Настройки --> Настройка времени сервера необходимо изменить Основной NTP-сервер. Укажите IP-адрес контроллера домена. В качестве запасного - опционально - можно указать IP-адрес другого контроллера домена.

image26

Далее перейдите к пункту 5.

Вариант 2. В разделе Сеть --> DNS --> Системные DNS-серверы укажите IP-адреса DNS-серверов интернета.

image27

В разделе Сеть --> DNS --> DNS-прокси --> Правила DNS нажмите на кнопку Добавить и укажите домен и IP-адреса контроллеров домена.

image28

Настройте синхронизацию времени в разделе UserGate --> Настройки --> Настройка времени сервера. Измените основной и запасной NTP-серверы (поля Основной NTP-сервер и Запасной NTP-сервер).

image29

Перейдите в раздел Сеть --> Зоны и в настройках зоны внутренней подсети организации (по умолчанию, зона Trusted) во вкладке Контроль доступа разрешите сервисы DNS и NTP сервис.

image30

На серверах контроллеров AD укажите UserGate в качестве корневого сервера DNS и основного сервера NTP.

  1. Изменить адрес домена Auth Captive-портала.

В разделе UserGate --> Настройки --> Модули измените названия доменов Auth/Logout Captive-портала и страницы блокировки на доменные имена, созданные в пункте 1.

image31

  1. Создать LDAP - коннектор для получения информации о пользователях и группах Active Directory и загрузить keytab - файл.

Для этого перейдите в раздел Пользователи и устройства --> Серверы авторизации и добавьте LDAP коннектор, нажав на кнопку Добавить и выбрав Добавить LDAP коннектор.

В свойствах коннектора LDAP во вкладке Настройки необходимо указать:

  • Произвольное название LDAP - коннектора (поле Название).

  • IP-адрес сервера контроллера домена (поле Доменное имя LDAP или IP-адрес).

  • Bind DN («логин») в формате DOMAIN\username или username@domain для подключения к серверу LDAP. Данный пользователь уже должен быть заведен в домене.

  • Пароль пользователя для подключения к домену.

image32

Во вкладке Домены LDAP свойств коннектора добавьте доменное имя LDAP.

image33

Далее загрузите созданный в пункте 3 keytab файл во вкладке Kerberos keytab.

После внесения настроек нажмите на кнопку Проверить соединение. В случае, если настройки внесены верно, то вы увидите следующее сообщение.

image34

Сохраните настройки LDAP коннектора.

  1. Создать профиль авторизации Kerberos.

В разделе Пользователи и устройства --> Профили авторизации создайте профиль авторизации Kerberos и укажите следующие данные.

  • Во вкладке Общие необходимо указать Название: произвольное название профиля авторизации (допустим kerberos auth).

  • Во вкладке Методы аутентификации добавьте Аутентификация Kerberos.

Сохраните настройки профиля авторизации, нажав на кнопку Сохранить.

  1. Создать Captive-профиль.

Создайте Captive-профиль во вкладке Пользователи и устройства --> Captive-профили и заполните необходимые данные и сохраните. Во вкладке Общие укажите:

  • Название Captive - профиля.

  • Профиль авторизации, созданный ранее.

image35

  1. Создать правило Captive-портала для авторизации Kerberos.

Добавьте правило Captive-портала для авторизации Kerberos в разделе Пользователи и устройства --> Captive-портал. В свойствах правила Captive-портала во вкладке Общие необходимо указать:

  • Название правила.

  • Captive-профиль.

image36

  1. Разрешить доступ к сервису HTTP(S) для зоны.

В разделе Сеть --> Зоны на вкладке Контроль доступа разрешите доступ к сервису HTTP(S)-прокси для зоны, к которой подключены пользователи, использующие авторизацию Kerberos.

image37

  1. Произвести настройки на компьютере пользователя.

Войдите в систему под учётной записью доменного пользователя. Для корректной работы с HTTPS-сайтами установите сертификат, используемый для дешифрования трафика, в доверенный сертификаты.

Стандартный режим авторизации Kerberos.

Для работы в стандартном режиме авторизации Kerberos укажите обязательное использование прокси сервера в виде FQDN-имени UserGate. Перейдите Панель управления --> Cеть и Интернет --> Свойства браузера --> Подключения --> Настройка сети --> Прокси-сервер и укажите FQDN и порт интерфейса UserGate, к которому будут подключены пользователи.

image38

Прозрачный режим авторизации Kerberos.

Для работы в прозрачном режиме авторизации перейдите в Панель управления --> Cеть и Интернет --> Свойства браузера --> Безопасность --> Интернет. В разделе Уровень безопасности для этой зоны нажмите кнопку Другой и в параметрах безопасности в разделе Проверка подлинности пользователя --> Вход установите Автоматический вход в сеть с текущим именем пользователя и паролем.

image39

Проверка авторизации Kerberos.

Для проверки работы авторизации Kerberos в браузере пользователя перейдите на сайт, например, ya.ru. Далее на UserGate перейдите во вкладку Журналы и отчёты в раздел Журналы --> Журнал веб-доступа. В журнале видно, что запрос происходит от доменного пользователя.

image40