本文提供有关在登录尝试期间解决在域中的客户端计算机或成员服务器上遇到的常见安全通道问题的指南。
现象
当安全通道问题导致已加入域的设备与其域之间的信任关系断开时,你会看到计算机上的以下症状:
无法使用 Active Directory 或域凭据登录到计算机。 出现以下错误消息:
此工作站和主域间的信任关系失败。
可以使用本地用户或缓存的凭据登录。
系统事件查看器日志上的 NETLOGON 源中看到事件 3210:
Log name: System Source: NETLOGON Level: Error Description: This computer could not authenticate with \\DCName.contoso.com, a Windows domain controller for domain CONTOSO, and therefore this computer might deny logon requests. This inability to authenticate might be caused by another computer on the same network using the same name or the password for this computer account is not recognized. If this message appears again, contact your system administrator.
如果启用了 Netlogon 日志记录,则会看到类似于以下示例的内容:
Date Time [CRITICAL] CORP: NlSessionSetup: Session setup: cannot I_NetServerAuthenticate 0xc0000022 Date Time [CRITICAL] CORP: NlSessionSetup: new password is bad, try old one Date Time [CRITICAL] NlPrintRpcDebug: Couldn't get EEInfo for I_NetServerAuthenticate3: 1761 (may be legitimate for 0xc0000022) Date Time [SESSION] CORP: NlSessionSetup: Negotiated flags with server are 0x612fffff Date Time [CRITICAL] CORP: NlSessionSetup: Session setup: cannot I_NetServerAuthenticate 0xc0000022 Date Time [MISC] Eventlog: 3210 (1) "CORP" "\\DCName.Contoso.com" 2f8270f1 5bc8d5e7 34c3e164 6665df64 .p./...[d..4d.ef Date Time [SESSION] CORP: NlSetStatusClientSession: Set connection status to c0000022 Date Time [SESSION] CORP: NlSetStatusClientSession: Unbind from server \\DCName.Contoso.com (TCP) 0. Date Time [SESSION] CORP: NlSessionSetup: Session setup Failed
如果尝试测试安全通道状态,则会收到“拒绝访问”错误:
C:\>nltest /sc_query:contoso.com Flags: 0 Trusted DC Name Trusted DC Connection Status Status = 5 0x5 ERROR_ACCESS_DENIED The command completed successfully
常见应用场景
下面是最常见的方案及其原因:
- 客户端计算机或成员服务器的密码早于 Active Directory 数据库。
- Active Directory 数据库的密码早于客户端计算机或成员服务器。 (域控制器还原到以前的状态,或 Active Directory 复制问题)。
解决方法
若要排查问题,请执行以下步骤:
收集数据以确定问题的原因。
根据遇到的方案,请参阅解决方案的相应文章:
其他注意事项
确保以下注册表项包含计算机的实际名称(不是完全限定的域名 (FQDN)):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName\ComputerName
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters\hostname
可以通过运行以下命令来查询这些密钥:
Reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /v ComputerName
Reg query HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters /v hostname
注意
某些 IT 技术人员或管理员会将计算机重新加入域,以解决损坏的安全通道问题,这是一个有效的解决方案。 但是,如果需要查找持续或重复问题的原因,本文将帮助你找出环境中的根本原因。
详细信息
术语
- 本地安全机构 (LSA) 机密:Windows 中本地安全机构用来存储重要数据的特殊受保护存储。 在此系列文章中,LSA 机密是指已加入域的设备的计算机密码。
- Cupdtime:是指 LSA 机密的上次更新时间,在本系列文章中,计算机密码。 此信息存储在 Windows 注册表的下面
HKEY_LOCAL_MACHINE/Security/Policy/Secrets$MACHINE.ACC/cupdtime
。 - pwdLastSet (PasswordLastSet):存储在 Active Directory 中的计算机对象属性。