Windows server 2003组策略运行机制分析研究
2011-06-05李德水
李德水,陈 聪
(渭南师范学院 数学与信息科学学院,陕西 渭南 714000)
组策略是Win2003操作系统提供的一种在域模式下,用来大批量控制域内计算机和用户的工作环境配置管理技术,可以提供应用程序部署、系统及安全设置、远程安装服务、脚本、IE管理、文件夹重定向、QoS包计划、磁盘配额、无线网络策略和基于组策略的管理模板配置[1]。为Windows Server 2003及2008网络工程师配置和管理Windows网络提供了非常便利的手段,文中就AD域环境中组策略的运行机制做一详细分析研究,探究组策略的工作原理,帮助管理员正确应用、管理及维护组策略,提高工作效率。
1 组策略的体系结构
组策略运行由3部分组成,服务器端、组策略管理工具、客户端[2]。服务器端:活动目录、Sysvol文件夹,用来存储组策略对象,并通过目录服务为域用户和计算机提供组策略对象的查找定位并下载到客户端;组策略管理工具:服务器内嵌的组策略对象编辑器(Group Policy Object Editor)或组策略管理控制台工具(GPMC)则用来建立、编辑、管理维护组策略对象,通过RSoP可以查看各组策略对象运行的结果集,供管理员调试;客户端:WinLogon、注册表、本地组策略对象、组策略引擎、客户端扩展(CSE,Client-Side Extensions)等,通过组策略引擎和域控制器DC查找应用于该计算机及用户的所有组策略对象,下载组策略模板文件并调用相应的客户端扩展组件并按照组策略对象的优先级顺序执行各项策略设置,从而影响客户端计算机或用户的文件系统,注册表、事件日志和本地组策略对象。
以上3部分,相互协作,共同完成组策略的编辑、关联、分发与执行,通过网络实现了管理大范围计算机及用户的工作,提高了管理效率。组策略的体系结构[2]如图1所示。
2 组策略对象GPO的结构
2.1 组策略对象GPO
在windows server 2003中,组策略用组策略对象GPO(Group Policy Object)来表示,并与站点、域、组织单元相链接,从而作用于域用户和计算机。组策略GPO是一个域级别的虚对象,底层结构包含组策略容器GPC(Group Policy Container)和组策略模板 GPT(Group Policy Template)两个部分,GPC存于域中的每个DC中,包含每个GPO的基本信息;GPT则包含组策略的具体数据,保存于SysvolSysvol域名Policies子文件夹中,供用户和计算机下载使用。两者之间通过组策略对象的GUID保持关联,GPC存于AD目录结构中,通过AD复制引擎复制到当前域的所有DC中,而GPT存于Sysvol共享文件夹中,并通过文件复制服务(FRS)复制到当前域的所有DC中,使DC中保持一致[3]。
图1 组策略的体系结构Fig.1 The group policy system architecture
2.2 组策略模板GPT
GPT是实现了一系列组策略设置的指令集,包含具体组策略的相关设置参数,以文件的形式,存放在Sysvol共享文件夹中。客户端下载GPT文件后,按照文件指令进行相应的操作和设置。GPT的版本号存储在Gpt.ini文件中,用于与GPC保持同步[4]。
2.3 组策略容器GPC
GPC是一个目录服务对象,主要包含有如下重要属性:versionNumber:版本号属性的主要目的是为了确保GPC与GPT信息保持同步。gPCFileSysPath:提供客户端查找和定位对应组策略模板文件的路径。gPCMachineExtensionNames:指定客户端处理计算机策略GPT文件时需要使用的客户端扩展的ClassID。gPCUserExtensionNames:指定客户端处理用户策略GPT文件时需要使用的客户端扩展的ClassID。gPCWQLFilter:指定应用于组策略对象的任何WMI筛选器。GPC对象存储在AD数据库Domain分区中,通过目录服务提供GPC属性,主要的基本属性有:distinguishedName, whenCreeated,whenChanged,displayName,objectGUID,versionNumber,gPCFunctionalityVersion,gPCFileSysPath,gPCMachineExtensionNames,gPCUserEXtensionNames, 客 户 端根据GPC中的objectGUID与GPT的GPO的GUID保持关联,客户端再由GPC中的gPCFileSysPath定位到sysvol文件夹并查找对应的组策略模板文件:指示客户机下载组策略模板文件,从而执行用户和计算机配置。
3 组策略工作流程
组策略工作流程分为服务器和客户端两部分。
3.1 客户端工作流程
1)客户机启动,执行本地安全策略。2)客户机连接到网络,查询DC获取要应用的GPO列表。3)客户机根据GPO列表连接到Sysvol文件夹定位对应的组策略模板。4)客户机根据组策略模板中信息执行相应的操作。5)计算机策略执行完成后,出现登录界面,用户登录。6)用户验证通过后,用户查询DC获取要应用的用户GPO列表。客户机根据GPO列表,定位到相对应的组策略模板文件,通过比较缓存的GPO版本号与GPT中版本号,确定该组策略是否已经更新,如果组策略已经更新,下载GPT文件,依据GPO对象调用客户端扩展(一组动态链接库),执行相应的操作和设置[5]。
在Windows系统共有11种功能(CSE客户端扩展)可以由组策略来管理,每个功能都有一个相应的服务在客户端运行,服务负责处理相应的组策略。这些动态链接库以dll的方式存在,在客户机启动时,由winlogon服务动态加载。图2中每一项代表一个具体的服务,以ClassID来标识,与GPC中gPCMachineExtensionNames/gPCUserExtensionNames保持一致。客户机执行某一个GPO时,由GPC的PCMachineExtensionNames/gPCUserExtensionNames属性定位出该组策略具体由哪一个CSE来执行。每个CSE扩展知道如何正确处理所对应的组策略设置。客户端组策略执行框架[2]如图2所示。
图2 客户端组策略执行框架Fig.2 Client group policy implementation framework
3.2 服务器端组策略工作过程
组策略是建立在域模式下,通过活动目录服务为域内计算机和用户提供服务,所以,服务器端首先要根据企业业务需求,正确规划配置好活动目录层次的结构,关键是依据业务逻辑建立各组织单元,并把相应的计算机和用户划归到各组织单元,并配置好DNS服务,保证各资源记录正常工作;其次,网络管理员根据企业网络需求及管理要求,针对不同组织单元的共组需求及管理特性。通过组策略对象编辑器或组策略对象管理控制台(GPMC)建立、编辑各种组策略对象,并关联到相应的站点、域或者组织单元上,其结果自动存储于活动目录及Sysvol/policies文件夹下。第三,通过RSoP工具查看各组策略的执行效果,根据实际需求,调试相应的组策略对象,使其达到要求的效果。第四,把正确的、符合要求的组策略对象应用到真实的网络环境中[5]。在服务器端,当客户计算机在登录到域时,通过DNS能够定位到域控制器上的相关服务,正确获得该计算机和用户所属组织单元应用的各个组策略对象的GPC,再通过其相关属性,找到位于SYSVOL文件夹中的GPT模板文件,供客户计算机下载应用。位于主域控制器各组策略对象的 GPC通过AD复制引擎复制到当前域的所有DC中,而相应的GPT也通过文件复制服务(FRS)复制到当前域的所有DC中,使DC中保持一致。
4 结束语
组策略是Windows server 2003的核心,熟练掌握组策略的配置是一个Windows server网络工程师的基本素质,而掌握组策略的体系结构,熟悉其工作过程又是网络工程师的灵活掌握组策略的关键。通过对Windows server 2003组策略体系结构,结合活动目录及DNS提供的服务,对组策略对象的结构、属性和客户端和服务器端的工作过程的分析,组策略工作原理是有章可循的,并不是想象的那么复杂。只要掌握了组策略的运行机制,网络管理员根据企业网的功能需求,在建立好合适的活动目录结构及DNS服务的情况下,编辑维护多个组策略对象,正确应用到域、组织单元,完成企业大量计算机和用户的统一管理和配置,并能够快速排除组策略故障[6]。
[1]吴怡.计算机网络配置、管理与应用[M].2版.北京.高等教育出版社,2009.
[2]Windows Server技术中心.Group Policy Collection.[EB/OL]http://technet.microsoft.com/zh-tw/library/cc779838.aspx.
[3]黄镇建,蔡群英.基于活动目录和组策略的机房智能化管理[J].实验科学与技术,2010(2):174-177.HUANG Zhen-jian,CAI Qun-ying.Intelligent management of public computer lab based on active directory and group policy[J].Experiment Science and Technology,2010 (2):174-177.
[4]唐灯平.应用组策略部署和管理软件[J].计算机安全,2010(4):42-44 TANG Deng-ping.Application of group policy to deploy and manage software[J].Computer Security,2010(4):42-44.
[5]李磊.Windows Serve 2003组策略在钱江晚报超级信息港中的应用[J].计算机时代,2009(6):29-31.LI Lei.Windows Serve 2003 group policy in the application of QianJiang evening news paper[J].Computer Era,2009(6):29-31.
[6]姜雷.浅谈Windows server 2003网络安全策略的制定和实施[J].科技创新导报,2008(6):14-16.JIANG Lei.On the Windows server 2003 network security strategy formulation and implementation[J].Science and Technology Innovation Herald,2008(6):14-16.