Samba 4 AD 域控制器上的 winbind 信息不一致

Mas*_*erM 6 linux samba domain-controller winbind

我已经在 Debian Jessie (samba 4.2.10) 上设置了 Samba 4 AD 域控制器。一切工作正常,除了 winbind 提供错误的用户/组信息。

我有一个示例用户“testuser”和一个安全组“people”。它们的 UNIX 属性设置如下:

测试用户 UNIX 属性 人员组 UNIX 属性

然而 winbind 显示了这一点:

root@agnus:~# wbinfo -i testuser
testuser:*:10010:100:Test User:/home/HOME/testuser:/bin/false
Run Code Online (Sandbox Code Playgroud)

UID 匹配,但其他一切都是错误的。

我的 smb.conf 包含以下内容:

# Global parameters
[global]
        workgroup = HOME
        realm = HOME.LOCAL
        netbios name = AGNUS
        server role = active directory domain controller
        server services = s3fs, rpc, nbt, wrepl, ldap, cldap, kdc, drepl, winbindd, ntp_signd, kcc, dnsupdate
        idmap_ldb:use rfc2307 = yes

        idmap config *:backend = tdb
        idmap config *:range = 2000-9999

        idmap config HOME:backend = ad
        idmap config HOME:schema_mode = rfc2307
        idmap config HOME:range = 10000-99999

        winbind nss info = rfc2307
        winbind enum users = yes
        winbind enum groups = yes
        winbind normalize names = yes
        winbind use default domain = yes
        winbind refresh tickets = yes

[netlogon]
        path = /var/lib/samba/sysvol/home.local/scripts
        read only = No

[sysvol]
        path = /var/lib/samba/sysvol
        read only = No
Run Code Online (Sandbox Code Playgroud)

我的设置有什么问题吗?

小智 0

基本上什么都没有。自从您使用 samba 4 AD DC 以来,您缺少模板行。Samba 4.2 和 4.3 对于 getent passwd 或 wbinfo -u 或 id 有不同的行为。

如果可能更新到 4.4.3 ,请在 samba 列表中搜索 deb。他们工作得很好。samba 4.4.3 还需要安装 winbind、ADDC 和 member,但是!现在所有输出都可以是相同的。

以及关于模板线。

       template homedir (G)

       When filling out the user information for a Windows NT user, the winbindd(8) daemon uses this parameter to fill in the home directory for that user. If the string %D is present it is
       substituted with the user's Windows NT domain name. If the string %U is present it is substituted with the user's Windows NT user name.

       Default: template homedir = /home/%D/%U

       template shell (G)

       When filling out the user information for a Windows NT user, the winbindd(8) daemon uses this parameter to fill in the login shell for that user.

       Default: template shell = /bin/false
Run Code Online (Sandbox Code Playgroud)

将这些添加到您的 DC smb.conf 中。

最后一件事,请阅读: https: //www.brightbox.com/blog/2014/03/04/add-cacert-ubuntu-debian/ 这样的设置确实让它变得更容易。更多问题,请询问 samba 列表。