Kerberos and Spnego authentication on Windows with Firefox | Adaltas

Automatic client discovery

Depending on your setup, you do not always need to modify the Kerberos client configuration. In the absence of entries in the configuration file, the KDC adress can be obtained from the DNS records. This feature can be desactivated if dns_lookup_kdc is false. The FreeIPA DNS service expose the following domain records:

Client configuration

Alternatively, you may need to create or import your own kerberos configuration file. The path to the file is C:ProgramDataMITKerberos5krb5.ini.

Configuration

We have created a Kerberos ticket and we now need to configure Firefox to use it. Before going to your destination URL, you must edit the configuration window by writing “about:config” in the adress bar.

Accept the risk and modify the following properties:

Also, while not being mandatory, you can change the following variables:

Configuration file

The path to the Kerberos client configuration is C:ProgramDataMITKerberos5krb5.ini. We will get back to its full configuration later but for now, to set the credential cache, you only need to the set the default_ccache_name profile variable.

Credential cache

Kerberos ticket are stored inside the credentials cache. There are multiple credentials cache supported on Windows:

  • FILE caches
    Simple and most portable. A simple flat file format is used to store one credential after another. This is the default on Linux and OSX.
  • API cache
    Only implemented on Windows, it communicates with a server process that holds the credentials in memory. This seems to be the default on Windows.

The default credential cache name is determined by…

Mit kerberos client installation

Download and install the Kerberos MIT client for Windows. The current version at the time of this writing is 4.1 and the download link is located in the section called “MIT Kerberos for Windows 4.1”.

This installation procedure is straightforward. Just accept all the default settings and move forward. Once the installation is complete, the installer will ask to restart the computer. It is probably not necessary but I didn’t had the time to check.

Ntlm авторизация в разных браузерах | виконую встановлення, налаштування, супроводження серверів. для деталей використовуйте форму зворотнього звʼязку

Недавно столкнулся с такой проблемой: FireFox, Chrome, Opera не хотят проходить NTLM авторизацию. Единственный, кто проходил – так это IE. Забыл сказать, что такая проблема наблюдается на Windows7. Ниже будет описаны методы устранения этих неполадок.

Opera: официально не поддерживает NTLM-авторизацию, хотя в настройках можно найти пункт, который позволяет включать или отключать эту опцию. Поэтому, в настройках вашего прокси-сервера нужно добавить basic авторизацию. Что бы отключить NTLM-авторизацию (и собственно заставить работать через прокси этот браузер) делаем следующее:

1) набираем в браузере about:config
2) переходим в раздел NetWork и снимаем галочку с параметра Enable NTLM
3) перезапускаем браузер.

Правда есть один нюанс (так сказать неудобство): при первом запуске придётся ввести логин пароль (полностью, то есть с доменом) и поставить галочку “Сохранить”. Теперь при каждом последующем открытии браузера табличка авторизации появляться будет, и нужно будет просто жать “Ок”. Неудобно, но что поделаешь.

Примечание: иногда на некоторых ОС наоборот приходилось включать NTLM-авторизацию. Возможно это так же зависило от версий браузера и ОС.

FireFox, Chrome: они поддерживают, хотя нужно немного по шаманить. Опишу несколько вариантов, которые раздобыл в интернете, возможно вам придётся перепробовать все, пока не найдёте тот, который подошёл вам.

1) нужно будет добавить в реестре HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa параметр под названием LmCompatibilityLevel типа DWORD и присвоить ему значение 1. После чего надо будет перегрузить компьютер (именно этот вариант мне подошёл)

2) Чтобы Firefox мог проходить ntlm авторизацию, вроде достаточно открыть в адресной строке about:config и изменить параметры на такие:

network.negotiate-auth.delegation-uris = http://,https://
network.negotiate-auth.trusted-uris = http://,https://

После чего перезапустить браузер.

3) Открываем редактор политик (gpedit.msc) Конфигурация компьютера -> Конфигурация windows -> Параметры безопасности -> Локальные Политики -> Параметры Безопасности -> Сетевая безопасность: уровень проверки подлинности LAN Manager и ставим параметр Отправлять LM и NTLM – использовать сеансовую безопасность NTLMv2 при согласовании.

После чего закрываем политику и перегружаемся.

Если у вас английская версия, тогда так: machine policy-> computer config->windows setting->local policies->security option->Network security: LAN Manager authentication level и выбрать LM & NTLM – Use NTLMv2 session if negotited.

4) Ещё один вариант – это настроить через squid_ldap:

auth_param basic program /usr/lib/squid3/squid_ldap_auth -b "cn=users,dc=office,dc=ru" -f "sAMAccountName=%s" -h 192.168.0.74 -D "cn=administrator,cn=users,dc=office,dc=ru" -w "secpass"
auth_param basic children 5
auth_param basic realm My inet Proxy
auth_param basic credentialsttl 60 minutes

external_acl_type nt_groups %LOGIN /usr/lib/squid3/squid_ldap_group -R -b "cn=users,dc=office,dc=ru" -f "(&(cn=%v)(memberOf=cn=%a,cn=users,dc=office,dc=ru))" -D "cn=administrator,cn=users,dc=office,dc=ru" -w "secpass" -h 192.168.0.74

acl all src 0.0.0.0/0.0.0.0
acl group_inet external nt_groups inet

http_access allow group_inet
http_reply_access allow all
icp_access allow all
http_access deny all

В любом случае пробуйте 🙂

Ticket creation

If you try to access a service URL secured with Kerberos but without a valid ticket, you will see such a page:

Включаем kerberos аутентификацию в google chrome

Чтобы SSO работала в Google Chrome, нужно настроить Internet Explorer вышеописанным способом (Chrome использует данные настройки IE). Кроме того, нужно отметить, что все новые версии Chrome автоматически определяют наличие поддержки Kerberos. В том случае, если используется одна из старых версий Chrome (Chromium), для корректной авторизации на веб-серверах с помощью Kerberos, его нужно запустить с параметрами:

Настройка google chrome

Запустить с параметрами командной строки
–auth-server-whitelist=”*.domain.name” –auto-negotiate-delegate-whitelist=”*.domain.name”

Настройка internet explorer

Настройки IE лучше применять средствами GPO AD Windows.

Настройка kerberos аутентификации в internet explorer

Рассмотрим, как включить Kerberos аутентификацию в Internet Explorer 11.

Напомним, что с января 2022 года, единственная официально поддерживаемая версия Internet Explorer – это IE 11.

Откройте Свойства браузера -> Безопасность -> Местная интрасеть (Local intranet), нажмите на кнопку Сайты -> Дополнительно. Добавьте в зону следующие записи:

Далее перейдите на вкладку Дополнительно (Advanced) и в разделе Безопасность (Security) убедитесь, что включена опция Разрешить встроенную проверку подлинности Windows (Enable Integrated Windows Authentication).

Важно. Убедитесь, что веб сайты, для которых включена поддержка Kerberos аутентификации приустают только в зоне Местная интрасеть. Для сайтов, включенных в зону Надежные сайты (Trusted sites), токен Kerberos не отправляется на соответствующий веб-сервер.

Настройка kerberos аутентификации в mozilla firefox

По умолчанию поддержка Kerberos в Firefox отключена, чтобы включить ее, откройте окно конфигурации браузера (в адресной строке перейдите на адрес about:config). Затем в следующих параметрах укажите адреса веб-серверов, для которых должна использоваться Kerberos аутентификация.

  • network.negotiate-auth.trusted-uris
  • network.automatic-ntlm-auth.trusted-uris

Для удобства, можно отключить обязательное указание FQDN адреса в адресной строке Mozilla Firefox, включив параметр network.negotiate-auth.allow-non-fqdn

Проверить, что ваш браузер работает через аутентифицировался на сервере с помощью Kerberos можно с помощью Fiddler или команды klist tickets.

Настройка mozilla firefox

  1. Перейти в about:config.
  2. Найти строки “network.negotiate-auth.delegation-uris” и “network.negotiate-auth.trusted-uris”
    и прописать там наш домен в формате .domain.name (например, .bazalt.team).

Настройка контроллера ecp veil

Включение доменной авторизации в ECP VeiL производится в окне Настройки – Службы каталогов основного меню интерфейса управления ECP VeiL.
При нажатии кнопки Добавить в верхней части интерфейса откроется окно, в котором необходимо заполнить поля:

  • Название службы каталогов – произвольное имя, по которому пользователь будет идентифицировать службу каталогов в интерфейсе ECP VeiL.

  • Имя домена – указать имя домена Windows AD (в примере выше – bazalt.team).

  • Тип подключения – выбрать протокол подключения LDAP или LDAPS. В поле ниже – указать FQDN или IP сервера Windows AD.

  • Тип службы каталогов – выбрать Active Directory.
    Для проверки соединения можно нажать кнопку Проверить соединение.

При нажатии кнопки ОК система управления запишет в базу данных информацию о службе каталогов.

Подготовка windows сервера

Необходимо выполнить:

Похожее:  Нештатные ситуации в системе МДЛП: ответы на вопросы

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *