我有一个带有LDAP后端的3.5.6 samba服务器(都在Debian 6.0上)。 我已经成功地将Windows XP机器添加到域多年了。 我现在尝试添加Windows 7.我已经提出了build议的registry更改 ,但到目前为止我没有任何成功。 这是发生了什么事情:
1.我去计算机名称,select“域”而不是“工作组”,键入域名,点击确定。 它向我询问可以将计算机添加到域的帐户的用户名和密码; 我input他们。 大约40秒后,我收到以下消息:
尝试join域“ITIA”时发生以下错误:
指定的计算机帐户找不到。 联系pipe理员以validation该帐户是否在域中。 如果该帐户已被删除,则重新引导并重新join该域。
尽pipe如此,samba服务器成功创build了计算机帐户。
2.因此,如果我再次尝试,而不删除已经创build的计算机帐户,我得到一个不同的错误:
尝试join域“ITIA”时发生以下错误:
指定的帐户已经存在。
(请注意,直到前一阵子桑巴没有configuration为自动创build计算机帐户,我什么时候我想要一个XPjoin手动创build它当我第一次尝试解决Windows 7的连接问题,我设置桑巴自动做这个,因为这是大多数人所做的,据我所知,我认为这可能是相关的。我没有试图添加一个XP,因为我做了这个改变,所以我不知道它是否工作,但是否有效,问题仍然存在。)
更新1:以下是smb.conf的相关部分:
[global] panic action = /usr/share/samba/panic-action %d workgroup = ITIA server string = Itia file server announce as = NT interfaces = 147.102.160.1 volume = %h passdb backend = ldapsam:ldap://ldap.itia.ntua.gr:389 ldap admin dn = uid=samba,ou=daemons,dc=itia,dc=ntua,dc=gr ldap ssl = off ldap suffix = dc=itia,dc=ntua,dc=gr ldap user suffix = ou=people ldap group suffix = ou=groups ldap machine suffix = ou=computers unix password sync = no add machine script = smbldap-useradd -w -i %u log file = /var/log/samba/samba-log.all log level = 3 max log size = 5000 syslog = 2 socket options = SO_KEEPALIVE TCP_NODELAY encrypt passwords = true password level = 1 security = user domain master = yes local master = no wins support = yes domain logons = yes idmap gid = 1000-2000
更新2:服务器有一个networking接口eth1(也是一个只在内核启动消息中显示的未使用的eth0)和两个ip地址; 主要的,147.102.160.1,和一个额外的147.102.160.37,它提出了“ip addr add 147.102.160.37/32 dev eth1”(仅用于与其他网站有不同证书的网站同一台机器)。 我最近遇到的一个问题是桑巴使用了后一个IP地址。 我通过在smb.conf中添加“interfaces = 147.102.160.1”语句来解决这个问题。
现在:
acheloos:/etc/apache2# tcpdump host 147.102.160.40 and not port 5900 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes 13:13:56.549048 IP lithaios.itia.civil.ntua.gr.netbios-dgm > 147.102.160.255.netbios-dgm: NBT UDP PACKET(138) 13:13:56.549056 ARP, Request who-has acheloos2.itia.civil.ntua.gr tell lithaios.itia.civil.ntua.gr, length 46 13:13:56.549091 ARP, Reply acheloos2.itia.civil.ntua.gr is-at 00:10:4b:b4:9e:59 (oui Unknown), length 28 13:13:56.549324 IP acheloos.itia.civil.ntua.gr.netbios-dgm > lithaios.itia.civil.ntua.gr.netbios-dgm: NBT UDP PACKET(138) 13:13:56.549608 IP lithaios.itia.civil.ntua.gr.netbios-dgm > acheloos2.itia.civil.ntua.gr.netbios-dgm: NBT UDP PACKET(138) 13:13:56.549741 IP acheloos.itia.civil.ntua.gr.netbios-dgm > lithaios.itia.civil.ntua.gr.netbios-dgm: NBT UDP PACKET(138) 13:13:56.550364 IP lithaios.itia.civil.ntua.gr.netbios-dgm > acheloos.itia.civil.ntua.gr.netbios-dgm: NBT UDP PACKET(138) 13:13:56.550468 IP acheloos.itia.civil.ntua.gr.netbios-dgm > lithaios.itia.civil.ntua.gr.netbios-dgm: NBT UDP PACKET(138)
(acheloos2是第二个IP地址,147.102.160.37)。 当我点击“OK”(join域)时,出现上面的转储,直到它询问可以join域的用户的用户名和密码。 我不知道客户端为什么要联系第二个IP地址。 我尝试暂时停用它,但我仍然有一些相关的ARPstream量(虽然我认为不是IPstream量)。
尝试从smbldap-useradd -w -i %u更改脚本
到smbldap-useradd -W %u 。 这应该可以解决你的问题。
尝试删除-i中
add machine script = smbldap-useradd -w -i %u
可能是一个trustissue
或将%u更改为%m以连接到客户端的NetBIOS名称