将双Samba / Winbind的UID / GIDpipe理到AD

我有两台Linux服务器连接到使用Samba / Winbind的Active Directory Windows 2008服务器,这里是我的sambaconfiguration

workgroup = COMPANY realm = COMPANY.COM server string = SAMBA-AD Server security = ADS password server = 10.1.xx log level = 2 log file = /var/log/samba/log.%m max log size = 50 unix extensions = No idmap uid = 10000-20000 idmap gid = 10000-20000 template homedir = /home/%u template shell = /bin/bash winbind separator = + winbind enum users = Yes winbind enum groups = Yes winbind use default domain = Yes winbind nss info = rfc2307 

两者configuration完全相似,但是,当我运行getent group ,所列出的GID在两者之间是不同的,即使范围完全相同,从10000到20000也是如此。

在Linux服务器A上:

 domain computers:*:10011: 

在Linux服务器B上:

 domain computers:*:10008: 

它似乎不是从10000开始的。

我如何在两台Linux服务器上同步GID? 任何帮助非常感谢!

编辑:@larsks,我试图添加idmap_rid,这是最新的configuration:

  workgroup = COMPANY realm = COMPANY.COM server string = SAMBA-AD Server security = ADS password server = 10.1.xx.xx log file = /var/log/samba/log.%m max log size = 50 unix extensions = No idmap config COMPANY:backend = rid idmap config COMPANY:base_rid = 1000 idmap config COMPANY:range = 10000 - 20000 template homedir = /home/%u template shell = /bin/bash winbind separator = + winbind enum users = Yes winbind enum groups = Yes winbind use default domain = Yes winbind nss info = rfc2307 hosts allow = 127., 192.168.12., 192.168.13., 10.1.11., 10.2., wide links = Yes 

我删除了idmap gid = 10000-20000。

我需要删除winbind enum groups = Yes

但是,即使在重新启动winbind / samba后,GID仍然保持不变,因此在添加了idmap_rid之后。

您可以使用idmap_rid idmap后端,通过algorithm生成id,以便不需要同步它们(也就是说,两个系统将始终为给定组生成相同的GID)。

您也可以使用LDAP idmap后端将生成的id存储在中央(共享)位置。 这只有在你使用idmap_rid后端才是必要的。