为本地配置 Microsoft Entra 密码保护
当您想要保护组织免受弱用户密码的侵害时,Microsoft Entra 密码保护非常出色。这是因为 Microsoft 不断分析 Microsoft Entra 安全遥测数据,寻找常用的弱密码或泄露密码,并维护一份全球禁止的密码列表。在本文中,您将了解如何为本地 Active Directory 配置和启用 Microsoft Entra 密码保护,以防止在组织中使用弱密码。
介绍
在 Active Directory 中,您可以启用 GPO,以帮助您在组织中实施强密码,例如:
这并不意味着您可以保护组织免受攻击,因为管理员和用户可以创建弱密码(称为众所周知的密码),这是您不想要的!
用户每天使用的众所周知的密码有数千个。一些众所周知的密码是:
- 欢迎01!
- P@ssw0rd1234
- 法拉利红!@
此时,Microsoft Entra 密码保护是部署在 Microsoft Entra ID 和本地 AD 中的一项出色功能。那么让我们更多地了解一下这一点。
许多安全准则建议您不要在多个地方使用相同的密码,不要使其变得复杂,并避免使用像Password123这样的简单密码。您可以为用户提供有关如何选择密码的指导,但仍然经常使用弱密码或不安全的密码。
Microsoft Entra 密码保护可检测并阻止已知的弱密码及其变体。它还可以阻止特定于您的组织的其他弱术语。
Microsoft Entra 密码保护许可证
请参阅下表了解 Microsoft Entra 密码保护许可。
| 用户 | 具有全球禁止密码列表的 Microsoft Entra 密码保护 | 具有自定义禁止密码列表的 Microsoft Entra 密码保护 |
|---|---|---|
| 仅云用户 | Microsoft Entra ID 免费 | Microsoft Entra ID P1 或 P2 |
| 从本地 AD DS 同步的用户 | Microsoft Entra ID P1 或 P2 | Microsoft Entra ID P1 或 P2 |
您需要 Microsoft Entra ID P1 或 P2 才能使从本地 Active Directory 域服务 (AD DS) 同步的用户正常工作。
Microsoft Entra 密码保护图
下图显示了 Microsoft Entra 密码保护的基本组件如何在本地 Active Directory 环境中协同工作。
- 用户请求域控制器更改密码。
- 这DC Agent密码过滤dll接收来自操作系统的密码验证请求并将其转发到Microsoft Entra 密码保护 DC 代理服务,安装在DC上。然后,该代理验证密码是否符合本地存储的密码策略。
- DC 上的代理每 1 小时通过SCP(服务连接点)在森林中Microsoft Entra 密码保护代理服务从 Microsoft Entra ID 下载新的密码策略副本。
- DC上的Agent通过代理服务从Microsoft Entra接收新的密码策略版本,并将其存储在西斯沃尔,使这个新策略能够复制到同一域中的所有其他 DC。
Microsoft Entra 密码保护策略存储在 Sysvol 中。
如何配置 Microsoft Entra 密码保护
在为本地 Active Directory 启用 Microsoft Entra 密码保护之前,我们将执行以下步骤并确保一切就绪。
启用 Microsoft Entra 密码写回
请阅读文章中的更多信息:启用自助服务密码重置。
确保您看到消息“您的本地写回客户端已启动并正在运行”,并且启用“为同步用户启用密码写回”功能。
下载 Microsoft Entra 密码保护所需的软件
本地 Microsoft Entra 密码保护部署需要两个安装程序:
- Microsoft Entra 密码保护代理 (AzureADPasswordProtectionProxySetup.msi)
- Microsoft Entra 密码保护 DC 代理 (AzureADPasswordProtectionDCAgentSetup.msi)
从以下位置下载两个安装程序微软下载中心。
现在我们已经拥有了所需的安装程序,我们可以进入下一步。
Microsoft Entra 密码保护代理服务先决条件
以下要求适用于 Microsoft Entra 密码保护代理服务:
- Windows Server 2012 R2 或更高版本。
- 已安装.NET 4.7.2或更高。
- 不要安装在 RODC(只读域控制器)上。
- 允许出站 TLS 1.2 HTTP 流量。
- 首次在给定租户中注册 Microsoft Entra 密码保护代理服务时需要全局管理员帐户。
- 对终结点的网络访问:https://login.microsoftonline.com、https://enterpriseregistration.windows.net 和 https://autoupdate.msappproxy.net。
Microsoft Entra 密码保护代理服务是否自动升级。自动升级使用 Microsoft Entra Connect Agent Updater 服务,该服务与代理服务同时安装。
安装和配置 Microsoft Entra 密码保护代理服务
在本地 AD DS 环境中的成员服务器上安装 Microsoft Entra 密码保护代理服务。此外,您还可以使用专用的成员服务器来提供代理服务。安装后,Microsoft Entra 密码保护代理服务将与 Microsoft Entra ID 进行通信,以维护 Microsoft Entra 租户的全局和客户禁止密码列表的副本。
笔记:不要在域控制器 (DC) 或只读域控制器 (RODC) 上安装代理服务。
我们建议每个林至少有两个 Microsoft Entra 密码保护代理服务器以实现冗余。在我们的示例中,我们将其安装在成员服务器 AP-01(应用程序服务器)上。
将 AzureADPasswordProtectionProxySetup.msi 放入C:安装文件夹。然后,运行命令提示符以管理员身份启动安装程序 AzureADPasswordProtectionProxySetup.msi。
C:InstallAzureADPasswordProtectionProxySetup.msi
完成 Microsoft Entra 密码保护代理捆绑包设置。完成后,单击关闭。
验证 Microsoft Entra 密码保护代理是否出现在程序和功能。
以管理员身份运行 Windows PowerShell(64 位)。导入模块 AzureADPasswordProtection。
Import-Module AzureADPasswordProtection
检查 Microsoft Entra 密码保护代理服务是否正在运行。
Get-Service AzureADPasswordProtectionProxy | fl
结果显示地位跑步。
Name : AzureADPasswordProtectionProxy
DisplayName : Azure AD Password Protection Proxy
Status : Running
DependentServices : {}
ServicesDependedOn : {SAMSS, KEYISO, RPCSS}
CanPauseAndContinue : False
CanShutdown : False
CanStop : True
ServiceType : Win32OwnProcess
代理服务正在计算机上运行,但没有与 Microsoft Entra ID 通信的凭据。使用您的全局管理员凭据向 Microsoft Entra ID 注册 Microsoft Entra 密码保护代理服务器。在每个 Microsoft Entra 密码保护代理服务器上执行此操作。
笔记:首次运行下面的 cmdlet 后可能会出现明显的延迟。除非报告失败,否则不必担心这种延迟。
Register-AzureADPasswordProtectionProxy -AccountUpn '[email protected]'
通过使用 Register-AzureADPasswordProtectionForest PowerShell cmdlet,使用必要的凭据注册本地 Active Directory 林,以便与 Microsoft Entra ID 进行通信。
笔记:如果您的环境中安装了多个 Microsoft Entra 密码保护代理服务器,则使用哪个代理服务器来注册林并不重要。此步骤在每个林中运行一次。
该 cmdlet 需要 Microsoft Entra 租户的全局管理员或安全管理员凭据。它还需要本地 Active Directory 企业管理员权限。您还必须使用具有本地管理员权限的帐户运行此 cmdlet。用于注册林的 Microsoft Entra ID 帐户可能与本地 Active Directory 帐户不同。
笔记:首次运行下面的 cmdlet 后可能会出现明显的延迟。除非报告失败,否则不必担心这种延迟。
Register-AzureADPasswordProtectionForest -AccountUpn '[email protected]'
验证代理服务是否正常。
Test-AzureADPasswordProtectionProxyHealth -TestAll
结果显示全部为通过。
DiagnosticName Result AdditionalInfo
-------------- ------ --------------
VerifyTLSConfiguration Passed
VerifyProxyRegistration Passed
VerifyAzureConnectivity Passed
Microsoft Entra 密码保护审核模式
在继续下一步并安装 Microsoft Entra 密码保护 DC 代理服务之前,请验证 Microsoft Entra 密码保护是否设置为审核模式。默认情况下,它设置为审核模式。
笔记:如果 Microsoft Entra 密码保护设置为审核模式,则只会记录该尝试(事件日志)。
登录到微软 Entra 管理中心。导航至保护 > 身份验证方法 > 密码保护。另一种方法是在顶部搜索密码保护。
我们建议启用强制自定义列表功能并添加公司名称。确保模式审计是活跃的。点击节省。
Microsoft Entra 密码保护 DC 代理先决条件
以下要求适用于 Microsoft Entra 密码保护 DC 代理:
- Windows Server 2012 R2 或更高版本。
- 已安装.NET 4.7.2或更高。
- 不要安装在 RODC(只读域控制器)上。
- 用于 sysvol 复制的分布式文件系统复制 (DFSR)。如果您的域尚未使用 DFSR,则必须先从 RFS(文件复制系统 - DFSR 的前身)迁移到 DFSR,然后再安装 Microsoft Entra 密码保护。
Microsoft Entra 密码保护 DC 代理不自动升级。相反,手动升级是通过运行最新版本的 AzureADPasswordProtectionDCAgentSetup.msi 软件安装程序来完成的。该软件的最新版本可在微软下载中心。
安装 Microsoft Entra 密码保护 DC 代理服务
在上安装 Microsoft Entra 密码保护 DC 代理服务本地域控制器。在我们的示例中,组织中只有一个域控制器。
将 AzureADPasswordProtectionDCAgentSetup.msi 放入C:安装域控制器上的文件夹。然后,运行命令提示符以管理员身份启动安装程序 AzureADPasswordProtectionDCAgentSetup.msi。
C:installAzureADPasswordProtectionDCAgentSetup.msi
完成安装向导并单击结束。
点击是的重新启动域控制器。如果环境中只有一台 DC,请安排重新启动。
验证 Microsoft Entra 密码保护 DC 代理是否显示在程序和功能。
以管理员身份运行 Windows PowerShell(64 位)。检查哪些域控制器上安装了 Microsoft Entra 密码保护 DC 代理。
Get-AzureADPasswordProtectionDCAgent
所有信息都出现在输出中。
ServerFQDN : DC01-2022.exoip.local
SoftwareVersion : 1.2.177.1
Domain : exoip.local
Forest : exoip.local
PasswordPolicyDateUTC : 4/16/2024 5:32:02 PM
HeartbeatUTC : 4/16/2024 5:30:59 PM
AzureTenant : exoip.com
验证 DC 代理是否正常。
Test-AzureADPasswordProtectionDCAgentHealth -TestAll
结果显示全部为通过。
DiagnosticName Result AdditionalInfo
-------------- ------ --------------
VerifyPasswordFilterDll Passed
VerifyForestRegistration Passed
VerifyEncryptionDecryption Passed
VerifyDomainIsUsingDFSR Passed
VerifyAzureConnectivity Passed
验证 Microsoft Entra 密码保护审核模式
为本地 Active Directory 启用 Microsoft Entra 密码保护审核模式后,重置或更改密码时将注册一个事件。例如,它将显示管理员、帮助台或用户设置的新密码是否被拒绝或接受。
查看它的运行情况并验证它是否正常工作。让我们在 Active Directory 中为测试用户重置密码。首先,创建一个强密码。之后,再次重置密码,但这次使用弱密码。
推荐阅读:安装和配置 Microsoft Entra Cloud Sync
Microsoft Entra 密码保护 DC 代理事件日志
开始事件查看器在域控制器上。导航至应用程序和服务日志 > Microsoft > AzureADPasswordProtection > DCAgent > 管理。
Microsoft Entra ID 密码策略拒绝密码
当 Microsoft Entra ID 拒绝密码时,会显示事件 ID 10025和事件 ID 30009。
事件 10025,DCAgent
指定用户的重置密码通常会被拒绝,因为它不符合当前的 Azure 密码策略。当前的 Azure 密码策略配置为仅审核模式,因此密码已被接受。请参阅相关事件日志消息以了解更多详细信息。
事件 30009,DCAgent
指定用户的重置密码通常会被拒绝,因为它至少与当前 Azure 密码策略的 Microsoft 全局禁止密码列表中存在的令牌之一匹配。当前的 Azure 密码策略配置为仅审核模式,因此密码已被接受。
Microsoft Entra 密码策略接受密码
当 Microsoft Entra ID 验证密码合规时,它将显示事件 ID 10015。
事件 10015,DCAgent
指定用户的重置密码已验证为符合当前 Azure 密码策略。
Microsoft Entra 密码保护摘要报告
获取摘要报告,显示有多少个新密码集已验证以及有多少个新密码集已验证失败。
Get-AzureADPasswordProtectionSummaryReport
出现输出。
DomainController : DC01-2022.exoip.local
PasswordChangesValidated : 0
PasswordSetsValidated : 4
PasswordChangesRejected : 0
PasswordSetsRejected : 0
PasswordChangeAuditOnlyFailures : 0
PasswordSetAuditOnlyFailures : 3
PasswordChangeErrors : 0
PasswordSetErrors : 0
下一步(也是最后一步)是从审核模式切换到强制模式。
实施 Microsoft Entra 密码保护
登录到微软 Entra 管理中心。导航至保护 > 身份验证方法 > 密码保护。另一种方法是在顶部搜索密码保护。
笔记:如果设置为“强制”,将阻止用户设置禁止的密码,并且将记录该尝试。
启用模式执行。点击节省。
在所有域控制器上重新启动 Microsoft Entra 密码保护 DC 代理。
重要的:要立即应用更改,请重新启动所有域控制器上的 DC 代理。
验证 Microsoft Entra 密码保护强制模式
前往Active Directory 用户和计算机并将用户密码更改为弱密码或泄露密码。点击后好的,出现以下错误消息:
活动目录域服务
Windows 无法完成 Ruth Dickens 的密码更改,因为:
密码不符合密码策略要求。检查最短密码长度、密码复杂性和密码历史记录要求。
您已成功为本地 Active Directory 设置 Microsoft Entra 密码保护。
结论
您了解了如何为本地 Active Directory 配置 Microsoft Entra 密码保护。首先,按照以下步骤在审核模式下配置 Microsoft Entra 密码保护。然后,在一切就绪并且您感到满意后,从审核模式切换到强制模式。
适用于本地的 Microsoft Entra 密码保护使用存储在 Microsoft Entra ID 中的相同全局和自定义禁止密码列表,并对本地密码更改执行与 Microsoft Entra ID 对基于云的更改所做的相同检查。
如果您没有 Microsoft Entra 租户(云)并且只有本地环境,请按照如何保护 Active Directory 密码免遭泄露一文中的步骤操作。此配置将使用“我是否被破解”密码列表来保护本地免受弱密码、泄露密码和众所周知的密码的影响。
您喜欢这篇文章吗?您可能还喜欢升级 Microsoft Entra Connect。不要忘记关注我们并分享这篇文章。
