news 2026/9/18 1:40:46

Windows Server 2016/Win10忘记密码离线重置与域控RDS

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Windows Server 2016/Win10忘记密码离线重置与域控RDS

凌晨两点接到电话,说机房那台跑业务系统的 Windows Server 2016 本地管理员密码没人记得了,早上八点要开机。这种场面我遇到过不止一次,也帮同事远程处理过 Win10 笔记本忘记密码的情况。重置密码这件事本身技术难度不高,但真正让人翻车的是:路径选错了、盘符认错了、收尾没做干净。这篇就把我这些年处理 Windows Server 2016 忘记密码、Win10 重置密码这类问题的完整思路摊开讲,从判断账户类型开始,到三种主流离线重置方案的具体操作,再到域控和 RDS 会话主机这种特殊场景,最后说清楚进去之后该怎么收口。内容只针对你自己有管理权的设备,涉及他人设备的操作不在讨论范围内。

1. 先分清你要救的是哪一类账户,走错门等于白折腾

1.1 本地账户、微软账户、域账户:三套完全不同的找回逻辑

很多人一上来就问"Windows 忘记密码怎么重置",但这个问题缺了最关键的前置条件——你说的是哪种账户。本地账户的密码哈希存在本机C:\Windows\System32\config\SAM文件里,离线把它改掉是最直接的思路;微软账户的凭据根本不在本机,登录时走的是在线校验,你在离线环境把本地 SAM 改得再干净也没用;域账户的凭据存在域控的ntds.dit里,本机只是做了一次缓存,改本地密码对域登录毫无影响。

这三种情况的处理成本差得很远。本地账户最快,二三十分钟能搞定;微软账户需要能联网、能进绑定的邮箱或手机号,属于"找回"而不是"重置";域账户则取决于你手上还有没有第二个有权限的管理员账号,有的话一条dsmod命令就解决了,没有的话难度直接跳到另一个量级。

所以动手前先在脑子里过一遍:这台机器登录界面显示的是什么名字?是DESKTOP-XXXX\用户名这种带机器名前缀的,还是直接一个邮箱地址?带机器名前缀或.\用户名的基本是本地账户;显示邮箱的是微软账户;显示域名\用户名的是域账户。这个判断决定了你后面所有操作的方向。

1.2 服务器端还要多问一句:这是独立服务器、域控还是 RDS 会话主机

服务器场景比客户端复杂,因为同一个"Server 2016 忘记密码"的标题下面,藏着三种完全不同的角色。

独立成员服务器最简单,本地管理员账户忘了密码,按后面的离线方法处理就行,跟 Win10 本地账户没什么区别。域控就麻烦了,域控上也有本地的 SAM,但真正要救的是 AD 数据库里的域管理员账户,这个必须走目录服务还原模式(DSRM)。RDS 会话主机则介于两者之间——它本身是成员服务器,本地密码好改,但它的身份是"服务器场里的一台机器",改完之后还要确认 Broker 那边有没有异常。

我在实际处理中见过最典型的一次误操作:运维同事在一台 RDS 会话主机上重置了本地管理员密码,然后直接用这个账户登录去改配置,结果因为这台机器同时是域成员,登录时走了域认证,输的是本地密码,系统提示凭据无效,来回试了几次触发了账户锁定策略,把域账户也一起锁了。这就是没分清账户来源的代价。

判断方法很简单:登录界面点"切换用户",看账户列表里有没有"域"的字样;或者在能进入系统的情况下跑whoami,看输出是机器名\用户还是域名\用户

1.3 一眼判断法:从登录界面和提示文字倒推路径

登录界面其实会给你很多线索,只是大部分人没注意。

如果登录框下面有"密码重置盘"的链接,说明这台机器至少有一个本地账户,而且之前有人做过密码重置盘,这条路可以优先试试。如果有"我忘记了我的 PIN"但没有"忘记密码",说明这是微软账户绑定了 Windows Hello,PIN 是本地凭据可以重设,但底层还是要有账户密码或者能联网验证身份。

如果按 Shift 键五次会弹出"粘滞键"提示框,记下这一点——这说明sethc.exe这个可执行文件是正常加载的,后面替换方案可以用它作为备选入口。同理,登录界面右下角如果有"轻松使用"(辅助功能)图标,那么utilman.exe也是可用的入口。

服务器上还有一个特征:如果没有"关机"按钮、"重启"按钮的排列方式跟客户端不一样,或者界面语言是英文的 Server 版本,那么sethc.exeutilman.exe的路径都在C:\Windows\System32\下,和客户端一致,替换方案完全通用。

把这些线索串起来,你大概三十秒内就能确定自己该走哪条路,而不是先折腾两个小时才发现方向错了。

2. 动手之前先把风险摁住:数据、介质、授权三件事

2.1 别把数据盘当系统盘:离线操作前的盘符确认

这是最容易出事的一步。在 WinRE(Windows 恢复环境)或者第三方 PE 里,盘符和正常系统里完全不一样。正常系统里 C 盘是系统盘,但在 WinRE 里,X 盘是内存里的虚拟盘,系统保留分区、EFI 分区、恢复分区都会各占一个字母,结果就是你的系统盘可能变成 D 盘、E 盘甚至更靠后。

我吃过一次亏:在一台多盘服务器上,系统盘变成了 D,数据盘占了 C,我当时想当然地往 C 盘路径上写文件,结果把一个数据盘的分区表搞出了异常,好在有备份。从那以后我改了习惯——不管多急,进命令行第一件事永远是确认盘符。

确认方法很朴素,就是用dir去试:

diskpart list volume exit

list volume会列出所有卷的大小和标签。系统盘一般有明显的特征:卷标可能叫Windows或者没有标签但容量跟你在 BIOS 里看到的系统分区对得上。更可靠的办法是直接找文件:

dir D:\Windows\System32\utilman.exe dir E:\Windows\System32\utilman.exe

哪个路径能列出utilman.exe,哪个就是系统盘。这个动作花不到十秒,但能避免后面所有麻烦。

注意:在 WinRE 里执行任何带删除、格式化语义的命令之前,先跑一次list volume看容量,别依赖盘符。盘符在离线环境下是不稳定的。

2.2 安装介质版本要与目标系统对得上

做启动 U 盘看起来是体力活,但版本匹配这件事真有不少人栽跟头。

目标系统是 Windows Server 2016,最稳的是用 Server 2016 的官方 ISO 做启动盘。理论上 Win10 的安装介质也能进 WinRE,因为两代的恢复环境内核是同一支,但我实测过几次,用 Win10 22H2 的介质去救 Server 2016,能进命令提示符,但偶尔会遇到加载存储驱动失败、看不到硬盘的情况,尤其是用了 RAID 卡的服务器,这是因为安装介质里缺对应的驱动。

反过来,用 Server 2016 的介质去处理 Win10 笔记本也没问题,只是没必要。

制作工具上,我现在基本只用 Rufus 或者 Ventoy。Ventoy 的好处是一个 U 盘能放多个 ISO,救急的时候不用现场重新做盘。分区模式一定要跟目标机器的启动模式匹配:UEFI 启动的机器选 GPT 分区方案,传统 BIOS 选 MBR,Rufus 里"分区类型"和"目标系统类型"两个下拉框要一起改。

还有一个细节:部分品牌的服务器(尤其带 RAID 卡的)需要在 BIOS 里把启动模式从 UEFI 切到 Legacy,或者反过来,否则 U 盘根本不出现在启动菜单里。这个不是技术问题,是耐心问题——把 BIOS 启动菜单的每一个条目都试一遍,通常能找到。

2.3 虚拟机与物理机的操作差异(含快照先行)

如果目标是虚拟机,恭喜你,难度直接降一个等级,因为你可以在动手之前先拍快照。

VMware 或者 Hyper-V 里,关机状态下创建一个快照,然后所有操作都在快照之后进行。万一改坏了,回滚快照就行,成本接近零。这个习惯我强烈建议养成——我在 ESXi 上处理过一台客户的生产 Server 2016,第一轮操作时误把一个服务的启动类型改成了禁用,回滚快照重来,前后不到五分钟。

虚拟机的另一个优势是挂载方式灵活。你可以直接把虚拟磁盘文件挂到另一台正常的虚拟机上,用那台机器的工具去编辑离线系统的 SAM,连 PE 都不用做。不过这种方式要求两台虚拟机在同一台宿主机上,且磁盘格式兼容,实际操作起来不一定比做 U 盘快,看个人习惯。

物理机就老实多了,没有退路,操作前唯一能做的就是确认数据有备份。如果这台机器上有业务数据库在跑,先联系业务方确认最近的备份时间点,再动手。

2.4 BitLocker 与安全加固带来的前置条件

这是最容易被忽略、也最容易让人白忙一场的一环。

如果系统盘启用了 BitLocker,离线方案基本全部失效——WinRE 启动后会先要求输入 48 位恢复密钥,输不对就进不去命令行。这种情况下你只剩两条路:找到恢复密钥(可能在 AD 里的 BitLocker 恢复密钥容器、微软账户的恢复密钥页面、或者打印出来的纸质副本),或者放弃数据直接重装。

企业环境里还有一层加固会干扰操作。有些终端防护软件会在系统启动时校验关键系统文件,发现utilman.exe被替换会直接告警甚至阻断启动流程。我遇到过一台装了某国产终端防护的 Server 2016,替换完重启后防护先弹了告警,然后自动从备份把文件还原了,等于白干。这种环境下,提前跟安全团队报备一下操作计划,让他们临时加白名单,比事后解释半天省事。

提示:动手前先确认三件事——系统盘有没有开 BitLocker、有没有终端防护软件、有没有域策略会强制覆盖本地安全设置。三个都确认完再开始。

3. 用安装介质替换 utilman.exe:不需要第三方工具的重置方案

3.1 这套方法为什么能成:SYSTEM 上下文与辅助功能程序的加载时机

先说原理,理解了原理你才知道什么情况下它不work。

Windows 的登录界面(LogonUI)是以SYSTEM账户运行的,它加载"轻松使用"面板的时候,会调用C:\Windows\System32\utilman.exe。而在登录界面这个阶段,SYSTEM拥有这台机器上最高的本地权限,包括修改任意本地账户密码的能力。

于是思路就很简单:如果把utilman.exe换成一个命令行程序(比如cmd.exe的副本),然后在登录界面点一下"轻松使用"图标,弹出来的就不是辅助功能面板,而是一个以 SYSTEM 权限运行的命令提示符。在这个提示符里执行net user命令改密码,系统不会拦你,因为它认为这是系统自己在操作。

同理,sethc.exe(粘滞键,连按五次 Shift 触发)也可以作为入口,原理完全一样。我用utilman.exe多一些,因为它的图标在登录界面上更显眼,不容易按错。

这套方法的好处是零第三方工具依赖,只要有官方安装介质就行;代价是需要手动回滚文件,且对 BitLocker 加密盘无效。

3.2 完整操作链路(含盘符偏移处理)

下面是我实际用的流程,一步一步来。

第一步,从安装 U 盘启动,在语言选择界面按Shift + F10,或者点左下角的"修复计算机",进入"疑难解答 → 高级选项 → 命令提示符"。

第二步,确认系统盘盘符,前面说过的方法:

diskpart list volume exit dir D:\Windows\System32\utilman.exe

找到能列出文件的盘符后,假设是D:,执行备份和替换:

copy D:\Windows\System32\utilman.exe D:\utilman.exe.bak copy D:\Windows\System32\cmd.exe D:\Windows\System32\utilman.exe

两个命令都要有"已复制 1 个文件"的回显,如果提示拒绝访问,检查是不是 BitLocker 没解锁,或者目标位置其实是个只读的恢复分区。

第三步,重启:

wpeutil reboot

第六步,机器起来后停在登录界面,点右下角"轻松使用"图标,会弹出一个黑色命令行窗口。这时候先确认身份:

whoami

回显应该是nt authority\system。然后列出账户:

net user

找到你要重置的那个账户名,假设是administrator

net user administrator P@ssw0rd2024

如果提示"密码不满足密码策略要求",说明系统开了复杂度策略,换成带大小写字母、数字和符号的密码再试。如果提示"该账户已被禁用",先激活再设密码:

net user administrator /active:yes net user administrator P@ssw0rd2024

设置成功后关掉命令行,用新密码登录系统。

3.3 复位后必须做的收尾:把 utilman.exe 换回去

这一步很多人做完密码就跑了,留下一个巨大的隐患——你的系统里现在有一个以 SYSTEM 权限运行的命令行入口,任何能物理接触这台机器的人,都能在登录界面点一下图标就拿到系统权限。

正确做法是再次从安装介质启动,进命令提示符,把文件换回去:

copy D:\utilman.exe.bak D:\Windows\System32\utilman.exe del D:\utilman.exe.bak

确认一下替换后的文件大小和备份一致,然后重启。重启后在登录界面点一下"轻松使用"图标,如果弹出的是正常的辅助功能面板而不是命令行,说明回滚成功。

我个人的习惯是把这个回滚步骤写在便签上贴在显示器旁边,做完一项划掉一项。急着恢复业务的时候,人真的会忘。

3.4 实测中容易翻车的四个点

第一个是盘符偏移,前面说过了,dir确认法是最省事的。

第二个是sfc /scannow的自动修复。有次我忘了回滚,几天后运维团队例行跑完整性检查,SFC 从WinSxS里把原版utilman.exe拉了回来。表面上系统"自愈"了,但这个过程会在 CBS 日志里留下记录,安全审计的同事看到这条异常会来问你。所以别指望系统自己修,手动回滚才是正道。

第三个是域成员的缓存凭据。在域成员服务器上重置本地管理员密码后,如果这台机器之前缓存过域用户凭据,拔掉网线用旧的域密码也能登录。这不是找回手段,因为缓存凭据有有效期(默认 10 次登录或 90 天),过了就失效。别把希望寄托在这上面。

第四个是sethc.exe有时候比utilman.exe更好用。某些 Server 版本的登录界面在特定主题下"轻松使用"图标会被隐藏,但连按五次 Shift 触发粘滞键是系统级快捷键,不受界面影响。如果utilman那套没反应,换成替换sethc.exe再试。

4. 走 PE 路线:NTPasswd 一类离线密码编辑工具怎么用

4.1 PE 启动盘的制作与启动顺序

如果你不想折腾替换文件这种"手工活",用现成的 PE 工具会快很多。

PE 盘的选择上,国内用得多的是微PE和 Ventoy 配合各类 ISO。我的建议是准备一个 32GB 以上的 U 盘,用 Ventoy 装一个微PE的 ISO,再放一个官方 Windows Server 2016 的 ISO 做备用。这样无论是走 PE 工具还是走替换文件方案,一个 U 盘全覆盖。

制作过程没什么技术含量,Ventoy 装完之后是拖拽 ISO 文件进去就行,注意 U 盘本身要格式化成 exFAT 才能放大于 4GB 的 ISO 文件。启动顺序在 BIOS 或者服务器自带的启动管理器(比如 Dell 的 F12 一次性启动菜单、HPE 的 F9)里调,一次性启动菜单比进 BIOS 改永久启动顺序更安全,改完不用记得改回来。

服务器上还有个坑:如果开了 Secure Boot,某些老版本 PE 盘会因为引导程序没有签名而无法启动。这时候要么在 BIOS 里临时关闭 Secure Boot,要么换一个支持 Secure Boot 的 PE 版本。我一般选前者,做完操作再打开。

4.2 chntpw / NTPasswd 的操作节奏与局限性

进 PE 之后,打开密码工具。核心工具是chntpw,NTPasswd 是它的图形化封装,本质一样,都是直接读写C:\Windows\System32\config\SAM这个文件。

图形化界面的操作节奏是:选择 SAM 文件路径 → 工具列出所有本地账户 → 选中目标账户 → 选择"清除密码"或者"设置新密码" → 保存 → 重启。

命令行的chntpw也值得了解一下,因为有些 PE 里只有命令行版本:

chntpw -l /mnt/sda2/Windows/System32/config/SAM chntpw -u Administrator /mnt/sda2/Windows/System32/config/SAM

第一条列出账户,第二条进入交互菜单,按提示操作。

关于"清除"还是"设置新密码",我的经验是优先选清除。原因在于chntpw这类工具对新版 Windows 使用的密码哈希算法支持并不完整,直接设置新密码有时候会写进去一个格式不对的值,导致系统认为密码无效但仍然拒绝空密码登录,反而更麻烦。清除密码之后,系统允许空密码登录,你进去第一件事就是设一个新密码,这样最稳。

局限性也说清楚:这类工具对域账户无效,因为域凭据不在本地 SAM 里;对微软账户无效,理由前面讲过;对启用 BitLocker 的盘无效,因为解密都做不到。所以在用它之前,先回到第 1 章确认账户类型。

4.3 微软账户登录的 Win10,改本地密码其实没用

这是 Win10 忘记密码场景里最常见的误解。

很多人的 Win10 用的是微软账户登录,登录界面显示的是邮箱地址。这种情况下,即使你用 PE 工具把本地的某个账户密码清了,登录时系统校验的还是微软账户的在线凭据,密码该不对还是不对。

正确的处理路径是:找一台能上网的设备,打开微软账户的密码重置页面,用绑定的手机号或者备用邮箱验证身份,在线重置密码。重置完成后,目标机器需要联网才能同步到新的凭据——如果它现在处于离线状态,你可以在登录界面点击"忘记密码"链接,按照提示走一遍在线验证流程,只要机器能连上网,同样能重置。

如果实在联不上网、也拿不到绑定的手机或邮箱,剩下一条路是把微软账户切换成本地账户,但这需要先进系统,是个死循环。这时候只能走重装或者用 PE 里的账户管理工具新建一个本地管理员账户,进去之后再迁移数据。新建账户这个操作 PE 工具能直接做——大多数密码工具都有"新建用户并加入 Administrators 组"的功能。

注意:新建本地管理员账户能让你进系统,但原微软账户下的用户配置文件(桌面、文档、浏览器书签)在C:\Users\下是独立的,登录新账户看不到旧的桌面。需要手动去C:\Users\旧账户名里把文件拷出来,权限问题可以通过"安全"选项卡里的"高级 → 更改所有者"解决。

5. 域控与 RDS 场景:这里不是"改个密码"那么简单

5.1 域管理员密码丢失后走 DSRM 目录服务还原模式

域控上的本地账户密码好办,难办的是域管理员账户。整套思路跟前面完全不同。

如果环境里有多台域控,管理上会轻松很多——用另一台域控上的域管理员账户,直接dsmod或者 ADUC 图形界面重置密码就行,一分钟的事。真正棘手的是单域控环境,而且这台域控的所有管理员账户密码都丢了。

这时候走目录服务还原模式(DSRM)。DSRM 的密码是在域控安装时设置的,很多环境里当初设这个密码的人早就离职了,所以先做好心理准备——这个密码大概率也找不到了。

操作流程是在域控上执行:

bcdedit /set safeboot dsrepair shutdown /r /t 0

重启后会进入 DSRM 登录界面,用 DSRM 密码登录。如果 DSRM 密码也不知道,可以从另一台域控上重置,或者在安装介质里进 WinRE 用ntdsutil的 "Reset DSRM Administrator Password" 选项。单域控的情况下,就只能在 WinRE 里做。

进 DSRM 之后,AD 数据库是脱机挂载的,你不能在这里直接改域用户密码,因为服务没起来。很多人到这一步就卡住了,实际上 DSRM 的价值在于:它让你以本地管理员身份进入系统,然后可以通过其他方式恢复域服务。

另一种做法是在域控上直接替换utilman.exe,从登录界面拿到 SYSTEM 权限的 cmd,然后执行:

net user administrator 新密码 /domain

因为 SYSTEM 在域控上拥有足够的权限,这条命令通常能成功重置域管理员密码。但我要提醒的是,这个方法在启用了某些加固策略的域控上可能失败,而且它绕过了正常的管理流程,事后一定会在安全日志里留下痕迹。所以它是备选方案,不是首选。

不管走哪条路,恢复完成后一定要执行:

bcdedit /deletevalue safeboot

否则机器每次重启都会进 DSRM,业务就起不来了。这个命令我强调三遍都不为过,见过两次忘记删的案例。

5.2 成员服务器与 RDS 会话主机的密码该从哪里重置

成员服务器和 RDS 会话主机,通常是域环境里的一员。这意味着本地管理员密码和域账户密码是两套东西,处理顺序上我建议先看域账户。

如果这台服务器上有域管理员组的成员账户,用那个账户登录,然后该干什么干什么,根本不需要动本地密码。只有当域账户也进不去、或者这台机器的域信任关系出了问题的时候,才需要动本地管理员账户。

动本地账户的方法跟独立服务器一样,走第 3 章或第 4 章的方案。但有一个细节:重置完本地密码后,如果你用本地账户登录,登录界面的"登录到"要选择本机而不是域,否则系统会拿这个密码去域控验证,必然失败,反复几次还可能触发锁定。

RDS 会话主机还有一个额外的考虑:如果这台机器属于某个 RDS 部署(集合),改完本地密码后最好检查一下 Broker 里的服务器状态。虽然本地密码跟 RDS 集合运行没有直接关系,但如果这台机器参与的是负载均衡或者重定向,任何配置变动都值得复核一遍。检查方法是打开"服务器管理器 → 远程桌面服务 → 概述",看集合里的服务器状态是不是都在"正常"。

5.3 补丁重启后会话主机提示 60 分钟断连的排查顺序

这个是热词里出现频率很高的问题,我把它跟密码场景放在一起讲,因为两者经常同时发生——运维在给会话主机打补丁、重启的窗口期发现管理员密码忘了,然后处理完密码又撞上这个提示。

现象是:给某一台 RDS 会话主机装了升级补丁并重启后,用户连到集合里其他的会话主机时,弹出一个提示,说会话将在 60 分钟后断开。

这个提示的来源,按概率排序有三个。

第一个来源是组策略里的会话时间限制。路径在"计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 远程桌面会话主机 → 会话时间限制",其中"为已断开的会话设置时间限制"和"为活动但空闲的远程桌面服务会话设置时间限制"如果被设成了 60 分钟,用户就会看到这个提示。用gpresult /h report.html在会话主机上生成策略报告,搜"时间限制"就能确认策略来源是哪条 GPO。

第二个来源是 RDS 授权。授权宽限期是 120 天,如果授权服务器出过问题、或者 CAL 数量不够导致诊断器报警,某些版本会给出会话即将中断的提示。用"RD 授权诊断程序"(在服务器管理器 → 远程桌面服务 → 概述里能找到入口)检查一下,它会直接告诉你哪里有问题。

第三个来源是集合内会话主机状态不一致。刚重启完的那台机器补丁版本跟其他机器不一样,Broker 在做重定向的时候可能把用户分到了还在"重启待完成"状态的机器上。检查方法是看每台会话主机的"配置"列,如果显示"需要重启",把该重启的都重启一遍。

排查顺序我建议是:先看策略,再看授权,最后看机器状态。因为策略问题改一次就永久解决了,授权问题需要换 CAL 或者调整授权服务器,机器状态问题等它自己重启完就好。

补丁窗口期的规范操作是:一个集合里的会话主机一台一台来,重启前先给这台机器设置"排空"模式,让新连接不再分配过来,等现有用户会话自然结束或者提前通知用户,再重启。PowerShell 里可以这样做:

Set-RDSessionHost -SessionHost "rdsh01.contoso.com" -NewConnectionAllowed No

用户掉光之后重启,重启完再打开:

Set-RDSessionHost -SessionHost "rdsh01.contoso.com" -NewConnectionAllowed Yes

这套流程能避免"用户正在用的时候被踢掉"这类投诉,也能减少会话状态异常带来的连带问题。

6. 进去之后:把临时通道收掉,给下一次留条正路

6.1 清理痕迹与复核完整性

能进系统只是第一步。用非正常手段进去之后,系统里可能留下了几处变化,需要逐一核对。

首先是utilman.exesethc.exe有没有被换回去。核对方法很简单,在正常系统里执行:

sfc /verifyfile=C:\Windows\System32\utilman.exe

如果输出"Windows 资源保护未找到任何完整性冲突",说明文件是原版的。反之如果提示有冲突,就手动从WinSxS里恢复,或者再进一次 WinRE 用备份换回来。这一步必须做,别偷懒。

其次是检查一下有没有其他被意外改动的账户。执行:

net localgroup administrators

看一下管理员组里是不是只有你预期的那些账户。如果多出来不认识的账户,说明这台机器可能之前就被动过手脚,需要进一步排查。

最后是翻一下安全日志,看有没有异常的账户变更事件。事件 ID 4720 是创建用户,4724 是重置密码,4732 是加入管理员组。正常情况下你会看到自己这次操作产生的记录,如果还有别的记录,时间点对不上,那就要查了。

6.2 本地管理员账户的收口策略

重置完密码,顺便把账户策略收拾一遍,这是我一直坚持的做法。

先看一下当前的密码策略:

net accounts

输出的"最小密码长度"、"密码最长使用期限"、"锁定阈值"这几项决定了账户的安全性。如果最小长度是 0,锁定阈值是"从不",那这台机器基本是敞开的,随便爆破就能进去。建议至少设成:

net accounts /minpwlen:12 /maxpwage:90 /lockoutthreshold:5 /lockoutduration:15 /lockoutwindow:15

这几项的意思是:密码至少 12 位,90 天必须改一次,连续输错 5 次锁定 15 分钟,重置计数窗口 15 分钟。对服务器来说这是比较基本的配置。

内置的Administrator账户要不要禁用,取决于环境。微软的基线建议是禁用,改用一个命名不同、不在默认列表里的管理员账户。原因是爆破工具默认会拿Administrator这个名字试,改名或禁用能显著提高攻击成本。但很多老旧业务系统会硬编码依赖这个账户,禁用之后起不来,所以改之前先确认业务依赖。

6.3 密码重置盘、恢复账户与企业内的 LAPS 思路

处理完这一次,最该做的是给下一次留条正经的路,别每次都靠离线改文件。

对个人或者小团队的单机环境,密码重置盘是最实用的方案。制作方法是在还记得密码的时候,控制面板 → 用户账户 → 创建密码重置盘,插一个 U 盘按提示走完。以后忘记密码时,在登录界面点"重置密码",插入那个 U 盘,重新设一个就行。注意两点:密码重置盘只对本地账户有效,对微软账户和域账户没用;U 盘要保管好,它就是一把钥匙,谁拿到都能重置你的密码。

对企业的域环境,正规方案是 LAPS(现在叫 Windows LAPS)。它的思路是让每台机器的本地管理员密码都不一样,由系统自动定期轮换,密码存在 AD 或者云目录里,授权人员可以按需查询。这样既避免了"全网统一密码"这种一破全破的风险,也避免了"密码没人记得"这种运维困境。部署 LAPS 需要扩展 AD 架构、部署客户端组件、配置 GPO,属于中等规模的工作量,但一次投入能省掉后面无数次救火。

还有一层是恢复账户。企业环境里至少保留一个不受日常策略约束、密码存放在保险柜里的应急管理员账户,这是基本的风控习惯。我见过太多环境把唯一的域管理员账户密码交给一个人保管,那个人一离职,整个域就成了黑盒。

6.4 交接记录怎么写才不会再踩一次

最后说一下记录。每次处理完这类问题,我都会在运维文档里补一段,内容固定包含这几项。

设备标识:主机名、资产编号、物理位置或者虚拟机的宿主机信息。下次出问题时能快速定位到是哪台机器。

系统信息:是 Server 2016 还是 Win10,什么版本,系统盘在离线环境下的盘符是什么,启动模式是 UEFI 还是 Legacy。盘符这一项看着琐碎,但下次进 WinRE 能省掉几分钟的摸索。

加密状态:有没有开 BitLocker,恢复密钥存在哪里。这一项决定了下次能不能用离线方案,必须写。

账户情况:这次重置的是哪个账户,重置后有没有做策略调整,管理员组成员有哪些变化。

采用的方法:是替换文件还是 PE 工具,有没有回滚。这一项是为了下次能复用经验。

DSRM 密码存放位置:如果是域控,DSRM 密码存哪儿了必须写清楚,别让它再丢一次。

这些记录写起来花不了十分钟,但下一次出事的时候,它能让你从"从零开始摸索"变成"照着上次的笔记复现"。我在实际使用中发现,真正节省时间的从来不是技术多熟练,而是上一次的经验有没有被好好记下来。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/18 1:39:15

给需求环节生成工单的 Agent,TaoToken 的 Key 从官网领

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 1:36:55

数据库三级模式:外模式、模式与内模式的工程落地

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 1:36:40

DX12调试实战:Device创建、SwapChain与Descriptor Heap避坑指南

1. 这不是又一套“理论正确但跑不起来”的DX12教程:它是一份带血丝的调试日志你搜过“DirectX 12 教程”,点开前三个,十有八九是2017年写的,配图还是VS2015界面,代码里还带着D3D12CreateDevice裸调用、没封装、没错误检…

作者头像 李华
网站建设 2026/9/18 1:34:39

MATLAB直方图均衡化:histeq、手写算法与CLAHE对比

简介:这份文档是数字图像处理课程实验二的配套实验报告,面向高校电子信息、计算机及自动化等专业修读图像处理课程的学生,以及需要完成MATLAB图像增强实验的学习者。内容围绕直方图均衡化展开,涵盖实验目的、设备要求、图像增强原…

作者头像 李华
网站建设 2026/9/18 1:33:38

三相异步电机DTC仿真:状态闭环、离散决策与Simscape建模

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华