我的 AD 集成几乎已在 OpenSUSE 12.1 服务器上完全运行。我已将 OpenSUSE 11.4 系统成功集成到我们的 AD 环境中。(这意味着,我们使用 LDAP 通过 Kerberos 对 AD 目录进行身份验证,因此我们可以通过 AD 用户登录到我们的 *nix 系统,使用名称服务缓存守护程序来缓存我们的密码和组)。
另外,值得注意的是这些系统位于我们的 LAN 中,SSL 身份验证已被禁用。
我几乎已经完成了所有事情。nss_ldap
最终通过 LDAP 服务器进行身份验证(如图/var/log/messages
所示),但是现在,我遇到了另一个问题:
getent passwd
并getent shadow
失败(仅显示本地帐户),但getent group
有效!getent group
显示我所有的广告组!
我从我的工作 OpenSUSE 11.4 框中复制了相关的配置文件:
/etc/krb5.conf
/etc/nsswitch.conf
/etc/nscd.conf
/etc/samba/smb.conf
/etc/sssd/sssd.conf
/etc/pam.d/common-session-pc
/etc/pam.d/common-account-pc
/etc/pam.d/common-auth-pc
/etc/pam.d/common-password-pc
我没有修改两者之间的任何内容。我真的不认为我需要修改任何东西,因为 getent passwd、getent shadow 和 getent group 在 OpenSUSE11.4 机器上都可以正常工作。
不幸的是,尝试重新启动 nscd 服务并没有起到什么作用,并且也没有运行/usr/sbin/nscd -i passwd
。
各位管理大师有什么建议吗?
说实话,我很高兴自己能走到这一步。伙计们,我快到了!
答案1
关于getent passwd
文件shadow
中最有可能的配置差异/etc/switch.conf
。您可能正在使用以下规则,但您的客户并不喜欢。
passwd: compat
shodow: compat
passwd_compat: ldap
shadow_compat: ldap
我在一些客户身上看到了这一点,我需要将其更改为以下内容
passwd: files ldap
shadow: files ldap
(注释掉“passwd_compat: ldap“ 和 ”shadow_compat: ldap“ )
您可能想尝试一下。