Windows AD 域服务器:配置域用户密码复杂度
前言
弱密码是内网最常见的安全突破口。AD 域环境下,密码策略不能直接在 OU 上设置,全局统一密码复杂度需要在【默认域策略 Default Domain Policy】中配置;
如果需要不同用户 / 不同分组差异化密码规则,需要使用精细密码策略(FGPP)。
一、密码复杂度启用后规则
开启「密码必须符合复杂性要求」,域用户密码强制满足:
- 密码长度≥最小设定值(推荐 8 位以上)
- 必须包含4 类字符中至少 3 类
- 大写英文字母 A-Z
- 小写英文字母 a-z
- 数字 0-9
- 特殊符号 !@#$%^&*() 等
- 密码不能包含用户名、姓名中连续 3 个及以上字符
- 不能使用简单连续字符串(123456、abcdef 这类直接拒绝)
二、图形界面 GPO 配置步骤
-
登录域控制器,打开【组策略管理】gpmc.msc

-
展开你的域,找到 Default Domain Policy,右键【编辑】

-
在组策略管理编辑器,依次展开路径:
计算机配置 → 策略 → Windows 设置 → 安全设置 → 账户策略 → 密码策略

这里重点配置下面几项:
| 策略 | 推荐配置 | 说明 |
|---|---|---|
| 密码必须符合复杂性要求 | 已启用 | 开启强密码校验,核心开关 |
| 密码长度最小值 | 8 | 最小字符长度,安全建议≥12 |
| 密码最短使用期限 | 1 天 | 防止用户改完密码立刻改回旧密码 |
| 密码最长使用期限 | 60 天 | 强制定期修改密码,按需调整 |
| 强制密码历史 | 记住 24 个密码 | 禁止重复使用最近用过的旧密码 |
| 用可还原的加密来储存密码 | 禁用 | 高危,默认关闭,不要开启 |
- 双击【密码必须符合复杂性要求】→ 勾选已启用,确定保存。



- 关闭组策略编辑器,强制刷新组策略,域控管理员 CMD 执行:
gpupdate /force
提示:策略不会立刻对已存在的旧密码生效;只会在用户下次修改密码的时候校验新密码。已经存在的弱密码不会被自动强制重置。
三、PowerShell 方式配置
以管理员身份打开 AD 模块 PowerShell(需要提前安装 RSAT-AD-PowerShell 模块)
查看当前域默认密码策略:
Get-ADDefaultDomainPasswordPolicy
一键启用复杂度、设置长度等参数示例:
Set-ADDefaultDomainPasswordPolicy
-ComplexityEnabled $true
-MinPasswordLength 8
-MinPasswordAge 1.00:00:00
-MaxPasswordAge 60.00:00:00
-PasswordHistoryCount 24
执行完再次 Get-ADDefaultDomainPasswordPolicy 核对参数。
四、验证策略是否生效
-
找一个域账号,尝试重置密码,测试弱密码(如 Admin123 )看是否拒绝。

-
或者在域控查看策略输出:
gpresult /r
注意:客户端电脑执行 gpupdate 只能拉策略,域密码策略校验逻辑是域控处理,不是客户端。
五、常见坑 & 排错
- ❌ 在 OU 新建 GPO 配置密码策略,不生效
全局域密码策略只能 Default Domain Policy;不同分组差异化密码,用精细密码策略 FGPP(ADAC 管理中心)。
- 修改策略后,老密码还能继续用
策略只在重置密码时校验,存量旧密码不会自动失效。如需清理弱密码,需要单独脚本扫描 + 强制用户改密。
- 用户改密码提示 “不满足密码策略”
核对长度、字符组合,检查是否包含用户名。
- 多域控环境:修改策略后,等待 AD 复制,或者手动强制复制。
六、小结
- 域全局密码复杂度,在 Default Domain Policy 开启;OU 级 GPO 不能管控域账户密码。
- 策略仅在修改密码时校验存量密码不会自动失效。
- 生产环境建议:密码最小长度≥12 位,开启复杂度,搭配账户锁定策略,提升内网安全基线。
- 大规模环境建议搭配弱密码扫描脚本,定期巡检域内弱口令账号。
浙公网安备 33010602011771号