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

Интеграция с Linux AD, невозможно войти в систему при использовании Windows Server 2012 DC

Я пытаюсь интегрировать свои серверы CentOS 6.6 в Active Directory. Я следил этот руководство от Red Hat с использованием конфигурации 3 (SSSD / Kerberos / LDAP). При использовании сервера Windows Server 2008 R2 в качестве контроллера домена с включенным IMU все работает отлично.

Однако, когда я использую сервер Windows Server 2012 R2 с включенным IMU, я могу получить билет Kerberos, присоединиться к домену, выполнить поиск по LDAP, но как только я попытаюсь войти в систему как пользователь AD с консоли, я получить это сообщение об ошибке в / var / log / messages:

6 июня, 11:12:30 тест [sssd [krb5_child [4760]]]: ошибка предварительной аутентификации

И / var / log / secure показывает эти сообщения об ошибках:

6 июня, 11:12:15 тестовый логин: pam_sss (логин: auth): получено для пользователя aduser@domain.local: 17 (Неудачная установка учетных данных пользователя)

6 июня 11:12:17 тестовый вход: НЕУДАЧНЫЙ ВХОД 1 ОТ (null) ДЛЯ aduser@domain.local, ошибка аутентификации

С помощью getent passwd aduser или getent group linuxgroup успешно возвращается.

Я пробовал с этим файлом sssd.conf:

[sssd]
config_file_version = 2
services = nss, pam
domains = domain.local
debug_level = 5

[domain/domain.local]
id_provider = ad
auth_provider = ad

ad_server = dc.domain.local

default_shell = /bin/bash
fallback_homedir = /home/%d/%u

cache_credentials = false
ldap_id_mapping = false

Затем я прочитал этот отчет об ошибке. Итак, я изменил свой файл sssd.conf на этот:

[sssd]
config_file_version = 2
reconnection_retries = 2
services = nss,pam
debug_level = 5
domains = domain.local

[nss]
debug_level = 5

[pam]
debug_level = 5

[domain/domain.local]
id_provider = ldap
auth_provider = krb5
chpass_provider = krb5
debug_level = 5

ldap_uri = ldap://dc.domain.local/
ldap_sasl_mech = GSSAPI
ldap_schema = rfc2307bis

ldap_user_search_base = dc=domain,dc=local
ldap_user_object_class = user

ldap_user_home_directory = unixHomeDirectory
ldap_user_principal = userPrincipalName

ldap_group_search_base = dc=domain,dc=local
ldap_group_object_class = group

ldap_access_order = expire
ldap_account_expire_policy = ad
ldap_force_upper_case_realm = true

ldap_referrals = false

krb5_server = dc.domain.local
krb5_realm = DOMAIN.LOCAL
krb5_canonicalize = false

enumerate = false
cache_credentials = false

Я очистил кеш SSSD и перезапустил службу. Однако я не могу войти в систему.

Я получаю эту ошибку сейчас в / var / log / messages:

6 июня, 11:21:43 тест [sssd [krb5_child [1546]]]: в доступе отказано

Я вижу эту ошибку в /var/log/sssd/krb5_child.log:

(Сб, 6 июня, 11:21:43 2015) [[sssd [krb5_child [1387]]]] [sss_get_ccache_name_for_principal] (0x2000): ошибка krb5_cc_cache_match: [-1765328243] [Не удается найти принципала клиента aduser@DOMAIN.LOCAL коллекция]

(Сб, 6 июня, 11:21:43 2015) [[sssd [krb5_child [1387]]]] [create_ccache] (0x0020): 575: [13] [В разрешении отказано]

Вот где это становится странным. Как root, если я обращаюсь к любому пользователю домена AD, он действительно работает, и домашний каталог создается автоматически. Я собираюсь признать поражение и просто придерживаться 2k8 DC.

Я не могу дать более квалифицированный ответ, не увидев sssd журналы отладки, но отчет об ошибке, на который вы ссылаетесь, имел только влияние на производительность, но не работал.

Причина, по которой вы можете su на счет из root в том, что стек PAM обычно включает pam_rootok.so модуль, который обходит аутентификацию с pam_sss. Учитывая авторизацию от root работает, мы по крайней мере знаем, что получение идентификационной информации работает, но не auth.

Я бы рекомендовал добавить дополнительную информацию к этому вопросу здесь или в списке sssd-users. Самое главное, sssd журналы отладки с высоким debug_level из раздела домена и krb5_child.log.

Более подробную информацию можно найти в документ по устранению неполадок в вики SSSD.

Попробуй это:

chmod 644 /etc/krb5.conf