最近,在项目上做AD DS的健康检查,使用到了一个装完AD DS后系统自带的工具 AD DS的最佳实践分析程序,发在博客上和各位分享下。
在Windows Server 2008 R2以后的版本中也有,本文是在Windows Server 2008 R2的AD域环境中使用的。
用法,估计大家都会用了,俺分享的主要目的是如何导出或者说是归档分析扫描的结果。
一、 AD DS BPA适用的Windows Server 2008 R2的版本
AD DS BPA可以在以下版本的 Windows Server 2008 R2 中使用,且为域控制器角色或RODS角色:
· Windows Server 2008 R2 Standard
· Windows Server 2008 R2 Enterprise
· Windows Server 2008 R2 Datacenter
二、 AD DS BPA的规则和验证的条件
以下来源于微软Technet网站。
在 Windows Server 2008 R2 中,AD DS BPA 扫描验证下列 AD DS 配置设置:
· 域名系统 (DNS) 相关规则,这些规则验证所有条件中的下列条件:
o 域控制器能够访问与之相关的 DNS 服务器并检索 DNS 记录。 (这是前提规则。)
o 域控制器的所有必要域和林主机(A 或 AAAA)资源记录均已在 DNS 中注册。
o 域控制器的所有必要 DNS 主机(A 或 AAAA)资源记录均已在 DNS 中注册了正确的 IP 地址。
o 域控制器的所有必要的站点特定和全局服务 (SRV) 资源记录均已在 DNS 中注册。
o 域控制器的必要别名 (CNAME) 资源记录已在 DNS 中注册。
· 操作主机(也称为灵活单主机操作或 FSMO)连接规则(前提规则),该规则验证下列条件:
o 域控制器可以连接到该域中的相对 ID (RID) 操作主机、基础结构操作主机和主域控制器 (PDC) 仿真器操作主机。
o 域控制器可以连接到该林中的架构操作主机和域命名操作主机。
· 操作主机角色所有权规则,该规则验证下列条件:
o 架构主机角色和域命名主机角色由林中的同一域控制器拥有。
o RID 主机角色和 PDC 仿真器主机角色由域中的同一域控制器拥有。
· 域中的控制器数目规则,用于验证下列条件:域至少拥有两个正在运行的域控制器。
三、 实例操作
实例操作的大致过程如下:
1、先运行图形界面的AD DS BPA,以扫描出结果;
2、以管理员身份运行PS,并加栽相应的BPA模块;
3、列举出当前AD域上可用的BPA模块ID;
4、从列举出的BPA模块中ID选择AD DS的模块ID;
5、获取扫描结果并转换成HTML格式。
1、在域控制器上(装有AD DS),打开服务器管理器,并导入至角色—Active Directory 域服务---摘要---最佳实践分析程序,并运行“扫描此角色”。
2、运行完后,如何取出结果呢,尤其是想导出HTML的文件,以备报告使用?这也是本文行成的真正目的所在。
(AD DS PS的使用,分为两种,一是UI的方式,一是PS的方式。本文采用UI的方式运行,PS方式归档并导出结果)
以管理员身份,打开PS,运行以下命令,以加载相关模块:
Import-Module BestPractices -Verbose
(最佳操作实践分析工具是以PowerShell模块形式实现的,因此我们在使用时首先需要加载模块)
3、获取相关模块的ID,这个是较重要的一步,一般不知道BPA有哪些模块,以及模板的名称是什么,就可以使用此命令来得到:
Get-BpaModel
(获得当前PowerShell中所有可用的最佳操作实践分析工具)
我们主要是用到"Microsoft/Windows/DirectoryServices",也就是AD DS BPA的模块ID。
4、 得到AD DS BPA的扫描结果,运行转换,使CSS文件转换成HTML文件,并保存到相应的位置:
Get-BPAResult –BestPracticesModelId "Microsoft/Windows/DirectoryServices" | ConvertTo-Html –As List –CssUri $env:windir\system32\WindowsPowerShell\v1.0\Modules\BestPractices\BestPracticesReportFormat.css > c:\dsbpa.html
5、使用IE浏览器,打开上一步中导出的HTML结果文件,就是如下图所示的内容了。
至此,也本文完成,再次提醒重点关注第3步、第4步。