Назад | Перейти на главную страницу

Устранение неполадок SSSD Kerberos AD Centos

Я следил за конфигурацией 3 из интеграции RedHat AD (https://access.redhat.com/sites/default/files/attachments/rhel-ad-integration-deployment-guidelines-v1.5.pdf); но я застрял.

Я использую Centos 6.8.

У меня есть рабочее соединение с AD:

 service sssd stop
 rm -r /var/lib/sss/db/*
 rm -r /var/lib/sss/mc/*
 service sssd start
 getent passwd robau@MYNETWORK.LOCAL

Это возвращает разумную строку:

 robau:*:102201201:102200513:Rob Audenaerde:/:

Однако, когда я пытаюсь подключиться через SSH, я не могу войти в систему. Я включил отладку SSSD для всех компонентов уровня 5 в sssd.conf.

Ошибка, которую я вижу (в var/log/sssd/krb5_child.log) является:

(Fri Jun 17 17:23:18 2016) [[sssd[krb5_child[3561]]]] [validate_tgt] (0x0020): TGT failed verification using key for [host/server-new.mynetwork.nl@MYNETWORK.LOCAL].
(Fri Jun 17 17:23:18 2016) [[sssd[krb5_child[3561]]]] [get_and_save_tgt] (0x0020): 1240: [-1765328377][Server not found in Kerberos database]
(Fri Jun 17 17:23:18 2016) [[sssd[krb5_child[3561]]]] [map_krb5_error] (0x0020): 1301: [-1765328377][Server not found in Kerberos database]
(Fri Jun 17 17:23:18 2016) [[sssd[krb5_child[3561]]]] [k5c_send_data] (0x0200): Received error code 1432158209

Сервер находится в DNS, я могу найти его, используя nslookup

   nslookup server-new.mynetwork.nl

   Server:  192.168.110.56
   Address: 192.168.110.56#53

   Name:    server-new.mynetwork.nl
   Address: 192.168.210.94

И

kvno host/server-new.mynetwork.nl@MYNETWORK.LOCAL
kvno: Server not found in Kerberos database while getting credentials for host/server-new.mynetwork.nl@MYNETWORK.LOCAL

Какие-нибудь подсказки / советы по устранению неполадок?

[EDIT] Я использовал authconfig установить необходимые pam и nss материал:

authconfig --enablesssdauth --enablesssd --enablemkhomedir --update

Выход klist -kte:

  25 06/20/16 10:56:24 host/server-new.mynetwork.nl@MYNETWORK.LOCAL (des-cbc-crc) 
  25 06/20/16 10:56:24 host/server-new.mynetwork.nl@MYNETWORK.LOCAL (des-cbc-md5) 
  25 06/20/16 10:56:24 host/server-new.mynetwork.nl@MYNETWORK.LOCAL (aes128-cts-hmac-sha1-96) 
  25 06/20/16 10:56:24 host/server-new.mynetwork.nl@MYNETWORK.LOCAL (aes256-cts-hmac-sha1-96) 
  25 06/20/16 10:56:24 host/server-new.mynetwork.nl@MYNETWORK.LOCAL (arcfour-hmac) 
  25 06/20/16 10:56:24 host/server-new@MYNETWORK.LOCAL (des-cbc-crc) 
  25 06/20/16 10:56:24 host/server-new@MYNETWORK.LOCAL (des-cbc-md5) 
  25 06/20/16 10:56:25 host/server-new@MYNETWORK.LOCAL (aes128-cts-hmac-sha1-96) 
  25 06/20/16 10:56:25 host/server-new@MYNETWORK.LOCAL (aes256-cts-hmac-sha1-96) 
  25 06/20/16 10:56:25 host/server-new@MYNETWORK.LOCAL (arcfour-hmac) 
  25 06/20/16 10:56:25 SERVER-NEW$@MYNETWORK.LOCAL (des-cbc-crc) 
  25 06/20/16 10:56:25 SERVER-NEW$@MYNETWORK.LOCAL (des-cbc-md5) 
  25 06/20/16 10:56:25 SERVER-NEW$@MYNETWORK.LOCAL (aes128-cts-hmac-sha1-96) 
  25 06/20/16 10:56:25 SERVER-NEW$@MYNETWORK.LOCAL (aes256-cts-hmac-sha1-96) 
  25 06/20/16 10:56:26 SERVER-NEW$@MYNETWORK.LOCAL (arcfour-hmac)

Выход klist

Ticket cache: FILE:/tmp/krb5cc_0
Default principal: SERVER-NEW$@MYNETWORK.LOCAL

Valid starting     Expires            Service principal
06/20/16 10:56:41  06/20/16 20:56:41  krbtgt/MYNETWORK.LOCAL@MYNETWORK.LOCAL
    renew until 06/27/16 10:56:41
06/20/16 11:36:07  06/20/16 20:56:41  ldap/my-ad.mynetwork.local@MYNETWORK.LOCAL
    renew until 06/27/16 10:56:41

[РЕДАКТИРОВАТЬ 2]

Если я добавлю krb5_validate в конце sssd.conf раздел [домен / mynetwork.local], тогда я могу войти. Однако я также настроил другой сервер, для которого этот шаг не нужен, поэтому я не хочу оставлять его в таком виде.

[РЕДАКТИРОВАТЬ 3] Во время net ads join -k Я получаю сообщение об ошибке / предупреждение:

DNS Update for failed: ERROR_DNS_GSS_ERROR 
DNS update failed!

[РЕДАКТИРОВАТЬ 4] Я вижу результат net ads info не использует основной контроллер домена, указанный в моих файлах конфигурации (и это 2003R2, а не 2008R2). Есть ли способ заставить net ads join -k использовать конкретный контроллер домена?

Обычно это вызвано канонизацией. Попробуйте добавить:

rdns=false

в krb5.conf, а также

SASL_NOCANON true

в ldap.conf

(оба уже используются по умолчанию в RHEL-7).

Попробуйте установить и запустить msktutil (доступен через EPEL).

Установить:

yum -y --enablerepo=epel install msktutil

Чтобы запустить его:

msktutil --auto-update --server my-ad --verbose

И после этого запустить кинит:

kinit -k server-new$

Кроме того, вы должны запустить эти два задания каждые 6 часов или около того. Таким образом, ваши билеты не истекают.

Ответ на EDIT4: вы должны указать сервер с net ads join -k -S, но по умолчанию он будет искать в вашем DNS записи SRV. Что нормально. Если только вы этого не хотите. Если вы хотите, чтобы на одном сайте использовались разные контроллеры домена, посмотрите на «Сайты и службы Active Directory».