Active Directory 林恢复 - 确定如何恢复林

恢复整个 Active Directory 林会涉及从可用备份还原每个域中至少一个域控制器 (DC)。 恢复林会将林中的每个域还原到上次创建受信任备份时的状态。

丢失的内容

还原操作将会导致至少丢失以下 Active Directory 数据:

  • 在上次进行受信任备份之后添加的所有对象(例如用户和计算机)
  • 自上次进行受信任备份以来对现有对象所做的所有更新
  • 自上次进行受信任备份以来对 AD DS 中的配置分区或架构分区所做的所有更改(例如架构更改)

密码知识

  1. 必须知道林中每个域的域管理员帐户密码。 最好知道内置管理员帐户的密码。
  2. 此外,必须知道 DSRM 密码才能执行 DC 的系统状态还原。

只要备份有效,最好将管理员帐户和 DSRM 密码历史记录存档到安全的位置。 也就是说,如果启用了 Active Directory 回收站,则位于墓碑生存期内或已删除对象生存期内。

还可以将 DSRM 密码与域用户帐户同步,以便更容易记住。 有关详细信息,请参阅此文章。 在准备过程中,必须先同步 DSRM 帐户,然后再恢复林。

注意

默认情况下,管理员帐户是内置管理员组的成员,域管理员和企业管理员组也是内置组。 此组可以完全控制域中的所有 DC。

确定要使用的备份

为每个域定期备份至少两个可写 DC,以便可在多个备份中进行选择。 根据需要选择一个或多个 DC,以及用于 SYSVOL 数据恢复的 PDC 仿真器操作主机。

注意

不能使用只读域控制器 (RODC) 的备份来还原可写 DC。 建议使用在故障发生之前的几天创建的备份来还原 DC。 一般情况下,必须在还原数据的新近性和安全性之间作出取舍。 选择的备份越新,能恢复的数据也就越有用,但这可能会增加将危险数据重新引入已还原林的风险。

系统状态备份的还原取决于备份的原始操作系统和服务器。 例如,不应将系统状态备份还原到其他服务器。 在这种情况下,你可能会看到以下警告:

警告

指定的备份与当前服务器不同。 不建议使用备份到备用服务器的方式执行系统状态恢复,因为该服务器可能不可用。 是否确实要使用此备份来恢复当前服务器?

如果需要将 Active Directory 还原到其他硬件,请创建完整的服务器备份并计划执行完整服务器恢复。

重要

不支持将系统状态备份还原到新硬件或相同硬件上新安装的 Windows Server。 如果在同一硬件上重新安装 Windows Server,可以按以下顺序还原域控制器:

  1. 执行完整服务器还原,以还原操作系统及所有文件和应用程序。
  2. 使用 wbadmin.exe 执行系统状态还原,以将 SYSVOL 标记为权威。

有关详细信息,请参阅如何还原 Windows 7 安装

如果失败时间未知,请进一步调查,以确定保留林的最后一个安全状态的备份。

此方法不太可取。 因此,我们强烈建议每日保留有关 AD DS 运行状况的详细日志,以便在整个林发生故障时,可以确定大致的故障时间。 还应该保留备份的本地副本以便更快地恢复。

如果启用了 Active Directory 回收站,则备份生存期等于 deletedObjectLifetime 值或 tombstoneLifetime 值,以较小者为准。 有关详细信息,请参阅 Active Directory 回收站分步指南

或者,可以使用 Active Directory 数据库装载工具 Dsamain.exe 和轻型目录访问协议 (LDAP) 工具(例如 Ldp.exe 或 Active Directory 用户和计算机)来确定哪个备份保存了林的最后安全状态。 Windows Server 操作系统中包含的 Active Directory 数据库装载工具会将备份或快照中存储的 Active Directory 数据公开为 LDAP 服务器。 你可以使用 LDAP 工具浏览这些数据。 此方法的优点是无需以目录服务还原模式 (DSRM) 重启任何 DC 即可检查 AD DS 备份内容。

有关使用 Active Directory 数据库装载工具的详细信息,请参阅 Active Directory 数据库装载工具分步指南

还可以使用 ntdsutil snapshot 命令创建 Active Directory 数据库的快照。 通过计划一个任务来定期创建快照,可以不断地获得 Active Directory 数据库的更多副本。 可以使用这些副本来更好地识别全林故障的发生时间,然后选择最佳备份进行还原。 要创建快照,请使用 ntdsutil 或远程服务器管理工具 (RSAT)。

目标 DC 可以运行任何版本的 Windows Server。 有关使用 ntdsutil snapshot 命令的详细信息,请参阅快照

确定要还原的域控制器

在确定要还原哪个域控制器时,还原过程的简便性是一个重要考虑因素。 建议为每个域设置一个专用 DC,以将其作为还原的首选 DC。 使用专用还原 DC 可以更轻松可靠地规划和执行林恢复,因为使用的源配置与用于执行还原测试的配置相同。 你可以编写恢复脚本,并避免与不同的配置发生冲突,例如 DC 是否持有操作主机角色,或者它是 GC 还是 DNS 服务器。

注意

不建议出于简单的原因而还原操作主机角色持有者,因为你会始终获取所有角色。 存在使用从 PDC 仿真器操作主机获得的备份进行 SYSVOL 恢复的情况,因为 PDC 通常具有 SYSVOL 数据的最佳副本。

良好的备份是可以成功还原的,在故障发生之前的几天创建的,并且包含尽可能多的有用数据的备份。 选择最符合以下条件的 DC:

  • 可写入的 DC。 必须设置此项。

  • 在支持 VM-GenerationID 的虚拟机监控程序上将 Windows Server 2012 或更高版本作为虚拟机运行的 DC。 该 DC 可用作克隆源。 一般情况下,请使用具有最新 OS 的良好备份的 DC。

  • 可以通过物理方式或者在虚拟网络上访问的 DC,最好定位在数据中心。 这样,便可以在林恢复期间轻松地将此 DC 与网络隔离。

  • 具有良好完整服务器备份的 DC。

  • 运行域名系统 (DNS) 角色并托管林和域区域的 DC。

  • 配置为全局目录 (GC) 的 DC。

  • 如果使用 Windows 部署服务,则为配置为使用 BitLocker 网络解锁的 DC。 不支持在林恢复期间将 BitLocker 网络解锁用于从备份还原的第一个 DC。 在已部署 Windows 部署服务 (WDS) 的 DC 上,无法使用 BitLocker 网络解锁作为唯一密钥保护程序,因为第一个 DC 需要 Active Directory 和 WDS 才能解锁。 在还原第一个 DC 之前,Active Directory 对于 WDS 尚不可用,因此无法解锁。

    若要确定 DC 是否配置为使用 BitLocker 网络解锁,请检查以下注册表项中是否标识了网络解锁证书:

    HKEY_LOCAL_MACHINESoftwarePoliciesMicrosoftSystemCertificatesFVE_NKP

重要

在处理或还原包含 Active Directory 的备份文件时保持遵循安全过程。 林恢复所带来的紧迫感可能会使你无意中疏忽安全最佳做法。

确定当前的林结构和 DC 功能

通过识别林中的所有域来确定当前林结构。 创建每个域中所有 DC 的列表,尤其是具有备份的 DC,以及可用作克隆源的虚拟化 DC。

林根域的 DC 列表最为重要,因为你将首先恢复该域。 还原林根域后,可以使用 Active Directory 管理单元获取林中其他域、DC 和站点的列表。

对于林中的每个域,请确定一个可写 DC,该 DC 具有该域的 Active Directory 数据库的受信任备份。 选择用于还原 DC 的备份时请小心。 如果失败的日期和原因是已知的,则一般建议确定并使用在该日期之前几天创建的备份。

准备一个表用于显示域中每个 DC 的功能,如以下示例所示。 这有助于在恢复后还原到林的故障前配置。

DC 名称 操作系统 FSMO GC RODC 备份 DNS Server Core VM
DC_1 Windows Server 2019 架构主机、域命名主机 No No
DC_2 Windows Server 2019 No No
DC_3 Windows Server 2022 结构主机 No No
DC_4 Windows Server 2022 PDC 仿真器、RID 主机 No No No
DC_5 Windows Server 2022 No No
RODC_1 Windows Server 2016
RODC_2 Windows Server 2022 No

上面的示例中存在四个备份候选项:DC_1、DC_2、DC_4 和 DC_5。 你只会还原在这些备份候选项中的一个。 建议的 DC 为 DC_5,原因如下:

  • 它是虚拟化 DC 克隆的良好数据源,因为它以虚拟 DC 的形式运行 Windows Server 2022 并运行允许克隆的软件(或者如果无法克隆则可以移除的软件)。 还原后,该服务器将占有 PDC 仿真器角色,并且可将此角色添加到域的可克隆域控制器组。
  • 它可运行完整的 Windows Server 2022 安装。 运行服务器核心安装的 DC 不是很方便用作恢复目标。 如果擅长使用命令行接口管理 Windows Server,这可能不是一个考虑因素。
  • 它是一个 DNS 服务器。

注意

由于 DC_5 不是全局目录服务器,因此它还有一个优点,即在还原后无需移除全局目录。 但你需要使用 Rid 500 的默认管理员帐户开始恢复,或使用注册表值 ignoregcfailures

Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Value: IgnoreGCFailures
Type: REG_DWORD
Data: 0 – Require GlobalCatalog for logon (default)
1 – Allow logon without groups from GC

与移除 GC 角色的额外步骤相比,其他因素通常更为重要。 DC_3 或 DC_4 也是不错的选择,因为它们的操作主机角色不是问题。 请考虑这些选项,并根据实际恢复情况进行选择。 通常可以通过还原 PDC 操作主机备份来进行规划和测试,但如果此备份不起作用(例如因为它来自错误的时间),请从同一域的 GC 中选取备份。

恢复隔离的林

首选方案是将在第一个已还原的 DC 重新引入生产环境之前,关闭所有可写 DC。 这可以确保不会将任何有风险的数据复制回已恢复的林中。 关闭所有操作主机角色持有者特别重要。

注意

在某些情况下,你可能会将你要为每个域恢复的第一个 DC 移动到隔离网络中,同时允许其他 DC 保持联机,以最大程度地减少系统停机时间。 例如,如果你正在从架构升级失败后恢复,则可以选择让域控制器继续在生产网络上运行,同时单独执行恢复步骤。

虚拟化 DC

如果你正在运行虚拟化 DC,则可以将其移动到与要从中执行恢复的生产网络隔离的虚拟网络。 将虚拟化 DC 移动到独立网络可以获得两个好处:

  • 已恢复的 DC 无法重现导致林恢复的问题。
  • 可以在独立网络上执行虚拟化 DC 克隆,以便可以先运行和测试关键数量的 DC,然后再将其重新引入生产网络。

物理 DC

如果在物理硬件上运行 DC,请断开连接你要在林根域中还原的第一个 DC 的网线。 如果可能,还应该断开连接所有其他 DC 的网线。 这可以防止 DC 在林恢复过程中意外启动的情况下 DC 进行复制。

大型林

在分散于多个位置的大型林中,可能难易保证关闭所有可写 DC。 出于此原因,恢复步骤(例如重置计算机帐户和 krbtgt 帐户,以及元数据清理)旨在确保恢复的可写 DC 不会与有风险的可写 DC 相互复制数据(以防某些 DC 仍在林中保持联机)。

但是,只有使可写 DC 脱机,才能保证不会发生复制。 因此,应该尽可能部署远程管理技术,以帮助在林恢复期间关闭和物理隔离可写 DC。

RODC

RODC 可以在可写 DC 脱机时继续运行。 任何其他 DC 都不会直接从任何 RODC 复制任何更改(尤其不会复制任何架构或配置容器更改),因此它们在恢复期间不会形成与可写 DC 相同的风险。 在恢复所有可写 DC 并将其联机后,应重新构建所有 RODC。

在并行执行恢复操作时,RODC 将继续允许访问其各自站点中缓存的本地资源。 未缓存在 RODC 上的本地资源会将身份验证请求转发到可写 DC。 这些请求将会失败,因为可写 DC 已脱机。 在恢复可写 DC 之前,某些操作(例如密码更改)也将不起作用。

如果使用中心辐射型网络体系结构,则你可以首先集中精力恢复中心站点中的可写 DC。 然后,可以在远程站点中重新构建 RODC。

被盗用的 AD 数据库

如果可写 DC 的 AD 数据库被盗用,则应在恢复后创建新的 KDS 根密钥,并且应根据被盗用情况重新创建所有组托管服务帐户 (gMSA)。 有关详细信息,请访问此处:如何从黄金 gMSA 攻击中恢复

后续步骤