为什么不应该恢复 6 个月前备份的 DC?

为什么不应该恢复 6 个月前备份的 DC?

为什么不应该恢复 6 个月前备份的 DC?

当我学习 Active Directory 域服务时,我在一篇博客中遇到了这个问题,但我找不到详细的答案。所以请问有人能给我解释一下这个概念吗?

答案1

Active Directory 中有一个东西tombstone lifetime。当您在 Active Directory 中删除对象时,它不会立即消失,而是会转换为墓碑,并将此信息复制到其他 DC。当达到墓碑生存期时,对象将被清除。如果您还原到删除之前的状态,并且墓碑在过期之前未复制到已还原的 DC,则该对象将保留在已还原的 DC 中,但不存在于其他 DC 中。现在您拥有不一致的数据。Server 2008 及更高版本的默认墓碑生存期为 180 天(= 6 个月)。

答案2

不仅仅是删除了对象。

让我们假设一些服务器已经配置了 IIS、证书服务器(PKI)、已经在 OU 上应用了策略、已经将委派授予一些用户、已经对一些 AD 用户完成了身份验证(如 VPN 访问)等。

所有这些更改都将被旧的 Active Directory 替换。此操作完全不可接受。

答案3

无法恢复超过 6 个月的对象的原因在于 AD 中的 2 个元素。 墓碑寿命,以及对象的相对标识符, 或者 ”消除“。

消除基本上是一个连续的数字,由“RID 主控”FSMO 角色持有者分发给域中 500 个“池”中的每个 DC。RID 成为对象安全标识符或“SID”的最后一个八位字节,SID 用于对 NTFS 文件、应用程序等的权限。因此,对象 SID 是授予对资源访问权限的关键元素。由于其安全敏感性,每个对象的 RID 值必须是唯一的。因此,创建对象的管理员无法分配 RID。Microsoft 使用 RID 主机来严格控制这些 RID。每个 DC 按顺序使用其 RIDS“池”,因此,在创建 AD 对象时,将按半连续顺序分配 RID。

...理解这一点非常重要:您无法决定您的新用户或组等将获得哪个 RID并且,出于明显的安全原因,无法更改对象的 RID/SID 值。允许管理员设置此值将会对整个 AD 基础架构中的权限工作方式造成重大安全违规。

进入墓碑寿命(又名“特莱仕“):Microsoft 的设计目的并非让您恢复对象……他们设计 TSL 是为了让域中的每个 DC 都能更新对象的已删除状态,即使该 DC 长时间处于脱机状态。60 天不够,因此在 Windows Server 2003 SP2 中,他们将其更改为 180 天。因此,当您删除对象时,它实际上并没有从目录中清除,直到达到 TSL。相反,对象被移动到已删除对象容器中,并且除了基本属性值之外的所有属性值都被从中删除。SID 是保留的“基本”属性之一。

如果你有广告回收站启用后,情况会有所不同:对象仍会移至已删除对象容器,但其所有属性都会保留(不会删除任何内容)。它会在“已删除”状态下保持这种状态 180 天,然后变为“已回收”状态,这就像原始的墓碑状态(即大多数属性值都会从对象中删除)。当您查看 AD 回收站时,会显示“已删除”对象,但“已回收”对象也在那里,只是被隐藏了。所以,“回收” = “墓碑”,并且“回收”状态下的 180 天 = 原始的“墓碑”状态下的 180 天,该状态更广为人知的术语是“墓碑生命周期”,或“TSL”。

笔记: 如果您启用了 AD 回收站,Microsoft 不建议恢复已达到“回收”状态的对象……但我已经这样做了,而且有效。我认为他们不建议这样做是因为在 AD 回收站之前恢复对象非常繁琐

还在听我讲吗?很好!:) 因此,在“已删除”、“已回收”或(原始)“墓碑”状态的整个过程中,对象都可以恢复,因为 RID(SID)仍然在墓碑对象上。使用 AD 回收站,您可以简单地恢复对象,而且根本不需要备份,因为它的所有属性都在那里。如果对象是墓碑(或“已回收”),则需要备份才能恢复所有属性。但在墓碑生命周期之后,垃圾收集过程会将对象从目录中完全清除。垃圾收集是一个内部过程,每 12 小时在每个 DC 上运行一次。现在 RID 不再存在于目录中,因此即使您在备份中有对象,Microsoft 也不会允许您将其写回,因为您无法为对象分配 RID 值。

总结一下:

  • 无法恢复早于 TSL 的对象因为 Tombstone(以及 RID)已从目录中清除,并且您无法重新引入它。
  • 如果你尝试从超过 180 天的备份中还原整个 DC,DC 将识别这一点并自动禁用入站和出站复制(并且我认为停止除管理员帐户之外的任何内容的身份验证),以便将不一致的数据(如“延迟对象”)排除在您的目录之外。

我确实希望这能有所帮助。如果是的话,请给我一些赞!:)

相关内容