none
使用AGPM扩展GPMC对组策略的管理 RRS feed

  • 常规讨论

  • 一. AGPM介绍

    1. 我们知道组策略(Group Policy)是活动目录(Active Directory)中最重要的功能之一,在日常的活动目录管理工作中,如何能高效地配置和管理组策略是每一个管理员所要解决的重要问题。通常我们会使用组策略管理控制台(Group Policy Management Console, GPMC)来进行日常的组策略管理工作。尽管GPMC是一款高效的组策略管理工具,但仍然有一些缺陷。在组策略对象(GPO)数量、变更以及所需的管理员很少时,GPMC能有效的帮助管理员管理组策略。但是在一些复杂的情况下,比如频繁变更GPO,有多位管理员需要维护GPO时,GPMC的缺陷就体现出来了,因为它无法管理、控制和追踪多位管理员所做的更改。结果就是导致风险的增加,比如做了一些不必要的更改,并且很难追踪是哪位管理员做了这个更改。为了解决这些问题并且为GPO提供全面的更改控制和改进的管理方法,微软推出了高级组策略管理(Advanced Group Policy Management, AGPM) 来拓展GPMC的功能。

    2. AGPM采用了客户机/服务器(C/S)体系结构。 AGPM服务器组件安装在域控制器(DC)或成员服务器(Member Server)上,并通过AGPM服务来管理其档案。如果需要的话,AGPM存档可以存放在不同的计算机上而不是AGPM服务器组件安装的机器上。 AGPM客户端组件安装在域控制器,成员服务器或工作站上,并在该计算机上扩展组策略管理控制台(GPMC)的功能。如果AGPM客户端与AGPM服务器是在不同的计算机上,则这两个组件通过防火墙的4600端口进行通信,如下图所示。

    使用 AGPM 可以执行以下任务:
    •脱机编辑GPO,以便在创建 GPO 并将其部署到生产环境之前对其进行测试。
    •在AGPM存档中维护多个版本GPO,以便出现问题时可以回滚。
    •使用基于角色的委派控制,能给多人提供编辑GPO的权限。
    •消除了多个管理员使用 GPO 的签入和签出功能覆盖彼此所做工作的危险。
    •使用 GPO 模板简化创建新 GPO 的过程,存储通用策略设置和首选项设置以用作新 GPO 的起点。
    •在AGPM档案中搜索和过滤特定的GPO版本。
    •允许管理员降GPO导出,以便将其从测试环境复制到生产环境中 (AGPM 4.0)。

    二. AGPM的安装

    1. AGPM现有的有效版本主要有三个,分别是:AGPM 2.5, AGPM 3.0, and AGPM 4.0。三个版本间互补兼容并且对不同版本Windows操作系统有要求。本实例中基于AGPM4.0版本做介绍。AGPM4.0在多版本操作系统混合环境中会有一些应用限制,如下表所示:

    运行 AGPM Server 4.0 的操作系统

    运行AGPM Client 4.0 的操作系统

    AGPM 4.0 支持状态

    Windows Server 2008 R2 Windows 7

    Windows Server 2008 R2 Windows 7

    支持

    Windows Server 2008 R2 Windows 7

    Windows Server 2008 或带 SP1 Windows Vista

    支持,但无法编辑仅存在于 Windows Server 2008 R2 Windows 7 中的策略设置或首选项

    Windows Server 2008 或带 SP1 Windows Vista

    Windows Server 2008 R2 Windows 7

    不支持

    Windows Server 2008 或带 SP1 Windows Vista

    Windows Server 2008 或带 SP1 Windows Vista

    支持,但无法报告或编辑仅存在于 Windows Server 2008 R2 Windows 7 中的策略设置或首选

    AGPM 服务器要求:
    AGPM Server 4.0 要求系统版本为 Windows Server 2008 R2、Windows Server 2008、Windows 7 和 Windows Vista SP1,并且安装有远程服务器管理工具 (RSAT) 中的 GPMC。支持 32 位和 64 位版本。
    只有 Domain Admins 组中的成员能安装AGPM,并且需要具有以下 Windows 功能:
    • GPMC
    • Windows Server 2008 R2 或 Windows Server 2008:如果没有 GPMC,AGPM 会在安装过程中自动安装。
    • Windows 7和Windows Vista SP1: 在安装 AGPM 之前,必须先安装 RSAT 中的 GPMC。

    • .NET Framework 3.5 或更高版本


    AGPM 服务器必须使用下列 Windows 功能(如果不具备这些功能,则会自动安装):
    • WCF 激活;非 HTTP 激活
    • Windows 进程激活服务
    • 进程模型
    • .NET 环境
    • 配置 API

    AGPM 客户端要求:
    AGPM Server 4.0 要求系统版本为 Windows Server 2008 R2、Windows Server 2008、Windows 7 和 Windows Vista SP1,并且安装有远程服务器管理工具 (RSAT) 中的 GPMC。支持 32 位和 64 位版本。AGPM 客户端可以安装在运行 AGPM 服务器的计算机上。
    AGPM 客户端必须使用下列 Windows 功能(除非另有说明,否则如果不具备这些功能,则会自动安装):
    • GPMC
    • Windows Server 2008 R2 或 Windows Server 2008:如果不具备 GPMC,AGPM 将自动安装该功能。
    • Windows 7和Windows Vista SP1: 在安装 AGPM 之前,必须先安装 RSAT 中的 GPMC。

    • .NET Framework 3.0 或更高版本


    2. AGPM Server和AGPM Client的安装

    在本文中,我们将在域abc.com中名为DC01的域控制器上安装AGPM Server 。在DC01中插入最新版本的微软桌面优化套件(MDOP) 2012并选择安装AGPM Server 4.0版本。如下图。

    打开AGPM安装向导,在选择同意许可协议后选择AGPM Server组件的安装路径和AGPM存档的位置。

    然后,向导会要求我们选择AGPM service所运行的账户。因为我们是将AGPM组件安装在DC上,因此,我们在这里选择Local System。

    接下来,我们需要选择AGPM存档的所有者,我们在这里选择默认的域管理员账户Administrator。
    然后向导会要求我们打开服务器防火墙的4600端口。如果我们选择在另一台机器上安装AGPM Client组件的话,我们必须打开这个端口。然后根据提示完成安装过程。

    同时,我们选择在一台名为Win 7的32位Windows 7上安装AGPM Client组件。在安装之前,我们必须首先安装远程服务器管理工具(RSAT)中的GPMC。我们可以从以下地址下载此工具。

    Remote Server Administration Tools for Windows 7 with Service Pack 1 (SP1)

    http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=7887

    与安装AGPM Server组件相同, 我们需要在此机器上插入MDOP 2012光盘,并且选择对应版本的AGPM Client组件进行安装。

    三. AGPM的具体使用

    1. AGPM的配置

    1.1. 对域中GPO获取控制权限

    安装完AGPM Server和AGPM Client组建后,我们首先需要对对现有环境进行一些配置。我们在进行这些配置时使用默认的域管理员Administrator账户, 因为在安装过程中我们指定这个账户为AGPM存档的所有者。

    首先我们应该对获取对域中现有GPO的控制。我们知道AGPM将域中所有的GPO划分为未控制(Uncontrolled)和已控制(Controlled)两种类型。 Uncontrolled GPO 是指在SYSVOL中存在但并未被AGPM管理的GPO,我们只能使用GPMC对这类GPO进行传统的管理。而Controlled GPO是指存在于SYSVOL和AGPM存档中的GPO类型,我们可以使用AGPM进行管理。两种类型的GPO分别位于GPMC右侧Content标签下的Uncontrolled和Controlled标签中。 如下图所示。

    如果要对未受AGPM控制的GPO获取控制权限,我们可以在Uncontrolled标签下右键单击相应的GPO,并选择Control按钮来获取控制。此时会弹出Control GPO对话框,单击OK获取对这些GPO的控制。完成后在Controlled标签中将会显示出以获取控制权限的GPO。如下图所示。


    1.2. 配置AGPM Server连接

    在AGPM Server标签中,我们可以手动指定AGPM Server的连接。如果我们在安装AGPM Client过程中已经完成了这项配置,则无需重复配置。如果在安装时没有正确配置或者需要更改AGPM连接的防火墙端口或者需要连接一台不同的AGPM Server时我们需要在这里重新配置。如下图所示。

    另外,如果域中有多位AGPM管理员,而且都在各自相应的计算机中安装了AGPM Client,我们可以通过在组策略中配置以下设置来为他们指派默认的AGPM Server。

    User Configuration\Policies\Administrative Templates\Windows Components\AGPM\AGPM: Specify default AGPM Server (all domains)

    如果林中有多个域, 我们可以通过以下组策略设定为指定域设置特定的AGPM Server。

    User Configuration\Policies\Administrative Templates\Windows Components\AGPM\AGPM: Specify AGPM Servers。

    1.3. 配置AGPM存档中GPO版本的数量限制

    默认情况下,AGPM会保存已获取了控制权限的GPO的每一个版本,这将会占用大量的硬盘空间并且给管理员增加了筛选GPO版本的工作量。我们可以在AGPM Server标签下,选择是否删除旧的GPO版本,并限制所保存的GPO版本数量。如图所示。

    1.4. 配置生产委托

    我们可以在Production Delegation标签下来为相应的组和用户委派指定的权限,来限制用户是否能够访问Controlled GPO。

    1.5. 委派AGPM角色和设置批准请求邮件

    前面我们已经提到,AGPM是基于角色的委派控制, AGPM预定义了以下四种角色:

    Full Control

    可以进行任何AGPM管理工作

    Approver

    可以创建,删除,部署Controlled GPO到生产环境

    Editor

    可以将Controlled GPOAGPM存档中签出,在编辑完成后再次签入

    Reviewer

    可以查看GPO设置

    在Domain Delegation标签中,我们可以点击ADD按钮为特定的用户或者用户组指派不同的角色。如图所示。

    在Domain Delegation标签上部,我们可以设置批准请求邮件的相关内容。 当创建一个新的Controlled GPO或者将GPO部署到生产环境中时,AGPM Approver 将会收到一封请求邮件来选择批准或者拒绝这项动作。

    2. 创建新的Controlled GPO并部署到生产环境

    在AGPM Client中GPMC的左侧,右键单击Change Control选择New Controlled GPO可以创建新的Controlled GPO。

    在New Controlled GPO 对话框中,我们可以指定GPO的名称并选择创建位置。默认情况下, 新的GPO会被创建在AGPM存档和生产环境中,在此我们选择仅在AGPM存档中创建新的GPO。

    创建完成后,我们可以在Controlled GPO标签下看到新创建的GPO “Test1”。此时我们可以右键单击此GPO选择Deploy将其部署到生产环境中。

    部署完成后可以在GPMC中看到已经成功部署的GPO。

    3. 编辑Controlled GPO

    当需要对GPO进行更改操作时,我们需要用具有Editor角色的账户将GPO签出后再进行编辑。
    首先,对于有更改需求的GPO “Test1”,我们右键单击选择Check Out,当签出成功后,”Test1”在列表中显示为”Checked Out”状态。此时,我们可以右键单击并选择Edit进行编辑。

    4. AGPM模板的使用

    AGPM为管理员提供了利用模板快速创建GPO的功能。模板是 GPO 的静态版本,可用作创建新 GPO 的起点。我们可以基于模板创建新的 GPO。在快速创建包括许多相同策略设置的多个 GPO 时,模板很有用。

    我们可以通过现有GPO来创建模板。在Controlled标签中,我们右键单击想要作为模板的GPO “GPO1”,选择”Save as Template”. 在完成创建过程后,我们可以再Templates标签下看到刚刚创建的模板。

    此时我们可以利用刚刚创建的”GPO1 Template”模板来创建新的GPO”Test2”。我们只要在创建时在New Controlled GPO对话框中选择所要套用的Template即可。

    5. 回滚GPO

    回滚GPO到一个较早的版本是AGPM的一个强大的能力。利用这个功能,我们可以对损坏的GPO进行灾难恢复。

    此时,我们右键单击要进行回滚操作的GPO ‘’GPO1”,选择History.  

    在History for GPO1对话框中选择Unique Versions标签,并右键单击需要回滚到的一个较早的GPO版本并选择Deploy进行回滚操作。在完成后,我们可以在All States标签中看到GPO已经被回滚到一个较早的版本。

    6. AGPM回收站的使用

    AGPM另一个非常强大的功能是回收站功能。利用回收站,我们可以将从AGPM存档或者生产环境中删除GPO在需要的时候直接还原。

    当一个GPO”Test1”被删除后,我们可以再Recycle Bin标签中看到它。

    当需要还原这个GPO, 仅需右键单击并选择Restore即可。

    使用AGPM回收站功能时请注意:
     1.只有在删除Controlled Tab下已经获取控制的GPO的时候才才可以使用回收站功能。 
     2.如果删除的过程中选择了“Delete from production”选项, 通过AGPM回收站我们只能将GPO恢复到AGPM的存档中,然后再重新部署到生产环境中。

    四. 总结

    通过上面的介绍,我们可以看出AGPM对于GPMC的基本的组策略管理功能进行了很多扩展,管理员通过使用AGPM, 将域中的组策略管理工作变得十分顺畅。AGPM 提供的强大的更改管理解决方案,不仅可以跟踪已更改 GPO 的关键区域,还提供了简单的 GPO 比较和灾难恢复。在 AGPM 内构建的委派模型允许您将所有管理员引导至 AGPM 中,以在此处进行 GPO 的所有编辑操作,AGPM 可自动备份 GPO 更改并防止出现任何生产环境中可能出现的问题。

    关于AGPM的更多信息和详细的配置步骤,请参考以下文档:
    Advanced Group Policy Management
    http://technet.microsoft.com/en-us/library/dd420466.aspx

    Advanced Group Policy Management 4.0 Documents
    http://www.microsoft.com/en-us/download/details.aspx?id=13975







    Andy Qi
    TechNet Community Support


    • 已编辑 Andy Qi 2013年1月29日 5:52
    2013年1月29日 5:48