基于snort和iptables的简单IPS系统的设计与实现.doc

上传人:仙人指路1688 文档编号:2401831 上传时间:2023-02-17 格式:DOC 页数:47 大小:2.74MB
返回 下载 相关 举报
基于snort和iptables的简单IPS系统的设计与实现.doc_第1页
第1页 / 共47页
基于snort和iptables的简单IPS系统的设计与实现.doc_第2页
第2页 / 共47页
基于snort和iptables的简单IPS系统的设计与实现.doc_第3页
第3页 / 共47页
基于snort和iptables的简单IPS系统的设计与实现.doc_第4页
第4页 / 共47页
基于snort和iptables的简单IPS系统的设计与实现.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《基于snort和iptables的简单IPS系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于snort和iptables的简单IPS系统的设计与实现.doc(47页珍藏版)》请在三一办公上搜索。

1、本 科 生 毕 业 设 计(申请学士学位)论文题目 基于snort和iptables的简单IPS系统 的设计与实现 作者姓名 周伟伟 所学专业名称 网络工程 指导教师 戴支祥 2014年5月25日学 生: (签字)学 号:2010211262答 辩 日 期:2014年 6月14日指 导 教 师: (签字)目 录摘要1Abstract11 绪论21.1研究现状21.2系统设计的主要意义31.3文章结构32 相关技术和理论基础42.1 snort简介42.1.1 snort概述42.1.2 snort工作原理42.1.3 snort规则52.2 iptables简介62.2.1 iptables概

2、述62.2.2 iptables工作原理62.2.3 iptables规则72.3 入侵检测系统和防火墙的联动82.3.1 联动基本概念82.3.2 联动工作原理83 系统需求分析93.1业务流程93.2可行性分析104 总体设计114.1系统结构设计114.2数据库设计124.2.1 概念设计124.2.2 逻辑设计145 系统实现165.1 系统开发环境165.2 系统主页面165.3管理员登入模块175.4管理员信息管理模块205.4联动响应模块245.5攻击统计图模块255.6邮件通知模块275.7系统启动关闭模块285.7事件查看模块305.8 snort规则管理模块315.9 ip

3、tables规则管理模块356 系统测试376.1系统测试的方法376.2测试环境376.3管理模块测试376.3.1 snort规则管理模块测试376.3.2 iptables规则管理模块测试396.4联动模块测试396.4.1 防御ping攻击测试396.4.2 防御Nmap扫描测试406.5攻击查看测试40结束语40参考文献41致 谢42基于snort和iptables的简单IPS系统的设计与实现摘要:面对日益严峻的网络安全形势,传统的网络安全技术显得力不从心。针对入侵检测系统(Intrusion Detection System,IDS)和传统防火墙的缺陷,本文设计并实现了一个Ubun

4、tu系统下将传统防火墙iptables和入侵检测系统snort相互联动的简单IPS系统。运用snort记录攻击事件,采用Java编写了实时监控程序,实时监测snort报警日志,如果监测到攻击事件,系统动态生成规则,应用iptables实时阻断攻击。该系统使用Browser/Server模式,管理员登录系统后才可以进行远程操作,支持通过Web页面关闭/启动系统,插入/删除/查看iptables规则,插入/删除/查看snort规则,管理管理员的基本信息等。管理员配置的所有规则都通过MySQL数据库进行保存,所有的攻击事件和iptables防火墙的响应事件也保存在数据库中,方便管理员日后进行查找和分

5、析。同时搭建了一个测试平台来测试系统的可靠性。关键词:iptables;snort;Browser/Server;联动Design and Implementation ofSimple IPS System Based on snort and iptables Abstract: Facing the increasingly serious situation of network security,the traditional network security technology is insufficient. Aiming at the shortage of traditio

6、nal firewall and intrusion detection system, this article designs an Intrusion Prevent System (IPS) to link intrusion detection system snort and the firewall iptables under Ubuntu. IPS uses the snort recording attacks, runs a program written in Java to monitor snorts alarm log. If IPS detects an int

7、rusion, it can dynamically generate rules and call iptables blocking attacks in time. The system adopts Browser/Server mode, admintors can remotely operate system after logging in system. All of these functions are supported through web pages, such as shut down / startup, inserting/deleting/viewing

8、rules of snort and iptables, managing the basic information of administrators and so on. All the rules,attacks and responds are stored in the MySQL database in order to facilitate the administrator to search and analysis. At the same time, a platform for testing purpose is built .Key words: iptables

9、; snort; Browser/Server; cooperation 1 绪论1.1研究现状随着Internet的快速发展,诸如电子商务、电子化办公等已经或正在成为现代生活的重要组成部分。但是Internet让工作及生活变的越来越方便的同时,也使得网络安全风险不断增加。我们必须面对和解决网络安全隐患。2013年的“斯诺登事件”,就是一个典型的网络安全事件。网络安全的重要性不言而喻。为了解决日益严重的网络安全隐含,许多网络安全技术被推出,防火墙和入侵检测系统就是其中两种比较成熟的技术。防火墙是一个成熟的网络安全技术,主要作用是访问控制和身份认证,它是保障网络安全的的第一道安全门,但是防火墙自

10、身也存在着一些缺陷。首先,它是一种静态的网络安全技术,因为它的安全策略需要事先设计好。其次,防火墙无法拦截所有类型的攻击,比如一些协议漏洞发起的攻击和来自网络内部的攻击。基于以上问题,为了保障网络的安全就需要网络管理员实时查看网络的状态,及时发现攻击,并对攻击进行分析重新制定安全策略。导致了大量的人力浪费在重复的劳动上1。入侵检测系统是保障网络安全的第二道安全门,它是一种被动型的网络安全技术,主要是用来监听网络运行状态,并判断是否有入侵行为发生,并记录入侵行为的基本信息。但是相对防火墙来说,IDS缺少阻断攻击的能力。随着网络安全形势的日益严峻,单纯的防火墙和入侵检测系统都不能有效保障网络安全。

11、真正的纵深防御技术应该不仅能够发现攻击事件,而且能够及时地、主动地阻止攻击,防止攻击对用户造成危害。正是基于这种思想,一种新的网络安全技术入侵防御系统(Intrusion Prevention System,IPS)被研究出来。2002年一些国际网络安全组织首次提出入侵防御系统的概念,并随着网络安全问题的日益突出,越来越多的人开始关注IPS。IPS在随后的几年里得到了快速发展。 2003年6月Gartner公司副总裁Richard Stiennon在其发表的著名的题为Intrusion Detection Is Dead-Long Live Intrusion Prevention的研究报告中

12、提出:IDS不但不能给网络带来安全性,反而会增加网络管理员的困扰,建议用户使用IPS来代替IDS2。经过多年研究,国外一些公司推出了各自的IPS产品,比如CISOC公司的IPS 4300/4500系列、Juniper公司的Juniper Networks,Symantec公司的ManHunt和Intruder Alert、TopLayer公司的ips 5500、McAfee的IntruShield系列和Entercept系列、NetScreen的IDP系列等3。相比较国外,国内对于IPS的研究起步较晚,直到2004年方正科技公司才推出了方正方通入侵防御系统4。2005年9月15日,绿盟科技也推

13、出自己的入侵防御系统ICEYE NIPS5。不久后,北京启明星辰信息技术有限公司推出了其自主研发的天清系列入侵防御系统,比如天清入侵防御系统NIPS8606。华为公司在2013安捷信合作伙伴大会上推出了一款功能强大的入侵检测系统NIP5000入侵防御系统,并在同年5月份发布了一款世界领先的万兆级入侵防御系统NIP55007。IPS已经逐渐成为网络安全市场的主流产品,并且还在继续研发并完善中。1.2系统设计的主要意义防火墙是一种基于规则库在外部网络和内部网络之间实行访问控制的系统。逻辑上,防火墙是由限制器和分离器组成;实际中,防火墙一般是由一些硬件设备和软件设备组成。它按照预制的规则和配置,检测

14、然后过滤网络流量,从而保护网络安全。但是它的缺点也很明显:防火墙的规则是固定的,不能依据网络运行情况进行动态调整,也不能记录攻击行为用于事后分析和取证等8。总之,防火墙存在以下几个问题:防火墙的规则编写较难。编写过于严格,网络的正常运行则会受到影响;编写过于宽松,网络安全则难以保障。 防火墙是一种静态的技术,它不能动态地处理入侵事件。 防火墙无法阻止不经过它的入侵。比如来自内网的入侵等。 防火墙无法阻止一些基于协议的入侵。比如针对Web、FTP等协议的攻击。入侵检测系统是指可以通过规则库检测入侵行为,并对被检测出的入侵行为做出正确响应的系统。根据其工作原理的不同,可分为主机型、网络型和分布式型

15、三种。入侵检测系统虽然能够实时的检测网络安全状态,但是它也有一些缺点: 无法检测非面向连接的攻击。 无法检测拒绝服务攻击。 入侵检测的可靠性不高。 当有针对系统本身的攻击时,会影响系统正常运行。防火墙和入侵检测系统在实际网络环境中都有一些不足之处,因此将二者相互联动,组建IPS系统可以取长补短,更好的保护网络安全。相比较于传统防火墙和入侵检测系统,入侵防御系统是一种主动的、积极的网络安全技术9。但是商业IPS的价格高昂,许多中小型企业不具备购买能力。因此,本设计选用开源的snort和Ubuntu操作系统自带的iptables相互联动来实现简单的IPS系统。开源软件的免费特性使得企业无需考虑系统

16、部署成本,开放性使得企业不用担心被一家或某几家商业软件绑架,丰富的技术参考资料和大量已有的部署案例为成功进行系统部署提供了技术参考和保障。同时本设计的开发模式使用B/S模式,前台Web界面提供用户管理IPS的功能,后台采用JAVA 监控snort报警日志并将攻击方添加到iptables阻止规则链中。1.3文章结构本设计共分为六部分。第一部分剖析了本设计的研究背景和研究意义,并且简单介绍了IPS的国内外研究现状和主要产品。第二部分介绍了snort和iptables规则的构成以及各自的工作原理。同时也分析了snort和iptables的优缺点,并描述了IPS的工作原理及特征。第三部分分析了本系统的

17、市场需求和应用价值,然后对系统的开发进行了业务流程分析和可行性分析。第四部分首先对系统每个模块进行了设计和功能介绍,然后对数据库进行了概念设计和逻辑设计。第五部分介绍了系统主要功能模块的关键代码,并展示了运行界面。第六部分介绍了测试使用的攻击手段,并展示了测试的结果。最后是结束语,对系统进行了简单的介绍和概括。2 相关技术和理论基础2.1 snort简介2.1.1 snort概述snort是一款轻量级网络入侵检测系统(Network Intrusion Detection System,NIDS)。它是以Sniffer为基础,通过不断地重写代码,改进功能,才成为了一款流行的NIDS。本质上sn

18、ort是一款网络数据包嗅探器,但是它的创新性在于使用规则来检测数据包。snort的检测是基于规则库的,所有snort规则都被保存在文本文件中,并按照攻击类型保存为不同名称的文件,这些文件构成了规则库。snort在启动时通过配置文件来读取规则检测数据包以发现入侵事件,并进行处理,可供选择的方式有:忽略、记录或报警。snort有诸多优点: 支持多种硬件平台和所有的操作系统平台,用户可自行选择。 采用模块化结构,具有较强的可扩展性,对于新的攻击手段,只需简单的添加新的规则就可以检测到。 规则存储在文本文件中,方便用户改写规则。用户可以添加自己的规则,也可以删除规则库中的规则。 snort是开源的、免

19、费的软件。snort也有一些缺点: snort的正确安装非常困难,各个组件相互协调才能保证系统稳定的运行。 snort依赖的Libpcap自身存在缺陷,流量超过百兆就导致系统奔溃。 容易产生误报警,对于合法流量只要匹配规则就会报警。 文本形式的规则反而加大了用户的配置难度,对于新手很难真确配置。2.1.2 snort工作原理snort的模块化结构,使得系统具有较好的可扩展型。它是由下列几个部分组成:包解码器、检测引擎及插件、预处理器插件和报警输出模块等。各个模块相互合作,当检测到snort规则库中已定义的的攻击特征时,产生指定形式的报警信息10。snort的工作原理如图2-1所示。图 2-1

20、snort工作原理snort的运行是基于插件的,所有的插件都是依据snort官方提供的函数接口开发的。用户自由安装功能插件,也可以自己开发出适合自己的插件,这使得功能扩展更加简单。2.1.3 snort规则snort作为一款流行的NIDS,它出类拔萃之处在于它的规则文件被设计成可编辑的文本文件。完整的snort规则应该由两部分构成:括号前面的规则头和括号里面的规则体。比如alert tcp any any - any any (flags: A; ack: 0; msg: “NMAP TCP ping”;)就是个典型的规则。规则头是规则不可或缺的一部分,规则头可以定义攻击的一些简单特征,比如源

21、地址、目的地址、源端口、目的端口、协议类型等基本信息,并且它定义了对于入侵事件snort应该采取哪种规则动作。概括起来规则头可以分为7个部分:规则动作、协议类型、源地址、源端口、目的地址、目的端口和方向操作符。规则动作是构成规则头的第一个部分,它告诉snort当检测到入侵时,探测引擎将会采取什么样的响应。Snort规则动作可分为预置规则动作和自定义规则动作。5种预置的动作如表2-1所示:表2-1 snort预置规则动作规则动作含义alert应用默认机制产生告警,以及做相应记录log对包应用规定机制进行记录pass忽略这个数据包activate先告警,接着activate一个不同的dynamic

22、dynamic待一条规则激活,接着记录日志自定义规则动作可以使用以下通用结构来定义:ruletype动作名称Action definition自定义动作定义是在大括号内完成,动作名称的则是在大括号外的ruletype关键字之后。规则动作定义完成之后,必须放在snort的配置文件中才可以直接调用动作名称使用。协议类型是构成规则头的第二部分,主要是用来对比数据包的协议类型。当前,最新版的snort可以支持IP、TCP、UDP和ICMP四种协议类型的数据包检测。协议部分仅在规则头部起作用,与规则选型无关。在规则头中,有两个地址部分用来检测数据包的源地址、源端口、目的地址和目的端口。地址可以是主机地址

23、或者网络地址,也可以用关键字any来代表所有地址或者端口。采用的无类别域间路由地址,符合当前网络地址的标准形式。当用户想排除掉某些地址或端口时,可采用非运算符“!”。在snort规则方向操作符是一个非常重要的概念,指明了哪一边是源,哪一边是目的。方向操作符主要有三种: -表示数据包从左边定义的地址发送给右边定义的地址。 -表示数据包从右边定义的地址发送给左边定义的地址。 表示规则被应用在两个方向。规则体属于可选内容,主要用来对数据包进行深层次攻击特征检测。它由多个规则选项组成,每个选项之间使用“;”分开,便于snort区分各个选项。只有所有规则选项定义的攻击特征被满足时,规则头中定义的规则动作

24、才被使用。规则选项的关键字有许多,最新的版本中规则选项关键字将近50个。一些常见snort规则选项关键字如表2-2所示。表2-2常见选项关键字选项关键字含义sid 规则号msg 告警信息ttl 判断IP包的TTL值classtype 规则类型2.2 iptables简介2.2.1 iptables概述iptables是一款工作于用户空间的防火墙应用软件,自从Linux 2.4发布后,它就已经成为了Linux操作系统自带的防火墙。经过多年的研究与完善,它已发展成为一款功能强大的流行的防火墙,具备了许多商业防火墙才有的功能。比如,iptables能够检测数据包的应用层、能够跟踪协议、能够制定过滤规

25、则和访问控制等功能。基本上所有版本的Linux都预置了iptables。从工作原理上来看,iptables仅仅是用户和防火墙之间的控制接口,真正的防火墙是Netfilter框架。Netfilter框架是由Rusty Russell提出的Linux内核防火墙框架。简单的说表由链组成,而链又由规则组成。Netfilter有Filter表、NAT表、Mangle表和 Raw表四个表,一般情况下默认使用Filter表。而iptables则只是用来管理表、链和规则的工具。2.2.2 iptables工作原理基于iptables的策略机制,用户可以通过iptables对数据包进行严格地包过滤。完整的ipt

26、ables策略是由一组的iptables规则组成,它的主要作用是让Linux内核知道如何处理一些特定的数据包。规则建立在链中,一个链就是一个完整的规则集。防火墙通过规则对数据包进行特征比较,然后对数据包做出响应动作11。iptables的工作原理如图2-2所示。图2-2 iptables的工作原理2.2.3 iptables规则iptables主要是用来增加、删除和修改链,在链中创建、删除和更改过滤规则的管理工具。它的功能强大,但是用法简单。常见的iptables命令格式为:iptables -t 表名 命令选项 链名 条件匹配 -j 目标动作或跳转“-t 表名”是指需要进行操作的表,通常使用

27、Filter表、Nat表、Raw表和Mangle表四个中的一个。如果该项缺省则系统默认使用Filter表。Filter表用来保存过滤规则,Nat表用来保存NAT规则,Mangle表用来保存修改分组数据的特定规则,而Raw表用来保存在连接跟踪前处理数据包的规则。“命令选项”是用来对链或规则进行操作的,常见的命令选项表2-3所示。表2-3常见的命令选项选项含义-A向指定链中追加规则-D 从指定链中删除指定规则-F 清空指定链中的所有规则-I在指定规则前插入规则-L显示指定链中的所有规则-N建立用户自定义链-R替换指定链中某条规则-X删除不在使用的用户自定义链“链”是指要被操作的链名,它分为内置链和

28、自定义链两种。在Filter表中最重要的内置链是OUTOUT链(输出链)、INPUT链(输入链)和FORWARD链(转发链)。“条件匹配”指匹配数据包时的规则特征,只有当数据包匹配这些条件时,才可以进行该规则指定的动作。常见的匹配选项如表2-4所示。表2-4 常见的匹配选项选项含义-s匹配源IP地址或网络-d 匹配目标IP地址或网络-p 匹配协议类型-i流入接口-o流出接口“目标动作或跳转”是当数据包的特征匹配规则时触发的动作。常见的动作如表2-5所示。表2-5 常见的动作选项含义ACCEPT允许数据包通过DROP丢弃数据包,并不对数据包进行进一步处理LOG将数据包信息记录到syslogREJ

29、ECT丢弃数据包,同时发送适当的响应报文RETURN在调用链中继续处理数据包2.3 入侵检测系统和防火墙的联动2.3.1 联动基本概念snort和iptables各自都存在一些缺陷,为了解决这些缺陷带来的网络安全问题,联动机制的概念被提出来了。通过将iptables和snort相互联动,iptables能通过snort及时发现符合规则的入侵行为,snort能够使用iptables对入侵行为进行处理。基于联动机制实现的简单IPS能够更有效地保障网络安全,进一步提高了防护性能,并且与商业IPS相比较,它大大降低了成本12。 2.3.2 联动工作原理数据包进入系统之后,iptables防火墙按照规则

30、对数据包进行特征比较,满足规则的数据包按照规则中的动作进行处理,通过检查的数据包交给snort进行进一步的检测。如果发现数据包的信息与规则库中规则匹配,则调用联动模块将数据包的源地址加入到iptables的阻止链中并记录信息。联动的工作原理如图2-3所示。图2-3 联动工作原理3 系统需求分析3.1业务流程系统可分概括为两大部分:系统联动部分和Web管理部分。联动部分主要是面对snort和iptables,数据包首先通过iptables的初步过滤,判断是否匹配过滤规则。如果满足iptables规则就对数据包执行该规则定义的规则动作,如果不满足iptables规则就交给snort进行进一步的检测

31、。snort通过规则库对数据包进行特征匹配,如果特征匹配失败,数据包则通过检测。如果匹配成功,snort就向报警日志中添加新的报警信息。当联动模块监测到报警日志有新的报警信息时,就对其进行分析,提取攻击行为的各种信息,并将这些信息插入到数据库中,方便日后取证调查。然后联动模块会根据攻击行为的信息生成一个规则,并插入到iptables过滤规则库中。当攻击者再次攻击时,攻击数据包就会被iptables过滤,从而达到保障网络安全的作用。图3-1为联动部分业务流程图。Web管理部分主要是面对管理员,管理员登入系统后才可对系统进行操作,支持通过Web页面进行系统的关闭/启动、snort规则查看/删除/添

32、加,iptables规则查看/删除/添加,管理员的基本信息管理等。所有管理员添加的规则信息和联动模块保存的信息都保存在数据库中,可以说数据库就是联动模块和Web管理模块之间的接口。图3-2为Web管理部分业务流程图。图3-1联动部分业务流程图图3-2 Web管理部分业务流程图3.2可行性分析为了确保本系统的可行性,本文对以下三个方面进行了分析: 技术可行性本系统核心代码采用Java语言编写,数据库使用MySQL,前台界面使用JSP。这些都是广泛使用的技术和软件,据有较好的跨平台性和可靠性。 经济可行性联动使用的入侵检测系统是轻量级的snort,防火墙采用Ubuntu自带iptables防火墙。

33、snort和iptables都是开源的免费的,但是它们却具备商业安全软件才具备大部分功能,这样很大程度的降低了系统的开发成本。 操作可行性系统使用的联动软件都是占用系统资源较少的,一般的PC机就可以当做运行平台,不需要购买专用服务器。4 总体设计4.1系统结构设计本系统主要分为以下几个模块:管理员登入、管理员信息管理、联动响应模块、攻击统计图、邮件通知、系统启动和关闭、事件查看、snort规则管理、iptables规则管理。 管理员登入用户必须登入后才能对系统进行操作,并且系统会记录下管理员的登入时间。 管理员信息管理初级网络工程师和中级网络工程师级别的管理员只能对自己的基本信息进行修改,高级

34、网络工程师级别的管理员能够修改所有管理员的信息,也能添加新的管理员或删除已有的管理员。 联动响应模块该模块实时的监测snort的告警日志,如果有新的攻击发生,就会在数据库中记录,并生成规则,调用iptables阻断攻击。被阻断的攻击源地址直到管理员手动解闭后才能正常与本机通信。 攻击统计图生成该模块从数据库中的Alert表获得攻击事件,统计不同协议类型的攻击的数目。然后通过JFreeChart包来生成饼状图,直观的展示了攻击事件的类型和比例。 邮件通知当有攻击发生时,系统会发送邮件通知管理员。如果管理员没有登入系统,管理员可以通过手机邮件查看攻击的信息。 系统启动和关闭管理员可以通过该模块来启

35、动或者关闭IPS系统。 事件查看通过该模块管理员能够查看保存在数据库中的攻击事件和响应事件,并且通过可以解闭攻击地址,使得具有该地址的数据包不会被iptables阻止。 snort规则管理管理员可以通过该模块,对snort规则进行增加、删除和查看。 iptables规则管理管理员可以通过该模块,对iptablest规则进行增加、删除和查看。系统功能结构如图4-1所示。图4-1 系统功能结构图4.2数据库设计4.2.1 概念设计概念模型是对真实世界中问题的事件描述,它是面向现实世界的数据模型,E-R图就是一种典型概念模型。图4-2至图4-6是各个数据表的实体图。 管理员employee的实体图图

36、4-2管理员信息表employee的实体图 snort告警日志信息表alert的实体图图4-3 snort告警日志信息表alert的实体图 iptables响应事件信息表iptable_prevent的实体图图4-4 Iptable响应事件信息表iptable_prevent的实体图 snort规则表snort_rule的实体图图4-5 snort规则表snort_rule的实体图 iptables规则表iptables_rule的实体图图4-6 iptables规则表iptables_rule的实体图 系统总体E-R图图4-7 系统总体E-R图4.2.2 逻辑设计逻辑结构设计是把概念设计转化

37、为与选用的数据库管理系统支持的数据模型的逻辑结构。具体表现为表的设计,根据实体图,可以得到下列表: 管理员信息表employee管理员信息表employee是用来保存管理员的基本信息。结构如表4-1所示。表4-1 employee的结构字段表代号字段名字段类型是否为主键employeeID管理员编号int(11)是employeeName管理员姓名varchar(20)否employeeSex管理员性别int否employeeBirth管理员生日date否employeePhone管理员电话varchar(20)否employeePlace管理员地址varchar(50)否joinTime登入

38、时间date否password登入密码varchar(20)否employeeEmail管理员邮箱varchar(50)否authority权限Int否 snort报警日志信息表alertsnort报警日志信息表alert是用来保存联动模块分析snort报警日志得到的攻击事件的基本信息。结构如表4-2所示。表4-2 alert的结构字段表代号字段名字段类型是否为主键alertid报警编号varchar(50)是fromaddress源地址varchar(50)否toaddress目的地址varchar(50)否alertmsg攻击提示varchar(100)否protocol协议名称varch

39、ar(50)否alerttime报警时间varchar(50)否priority报警级别varchar(50)否state是否阻止varchar(50)否 iptables响应事件信息表iptable_preventiptables响应事件信息表iptable_prevent是用来保存联动模块生成的响应事件的基本信息。结构如表4-3所示。表4-3 iptable_prevent的结构字段表代号字段名字段类型是否为主键preventid阻止编号int是(自动增加)alertid报警编号varchar(50)外键preventtime阻止时间date否preventmsg阻止信息varchar(1

40、00)否 snort规则表snort_rulesnort规则表snort_rule是用来保存管理员添加的snort规则的基本信息。结构如表4-4所示。表4-4 snort_rule的结构字段表代号字段名字段类型是否为主键sidsnort规则idint是(自动增加)rule_header规则头text否rule_action规则动作text否add_time添加时间date否employeeID添加者idvarchar(50)外键rule_msg规则描述varchar(50)否 iptables规则表iptables_ruleiptables规则表iptables_rule是用来保存管理员添加的

41、iptables规则基本信息。结构如表4-5所示。表4-5 iptables_rule的结构字段表代号字段名字段类型是否为主键idiptables规则idint是(自动增加)rule规则体text否add_time添加时间date否employeeID添加者idvarchar(50)外键rule_msg规则描述varchar(50)否5 系统实现5.1 系统开发环境表5-1 系统运行环境及开发工具类型软件版本操作系统LinuxUbuntu 11.10Java运行环境OpenJDK1.6.0_27Web ServerTomcat7.0浏览器火狐10.4.2入侵检测系统snort2.8.5.1-1

42、防火墙iptables1.4.17开发工具EclipseEclipse IDE for Java EE Developers数据库MySQL5.2.6虚拟机Vmware Workstation10.0.1本系统的运行平台是Vmware Workstation虚拟机中安装的Ubuntu系统,所有的开发都是在Ubuntu系统下完成并测试的。Ubuntu是一个新兴的Linux系统,但是它却能够从众多的Linux发行版本中脱颖而出,主要是因为它的四个优点:便利化、国际化、免费性、安全性13。本系统使用Eclipse开发,这是一款功能强大的开发环境,可以集成各种插件来满足开发者的需求。它同时也是一款开源

43、的、免费的的开发平台14。5.2 系统主页面IPS系统主页面是管理员登入系统后的页面,它包括的主要内容有:管理员基本信息显示、IPS系统启动和关闭、攻击统计饼状图显示等内容。系统主页面运行效果如图5-1所示。图5-1 系统主页面5.3管理员登入模块管理员登入模块是系统安全运行的保障,只有经过登入验证的用户才可以对系统进行操作。用户填入账号和密码,并点击“登入”按钮,系统将输入的账号和密码交给Javascript进行登入验证,判断用户输入的内容是否为空。如果账号或密码为空,弹出用户名或密码为空的警告;如果账号和密码不为空,就将账号和密码传给LoginServlet。LoginServlet通过调用数据库操作类查询数据库中的表employee,判断管理员是否存在。如果用户存在,就跳转到系统主页面;不存在,则返回登入页面。Login.jsp中完成收集用户信息的关键代码如下: ips管理系统 帐   号: 密   码:  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号