本文有助于修复无法登录到域控制器的问题,本地安全机构子系统服务(LSASS)进程停止响应。
适用于: Windows Server
原始 KB 数: 3144809
重新启动后无法登录到域控制器,并且遇到以下情况:
- 可以在登录屏幕中键入用户名和密码,但按 Enter 时,不会发生任何操作。
- 登录不会在没有错误的情况下继续。
- 如果断开网络接口卡(NIC)的连接,则可以使用缓存凭据登录。
- LSASS 进程停止响应或最近停止响应。
- 由于登录失败,许多服务无法启动。
出现此问题时,系统事件日志可能包含以下一个或多个事件:
事件日志 | 事件源 | ID | 消息文本 |
---|---|---|---|
系统 | LsaSrv | 5000 | 安全包 NTLM 生成了异常。 异常信息是数据。 OR 安全包MICROSOFT_AUTHENTICATION_PACKAGE_V1_0 生成了异常。 异常信息是数据。 扩展错误E0010014 |
系统 | LsaSrv | 6038 | Microsoft Windows Server 检测到 NTLM 身份验证当前正用于客户端和此服务器。 首次客户端使用此服务器使用 NTLM 时,每次启动服务器时,就会发生此事件。 |
系统 | 应用程序弹出窗口 | 26 | 应用程序弹出窗口:lsass.exe - 应用程序错误:应用程序位置0x90cf8b9c发生异常未知软件异常(0xe0010004)。 |
系统 | User32 | 1074 | 进程wininit.exe已代表用户启动计算机 <DC> 重启,原因如下: 找不到出于此原因的标题。 原因代码:0x50006 关机类型:重启 注释:系统进程“C:\Windows\system32\lsass.exe”意外终止,状态代码 -536805372。 系统现在将关闭并重启。 |
系统 | 服务控制管理器 | 7038 | 由于 <以下错误,服务名称> 服务无法使用当前配置的密码以 NT AUTHORITY\SYSTEM 身份登录:RPC 服务器不可用。 |
系统 | 服务控制管理器 | 7000 | 由于 <以下错误,服务名称> 服务无法启动:由于登录失败,服务未启动。 |
系统 | Microsoft-Windows-Time-Service | 46 | 时间服务遇到错误,被迫关闭。 错误为:0x80070721:发生了特定于安全包的错误。 |
系统 | 服务控制管理器 | 7023 | IPsec 策略代理服务已终止并出现以下错误:身份验证服务未知。 |
系统 | Netlogon | 5774 | DNS 记录“DNS 记录>”<的动态注册在以下 DNS 服务器上失败:DNS 服务器 IP 地址:<DNS ServerIP> 返回响应代码(RCODE):5 返回状态代码:9017...其他数据错误值:DNS 错误密钥。 |
还可以在事件跟踪日志(ETL)或内存转储分析中找到错误:
错误 | 日志和注释 |
---|---|
DSA_DB_EXCEPTION 错误代码:0xfffff9bf(4294965695): JET_errRecordNotFound - esent.h: /* 找不到密钥 */ |
LSASS 异常故障转储 |
C:\tools>err -536805372 #for decimal -536805372/ hex 0xe0010004 DSA_DB_EXCEPTION dsexcept.h |
User32 事件状态代码 |
[1]035C.0160::02/23/16-13:26:11.0878836 [Microsoft-Windows-Shell-AuthUI-Common/Diagnostic ] DWORD1=2147943515, DWORD2=0 | Shell-AuthUI ETL 错误代码:(HRESULT)0x8007045b(2147943515) - 系统关闭正在进行中。 “此错误来自此全局设置,我在所有转储中看到此设置。 0: kd> dt lsasrv!ShutdownBegun” |
NetLogon:LogonSAMPauseResponseEX (暂停 Netlogon 时的 SAM 响应):24 (0x18) | 网络跟踪 |
密码设置容器已移动或缺失
在 Windows Server 2012 及更高版本中,身份验证过程进行函数调用以确定细化的密码策略,并查找密码设置容器。 如果在 Active Directory 域命名上下文中的 cn=system,dc=<domain,dc>=<com> 下不存在,或者它位于不正确的位置,则登录将失败。
注意
密码设置容器是应始终存在的默认系统容器。 此容器是 Windows Server 2008 及更高版本的域控制器的 Adprep 的一部分创建的,以支持 精细的密码策略。
将容器移动到正确的位置或重新运行 Adprep
如果密码设置容器位于不正确的位置,请执行以下步骤:
运行以下命令以搜索容器:
repadmin /showattr . ncobj:domain: /filter:"(objectclass=msds-PasswordSettingsContainer)" /subtree
注意
可以运行
repadmin /showobj
该命令来检查容器上次修改时间。打开 LDP 工具,然后选择“ 浏览>修改 RDN ”,将对象移动到系统容器下的正确位置。
如果密码设置容器不存在,请执行以下步骤:
以域管理员身份登录到基础结构主机。
使用以下文本创建.txt文件:
dn: CN=ActiveDirectoryUpdate,CN=DomainUpdates,CN=System,DC=contoso,dc=com changetype: modify replace: revision revision: 1
打开提升的命令提示符,并运行
ldifde
命令以导入文件。ldifde -i -f <File Name>
在 LDP 工具或 Active Directory 服务接口(ADSI)编辑器工具中,删除需要重新运行的操作的容器。 例如:
cn=71482d49-8870-4cb3-a438-b6fc9ec35d70,cn=Operations,cn=DomainUpdates,cn=System,DC=fia,DC=local。
运行
adprep /domainprep
命令。
可以检查ADPrep.log文件(C:\Windows\debug\adprep\logs\Date Time>\<ADPrep.log)来验证结果。
注意
Windows Server 2019 及更高版本有一个更新,可阻止 LSASS 进程停止响应。