Apache - заменить Apache::AuthenNTLM на Kerberos (mod_auth_kerb)

В настоящее время в системе интрасети в Solaris мы используем модуль perls Apache2:: AuthenNTLM для аутентификации на сервере Doman Win 2k3, поэтому мы можем получить доступ к идентификатору пользователя, просматривающего сайт.

Переходя на серверы Win 2012 AD, нам говорят, что он не будет поддерживать NTLM, который Microsoft все равно не рекомендует в наши дни. Является ли mod-auth-curb подходящей заменой для этого варианта использования?

Я искал в Google и не могу найти релевантную статью или учебник, показывающий, что mod-auth-curb используется таким образом. Я с трудом начинаю и могу использовать точку в правильном направлении.

Спасибо

1 ответ

Вам необходимо, чтобы ваш администратор Active Directory создал учетную запись службы, которая содержит принципы обслуживания Kerberos для вашего сервера интрасети. SPN или SPN должны выглядеть <service>/<hostname> и содержат все имена хостов и / или псевдонимы DNS, которые пользователи используют для доступа к вашему сайту в интрасети, например что-то вроде:

http/solarishost.int.example.com
http/solarishost
http/intranet.example.com

Администратор Active Directory может извлечь имена участников-служб вkeytabфайл, который необходимо скопировать на хост Solaris и настроить в Apache. Примечание: имя пользователя http/hostname также используется для HTTPS.

В Solaris вам понадобятся инструменты и библиотеки MIT Kerberos 5, загрузите и установите модуль Apache, а затем настройте его.

Обычно вы редактируете глобальный файл конфигурации Kerberos./etc/krb5/krb5.conf для установки значений по умолчанию, которые также будет использовать mod-auth-curb, важны, как правило, только имена REALM, обычно это домен Windows AD, ваш домен DNS и серверы KDC - обычно контроллеры домена, которые администратор AD советует вам использовать,

Конфигурация Apache выглядит примерно так:

<Location /intranet>
 AuthType           Kerberos
 AuthName           "intranet"
 KrbMethodNegotiate on
 KrbAuthoritative   on
 KrbVerifyKDC       on
 KrbAuthRealm       YOUR_ACTIVEDIRECTORY_DOMAIN
 Krb5Keytab         /etc/httpd/intranet.keytab
 KrbSaveCredentials off
 Require            valid-user
</Location>

Некоторое понимание Kerberos и Microsoft AD помогает, так как это может быть сложно отладить для непосвященных. Да, и с Kerberos убедитесь, что ваши часы синхронизированы.

Другие вопросы по тегам