Аутентификация Kerberos с GSSAPI на Windows 11 LTSC завершается неудачей с сообщением [Запрашивался неподдерживаемый механизм (Неизвестная ошибка)]

Вопрос или проблема

У нас есть клиент Windows 11 LTSC, который не проходит аутентификацию с – Apache2 / Kerberos / GSSAPI.

Эта конфигурация работает со всеми нашими клиентами, Windows 10, Windows 10 LTSC, Windows 11, но не с Windows 11 LTSC.

Ошибка в журнале apache2:

[Wed Oct 30 13:36:14.996279 2024] [auth_gssapi:error] [pid 585:tid 585] [client 192.168.202.150:50755] GSS

ERROR In Negotiate Auth: gss_accept_sec_context() failed: [Was запрошен неподдерживаемый механизм (Неизвестная ошибка)]

Вот мой файл keytab :

ktpass -princ HTTP/[email protected] -mapuser [email protected] -pass StrongPassword123** -crypto All -kvno 8 -ptype KRB5_NT_PRINCIPAL -out c:\wpintranet.keytab

Вот мой файл krb5.conf :

[libdefaults]
        default_realm = XXX.FR
        kdc_timesync = 1
        ccache_type = 4
        forwardable = false
        proxiable = false
        fcc-mit-ticketflags = false

        default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac
        default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac
        permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac
        preferred_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac

[realms]
        XXX.FR = {
                kdc = dc1.xxx.fr:88
                admin_server = dc1.xxx.fr:88
                default_domain = XXX.FR
                }
[domain_realm]
        .xxx.fr = XXX.FR
        xxx.fr = XXX.FR

Вот моя конфигурация apache2 :

.....
<IfModule !mod_auth_gssapi.c>
                        LoadModule auth_gssapi_module /usr/lib64/httpd/modules/mod_auth_gssapi.so
                </IfModule>
                <Directory /var/www/wordpress>
                        AuthType GSSAPI
                        AuthName "Kerberos auth"
                        GssapiCredStore keytab:/etc/apache2/wpintranet.keytab
                        Require valid-user
                </Directory>
.....

Если кто-то может мне помочь.

Спасибо

Ответ или решение

Решение проблемы с Kerberos Auth и GSSAPI на Windows 11 LTSC

Проблема: Вы столкнулись с ошибкой аутентификации на клиенте Windows 11 LTSC в конфигурации Apache2 с поддержкой Kerberos и GSSAPI. Ошибка в логах Apache гласит: “gss_accept_sec_context() failed: [An unsupported mechanism was requested (Unknown error)]”. Данная конфигурация успешно работает на других версиях Windows, включая Windows 10 и Windows 11, но не LTSC.

1. Анализ конфигурации Kerberos

Ваш конфигурационный файл krb5.conf на первый взгляд выглядит корректным. Однако, стоит обратить внимание на следующие моменты:

  • Ваша конфигурация использует два механизма шифрования: aes256-cts-hmac-sha1-96 и rc4-hmac. Windows 11 LTSC может иметь ограничения, касающиеся поддержки определенных алгоритмов шифрования. Попробуйте уменьшить список до одного механизма, например, aes256-cts-hmac-sha1-96.

    default_tgs_enctypes = aes256-cts-hmac-sha1-96
    default_tkt_enctypes = aes256-cts-hmac-sha1-96
    permitted_enctypes = aes256-cts-hmac-sha1-96
    preferred_enctypes = aes256-cts-hmac-sha1-96

2. Проверка и создание keytab файла

Ваш данный keytab файл создан с помощью команды ktpass. Убедитесь, что:

  • Пользователь, с которым создавался keytab, существует в Active Directory и имеет все необходимые разрешения.
  • Ваш keytab файл действительно содержит корректные записи. Попробуйте использовать klist для проверки содержимого файла:

    klist -k c:\wpintranet.keytab

Убедитесь, что запись HTTP/<имя_сервера> присутствует и совпадает с целевым сервером.

3. Проверка конфигурации Apache

Убедитесь, что конфигурация Apache настроена правильно:

  • Проверьте, что модуль mod_auth_gssapi загружен, и конфигурация GssapiCredStore указывает на правильный keytab.
  • Убедитесь, что права доступа к keytab файлу на сервере Apache установлены правильно. Apache должен иметь права на чтение этого файла.

4. Совместимость и обновления системы

Так как проблема возникает только на Windows 11 LTSC, и учитывая, что другие версии работают корректно, проверьте:

  • Установлены ли последние обновления безопасности на Windows 11 LTSC? Обновления могут содержать решения ошибок совместимости.
  • Сравните версии используемых библиотек GSSAPI и Kerberos на Windows 11 LTSC с теми, что использовались на других версиях ОС.

5. Дополнительная диагностика

Для более детального анализа рассмотрите следующие шаги:

  • Включите большее количество логов в Apache для GSSAPI, чтобы прояснить, на каком этапе происходит сбой.
  • Используйте инструмент kinit на стороне клиента для проверки наличия и корректности Kerberos-учетных данных.
kinit [username]@XXX.FR

6. Заключение

Проблема с аутентификацией Kerberos на Windows 11 LTSC может быть связана с несоответствием между механизмами шифрования, настройками keytab, а также возможными особенностями данной версии ОС. Следуя предложенным шагам, вы сможете диагностировать и устранить причины возникающей ошибки.

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

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

Капча загружается...