电力企业信息内网终端计算机补丁更新方案研究
2012-11-14左晓军
卢 宁,左晓军,陈 泽,洪 杰
(河北省电力研究院,石家庄 050021)
随着国家电网公司信息化建设工作的不断深入,公司日常生产经营工作对信息系统的依赖性越来越高,对信息系统的安全要求也越来越高。作为信息系统的终端节点,办公计算机的信息安全成为信息安全体系中不可或缺的一环。为此,国家电网公司针对终端计算机的信息安全出台了很多管理要求,其中包括对操作系统及时进行补丁更新的要求。目前,河北省电力公司(简称“省公司”)部署的桌面终端标准化管理系统,对终端计算机的系统补丁、桌面安全等内容进行管理,对提高桌面终端安全水平起到了显著作用。为进一步提高桌面终端安全运行的稳定性,减轻桌面终端标准化管理系统下发补丁时负载过大对系统的影响,以下通过试验研究提出一种能够与桌面终端标准化管理系统并行的补丁分发方案,为桌面终端安全提供双保险,确保终端计算机能够稳定更新补丁。
1 补丁修复系统选型原则
a. 经济性。在选择补丁修复系统时,尽量考虑省公司现有系统功能的挖掘,达到最好的投资效果。
b. 通用性。选择补丁修复系统时,要充分考虑修复系统与桌面终端标准化管理系统的兼容,使终端计算机补丁修复完成后,省公司统一部署的桌面终端标准化管理系统能够识别,提高桌面终端标准化管理系统的补丁修复率。
c. 可管理性。采用的补丁修复系统,能够提供统一的管理平台进行管理,便于运维人员的管理和数据报表的统计。
基于以上原则,对WSUS(Windows Server Update Service)3.0和360安全卫士企业版2种补丁修复系统进行测试。
360安全卫士企业版是奇虎360科技有限公司推出的企业级网络安全产品。360安全卫士企业版提供了终端计算机补丁更新的集中管理方式。通过研究,发现360安全卫士企业版只能通过在线方式获取微软官方补丁,并没有提供补丁导入导出或离线补丁包等功能,无法实现离线更新补丁。河北省电力公司信息内网是与互联网物理隔离的,因此360安全卫士企业版无法满足公司的需求。
WSUS同样只能通过在线方式获取微软官方补丁,但是提供了补丁导入导出功能,因此可以实现离线更新补丁。
2 WSUS的功能及部署方式
WSUS是微软公司面向其软件产品免费提供的软件升级更新解决方案,支持微软Windows所有系列操作系统、Office办公套件、SQL Server等产品的补丁更新。WSUS 3.0除了继承2.0版本的优点之外,还增加了一些新的特性。
WSUS 3.0通过Microsoft管理控制台进行管理,与WSUS 2.0通过网页进行管理相比,操作更加方便和快捷。WSUS 3.0提供了各种形式的报告,可以从补丁、计算机等各个角度自动生成统计分析报表,并能导出为PDF或Excel文件。WSUS 3.0提供了电子邮件通知功能,可以定时向指定邮箱中发送报告。WSUS 3.0还支持以下部署方式。
2.1 单独部署
单独部署方式是WSUS提供的最基本的部署方式,搭建1台WSUS服务器从微软官方在线获取补丁,并为私有网络中的所有计算机提供补丁更新服务。部署结构如图1所示。
图1 单独部署方式
2.2 级联部署
对于层次结构较多或终端计算机较多的网络,WSUS还提供了级联的部署方式,如图2所示。首先,部署1台上游服务器直接从微软官方在线获取补丁。然后,在网络的分支节点上部署下游服务器。下游服务器从上游服务器在线获取补丁。上游服务器和下游服务器均可以直接为终端计算机提供补丁更新服务。
图2 级联部署方式
级联部署的优点在于:
a. 只需要从外部网络下载一次补丁,然后通过下游服务器分发到终端计算机。可以极大的节省企业的网络带宽。
b. 每个终端计算机都可以从距离自己最近的WSUS服务器获取补丁,减轻了内部网络的传输压力。
c. 可以对每个WSUS服务器单独设置更新策略,实现为不同的终端计算机群配置不同的补丁更新策略。
2.3 隔离部署
如果公司网络中存在与互联网隔离的网络,可以通过图3方式部署WSUS,以实现与互联网隔离网络中补丁的更新。首先,在能够访问互联网的网络中部署1台WSUS服务器,在线获取微软官方更新补丁。然后,在与互联网隔离的网络中部署1台WSUS服务器。通过WSUS的导入导出工具,将WSUS的补丁库从外部网络服务器导入到内部网络服务器上,这样就实现了与互联网隔离网络中WSUS服务器补丁的更新。
图3 隔离部署方式
3 WSUS部署实例分析
3.1 隔离部署WSUS服务器
隔离部署的WSUS服务器与互联网是物理隔离的,因此无法通过微软官方在线获取更新补丁。所以需要在能够访问互联网的网络中单独部署1个WSUS服务器,即外网WSUS服务器,用于获取补丁更新。通过WSUS提供的导入导出功能可以将外网WSUS服务器上的补丁更新导入到隔离部署的服务器中。
3.1.1 导入导出补丁的方法
a. 将外网WSUS服务器中补丁存放目录(WsusContent)下的所有补丁拷贝至内网WSUS服务器相同目录下。
b. 利用C∶Program FilesUpdate ServicesTools下的wsusutil.exe工具将WSUS的数据库文件从外网WSUS服务器导出,并导入到内网WSUS服务器。
导出命令为:wsusutil.exe export %导出目录%wsus.cab %导出目录%wsus.log
导入命令为:wsusutil.exe import %文件存放目录%wsus.cab %文件存放目录%wsus.log
导入导出具体操作如图4所示。
图4 服务器导入导出功能
通过导入导出功能实现了与互联网隔离服务器补丁的更新,但是每次导入导出过程中,需要将全部的补丁程序复制一遍。Windows系列操作系统的补丁程序集约为十几GB。随着新补丁的不断发放,补丁的数量还会增加,需要复制的文件会越来越多,每次导入导出所需要的时间也会越来越长。
3.1.2 导入导出补丁的关键技术
通过将更新后WsusContent文件夹与更新前相比,发现WsusContent文件夹在补丁更新后只是新增了部分补丁文件,因此完全没有必要每次都将整个文件夹复制一遍。为了更加方便和快捷的移植补丁,编写了如下脚本程序(copy.bat),代码如下:
echo off
if exist list.txt goto nofirst
dir /AD /B >list.txt
for /F %%i in (list.txt) do xcopy %%i %1\%%i /S /E
goto end
∶nofirst
for /F %%a in ('dir /AD /B') do (
if exist listtemp.txt del listtemp.txt
for /F %%b in ('findstr /C∶"%%a" list.txt') do (
echo %%b in txt>listtemp.txt
)
if exist listtemp.txt (
) else (
xcopy %%a %1\%%a /S /E
)
)
if exist listorg.txt del listorg.txt
ren list.txt listorg.txt
dir /AD /B >list.txt
∶end
将本脚本放到WsusContent目录下,然后执行命令copy.bat 要放置新补丁的目录。脚本流程示意见图5。
该脚本具体功能为,首先,检测目录下是否存在list.txt,如果不存在,则说明本次是第1次导出。将所有补丁复制到指定目录,并将补丁目录放置在list.txt文件中。如果检测到目录下已经存在list.txt,说明之前已经导出过,则将WsusContent目录下的补丁文件与list.txt中的目录进行对比,将list.txt中不存在的补丁(也就是新增的补丁)复制到指定目录,同时更新list.txt。
使用该脚本时,用户无需关心之前是否导出过,脚本会通过一个索引文件自动判断哪些补丁是本次新增的,并自动复制到指定目录。通过该脚本,提高了WSUS在企业信息内网部署时的实用性,降低了维护补丁库的难度。
3.2 修改WSUS客户端配置
为使终端计算机能够从WSUS服务器获取补丁更新,需要对WSUS客户端进行一定的配置。通过修改组策略或修改注册表均能实现该配置。
3.2.1 修改组策略
“开始-运行-gpedit.msc”,进入组策略,在“本地计算机策略-计算机配置-管理模板-windows组件-Windows Update”中;“配置自动更新”修改为“已启用”、“自动下载并通知安装”;“指定Intranet Microsoft更新服务位置”修改为“已启用”;“为检测更新设置Intranet更新服务”修改为“http://WSUS服务器IP地址:服务器指定的端口号(80或8530);”“设置Intranet统计服务器”修改为“http://WSUS服务器IP地址:服务器指定的端口号(80或8530)”。
3.2.2 修改注册表
在HKEY_LOCAL_MACHINE/SOFTWAREPoliciesMicrosoftWindowsWindowsUpdateAU下,NoAutoUpdate设置为“0”,表示启动自动更新;AUOptions设置为“3”,表示自动下载并通知安装;ScheduledInstallDay设置为“0”,表示每天都检测补丁;UseWUServer设置为“1”,表示使用自己部署的WSUS服务器,而不是通过微软官方获取补丁。
在HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsWindowsUpdate下,WUServer设置为“http://WSUS服务器IP地址:服务器指定的端口号(80或8530)”,指定WSUS服务器地址;WUStatusServer设置为“http://WSUS服务器IP地址:服务器指定的端口号(80或8530)”,指定WSUS统计服务器地址;ElevateNonAdmins设置为“1”,表示任何用户都可以为计算机打补丁。
也可以将上述配置制作成批处理文件,实现客户端的快速配置。批处理文件的内容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsWindowsUpdateAU]
"NoAutoUpdate"=dword∶00000000
"AUOptions"=dword∶00000003
"ScheduledInstallDay"= dword∶00000000
"UseWUServer"=dword∶00000001
[HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindowsWindowsUpdate]
"WUServer"= http://WSUS服务器IP地址:服务器指定的端口号(80或8530)
"WUStatusServer"= http://WSUS服务器IP地址:服务器指定的端口号(80或8530)
"ElevateNonAdmins"=dword∶00000001
4 结束语
通过对360安全卫士企业版和WSUS的研究,得出一种能够与公司桌面终端标准化管理系统并行,适合电力企业信息内网补丁更新的解决方案。具体方案为在省公司本部信息内网和信息外网各部署1套WSUS,通过信息外网WSUS在线获取微软官司方补丁,然后通过导出工具将补丁库导出,再导入到信息内网WSUS中。每个基层单位信息内网部署1套WSUS,与省公司本部信息内网WSUS进行级联,在线获取补丁。该方案不仅适用于电力企业,对于任何与互联网隔离的内部网络均可以通过本方案解决终端计算机补丁更新的问题。同时,该方案还通过编写脚本实现WSUS补丁的增量导出,大大提高了离线更新补丁的效率,缩短的导入导出补丁文件的时间。