Вопрос или проблема
Проблемы с SSO – Apache2 / Kerberos / GSSAPI.
Эта конфигурация работает со всеми нашими клиентами (Win10 / Win10LTSC / Win11), но не работает только с Windows 11 LTSC.
Я получил эту ошибку в журнале apache2:
[Ср Окт 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() не удалось: [Запрашивался неподдерживаемый механизм (Неизвестная ошибка)]
Вот мой файл 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 с GSSAPI на Windows 11 LTSC
Проблема, с которой вы столкнулись, связана с аутентификацией Kerberos через GSSAPI в конфигурации Apache2. Учитывая, что у вас нет аналогичных проблем на других версиях Windows (Win10, Win10 LTSC и Win11), можно предположить, что причина может заключаться в настройках Windows 11 LTSC или несовместимости с используемыми алгоритмами шифрования.
Возможные причины проблемы
-
Поддержка механизмов Kerberos: Сообщение об ошибке
An unsupported mechanism was requested
наводит на мысль, что Windows 11 LTSC, возможно, не поддерживает некоторые механизмы или алгоритмы шифрования, указанные в вашем конфигурационном файлеkrb5.conf
. -
Настройки алгоритмов шифрования: Вы используете в вашем файле
krb5.conf
следующие алгоритмы шифрования:aes256-cts-hmac-sha1-96
rc4-hmac
Однако, если на стороне Windows 11 LTSC не установлены соответствующие механизмы шифрования (например, если используются более строгие политики безопасности), это может вызывать проблемы.
-
Конфигурация Keytab: Убедитесь, что файл ключевой табуляции (
c:\wpintranet.keytab
) корректно создан и доступен для чтения вашим приложением Apache. Обратите внимание на права доступа к этому файлу. -
Активная директория и учетные записи: Проверьте настройки учетной записи в Active Directory. Возможно, есть определенные ограничения для учетной записи, используемой в Kerberos, или для самого принципала
HTTP/ название_сервера
.
Рекомендации по решению проблемы
-
Проверка механизмов Kerberos:
- Убедитесь, что на Windows 11 LTSC включена поддержка необходимых механизмов Kerberos. Это можно проверить через
klist
команду в командной строке и удостовериться, что правильные билеты настроены и активны.
- Убедитесь, что на Windows 11 LTSC включена поддержка необходимых механизмов Kerberos. Это можно проверить через
-
Обновление политик шифрования:
- Вы можете изменить политику шифрования для Active Directory или для самой Windows 11 LTSC. Измените настройки алгоритмов, чтобы использовать более поддерживаемый механизм, такой как
aes128-cts-hmac-sha1-96
, если это возможно.
- Вы можете изменить политику шифрования для Active Directory или для самой Windows 11 LTSC. Измените настройки алгоритмов, чтобы использовать более поддерживаемый механизм, такой как
-
Логи и диагностика:
- Включите более детальное логирование для GSSAPI в Apache. Это поможет в диагностике проблемы и выявлении точной причины сбоя аутентификации.
-
Перепроверка конфигурации:
- Убедитесь, что настройки в файле
krb5.conf
и конфигурации Apache соответствуют друг другу. Проблема может заключаться в неверно прописанном пути к ключевому файлу или неправильном настройкеRequire valid-user
.
- Убедитесь, что настройки в файле
-
Дополнительная совместимость:
- Если проблема сохраняется, рассмотрите возможность использования профиля Windows, совмещенного с более ранними версиями, для устранения неполадок совместимости.
Заключение
Эффективная диагностика и исправление проблем с аутентификацией Kerberos на Windows 11 LTSC потребует всестороннего подхода. Возможные проблемы с несовместимыми механизмами и алгоритмами шифрования — основные факторы, которые следует исследовать. Постепенно проверяйте настройки, чтобы устранить возникшие сложности. Надеюсь, эти указания помогут вам в решении проблемы.