Mac OS X系统可以连接到Samba共享,但是Windows XP不能

访问运行Samba的服务器时,Mac OS X将打开一个login窗口,提示input用户名和密码。 用正确的用户名和密码,我可以login和读/写共享

使用Windows XP,将打开一个类似的login窗口,但用户名和密码似乎失败。 进入后,我点击确定button,窗口闪烁并重新出现。 当它再次出现用户名字段现在包含时,SambaMachineName \ username和密码字段为空。

我猜这是Windows XP访问Samba共享的常见问题,但是search一般窗口到samba问题并没有帮助。 任何人都知道这个问题的原因?

通常,当你得到这样的提示时,XP盒正在寻找对某些东西进行authentication并失败。 这个networking有一个域吗? 如果是这样,OS X机器是该域的一部分?

您提供的login名必须与其所连接的计算机上存在的域帐户或帐户相匹配,才能获得该共享权限。

例如,假设我有一个名为“MyDomain.local”的域,名为“MyServer”。 如果您使用的帐户存在于域中,则必须input如下所示的用户名:“MyDomain \ Username”。 如果账号不属于域名,只存在于服务器上,那就是“MyServer \ Username”。

基于这个事实,即XP服务器的名称回来,我猜这个帐户不存在于服务器上。

您需要在smb.conf的全局部分中设置encrypt passwords = true ,因为windows会发送encryption的密码

是域的有效用户名部分,还是托pipe该共享的计算机上的本地帐户?

Windows XP有效凭证的第二个请求是要么input的用户名和密码不正确,要么他们无权访问该共享。

你说Windows是在域上,但是OSX和Samba不是; 我会猜你也说你的Samba服务器是基于Linux的? 让我们知道您在smb.conf中设置了哪些密码选项; 将“安全=服务器”是一个很好的猜测你正在运行? 你的“工作组”这一行的价值是什么 – 和域一样?

如果以上情况属实,请检查您的Linux服务器以查看“winbind”是否正在运行 – 如果是,请closures它,因为它试图使用您的域名。 我有一个类似于您的设置,如果winbind正在运行,则Windows XP guest虚拟机在访问此非域Red Hat samba服务器时遇到问题,即使security = server也是如此。 (/etc/init.d/winbind stop; chkconfig winbind off)

您的Samba服务器是否configuration为只接受纯文本用户名/密码? Windows将默认拒绝这样做,而Mac OS X和Linux可能不会。

如果Windows 7没有问题,XP客户端无法连接也是一样。 我find的解决scheme是在XP机器上更改以下registry项:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\LMCompatibilityLevel

Windows XP:设置为: 3
Windows Vista和Windows 7:设置为: 1