Apache2/AD-auth

Материал из ALT Linux Wiki
< Apache2
Версия от 13:50, 7 марта 2017; Новиков Сергей (обсуждение | вклад) (Новая страница: «{{Stub}} Исходные данные: *Домен ActiveDirectory DOMG.TESTG *Web-сервер apserver введенный в домен с помощью sssd З...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Исходные данные:

  • Домен ActiveDirectory DOMG.TESTG
  • Web-сервер apserver введенный в домен с помощью sssd

Задача:

  • Настроить аутентификацию Apache2 с PHP через AD

Для работы доменной аутентификации нам необходим keytab-файл, его можно сгенерировать на сервере домена или с помощью samba на машине с web-сервером.
Воспользуемся вторым вариантом.
Минимально необходимая конфигурация samba:

[global]
workgroup = DOMG
realm = DOMG.TESTG
security = ads
passdb backend = tdbsam
kerberos method = system keytab

Проверим конфигурационный файл samba:

# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER

Press enter to see a dump of your service definitions

Войдем в домен с помощью samba:

# net ads join -U Administrator

Проверим вход в домен:

# net ads testjoin
Join is OK

Создадим и добавим в системный keytab принципала сервиса "HTTP":

# net ads keytab add HTTP -U Administrator

Проверим наш keytab:

# klist -ek /etc/krb5.keytab
...
   3 HTTP/apserver.domg.testg@DOMG.TESTG (des-cbc-crc) 
   3 HTTP/APSERVER@DOMG.TESTG (des-cbc-crc) 
   3 HTTP/apserver.domg.testg@DOMG.TESTG (des-cbc-md5) 
   3 HTTP/APSERVER@DOMG.TESTG (des-cbc-md5) 
   3 HTTP/apserver.domg.testg@DOMG.TESTG (aes128-cts-hmac-sha1-96) 
   3 HTTP/APSERVER@DOMG.TESTG (aes128-cts-hmac-sha1-96) 
   3 HTTP/apserver.domg.testg@DOMG.TESTG (aes256-cts-hmac-sha1-96) 
   3 HTTP/APSERVER@DOMG.TESTG (aes256-cts-hmac-sha1-96) 
   3 HTTP/apserver.domg.testg@DOMG.TESTG (arcfour-hmac) 
   3 HTTP/APSERVER@DOMG.TESTG (arcfour-hmac) 
...

Так же можно проверить получение билета kerberos для созданных принципалов сервиса:

# kinit Administrator
# kvno HTTP/apserver.domg.testg@DOMG.TESTG HTTP/apserver@DOMG.TESTG
HTTP/apserver.domg.testg@DOMG.TESTG: kvno = 3
HTTP/apserver@DOMG.TESTG: kvno = 3