Active Directory实验室构建脚本
今年夏天,我重建了包含多个区域域的Active Directory实验室环境。为了避免手动配置常见问题,我决定创建一个PowerShell脚本来自动化这一过程。
脚本功能概述
我的Invoke-ADLabBuildOut脚本具备以下核心功能:
组织单元管理
- 创建顶级组织单元(OU)
- 创建分支机构组织单元
账户安全管理
- 重命名默认域管理员账户
- 创建AD实验室用户账户
- 创建AD实验室管理员账户
- 创建AD实验室服务账户
- 创建AD实验室组托管服务账户(gMSA)
计算机对象管理
- 创建AD实验室Windows工作站
- 创建AD实验室Windows服务器
- 创建AD实验室计算机账户
高级安全配置
- 创建AD实验室精细密码策略
- 在默认域管理员账户上设置SPN
- 随机化管理员组成员资格
- 随机化服务账户在管理员组中的成员资格
- 向随机用户AD属性添加密码
- 配置Kerberos委派
- 将计算机账户添加到管理员组
- 设置阻止GPO继承的组织单元
技术实现
该PowerShell脚本基于Active Directory PowerShell模块开发,可通过GitHub仓库获取完整代码: https://github.com/PyroTek3/ADLab
该工具特别适用于Active Directory安全测试、实验室环境搭建和AD管理学习场景。