密码验证失败 - NTLMv2

密码验证失败 - NTLMv2

环境:

  • Windows 2000 sp4编辑:Win2008 服务器没有设置信任的域控制器
  • Windows XP 计算机
  • Windows 2008 服务器
  • Netapp NAS

问题:

我们有一个位于 NAS 上的共享文件夹,使用 Windows 2008 AD 进行身份验证,并设置了适当的权限。当 Windows 2000 计算机尝试打开位于 Win2008 计算机上的共享时,系统会提示输入用户名和密码。输入凭据后,它会不断重新要求输入凭据。

重要细节:

Windows 2000 计算机可以 ping 通 XP 计算机和 Windows 2008 Server

Windows 2008 计算机只能使用 NTLMv2

Windows 2000 计算机最初设置为 NTLM,但最近NTLMv2 if negotiated为了尝试连接共享而切换至此。

我确信它会出现,由于合同义务,我们正在使用 Windows 2000

问题:

为什么在这种情况下密码验证会失败?

为 Win2000 机器设置 GPO 以使用 NTLMv2 后,我们使用 SECEDIT 更新 GPO 而无需重新启动。 有人知道这是否足够还是需要重新启动?


更新

我们检查了两个 2008 域控制器以查找错误代码。我们收到:

Microsoft_Auth_Package_V1_0
0xc000006a
Event ID: 4776

我知道这是一个身份验证错误文章

“当前密码提供的值不正确”

我们知道这个密码是正确的,但是由于这两个域(Win2000 和 Win2008)没有信任设置,需要使用什么身份验证帐户?驻留在 Win2000 托管域上的帐户?


更新 2

我对 NTLMv2 和所需的设置进行了一些研究,因为整个if negotiated过程对我来说很困难。我偶然发现了以下信息:来自以下来源:

客户端 服务器端

所以我的问题仍然是,处理 NTLMv2 时if negotiated真正的含义是什么session security?我的想法是会话安全是这里的关键词。

我们的 2008 服务器设置为 5 级 我们的 2000 服务器设置为 1 级

2000 服务器在任何情况下都不能从级别 1 更改,因为不幸的是,这会破坏许多旧设备的身份验证。所以对我来说,问题似乎出在级别 3 上,会话正在通过 NTLM。

NTLM 的流程 图片来源:richardkok

我感觉我快要到达目的地了,但是我仍然很难处理它。

答案1

这里的关键是理解微软所说的“如果协商,则 NTLMv2 会话安全”是什么意思

只需浏览一下设置,它就会显示“如果可以,请使用 NTLMv2”,但事实上,它根本没有这个意思。

本质上它的意思是“使用 NTLMv1,如果可以的话,使用这个 NTLMv2 组件 - 称为‘会话安全’”会话安全是 NTLMv2 引入的一项功能,正如您链接的那篇文章中所述 -http://technet.microsoft.com/en-us/magazine/2006.08.securitywatch.aspx

因此,虽然通过使用会话安全性,您的连接变得更加安全,但归根结底,您发送的哈希是 NTLMv1 哈希。而且,正如您发布的表格所示 - 不会发送 NTLMv2。

那么这是什么意思呢?嗯,这意味着您在 2000 服务器上设置的 GPO 设置为“发送 NTLMv1”,而 Windows 2008 服务器上的 GPO 设置为“仅接受 NTLMv2”。您的解决方案在于修改任一框上的 GPO,首选方法可能是升级 2k 服务器的安全级别以支持 NTLMv2。不幸的是,如果这会中断上述连接,唯一的选择就是更改 2008 服务器的 GPO 以允许 NTLMv1

相关内容