你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在 Azure 虚拟网络中部署 AD DS

Microsoft Entra
Azure 虚拟网络

此参考体系结构展示如何将本地 Active Directory 域扩展到 Azure 以提供分布式身份验证服务。

体系结构

显示使用 Active Directory 的安全混合网络体系结构的关系图。

下载此体系结构的 Visio 文件

此体系结构 使用 VPN 网关将本地网络连接到 Azure 中显示的混合网络体系结构扩展。

Workflow

以下工作流与上图相对应:

  • 本地网络: 本地网络包括本地 Active Directory 服务器,这些服务器可以对本地组件执行身份验证和授权。

  • Active Directory 服务器: 这些服务器是实现在云中作为虚拟机(VM)运行的目录服务的域控制器。 他们可以提供在 Azure 虚拟网络中运行的组件的身份验证。

  • Active Directory 子网: Active Directory 域服务(AD DS)服务器托管在单独的子网中。 网络安全组 (NSG) 规则有助于保护 AD DS 服务器,并为来自意外源的流量提供防火墙。

  • Azure VPN 网关和 Active Directory 同步: VPN 网关提供本地网络与 Azure 虚拟网络之间的连接。 此连接可以是 VPN 连接,也可以 Azure ExpressRoute 连接。 云中的 Active Directory 服务器与本地 Active Directory 服务器之间的所有同步请求都通过该网关。 用户定义的路由处理传递给 Azure 的本地流量的路由。

组件

  • Microsoft Entra ID 是一种企业标识服务,它提供单一登录、多重身份验证和Microsoft Entra 条件访问。 在此体系结构中,Microsoft Entra ID 提供对云应用程序和服务的更安全访问。

  • VPN 网关 是一项服务,它使用虚拟网络网关通过公共 Internet 在 Azure 虚拟网络和本地位置之间发送加密流量。 在此体系结构中,VPN 网关允许 Active Directory 同步流量在环境之间更安全地流动。

  • ExpressRoute 是一项服务,可用于通过专用连接通过专用连接将本地网络扩展到 Microsoft 云,并借助连接提供商。 在此体系结构中,ExpressRoute 是 VPN 连接的替代方法,适用于需要更高带宽和较低延迟的方案。

  • 虚拟网络是 Azure 中专用网络的基本构建块。 可以使用它启用 Azure 资源(如 VM)来相互通信、Internet 和本地网络。 在此体系结构中,虚拟网络支持域复制和身份验证。

方案详细信息

如果应用程序一部分托管在本地,一部分托管在 Azure 中,则在 Azure 中复制 AD DS 可能更高效。 此复制可以减少从云发送身份验证请求回本地运行的 AD DS 实例导致的延迟。

可能的用例

当 VPN 或 Azure ExpressRoute 连接连接本地和 Azure 虚拟网络时,通常使用此体系结构。 此体系结构还支持双向复制,这意味着可以在本地或云中进行更改,并且两个源保持一致。 此体系结构的典型用途包括混合应用程序,其中功能在本地和 Azure 之间分布,以及使用 Active Directory 执行身份验证的应用程序和服务。

建议

您可以将以下建议应用于大多数场景。 除非有优先于这些建议的特定要求,否则请遵循这些建议。

VM 建议

根据预计的身份验证请求量决定 VM 大小。 使用本地托管 AD DS 的计算机的规范作为起点,并将其与 Azure VM 大小匹配。 部署应用程序后,根据 VM 上的实际负载监视使用情况并纵向扩展或缩减。 有关详细信息,请参阅 AD DS 的容量规划

创建单独的虚拟磁盘来存储 Active Directory 的数据库、日志和系统卷(sysvol)文件夹。 不要将这些项与操作系统存储在同一磁盘上。 默认情况下,数据磁盘通过使用写通缓存附加到 VM。 但是,这种形式的缓存可能会与 AD DS 的要求发生冲突。 因此,请将数据磁盘上的“主机缓存首选项”设置设为“无”。

至少部署两个将 AD DS 作为域控制器运行的 VM,并将其添加到不同的 可用性区域。 如果可用性区域在区域中不可用,请在 可用性集中部署 VM。

网络建议

为每个域控制器配置 VM 网络接口(NIC),其中包含静态专用 IP 地址,而不是使用动态主机配置协议(DHCP)。 通过将静态 IP 地址直接分配给 VM,客户端可以继续联系域控制器,即使 DHCP 服务不可用也是如此。 有关详细信息,请参阅 创建使用静态专用 IP 地址的 VM

注意

不要使用公共 IP 地址为任何 AD DS 配置 VM NIC。 有关详细信息,请参阅安全注意事项

Active Directory 子网 NSG 要求规则允许来自本地的传入流量和传出到本地的流量。 有关详细信息,请参阅 为 Active Directory 域和信任配置防火墙

如果新的域控制器 VM 也具有域名系统(DNS)服务器的角色,建议将它们配置为虚拟网络级别的自定义 DNS 服务器,如 更改 DNS 服务器中所述。 应将此配置应用于托管新域控制器和对等互连网络的虚拟网络,其中其他 VM 必须解析 Active Directory 域名。 有关详细信息,请参阅 Azure 虚拟网络中资源的名称解析

对于初始配置,可能需要调整 Azure 中某个域控制器的 NIC,以指向本地作为主 DNS 源的域控制器。

将其 IP 地址包含在 DNS 服务器列表中可提高性能并提高 DNS 服务器的可用性。 但是,如果 DNS 服务器也是域控制器,并且仅指向自身或仅指向自身进行名称解析,则可能会发生启动延迟。

出于此原因,在适配器上配置环回地址(如果服务器也是域控制器)时要谨慎。 可能需要覆盖 Azure 中的 NIC DNS 设置,以指向 Azure 中托管的另一个域控制器或主 DNS 服务器的本地。 应仅将环回地址配置为域控制器上的二级或三级 DNS 服务器。

Active Directory 站点

在 AD DS 中,站点表示一个物理位置、网络或表示设备集合。 使用 AD DS 站点将靠近彼此连接的 AD DS 对象分组,并通过高速网络进行连接,从而管理 AD DS 数据库复制。 AD DS 包含相应的逻辑来选择用于在站点之间复制 AD DS 数据库的最佳策略。

建议创建 AD DS 站点,包括为 Azure 中的应用程序定义的子网。 然后,可以在本地 AD DS 站点之间配置站点链接。 AD DS 会自动执行尽可能高效的数据库复制。 除了初始配置之外,此数据库复制不需要太多工作。

Active Directory 操作主机

可以将作主角色分配给 AD DS 域控制器,以便在复制的 AD DS 数据库实例之间检查它们时支持一致性。 五个作主机角色是架构主机、域命名主机、相对标识符主机、主域控制器主模拟器和基础结构主机。 有关详细信息,请参阅 计划作主角色放置

我们还建议至少为两个新的 Azure 域控制器提供全局目录 (GC) 角色。 有关详细信息,请参阅 计划 GC 服务器放置

监视

监视域控制器 VM 和 AD DS 的资源,并创建一个计划来快速更正任何问题。 有关详细信息,请参阅 “监视 Active Directory”。 还可以在监视服务器上安装 Microsoft Systems Center 等工具,以帮助执行这些任务。

注意事项

这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改进工作负荷质量的指导原则。 有关详细信息,请参阅 Well-Architected Framework

可靠性

可靠性有助于确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅可靠性设计评审核对清单

将运行 AD DS 的 VM 部署到至少两个 可用性区域。 如果该区域中没有可用性区域,请使用可用性集。 此外,请考虑根据要求将 备用作主机 的角色分配给至少一台服务器或多台服务器。 备用操作主机是操作主机的主动副本,在故障转移期间可以替代主操作主机服务器。

安全性

安全性提供针对故意攻击和滥用宝贵数据和系统的保证。 有关详细信息,请参阅可靠性设计审查检查表

AD DS 服务器提供身份验证服务,是攻击的诱人目标。 为了帮助保护它们,通过将 AD DS 服务器置于具有 NSG 作为防火墙的单独子网中来防止直接 Internet 连接。 关闭 AD DS 服务器上的所有端口,但身份验证、授权和服务器同步所需的端口除外。 有关详细信息,请参阅 为 Active Directory 域和信任配置防火墙

使用 BitLocker 或 Azure 磁盘加密来加密托管 AD DS 数据库的磁盘。

Azure DDoS 防护与应用程序设计最佳做法相结合,提供了增强的 DDoS 缓解功能,以帮助抵御 DDoS 攻击。 应在任何外围虚拟网络上启用 DDoS 防护

成本优化

成本优化侧重于减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅成本优化设计评审核对清单

使用 Azure 定价计算器估算成本。 Well-Architected Framework 的“成本优化”部分介绍了其他注意事项。

以下部分介绍此体系结构使用的服务的成本注意事项。

Microsoft Entra 域名服务

请考虑将 entra 域服务Microsoft为多个工作负荷使用的共享服务,以降低成本。 有关详细信息,请参阅 域服务定价

VPN 网关

VPN 网关是此体系结构的主要组件。 根据网关预配和可用时间收费。

所有入站流量都是免费的,所有出站流量都是收费的。 Internet 带宽费用适用于 VPN 出站流量。

有关详细信息,请参阅 VPN 网关定价

虚拟网络

虚拟网络是免费的。 允许每个订阅在所有区域中最多创建 1,000 个虚拟网络。 在虚拟网络边界内产生的所有流量都是免费的,因此,同一虚拟网络中两个 VM 之间的通信是免费的。

卓越运营

卓越运营涵盖了部署应用程序并使其在生产环境中保持运行的运营流程。 有关详细信息,请参阅设计卓越运营的审查清单

  • 使用基础结构作为代码做法来预配和配置网络和安全基础结构。 一个选择是 Azure 资源管理器模板

  • 隔离工作负荷,使 DevOps 能够执行持续集成和持续交付 (CI/CD),因为每个工作负荷都由其相应的 DevOps 团队关联和管理。

在此体系结构中,包含不同应用程序层、管理跳转盒和域服务的整个虚拟网络被标识为单个隔离工作负荷。

可以使用 VM 扩展和其他工具(例如 Desired State Configuration(DSC)在 VM 上配置 AD DS。

  • 请考虑使用 Azure DevOps 或任何其他 CI/CD 解决方案自动执行部署。 Azure Pipelines 是 Azure DevOps Services 的建议组件。 它为解决方案生成和部署提供自动化,并高度集成到 Azure 生态系统中。

  • 使用 Azure Monitor 分析基础结构的性能。 还可以使用它来监视和诊断网络问题,而无需登录到 VM。 Application Insights 提供丰富的指标和日志来验证基础结构的状态。

有关详细信息,请参阅 Well-Architected Framework 中的 DevOps 部分。

可管理性

执行定期 AD DS 备份。 不要只复制域控制器的虚拟硬盘(VHD)文件,因为复制 VHD 上的 AD DS 数据库文件可能不一致,这使得无法重启数据库。

不建议使用 Azure 门户关闭域控制器 VM。 相反,请从来宾操作系统进行关闭和重新启动。 如果使用 Azure 门户关闭域控制器,则会导致解除分配 VM,这会导致重启域控制器 VM 时产生以下影响:

  • 它会重置 VM-GenerationID Active Directory 存储库和 invocationID 存储库。
  • 它放弃当前 Active Directory 相对标识符 (RID) 池。
  • 它将 sysvol 文件夹标记为非授权。

第一个问题相对良性。 重复重置 invocationID 会导致复制期间出现轻微的额外带宽使用量,但这种使用并不重要。

第二个问题可能会导致域中 RID 池耗尽,尤其是在 RID 池大小配置为大于默认值时。 如果域存在很长时间,或者用于需要重复创建和删除帐户的工作流,则可能已经接近 RID 池耗尽。 最好监视 RID 池耗尽警告事件的域。 有关详细信息,请参阅 “管理 RID 颁发”。

只要在 Azure 中重启域控制器 VM 时,权威域控制器可用,第三个问题就相对良性。 如果域中的所有域控制器都在 Azure 中运行,并且它们都同时关闭并解除分配,则在重启这些域控制器时,每个域控制器都找不到权威副本。 修复此条件需要手动干预。 有关详细信息,请参阅 针对 DFSR 复制的 sysvol 复制强制权威和非授权同步

性能效率

性能效率是指工作负荷能够高效地缩放以满足用户需求。 有关详细信息,请参阅性能效率设计评审核对清单

AD DS 是为实现可伸缩性而设计的。 你不需要配置负载均衡器或流量控制器来将请求定向到 AD DS 域控制器。 唯一的可伸缩性考虑因素是配置运行 AD DS 且大小正确的 VM,以满足网络负载要求,监视 VM 上的负载,并根据需要纵向扩展或缩减。

后续步骤