AD组成员身份更改不会反映在winbind信息中

我已经inheritance了几个RHEL5服务器,这些服务器是通过winbind对AD帐户进行身份validation的。 一切正常,直到我更新AD中的组成员资格。 对于某些用户来说,这些更改从未将其input到“groups”命令的输出中,尽pipe它们反映在“getent group <groupname>”的输出中。

例如,请考虑以下几点:

[root @ hcc1pl1〜]#groups plubans
plubans:域用户系统基础设施开发
[root @ hcc1pl1〜]#getent group q1esb
q1esb:*:23136:q1qai,q1prodi

如果我将自己添加到winbind正在使用的DC上的q1esb,则可以看到成员资格已更新:

[root @ hcc1pl1〜]#lsof -i | grep winbind
winbindd 31339 root 17u IPv4 63817934 TCP hcc1pl1:56541-> hcnas01:microsoft-ds(ESTABLISHED)
winbindd 31339 root 21u IPv4 63817970 TCP hcc1pl1:53622-> hcnas01:ldap(ESTABLISHED)
“root @ hcc1pl1〜”#ldapsearch -u -x -LLL -h hcnas01 -D“[email protected]”-W -b“CN = Peter Lubans,OU =标准用户帐户,OU =用户,OU = XXX, DC = XXX,DC = XXX“”(sAMAccountName = *)“memberOf
inputLDAP密码:

memberOf:CN = q1esb,OU =安全组,OU =组,OU = XXX,DC = XXX,DC = XXX

请注意,winbind运行时没有caching(-n标志):

[root @ hcc1pl1〜]#ps -ef | grep winbind
根31339 1 0 13:50? 00:00:00 winbindd -n
根31340 31339 0 13:50? 00:00:00 winbindd -n
根31351 31339 0 13:50? 00:00:00 winbindd -n
根31352 31339 0 13:50? 00:00:00 winbindd -n
根31353 31339 0 13:50? 00:00:00 winbindd -n

现在getent表明,该小组有正确的成员:

[root @ hcc1pl1〜]#getent group q1esb
q1esb:*:23136:q1qai,plubans,q1prodi

但更新的会员资格并不反映在我的帐户详细信息中:

[root @ hcc1pl1〜]#groups plubans
plubans:域用户系统基础设施开发
[root @ hcc1pl1〜]#

这个问题的真正令人烦恼的部分是,它适用于这台机器上的其他帐户,我的帐户在我从头开始configuration的机器上。

有任何想法吗?

看起来这是由login时在/var/cache/samba/netsamlogon_cache.tdb中caching的组信息引起的。 我猜想虽然'-n'指示winbind不caching它对LDAP的查询,但是在该TDB文件中存在的成员信息足以使事情变得糟糕。

我唯一的想法,这是一个非常模糊的是,它可能与您的基础设施主pipe(它负责跨域更新组成员身份)的沟通有关。

我对RHEL的股票samba / winbind包有类似的经验。 这是我的经验,RHEL的winbind有点粗略。 我观察到的是,一旦用户通过authentication,他们的团体成员将被准确地更新,但是除此之外,组员身份的变化将不会出现。 这不是一个最佳的解决scheme,特别是如果您从组中删除一个用户,授予他们对机器的访问权限,因为它实际上给了他们最后一次login,而他们不应该得到这个login。 这可能会也可能不会反映你的情况,因为我也遇到过在运行getent group时看不到AD组的组成员(它看起来像一个没有成员的组,但即使groups username显示他们是一个成员),但它似乎正在为你工作。

什么解决了我的问题是从企业安装RPM的“testing”分布。 无论winbindcaching设置如何,组成员身份更改都立即显示出来。 但是,如果你使用本地idmap表映射AD用户和组,安装新的RPMS将很可能完全重新映射你的数字组和用户id ,所以要做好准备(转储你的getent group用户id etent passwd输出到文件升级之前,所以你有一个修复文件所有权的参考。

我有类似的东西。 要解决这个问题,我运行“authconfig –disablecache –update”。 当然,它使login缓慢。