活动目录集成与winbind和samba无法正常工作

我试图让我的Linux机器使用活动目录身份validation。 我相信我几乎所有的设置都正确。 我能够发出wbinfo -gwbinfo -u ,分别查看所有组和用户。

简要介绍我的设置:

我用我的Linux机器上做用户名的用户名是nick 。 我的活动目录用户名是nwalke 。 他们有两个不同的密码。 我可以用nick和那个用户的密码login到nwalke ,我也可以用nwalke的密码login到nwalke

好奇的一点:

在创build活动目录用户的主目录后,我运行一个需要root权限的脚本。 这是为他们设置一些系统级的东西,比如一个samba共享。 当我以nwalke身份nwalke ,input我的nwalke密码并成功。 [sudo] password for nick: 。 如果我在这里input我的nwalke密码,它说Sorry, try again. 。 如果我input了nick的密码,那么说Sorry, user nick is not allowed to execute scriptname as root

如果我以nwalke身份进行nwalke ,我看到神奇的是我的用户被给予了组合。

现在,我不小心以为nick有一个100,而不是1000的UID。所以最初在我的smb.conf我有idmap uid 1000-10000 。 我能想到的唯一的事情就是我在nwalkelogin的同时仍然设置了,现在我只是被提出了一个1000的UID,迫使linux认为我是nick

我不确定该从哪里出发。 就像我说的,我相当确定活动目录正在与我的服务器通信,但是一定不能在linux端正确映射。

有什么想法吗?

这是我的smb.conf

 [global] security = ads netbios name = hostname realm = COMPANY.COM password server = adshost.company.com workgroup = COMPANY idmap uid = 10000-90000 idmap gid = 10000-90000 winbind separator = + winbind enum users = no winbind enum groups = no winbind use default domain = yes template homedir = /home/%D/%U template shell = /bin/bash client use spnego = yes domain master = no load printers = no printing = bsd printcap name = /dev/null disable spoolss = yes 

我需要以某种方式绑定到Linux的盒子上的用户?

这听起来像你有一个UID重叠。
如果nwalkenick共享相同的数字UID,那么第一个nsswitch匹配将会赢得诸如idsudols类的东西(除非你改变了/etc/nsswitch.conf的顺序,否则第一个匹配通常不在passwd文件中/etc/nsswitch.conf或同等)。

(login名可以和任何名字一起工作,因为login名是通过名字查找用户名的。有两个同名的用户会导致一些有趣的混乱,尽pipe…)

您的本地( /etc/passwd/etc/group )和远程(NIS,Samba,LDAP,不pipe)UID / GID不应该重叠。 解决这个核心问题,其余的问题将自行解决。

我已经将smb.conf中的值更改为10,000,并且仍然觉得nwalke正在与1000配对。我该如何解决这个问题?

我不记得它是哪个文件,我目前没有一个系统来检查。

当一个用户第一次连接一个ID的时候会被分配,然后它会被存储在一个Samba数据库中的/var/lib/samba/看看那个文件夹,这个文件可能很明显是哪个文件。 您可以尝试停止Samba,然后移动/删除那里的所有文件,但是您需要重新join域,因为机器账户凭证也存储在其中一个数据库中。