8.1 利用组策略管理软件简介
可使用组策略向域中的用户或计算机指派或发布软件,这对于能够基于组成员身份部署软件非常有用。组策略对象 (GPO) 通常只应用于它所链接到的组织单元 (OU) 的成员。因为用户不能同时位于多个 OU 中,所以有必要能够在 OU 界限的外部应用组策略。本文介绍如何使软件部署策略应用于不在各自 OU 中的用户。
也可用组策略限制客户端运行的软件,以确保用户在Internet和Intranet中的安全性。
<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />8.1.1 软件布署管理<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
在Windows 2000/2003中,可以使用组策略集中地或是从一个地方管理软件的布署过程。通过使用软件的组策略设置,管理员可以管理软件部署中各项,而不必单独的访问每一台计算机。
管理软件的过程包括:
l
预备:准备一个即将布署的文件,并Windows安装程序包文件复制到一个分发点,以便应用程序能使用组策略布置。
l
布署:管理员创建一个在计算机上安装软件,并将组策略链接到相应的活动类别容器的组策略对象。
l
维护:用新版本的软件升级软件或用补丁来重新布置软件。
l
删除:为消除不再使用的软件,从开始布置软件的组策略中删除软件包设置。当计算机启动或用户登录时软件将自动删除。
8.1.2 Windows安装程序
为使组策略能够布署和管理软件,Windows 2000/2003采用了Windows安装程序,它包含以下两个组件:
l
Windows安装程序服务。是一个使软件安装和配置过程完全自动化的客户端服务。它也可修改或修补已经安装的应用程序。
l
Windows安装程序包。包含安装或卸载一个应用程序的Windows安装程序服务所需的所有信息。一个包由Windows安装程序或.msi文件和安装或卸载软件所需的任何外部文件组成。一个.msi文件也包含有关软件及其本身的概要信息,还包含产品文件或产品文件所在安装位置的参考。
使用Windows安装程序技术的优点如下:
l
弹性的应用程序。无须用户干预,完全自动化的安装和修复。
l
干净的删除。应用程序的安全卸载可以不留孤立文件或避免无意破坏其它应用程序。
8.2 部署软件
部署软件确保对任何一台用户登录其上的计算机所需的应用程序都可用。管理员既可以预先给用户安装软件,需要时也可让用户选择安装它们所需要的软件。
8.2.1 分配软件概述
可以将软件分配给用户和计算机,确保软件对于用户和计算机是可用的。
l
将软件分配给用户。当给用户分配软件时,软件将在用户的桌面上被通告。当用户登录时应用程序被通告(如在开始菜单中出现),但如果用户不双击应用程序图标或与应用程序关联的文件类型,软件安装不会自动开始。这样可以节省了硬盘空间和时间;
l
将软件分配给计算机。当给计算机分配软件时,不会出现通告。而会在计算机启动时,软件被自动安装。这样可以确保相应的应用程序在那台计算机上总是可用的无论谁使用那台计算机。
8.2.2 实现软件分配
可按下列步骤实现软件分配策略:
1、创建一个分发点。在网络服务器LGXH上创建一个用于存放 MSI 程序包的文件夹。以适当的权限共享该文件夹(如使用隐含共享,为了实现冗余和负载平衡还可使用DFS。在本示例中,分发点的共享名为“PACKAGES$”),以允许用户和计算机读取和运行这些文件,然后将 MSI 程序包文件复制到此位置。
2、从基于 Windows 2000/2003 的域计算机,以域管理员身份登录,然后启动【Active Directory 用户和计算机】管理单元。
3、右击要将 GPO 链接到的容器(如Accounts OU)。右键单击该容器,单击【属性】,然后单击【组策略】选项卡。并新建一个名为“Application Assignment Policy”的GPO。然后选择它,单击【编辑】按钮。
4、在【组策略编辑器】中,展开【用户配置】 => 【软件设置】。然后右击【软件安装】。在出现的菜单中选择【新建】 => 【程序包】。
5、 在文件名文本框中,输入\\lgxh\packages$,然后选择SWIADMLE.MSI文件,单击【打开】按钮。
6、在【部署软件】对话框中,选择【已指派】选项,然后单击【确定】按钮完成软件的分配。关闭所有窗口。如图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/98a7686a92ba9dc2e40f137029e3c1de.jpeg)
7、运行GPupdate /force命令以刷新组策略(在Windows 2000中则用Secedit /refreshpolicy user_policy /force命令)。
8、为了验证软件是否正确分配,让OU中的用户在域中一台客户机上登录。可以到分配的软件出现在程序菜单之中。表明软件已正确被分配。如图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/d3524239d746c5e1485aa4f51224df82.jpeg)
8.2.3 发布软件概述
发布软件时,用户就可将其安装在计算机上,即使没有添加快捷方式到用户的桌面或开始菜单中,也没有在本地注册表中注册。因为用户必须手动安装发布的软件,所以发布软件只能针对用户,而不能给计算机进行发布。
用户可以采用下面两种方法之一来安装发布的软件:
l
使用的添加
/
删除应用程序。用户可以在控制面板中双击“添加
/
删除应用程序”,然后选择“添加新程序”来显示可用的应用程序组,并选择需要的应用程序进行安装。
l
使用文档激活方法。当一个应用程序发布在活动目录中时,它所支持的文档扩展文件名就在活动目录中注册了。如果用户双击一个未知类型文件,计算机就会向活动目录发出查询以确定有没有与该文件扩展名相关的应用程序。如有,则安装它。
8.2.4 实现软件发布
可按下列步骤实现软件发布策略:
²
发布软件
1
、创建一个分发点。在网络服务器
LGXH
上创建一个用于存放
MSI
程序包的文件夹。在本示例中,分发点的共享名为“
PACKAGES$
”。同时允许
Authenticated users
有读取和运行这些文件的权限,
Administrators
有完全控制权限,然后将
MSI
程序包文件复制到此位置。
2
、从基于
Windows 2000/2003
的域计算机,以域管理员身份登录,然后启动【
Active Directory
用户和计算机】管理单元。
3
、右击要将
GPO
链接到的容器(如
Accounts OU
)。右键单击该容器,单击【属性】,然后单击【组策略】选项卡。并新建一个名为“
Application Publishing Policy
”的
GPO
。然后选择它,单击【编辑】按钮。
4
、在【组策略编辑器】中,展开【用户配置】
=>
【软件设置】。然后右击【软件安装】。在出现的菜单中选择【新建】
=>
【程序包】。
5
、
在文件名文本框中,输入
\\lgxh\packages$\cosmol
,然后选择
cosmol.msi
文件,单击【打开】按钮。
6
、在【部署软件】对话框中,选择【已发布】选项,然后单击【确定】按钮完成软件的发布。关闭所有窗口。
7
、运行
GPupdate /force
命令以刷新组策略(在
Windows 2000
中则用
Secedit /refreshpolicy user_policy /force
命令)。
²
安装发布的软件
1
、为了验证软件是否正确发由,让
OU
中的用户在域中一台客户机上登录。可以到发布的软件没有出现在程序菜单之中。
2
、打开【控制面板】,双击【添加
/
删除程序】,然后选择【添加新程序】。可以看到右边的详细窗格中出现可选的安装程序。选中要安装的程序,然后单击【添加】按钮即可进行安装。如图
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/10b4433aee7ffd3e0bfd825e2417113a.jpeg)
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
注意
如果在
XP
的计算机上需要重启多次才能运用组策略,则需要将本地策略中的“计算机启动和登录时总是等待网络”项启用,以禁用成员机的登录优化。
8.2.5 实现旧版安装程序发布
要利用组策略软件安装的所有功能,最好使用包含
Windows Installer (.msi)
程序包的应用程序。例如,发布的
MSI
程序包支持为没有管理凭据的用户进行安装。但是,您也可以使用
.zap
文件发布旧版安装程序。就像发布的任何其他应用程序一样,这些应用程序显示在
“
添加或删除程序
”
中,但通常只有具有管理凭据的用户能够安装这些应用程序。
.zap
文件是一种简单的文本文件,它描述了安装程序的路径以及要在命令行中传递的任何参数。
.zap
文件语法的简单示例如下所示(以发布一个名为
FoxitReader
的旧版软件为例):
[Application]
FriendlyName = FoxitReader
SetupCommand = ""\\LGXH\Packages$\FoxitReader.exe""
注意
在
zap
文件中使用引号时,以下规则适用:
l
安装程序可执行文件的路径和名称必须总是括在引号中。
l
如果没有命令行参数,请使用两对引号。
8.2.6 创建软件类别
可以创建软件类别来将不同的应用程序加以逻辑地分组到特定的标题下。将应用程序分类要求首先创建一个分类,然后将应用程序分配到某一个分类中去。
创建软件类别,执行下面步骤:
1
、根据软件是要分配给用户还是计算机,或是发布,在【用户配置】或【计算机配置】内创建或编辑一个
GPO
。
2
、布置【软件设置】,右击【软件安装】,然后单击【属性】
=>
【类别】标签。单击【增加】、【修改】或【删除】创建并编辑类别名。
8.3 维护已部署的软件
在软件布署后,可能需要修改它。必须能够维护或升级用户的软件确保他们拥有最新的版本。所以
维护布署的软件主要是进行升级布置的软件以及重新布置软件。
8.3.1 升级部署的软件
升级布署的软件:可以进行强制升级或可选升级。强制升级用于强迫用户升级到当前最新的版本。可选升级用于允许用户同时使用一个程序的两个版本。
为布署一个升级,执行下列步骤:
² 可选升级
1
、将软件的最新版本拷贝到分发点中(本示例即将其拷入服务器
LGXH
下的
PACKAGES
目录中,其共享名为
PACKAGES$
)。
2
、从基于
Windows 2000/2003
的域计算机,以域管理员身份登录,然后启动【
Active Directory
用户和计算机】管理单元。
3
、右击要将
GPO
链接到的容器(如
Accounts OU
)。右键单击该容器,单击【属性】,然后单击【组策略】选项卡。选择名为“
Application Publishing Policy
”的
GPO
。然后选择它,单击【编辑】按钮。
4
、在【组策略编辑器】中,展开【用户配置】
=>
【软件设置】。然后右击【软件安装】。在出现的菜单中选择【新建】
=>
【程序包】。
5
、
在文件名文本框中,输入
\\lgxh\packages$\cosmo2
,然后选择
cosmo2.msi
文件,单击【打开】按钮。
6
、在【部署软件】对话框中,选择【高级】选项,然后在高级选项对话框中单击【升级】标签。
7
、单击【添加】按钮。在【添加升级程序包】对话框中,选择要升级的包,然后再选择【程序包可以升级现有程序包】选项,以便进行可选升级。单击【确定】按钮完成设置。如图
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/75b6ffe2448b9748b1f25d1671f807ec.jpeg)
8
、刷新组策略后,用
OU
(
Accounts
)中的用户在域中进行登录以便验证是否设置成功。
²
创建一个强制升级的GPO
1
、在【
Active Directory
用户和计算机】管理单元中,右击要将
GPO
链接到的容器(如
Accounts OU
下的
Production
子
OU
)。右键单击该容器,单击【属性】,然后单击【组策略】选项卡。并新建一个名为“
Mandatory Upgrade Policy
”的
GPO
。然后选择它,单击【编辑】按钮。
4
、在【组策略编辑器】中,展开【用户配置】
=>
【软件设置】。然后右击【软件安装】。在出现的菜单中选择【新建】
=>
【程序包】。
5
、
在文件名文本框中,输入
\\lgxh\packages$\cosmo2
,然后选择
cosmo2.msi
文件,单击【打开】按钮。
6
、在【部署软件】对话框中,选择【高级】选项,然后在高级选项对话框中单击【升级】标签。
7
、单击【添加】按钮。在【添加升级程序包】对话框中,选择【某个指定的
GPO
】选项,然后单击【浏览】按钮。
8
、在【浏览组策略对象】对话框中,选择【全部】标签。然后在
GPO
列表中双击“
Application Publishing Policy
”即返回到【添加升级程序包】对话框。如图
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/63b6871f0f7fa30eaa80ca050b6a55a0.jpeg)
9
、选择要升级的包(如
Cosmo1
),然后单击【确定】按钮。选择【现有程序包所需的升级】。单击【确定】按钮完成设置。
![](https://i-blog.csdnimg.cn/blog_migrate/4cb6474fd4d20f5d5e4c5b44e9cfc398.jpeg)
10
、刷新组策略后,用
OU
(
Production
)中的用户在域中进行登录以便验证是否设置成功。
8.4 删除已部署的软件
当软件过时、或组织不再需要这些软件时,可以利用组策略删除它们。还可以通过配置
GPO
允许用户可选地升级新软件包来删除旧软件。
8.4.1 删除选项
在对已部署的软件进行删除时,可以如下表所列选项。
![](https://i-blog.csdnimg.cn/blog_migrate/e6981b0aeb420acd8a2c76dda9aad9d6.jpeg)
8.4.1 实现删除
删除布置的软件,执行下列步骤:
1
、打开原来用于布置软件的
GPO
。
2
、在【软件安装】中,右击发布或指派的包名,指向【所有任务】,单击【删除】。
3
、在【删除软件】对话框中,选择强制删除或可选删除,然后单击【确定】按钮。
8.5 利用组策略限制客户端软件
当今的商业运算环境中,
internet
访问与
email
的使用变得十分的频繁,企业内部网中最终用户不再仅仅需要通过软盘或光盘安装使用软件,他们可能每天都需要做出选择:
l
要不要运行商业伙伴发送过来的附件中的可执行程序?
l
要不要运行刚从
internet
上下载的可执行程序?
l
另外一个同事通过
MSN
传递了一个可执行程序给他,他可以打开并执行它吗?
l
…
…
作为企业计算环境中的网络管理员的您,可能非常清楚在计算环境中运行未知的可执行程序的危险性,这可能使您的整个网络遭受特洛伊***或未知病毒的***(如
BR2002.exe
病毒),从而给您的企业内部网络带来严重的危害。但是,您可能无法保证每个最终用户在面对每一个可执行程序时都能作为正确的选择!为了保证企业内部网络安全,您可能需要限制客户端计算机的运行的软件。如果你的客户端计算机为
Windows XP,
并且构建了
Windows 2003
的域的环境,则您可以轻松做到:使用软件限制策略来限制客户端计算机或
Windows 20003
服务器上所能够运行的软件或禁止某些软件的执行。本章将以在
Windows 2003
下实现客户端软件限制为例进行讲解。我们将分四个部分,举例为您讲述该策略的具体应用。
8.5.1 限制客户端软件能为你的企业带来什么?
作为
Windows Server 2003
三大新增安全功能选项之一,它可以保护您的企业内部网络,在运行未知的或不被信任的软件时免遭***,并进一步降低了
TCO
与支持成本;同时由于它是基于组策略来实现,结合
GPMC
的强大的管理功能,提供的良好的可管理性。
您可以创建一个新的
GPO
,将它链接到站点、域或组织单位级别。同时您也可以定义一个默认的安全级别:默认允许所有的软件运行或默认不允许任何软件的运行,另外再通过特定的软件限制策略规则,限制或允许特定的软件。
规则类型如下:
l
散列规则
l
证书规则
l
路径规则(包含注册表路径规则)
l
Internet
区域规则
换而言之,软件限制策略由默认安全级别与所有的软件限制策略规则组成,它提供多种方式来区分辨别特定软件;当客户端计算机运行可执行程序时,它受限于该处管理员设定的软件限制策略。
基于软件限制策略,您可以:
l
限制系统上所能够运行的软件
l
在多用户使用的系统上,指定用户只能运行特定的文件
l
决定谁可以添加受信任的发布者
l
控制软件限制策略是否应用多所有用户还是指定的一些用户
l
在本地计算机、组织单位、域或站点级别,阻止特定的文件的运行
注意:
软件限制策略不应该也并不能取代防病毒软件
8.5.2 限制客户端软件如何实现?
作为企业的网络管理员,我需要对某一部门的员工设定策略,限制他们只能运行
Microsoft Office
和
IE
,大致的步骤如下:
1
、为该部门的员工新建组织单位,并将这部门员工的域帐号以及所使用的计算机帐号移至该组织单位;
2
、新建组策略对象与测试使用的组织单位、测试用户帐号,并且将新建的组策略对象与该组织单位相链接,将测试用户帐号与测试计算机帐号移至该测试组织单位;
3
、在【组策略编辑器】中,【计算机配置】
=>
【
Windows
设置】
=>
【安全设置】。
右击【软件限制策略】,然后选择【创建软件限制策略】。如图
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/3011b44c03f8c374efc0650c4e6ac608.jpeg)
4
、在详细窗格中,右击【其它规则】,选择【新建路径规则】,然后参照下表编辑该组策略对象:
![](https://i-blog.csdnimg.cn/blog_migrate/ac8d8cf8d5f5cdbfd748ae1cfd2b3272.jpeg)
注意:
1
)当默认安全级别设定为不允许时,系统为了保证不会锁定您自己或其他的用户的常规操作,自动生成了以下四条路径规则:
![](https://i-blog.csdnimg.cn/blog_migrate/f9c021aef0ab57092d20eedc10e79754.jpeg)
只有高级用户在经过必要测试后,方允许修改该系统默认策略规则;
2
)其中启动组的选项放置在
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
下,如果您想同时保证这些选项设定的文件或程序的正常运行,请为之设定相应的路径规则;
3
)软件限制策略的优先级,从高到底排列如下:
l
散列规则
l
证书规则
l
路径规则(包含注册表路径规则)
l
Internet
区域规则
如果对统一对象设定了不同的软件限制策略,更为具体的、更为安全的设定优先。
5
、以测试帐号在测试计算机上登录,运行
"gpupdate /force"
确认测试结果与设想中的要求完全符合;
6
、将该组策略对象与该部门的组织单位链接,删除与测试组织单位的链接并删除相应的测试组织单位、测试用户帐号等。
转载于:https://blog.51cto.com/lgzeng2360/64238