网络安全主动管理模型研究与实现
2010-09-13张梅琼许丽卿
张梅琼, 许丽卿
(福建师范大学 协和学院,福建 福州 350108)
0 引言
随着网络应用规模的扩大,网络安全问题也变得复杂和难以判断。现有网络安全管理系统大多是依据问题特征来选择解决方案,这种模式在问题发生并产生危害后才寻找解决策略,具有严重的滞后性,容易导致网络安全问题扩大化。因此,提出网络安全主动管理模型,该模型具有良好的实时性,能够更及时地解决网络安全问题。
图1 网络安全监控报警系统
1 网络安全主动管理模型的总体设计
网络运行状况对于业务的正常开展有着至关重要的意义[1]。因此,网络管理员必须实时了解其运行状况,及时发现并排除故障,确保业务的正常开展。
由于网络安全管理报警系统主要由三个模块组成:网络安全管理模块、SMS通信报警模块和系统管理模块。模型架构如图1。
1.1 系统管理模块
网络管理员通过该模块设置系统参数和管理策略等信息(如设置报警短信发送的间隔时间,设置调用和控制网络安全管理模块以及通信报警模块。
1.2 网络安全管理模块
网络安全管理模块模块对网络与重要网络设备进行实时管理,异常情况时调用SMS通信报警模块,向指定终端发送报警短信。
1.3 SMS通信报警模块
SMS通信报警模块模块可以向指定终端发送异常报警信息和网络实时运行状态信息。
2 基于智能移动代理的网络安全管理模块
2.1 模块框架
模块框架模块结合网络监控技术和智能移动代理技术,通过各种代理的配置、分发、问询、回收等步骤实现网络及设备的监控和管理,如图2所示。该模块包括三个部分:网络监控器、代理管理器、安全管理数据库。
图2 网络安全管理模块框架
网络监控器通过对网络数据的捕获、分析以及实时响应等步骤实现网络状态监测和响应[2]。代理管理器[3-4]负责所有代理的初始化配置、分发和迁移策略的制定与实施、问询机制的实施、代理的回收处理等工作,其中代理有监测代理、追踪代理、审计代理。安全管理数据库记录网络监测信息、代理信息和被管设备状态信息等。
2.2 模块工作流程
代理管理器初始化并分发监测代理到每个被管设备上。监测代理常驻在被管设备上,通过对被管设备上系统信息(如系统日志)的采集与分析,寻找可能的安全“疑点”。如果监测代理发现了安全“疑点”,则向管理模块发出警报。
管理模块收到监测代理的警报信息,初始化并分发一个追踪代理到发现“疑点”的目标节点上。追踪代理迁移到目标节点后,根据具体情况向代理管理器申请一个审计代理;之后,追踪代理分析判断引起“疑点”的上一级节点。如果该节点是追踪路径的源节点,或是无法继续追踪,或是已经有其他追踪代理在追踪相同路径时,该追踪代理就执行完自己的任务,返回管理模块。否则,追踪代理将迁移到追踪路径的上一级节点并重复以上工作。
审计代理迁移到目标设备,开始收集与“疑点”相关的数据,完成任务后则返回管理模块;代理管理器在收到相关数据后将其写入安全管理数据库中。
2.3 最优迁移策略
在数据采集代理的迁移过程中,一个迁移路径的优化迁移策略可减少代理的迁移周期,因此简化算法复杂度是关键点。假设每个节点具有相同的访问系数,即代理访问每个节点的概率相同,构建求解数据采集代理代价最小化问题的数学模型如下:
假设条件如下:
①构建一个有向图G=(V,E),其中V={vi|i=0,1,2,…,N}为n+1个网络节点的集合,v0为管理站驻留节点,(v1,v2,…,vn)为被管理节点集合;E={<vi,vj>|O≤i,j≤N,i≠j}为网络链路的集合;
②每一个节点vi∈V的数据采集操作成功概率为P(0≤P≤1);
③Ci,j表示移动代理从节点i迁移到节点j的代价;
④Wi表示代理在节点i上执行任务的代价, 是P的单调递减函数。
综合以上,从<1,2,…,n>的n!个排列组合中选出一个序列<j1, j2,…,jn>,使得代理遍历序列节点的代价为:
Cost ∑P×Ci-1,i×Wi(其中i为j1到jn)为最小值。
问题转化为NP完全的旅行商问题(TSP问题)。
目前解决旅行商问题有诸多算法,如经典的贪心算法、动态规划算法、分枝界限算法、神经网络、遗传算法和免疫算法等[5]。为了最大限度降低算法复杂度,本系统采用建立最小生成树算法来求解。算法采用选取排除最长路径顶点的方法降低时间复杂度,把状态空间树上不可能产生最优解的子树剪去,使搜索较小范围化。算法结合比较顶点次序提高算法准确性,通过自动产生顶点坐标以降低输入复杂性,增加测试准确度。实验测试结果表明,该算法可以取得较好的效果,比其他算法以更快的速度找到最佳解。
3 SMS通信报警模块的设计与实现
该模块的功能是将安全管理模块发出的警报以手机短信的形式及时向指定终端发送(如网络管理员手机),确保及时解决问题,维持网络以及相关网络设备的正常运行。模块通过ARM串口实现短信发送功能,具体为通过建立两个独立的线程来执行短信的发送和接收。发送短信线程如图3所示。实现报警模块主要的类有:
(1)嵌入式串口通信—SeriesComm类
SeriesComm类实现在嵌入式系统中的串口通信,包括串口发送与串口接收。该类为短信发送和接收线程提供通信接口。
(2)嵌入式SMS—EmbeddedSMS类
EmbeddedSMS类实现SMS预处理工作(预处理AT指令和短信内容等),包括编码/解码、字符格式转换、构造数据单元串、形成AT(Attention)指令等工作。该类为短信发送与接收线程提供了预处理接口。
(3)字符格式转换—UnicodeString类
UnicodeString类实现字符格式转换功能,包括Unicode与ASCII、Unicode与MBCS(多字节字符集)之间的转换。该类为EmbeddedSMS类中字符格式转换的实现提供接口,同时也为短信发送与接收线程提供字符格式转换接口。
图3 发送短信线程的流程
4 系统管理模块
系统管理模块实现对整个系统模型中模块的的管理和扩展配置,使用web浏览器作为用户接口,方便网络管理员进行管理和参数配置。
5 结语
根据数据采集后迁移路径的特点, 提出了智能移动代理的网络安全管理模型,实现了最优迁移路径策略算法,此算法采用选取排除最长路径顶点的方法最大程度降低时间复杂度。同时,设计了通信报警模块,该模块已经实现了向指定终端发送紧急情况的信息功能。下一步的研究是实现终端(如移动手机)编辑配置信息进行远程智能安全管理,及时控制紧急情况,该功能涉及手机终端嵌入式设计开发,还需要一定的研究实验。
[1] 王孙名,唐红,沈建国.新一代宽带无线移动通信网络管理的研究[J].通信技术,2007,40(12):201-205.
[2] 李捷,郭拯危,刘先省,等.利用移动代理提高网络管理性能的研究[J].小型微型计算机系统,2006,27(03):412-416.
[3] 蔡学军.基于可移动代理技术的网络管理系统[D].北京:中国科学院,2000.
[4] 何向荣,沈佐民,吴璞,等.移动代理入侵检测系统中的自适应技术的研究[J].计算机技术与发展,2006,16(02):229-234.
[5] 李敬华,胥光辉.基于移动代理的网络故障管理模型[J].重庆邮电学院学报:自然科学版,2006,18(02):47-52.