1、 摘要:近些年来,嵌入式技术由于自身平台独立性和高扩展性,日益受到重视,成为各领域技术创新的重要基础。系统在目前基于服务器/客户端结构设计的基础上,通过增添嵌入式代理服务器来实现一个三级结构设计多平台补丁管理系统,通过嵌入式代理服务器的补丁服务器交互层和客户终端交互层实现客户终端和补丁服务器的真正跨平台的补丁分发管理。采用 ARM- Linux 的嵌入式代理服务器实现补丁管理系统原型,验证了系统设计与补丁信息获取方法的可行性与有效性。 中国论文网 关键词:嵌入式代理服务器;多平台;模块;类 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)12-2788-03 当
2、前,面对愈演愈烈的恶意代码的感染和攻击,用户采用的多种办法来保护信息系统的安全,但最基本和最重要的还是为自身的操作系统及时升级和安装系统补丁。然而在一个内联网中,普遍存在客户终端配置档次高低各异、操作系统分门别类(包括 windows 系统、Linux 系统及嵌入式系统)等问题1,管理人员要想同时对不同配置操作系统终端设备及时下载安装补丁程序,几乎是不可能的。面对终端节点种类繁多的用户,繁杂的手工补丁程序下载安装又不能适应目前的网络管理要求。虽然目前 LANDesk、WSUS 和 VRV 等国内外软件可以完成内联网发布补丁的功能,但这些系统多采用客户端与服务器的直接相连两层结构,特点是针对性强
3、,但通用性和兼容性差,对于不同的开发工具,相互之间很难兼容,无法跨平台使用;此外这种结构还存在拓扑容易产生低效、系统瓶颈和网络资源浪费等问题2。所以文中在分析补丁管理研究现状的基础上,针对目前存在的问题,提出了一套补丁分发与管理系统。 1 系统结构设计 系统分为补丁服务器、嵌入式补丁代理服务器和客户端三层结构,系统增加了嵌入式补丁代理服务器。下面对嵌入式补丁代理服务器在系统作用和结构进行论述。 1.1 增添嵌入式补丁代理服务器主要从以下几个方面考虑 1)伴随着 3C 融合进程的加速和我国传统产业结构的升级,嵌入式系统正日益受到重视,成为各领域技术创新的重要基础。嵌入式系统在消费电子、通信设备、
4、装备设备、汽车电子、船舶电子、航空航天电子、轨道交通设备、金融商用设备、医疗机械、安防设备等众多领域得到越来越广泛的应用3,及时为这些嵌入式系统进行升级和补丁安装将是管理者面临的一个问题。本补丁管理系统通过嵌入式补丁代理服务器解决这一难题。 2)嵌入式系统的软、硬件可裁剪,结构灵活,稳定性和经济性特点突出,它在本系统的运用可降低产品在软硬件投入的成本4。3)统一的客户界面:客户端只需要一个通用的浏览器,解决了统一用户界面的问题。 4)平台独立性:浏览器所运行的平台与嵌入式补丁代理服务器所在的平台无关,真正实现了跨平台。 5)高可扩展性:服务器端可以在任何需要的时候进行功能的增强与扩展,而且管理
5、员通过客户端即可完成这些操作,实现了远程管理和控制。 6)并行性与分布性:嵌入式补丁代理不仅实现了跨平台,也是一个多处理机系统和分布式系统,可并发的处理多个不同用户的服务请求5。 1.2 嵌入式补丁代理服务器 嵌入式补丁代理服务器以 ARM- Linux 嵌入式技术作为整个系统软硬件实现的方式。该服务器的硬件框架使用 ARM9 系列芯片作为中央处理器。该服务器的软件框架由嵌入式操作系统、服务器模块以及数据库系统组成。嵌入式操作系统平台由 ARM-Linux 系统构建;代理服务器模块则由 Boa 服务器实现;数据库系统则由 SQLite 小型数据库系统实现6。使用上述技术设计并实现的代理服务器具
6、有以往 PC 机代理服务器所无可比拟的优势,那就是实时性强,可靠性高,结构小巧以及成本低。 嵌入式补丁代理分为补丁服务器交互层和客户终端交互层,补丁服务器交互层负责嵌入式补丁代理服务器和各个补丁服务器之间的交互,客户终端交互层主要是嵌入式补丁代理服务器与客户终端进行交互。 1.2.1 其中补丁服务器交互层由以下几个模块组成 1)补丁漏洞信息接受模块:嵌入式补丁代理服务器接受补丁服务器生成的补丁及对应漏洞的特征代码。 2)补丁信息查询模块:当嵌入式补丁代理服务器检测出客户终端漏洞后,本模块将检测结果传给补丁服务器。3)代理参数配置模块:配置代理所需的运行参数,包括通信端口、客户终端信息、补丁服务
7、器地址等参数。 1.2.2 客户终端交互层由以下几个模块组成 1)补丁监听检测模块:主动监听扫描被管理的设备得到本地终端的操作系统信息和所安装的其他软件特征代码列表。 2)补丁查询模块:查询数据库有关要安装升级的所有数据包和他们的系统版本号特征代码列表。 最后,代理服务器将以邮件方式通报客户,通报内容包括什么样的软件或补丁被安装或删除,并还包括模块在安装过程中出现的失败次数或异常的输出错误等信息。 3)补丁更新模块:比较服务器和客户终端两个列表根据客户系统将需要安装、删除或升级所需补丁更新指令传递给补丁服务器和客户终端。 1.3 补丁服务器 包含补丁下载模块、补丁信息库维护模块和补丁安装模块。
8、 1)补丁下载模块:其主要是与因特网连接,实时监测软件系统或第三方厂商发布在 web站点上的补丁更新状况,自动检测、自动下载,增量分离后保存在本地磁盘中的作用。为了防治从第三方下载补丁软件引起客户系统一些潜在安全问题,本系统在软件下载到FTP、web 服务器前,先检测测试每个刚下载的软件再通过手工更新中心系统的补丁数据库系统,并加入 MD5 校验,确保补丁下载的可靠性。 2)补丁信息库维护模块:维护服务器端的补丁信息库,对下载的补丁或数据包进行类的划分和定义,然后根据类的定义系统进行程序的调用和运行。并依据行业标准的信息数据识别应用软件和操作系统的漏洞。通过定义自己的定制补丁和漏洞类,在生成类
9、库的过程中主要解决了补丁或数据包与漏洞信息的映射关系,以支持单个应用程序、策略或者单个需求。然后把定义好的补丁或数据包以及对应的漏洞类别传送给嵌入式补丁代理服务器 3)补丁安装模块:接受嵌入式补丁代理服务器的指令对全局客户、任意客户、任何预先定义或根据需要动态定义的客户组通过不同类或子类的属性进行相应的补丁和数据包配置管理工作,主要是推送补丁到客户终端。 1 .4 客户终端 包括客户终端补丁信息库模块、客户终端下载模块和客户终端补丁安装模块。 1)客户终端补丁信息库模块:分析本地操作系统类型及系统特征库版本号,上传给嵌入式代理服务器,使得客户终端补丁信息科始终与代理服务器保持同步。 2)客户终
10、端下载模块:根据嵌入式补丁代理服务器对本地列表和服务器列表的比较筛选,客户终端得到所需下载的补丁列表后,从指定的补丁服务器上下拉所需补丁。 3)客户终端补丁安装模块:根据待安装补丁列表,自动生成相应的补丁安装批处理命令,然后调用并执行以实现安装。安装过程中自动对所有补丁更新后的文件版本进行排序,以免出现补丁更新失效的问题。 2 补丁管理系统原型调试 本系统测试主要用的平台是 RedHat Enterprise Linux 和 ARM-Linux。在联机调试的过程中,服务端、嵌入式代理服务器和客户终端的各功能模块均能实现设计目标。图 1 所示嵌入式代理服务器读出了客户终端的操作系统版本和 CPU
11、 信息,为补丁管理系统的补丁软件包的更新提供了基本信息;图 2 所示补丁下载安装部分的界面,成功从补丁服务器下载了最新的补丁软件包。调试显示整个系统运行稳定,并达到了补丁自动管理的要求。评测中由于本系统能够及时发送补丁文件至客户终端,提高本地网络的补丁更新效率,另外,如果本地补丁服务器故障时,代理也够自动从网络补丁源更新补丁,保证了补丁更新的连续性。 3 结论 该文设计了在内联网中多平台的补丁管理系统,提出了基于增加嵌入式代理服务器的三层系统结构。阐述了补丁管理系统设计与实现的关键模块技术与要点。通过功能评测,证明了本系统能够很好的对 Windows、Linux 系列操作系统的补丁进行管理。由
12、于该文提出的系统仅仅是在实验室的网络环境下通过了测试。如果将本系统应用到实际的大型网络环境中,可能就需要对系统在实现细节上进行改进。 参考文献: 1 Symantec Corporation. Symantec Internet Security Threat ReportR. Volume 16, 2011. 2张敏,蔡书,何远德.一种补丁管理系统的研究与设计J.西南民族大学学报:自然科学版,2010(4) :636-643. 3王计元,陆静.嵌入式 Internet 技术研究与应用J.上海电力学院学报,2009(2):169-172. 4苏恩杰.嵌入式系统网络化技术应用研究D.西安:西北工业大学, 2004. 5丁苍峰,薛宁静,吕茂林.多平台的嵌入式 Web 服务器研究J.福建电脑,2009(2):73-74. 6黄红艳,侯彤璞.基于 Linux 的嵌入式 Web 服务器设计与应用J.计算机与数字工程,2010(4):157-159. 转载请注明来源。原文地址: