我正在尝试将我的CentOS 6.6服务器集成到Active Directory中。 我从Red Hat使用configuration3(SSSD / Kerberos / LDAP)遵循本指南。 当使用Windows Server 2008 R2服务器作为启用了IMU的域控制器时,一切正常。
但是,当我使用启用了IMU的Windows Server 2012 R2服务器时,我能够获得kerberos票据,join域,searchLDAP,但只要我尝试以控制台的AD用户身份login,在/ var / log / messages中获取此错误消息:
Jun 6 11:12:30 test [sssd [krb5_child [4760]]]:预authentication失败
而/ var / log / secure显示了这些错误信息:
6月6日11:12:15testinglogin名:pam_sss(login:auth):为用户[email protected]收到:17(失败设置用户凭证)
Jun 6 11:12:17 test login:FAILED LOGIN 1 FROM(null)for [email protected],Authentication failed
使用getent passwd aduser或getent group linuxgroup成功返回。
我试过用这个sssd.conf文件:
[SSSD] config_file_version = 2 服务= nss,pam domains = domain.local debug_level = 5 [域/ 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 服务= nss,pam debug_level = 5 domains = domain.local [NSS] debug_level = 5 [PAM] debug_level = 5 [域/ 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 =域,dc =本地 ldap_group_object_class =组 ldap_access_order =过期 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 枚举= false cache_credentials = false
我清除了我的SSSDcaching并重新启动了服务。 但是我无法login。
我现在在/ var / log / messages中收到了这个错误:
Jun 6 11:21:43 test [sssd [krb5_child [1546]]]:权限被拒绝
我在/var/log/sssd/krb5_child.log中看到这个错误:
(6月6日星期六11:21:43)[[sssd [krb5_child [1387]]]] [sss_get_ccache_name_for_principal](0x2000):krb5_cc_cache_match失败:[-1765328243] [在caching中找不到客户端主体[email protected]采集]
(6月6日星期六11:21:43)[[sssd [krb5_child [1387]]] [create_ccache](0x0020):575:[13] [Permission denied]
现在,这是奇怪的地方。 作为根,如果我su任何AD域用户它实际上工作和主目录是自动创build的。 我即将承认失败,只是坚持2K8 DC。
我不是我可以给一个更合格的答案没有看到sssddebugging日志,但你所指的错误报告只有性能影响,而不是function。
您可以从根目录获取帐户的原因是,PAM堆栈通常包含pam_rootok.so模块,该模块绕过使用pam_sss的身份validation。 鉴于根作品的authentication,我们至less知道,检索身份信息的作品,但不authentication。
我build议在这里或在sssd-users列表中添加更多的信息到这个问题。 最重要的是,SSSD使用来自域部分和krb5_child.log的高debugging级别来debugging日志
在sssd wiki上有一个疑难解答文档,但每次链接时,答案都会被标记为垃圾邮件:-)
尝试这个:
chmod 644 /etc/krb5.conf