1. 账户策略
账户策略只能在 域级别 链接的 GPO 中配置,影响域中所有用户。
1.1 密码策略
路径:计算机配置 → Windows 设置 → 安全设置 → 账户策略 → 密码策略
| 策略 | 推荐值 | 说明 |
|---|---|---|
| 密码最短长度 | 14 字符 | 建议 14+,防止暴力破解 |
| 密码最长使用期限 | 90 天 | 定期更换密码 |
| 密码最短使用期限 | 1 天 | 防止用户立即改回旧密码 |
| 密码必须符合复杂性 | 已启用 | 包含大小写字母、数字、特殊字符中 3 类 |
| 强制密码历史 | 24 个 | 记住最近 24 个密码 |
| 可还原的加密存储密码 | 已禁用 | 除非使用 CHAP/Digest 认证,否则禁用 |
PowerShell - 通过 GPO 配置密码策略
# 创建密码策略 GPO
New-GPO -Name "GPO-Domain-Password-Policy" -Comment "域密码策略"
# 密码最短长度 = 14
Set-GPRegistryValue -Name "GPO-Domain-Password-Policy" `
-Key "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" `
-ValueName "MinimumPasswordLength" -Type DWord -Value 14
# 链接到域级别
New-GPLink -Name "GPO-Domain-Password-Policy" `
-Target "DC=iehang,DC=cn"
1.2 账户锁定策略
| 策略 | 推荐值 | 说明 |
|---|---|---|
| 账户锁定阈值 | 5 次 | 5 次错误登录后锁定 |
| 账户锁定持续时间 | 30 分钟 | 锁定 30 分钟后自动解锁 |
| 重置计数器间隔 | 30 分钟 | 30 分钟内无错误登录则重置计数 |
2. 本地策略 — 审计策略
路径:计算机配置 → Windows 设置 → 安全设置 → 高级审核策略配置
💡 推荐启用的高级审核策略
| 审核类别 | 推荐设置 | 用途 |
|---|---|---|
| 登录/注销 | 成功 + 失败 | 追踪谁在何时登录 |
| 账户管理 | 成功 + 失败 | 追踪用户/组的创建和修改 |
| 对象访问 | 按需 | 文件/注册表访问审计 |
| 策略变更 | 成功 + 失败 | 追踪 GPO 和权限变更 |
| 特权使用 | 失败 | 追踪特权操作失败 |
| 详细追踪 | 进程创建(成功) | 安全取证时使用 |
PowerShell - 配置审核策略
# 使用 auditpol 命令配置(在 GPO 编辑器中图形界面更常用)
# 启用登录审计(成功+失败)
auditpol /set /subcategory:"Logon" /success:enable /failure:enable
# 启用账户管理审计
auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
# 查看当前审核策略
auditpol /get /category:*
3. 用户权限分配
路径:计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 用户权限分配
| 权限 | 默认持有者 | 建议调整 |
|---|---|---|
| 从网络访问此计算机 | Administrators, Users, Everyone | 移除 Everyone,仅保留需要远程访问的组 |
| 允许本地登录 | Administrators, Users | 服务器上移除 Users 组 |
| 拒绝本地登录 | 空 | 添加 Guest 账户 |
| 从远程系统强制关机 | Administrators | 保持默认 |
| 更改系统时间 | Administrators, LOCAL SERVICE | 仅保留 Administrators |
| 取得文件所有权 | Administrators | 保持默认 |
PowerShell - 配置用户权限(通过 GPO 注册表)
# 拒绝 Guest 本地登录(通过首选项注册表项)
# 更推荐在 GPO 编辑器中操作:用户权限分配 → 拒绝本地登录
# 添加 Guest 和 Domain Guests
# 查看客户端当前的用户权限分配
Get-GPResultantSetOfPolicy -Computer "Client01" -ReportType Html `
-Path "C:\Temp\CLI01-RSOP.html"
4. 安全选项
路径:计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 安全选项
| 策略 | 推荐设置 | 说明 |
|---|---|---|
| 账户:来宾账户状态 | 已禁用 | 禁用 Guest 账户 |
| 账户:使用空密码的本地账户仅限控制台登录 | 已启用 | 防止空密码远程登录 |
| 交互式登录:无须按 Ctrl+Alt+Del | 已禁用 | 强制要求安全注意序列 |
| 交互式登录:之前登录到缓存的次数 | 4(默认) | 控制离线登录缓存 |
| 网络访问:不允许 SAM 账户的匿名枚举 | 已启用 | 防止匿名用户枚举账户 |
| 关机:允许系统在未登录时关机 | 已禁用 | 防止未授权关机 |
5. 安全模板实战
安全模板是预定义的安全设置集合,可快速应用到 GPO。
CMD - 使用安全模板
REM 导出当前安全策略为模板
secedit /export /cfg C:\Temp\current-security.inf
REM 应用安全模板到本地
secedit /configure /db C:\Temp\security.sdb /cfg C:\Temp\custom-security.inf /quiet
REM 分析安全配置与模板的差异
secedit /analyze /db C:\Temp\analyze.sdb /cfg C:\Temp\custom-security.inf
💡 微软安全基线
微软为每个 Windows 版本发布 安全基线(Security Baseline),是一套经过测试的推荐安全配置。可从 Microsoft 下载中心获取,导入 GPMC 后直接应用。
6. 常见问题
Q1:修改密码策略后,已有用户的密码会被强制更改吗
不会。密码策略只影响下次更改密码时的校验。已有密码不会被追溯检查。如需强制用户更改密码,可勾选"用户下次登录时须更改密码"属性。
Q2:账户锁定策略设置后多久生效
账户锁定策略属于安全策略,默认 16 小时 刷新一次。可用 gpupdate /force 强制刷新,但安全策略刷新可能需要注销重新登录才能完全生效。
Q3:高级审核策略和基本审核策略有什么区别
基本审核策略粒度粗(如仅"对象访问"大类),高级审核策略粒度细(如"文件共享""文件系统""注册表"等子类)。启用高级审核后,基本审核的设置将被忽略。推荐使用高级审核策略。