getent passwd 失败,getent group 有效吗?

getent passwd 失败,getent group 有效吗?

我的 AD 集成几乎已在 OpenSUSE 12.1 服务器上完全运行。我已将 OpenSUSE 11.4 系统成功集成到我们的 AD 环境中。(这意味着,我们使用 LDAP 通过 Kerberos 对 AD 目录进行身份验证,因此我们可以通过 AD 用户登录到我们的 *nix 系统,使用名称服务缓存守护程序来缓存我们的密码和组)。

另外,值得注意的是这些系统位于我们的 LAN 中,SSL 身份验证已被禁用。

我几乎已经完成了所有事情。nss_ldap最终通过 LDAP 服务器进行身份验证(如图/var/log/messages所示),但是现在,我遇到了另一个问题:

getent passwdgetent 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“ )

您可能想尝试一下。

相关内容