最近,在项目上做Windows Server 2008 R2 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 �CBestPracticesModelId "Microsoft/Windows/DirectoryServices" | ConvertTo-Html �CAs List �CCssUri $env:windir\system32\WindowsPowerShell\v1.0\Modules\BestPractices\BestPracticesReportFormat.css > c:\dsbpa.html
5、使用IE浏览器,打开上一步中导出的HTML结果文件,就是如下图所示的内容了。
至此,也本文完成,再次提醒重点关注第3步、第4步。