看来 Samba 根本不喜欢我。我按照各种教程操作,但还是无法让 Windows 8 以 Ubuntu Server 作为域控制器正常工作。本周我下载了 ubuntu 14.04 lts 并设置了快速域配置。像往常一样,所有其他 Windows 版本(XP 和 7)都可以运行,但最新的 M$ 噩梦却不行。在这次尝试中,它甚至没有加入域,一直说我的用户名或密码错误。
我的 /etc/samba/smb.conf
# Global parameters
[global]
workgroup = DOMAIN
realm = DOMAIN.LAN
netbios name = DOM
server role = active directory domain controller
dns forwarder = 8.8.8.8
idmap_ldb:use rfc2307 = yes
[netlogon]
path = /var/lib/samba/sysvol/domain.lan/scripts
read only = No
[sysvol]
path = /var/lib/samba/sysvol
read only = No
[test]
path = /SHARES/test
read only = no
有人有真正有用的教程吗?因为我试过很多,每个都有不同的配置,只有制作它们的人才能使用。
有没有办法可以导入我的旧 AD 用户、计算机和 ID,而不需要重新加入所有计算机?
[编辑]
现在我已经测试了从 4.0.0(最终版本)到 4.1.9 的各个版本,所有版本都可以在 Windows 8.1 上运行。
确保访问控制列表和属性安装并设置在/etc/fstab文件:
# / was on /dev/sda1 during installation
/dev/sda1 / ext4 user_xattr,acl,barrier=1,errors=remount-ro 0 1
重新挂载使用:
mount -o remount,rw /
我还添加了胜利选择/etc/nsswitch.conf文件:
hosts: files wins dns
配置域:
$ samba-tool domain provision --domain=domain --adminpass=Abc12345 --server-role=dc --realm=domain.lan --dns-backend=SAMBA_INTERNAL
/etc/samba/smb.conf:
/etc/samba/smb.conf
# Global parameters
[global]
workgroup = DOMAIN
realm = DOMAIN.LAN
netbios name = DOM
server role = active directory domain controller
dns forwarder = 8.8.8.8
[netlogon]
path = /var/lib/samba/sysvol/domain.lan/scripts
read only = No
[sysvol]
path = /var/lib/samba/sysvol
read only = No
设置完整名称/etc/hosts:
127.0.1.1 dom
192.168.0.2 dom.domain.lan dom
和 /etc/hostname:
dom.domain.lan
设置静态 IP 地址:
auto eth0
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameserver 8.8.8.8 208.67.222.222
dns-search domain.lan
并将生成的 /var/lib/samba/private/krb5.conf 复制到 /etc
答案1
假设 Samba 没有版本问题,请确保您的时钟在允许的阈值范围内。Time 多次给我带来了同样的问题。使用 4.1.7,我的 8 台机器和现在的 8.1 台机器能够加入和登录。
深入研究您的配置,问题可能出在领域上。
Windows 8 存在一个问题,微软提出了新的域名政策。当域名中包含点(“.”)时(例如 example.com),Windows 8 会将此名称视为 Active Directory 名称,并尝试联系 Kerberos/LDAP 服务器,即使没有。因此无法加入此域,目前尚无已知的修复或解决方法。
答案2
我对不同版本的所有测试都成功了。即使是测试版,包括 4.0.0beta2。我设法从 Debian 反向移植升级到版本 4.1.11,而没有破坏系统(呼)。解决了一些问题,但没有加入 Windows 8/8.1。所以经过一次又一次的测试,我们发现了问题。
在我的测试中起作用的原因是我用了仅将 Samba 服务器的 IP 地址用作虚拟机上的 DNS。在生产网络上,我们有一个主 DNS 和一个辅助 DNS,这是由于域而导致的问题。如果我们仅使用 samba 服务器 IP 作为 DNS,Windows 8/81 可以毫无问题地加入域。这会导致一个问题,即我们无法导航到内部页面/服务,如内部网和一些内部系统。
现在问题更大了,与 Windows 8/8,1 无关。我们必须更改领域名称。
如果你有一个像 mysite.com 这样的外部网站,那么它似乎是错误的:
samba-tool domain provision --realm=**mysite.com** --domain=mysite
而应该是这样的:
samba-tool domain provision --realm=ad.mysite.com --domain=mysite
smb配置文件
[global]
workgroup = MYSITE
realm = ad.mysite.com
netbios name = SHARES
dns forwarder = <one of your choice>
server role = active directory domain controller
感谢大家!
答案3
现已修复:我使用调试选项手动启动了 Samba,发现由于客户端和服务器之间的时间偏差,密码匹配失败(Kerberos 票证已过期)。修复时差后,客户端加入域(即使使用 Samba 4.1.6)...