Аутентификация пользователя Kerberos в Apache
-
09-06-2019 - |
Вопрос
кто-нибудь может порекомендовать какие-нибудь действительно хорошие ресурсы для того, как заставить Apache аутентифицировать пользователей с помощью Kerberos.
Фоновое чтение в Kerberos также было бы полезно
Спасибо
Питер
Решение
mod_auth_kerb - хорошее начало: http://modauthkerb.sourceforge.net/.Если вам нужна поддержка Active Directory, посмотрите здесь: http://support.microsoft.com/?id=555092.
Другие советы
Я нашел mod_auth_spnego также вполне приемлемым, поскольку он может использовать SSPI в Windows вместо того, чтобы требовать MIT Kerberos. мод_спнего
Вот пример использования Active Directory в качестве KDC:http://oslabs.mikro-net.com/krb_apache.html
Мне понравилась эта статья о настройке apache для использования Kerberos:
http://www.roguelynn.com/words/apache-kerberos-for-django/
(вы можете пропустить части о django, если вам это не интересно)
Редактировать:
Развернутый ответ
Довольно легко настроить apache на использование аутентификации Kerberos.
Я предполагаю, что вы правильно настроили Kerberos на своем компьютере.
1) На вашем веб-сервере должна быть keytab [1].
Суть в том, что ваш веб-сервер имеет чтобы иметь возможность читать вкладку ключей!
2) У вас должен быть соответствующий модуль httpd для аутентификации -- mod_auth_kerb
:
LoadModule auth_kerb_module modules/mod_auth_kerb.so
3) Затем вы должны сообщить apache о Kerberos:
<Location />
AuthName "Kerberos Authentication -- this will be showed to users via BasicAuth"
AuthType Kerberos
KrbMethodNegotiate On
KrbMethodK5Passwd Off
# this is the principal from your keytab (you may lose the FQDN part)
KrbServiceName HTTP/$FQDN
KrbAuthRealms KERBEROS_DOMAIN
Krb5KeyTab /path/to/http.keytab
Require valid-user
Order Deny,Allow
Deny from all
</Location>
Затем apache передаст пользователя в ваше приложение через REMOTE_USER
HTTP-заголовок.
И это все.
Я также советую вам включить ведение журнала отладки в apache во время установки.Убедитесь, что у вас указано правильное время и httpd может прочитать keytab, вот и все.
[1] http://kb.iu.edu/data/aumh.html
[2] Основной ресурс: http://www.roguelynn.com/words/apache-kerberos-for-django/