简易WINDOWS防火墙的设计与实现毕业设计论文.doc
《简易WINDOWS防火墙的设计与实现毕业设计论文.doc》由会员分享,可在线阅读,更多相关《简易WINDOWS防火墙的设计与实现毕业设计论文.doc(59页珍藏版)》请在三一办公上搜索。
1、毕业设计(论文)简易Windows防火墙的设计与实现论文作者姓名:申请学位专业:申请学位类别:指导教师姓名(职称):论文提交日期:简易Windows防火墙的设计与实现摘 要当今时代是飞速发展的信息时代,计算机与信息处理技术日渐成熟。随着Internet和计算机网络技术的蓬勃发展,网络安全问题现在已经得到普遍重视。网络防火墙系统就是网络安全技术在实际中的应用之一。本设计实现的防火墙采用IP过滤钩子驱动技术,过滤钩子驱动是内核模式驱动,它实现一个钩子过滤回调函数,并用系统提供的IP过滤驱动注册它,IP过滤驱动随后使用这个过滤钩子来决定如何处理进出系统的数据包。本防火墙由以下几个模块组成:过滤规则添
2、加模块,过滤规则显示模块,过滤规则存储模块,文件储存模块,安装卸载规则模块,IP封包过滤驱动功能模块。用户只需要通过主界面菜单和按钮就可以灵活地操作防火墙,有效地保护Windows系统的安全。关键词:防火墙;过滤钩子;过滤驱动;包过滤The Design and Implement of Simple Windows FirewallAbstractThe current era is a rapid development of information age. The technologies of computer and information processing become ma
3、turity. With the Internet and computer network technology to be flourishing, network security that has been widely concerned. Firewall system is one of the security technologies that used in the network. This design has implemented a firewall adopting the IP filter-hook driver technology; its driven
4、 through the kernel mode, the filter-hook callback function has been implemented and the filter-hook driver is registered by the IP filter driver which is provided by system. The IP filter driver uses the filter-hook to handle the data packets in and out. The firewall is composed of the following mo
5、dules: adding filter rules module, display filter rules module, storage filter rules module, storage file module, installation and unloading rules module, IP packet driver module. Users can finish the operation by using main menu and button and protect the system effectively.Key words: Firewall; Fil
6、ter-Hook; Filter Driver; Packet Filtering目 录论文总页数:21页1引言11.1课题背景11.2本课题研究意义11.3本课题研究方法12防火墙概述12.1防火墙的定义12.2防火墙的基本策略22.3包过滤防火墙22.3.1 数据包22.3.2 包过滤防火墙的工作原理23开发工具33.1Visual C+ 6.033.2VSS34防火墙系统构成34.1需求分析34.2设计思路44.3功能模块构成44.4功能模块介绍44.4.1 过滤规则添加删除功能模块44.4.2 过滤规则显示功能模块44.4.3 过滤规则存储功能模块54.4.4 文件存储功能模块54.4
7、.5 文件载入功能模块54.4.6 安装卸载功能摸块54.4.7 IP封包过滤驱动功能模块55防火墙设计55.1程序关键类55.1.1 应用程序类CFireWallAPP55.1.2 主框架类CMainFrame55.1.3 文档类CFireWallDoc65.1.4 视图类CFireWallView75.1.5 _RuleInfo类75.2详细设计85.2.1 主界面85.2.2 添加过滤规则85.2.3 删除过滤规则115.3驱动程序设计135.3.1 简介135.3.2 结构图145.3.3 该驱动的优点145.3.4 本程序的驱动设计146程序测试16结 论18参考文献19致 谢20声
8、 明211 引言1.1 课题背景防火墙是一种隔离技术,是一类防范措施的总称,利用它使得内部网络与Internet或者其他外部网络之间相互隔离,通过限制网络互访来保护内部网络。防火墙是建立在内部网络与外部网络之间的唯一安全通道,简单的可以只用路由器实现,复杂的可以用主机甚至一个子网来实现,它可以在IP层设置屏障,也可以用应用软件来阻止外来攻击。通过制定相应的安全规则,可以允许符合条件的数据进入,同时将不符合条件的数据拒之门外,这样就可以阻止非法用户的侵入,保证内部网络的安全。1.2 本课题研究意义随着计算机技术和网络技术的发展,计算机网络给人们带来了很多便利,于此同时网络安全的问题也伴随着网络技
9、术的发展而日趋严重。使用防火墙能很好的提高系统的安全性,减少系统受到网络安全方面的威胁。本毕业设计选择开发一个Windows下的防火墙,它能够对网络IP数据包按照用户的设置进行过滤。通过此防火墙的开发锻炼了学生的实际动手能力对以后的学习和工作能力的培养具有重要意义。1.3 本课题研究方法本设计是使用VC+ 6.0的开发环境,运用IP过滤钩子驱动技术设计和实现的。本次毕业设计应首先分析防火墙的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识,在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;同时,在开发设计与实现中,要保存好相关的设计文档
10、。2 防火墙概述2.1 防火墙的定义防火墙是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它可通过监测、限制、更改跨越防火墙的数据流,尽可能地对外部屏蔽网络内部的信息、结构和运行状况,以此来实现网络的安全保护。在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和Internet之间的任何活动,保证了内部网络的安全。防火墙是设置在被保护网络和外部网络之间的一道屏障,实现网络的安全保护,以防止发生不可预测的、潜在破坏性的侵入。防火墙本身具有较强的抗攻击能力,它是提供信息安全服务、实现网络和信息安全的基础设施。2.2 防火墙的基
11、本策略按照美国国家计算机安全协会(NCSA)的建议,制定安全计划必须包括服务访问策略和防火墙设计策略。服务访问策略应包括控制用户对某些Internet服务的访问。另外,用户也需要限制访问的方式,如PPP或SLIP。在建立服务访问政策时,需要注意两个方式:1、不允许从Internet上访问到用户的网络,但是允许个别用户(设定得到)的网络访问有限Internet站点。但必须进行地址伪装;2、允许有限的从Internet上访问到公司网络,如从Internet上只能访问公司的WWW和FTP服务器。作为防火墙策略,就是定义实现服务访问策略的具体规则。在实现防火墙策略时,用户可以采用以下两个原则之一:1、
12、除了允许的事件之外,拒绝其它的任何事件。2、除了拒绝的事件之外,允许其它的任何事件。制定的策略是由一条条规则构成的,防火墙的规则可分为三条链:输入链、输出链和转发链。2.3 包过滤防火墙2.3.1 数据包数据包是指IP网络消息。IP标准定义了在网上两台计算机之间发送的消息的结构.结构上,一个包包含了一个信息头和应被传送数据的一段消息体。Linux中包含的IP防火墙机制3种IP消息类型:ICMP(Internet控制消息协议)、UDP(用户数据报协议)和 TCP(传输控制协议)。所有的IP包头包含了源、目的IP地址、IP协议消息类型。包头里根据协议类型还包括了不同的字段。ICMP数据包包含了一个
13、类型字段,用来标识控制或状态消息类型。UDP和TCP包包含了源和目的服务端口号。2.3.2 包过滤防火墙的工作原理采用这种技术的防火墙产品,通过在网络中的适当位置对数据包进行过滤,根据检查数据流中每个数据包的源地址、目的地址、所有的TCP端口号和TCP链路状态等要素,然后依据一组预定义的规则,以允许合乎逻辑的数据包通过防火墙进入到内部网络,而将不合乎逻辑的数据包加以删除。因为路由器通常分布在有不同安全需求和安全策略的网络的交界处,因此可以通过在路由器上使用包过滤在可能的情况下实现只允许授权网络的数据进入。在这些路由器上使用包过滤师一种比较经济的在现有路由基础结构上增加防火墙功能的机制。顾名思义
14、,包过滤在路由过程中对指定包进行过滤(丢弃)。对过滤的判断通常基于单个包的头部所包含的内容(例如源地址,目的地址,协议,端口等)。包过滤防火墙通常在操作系统内部实现,并且操作在IP网络和传输协议层。它在对基于IP包头信息实施过滤后,通过对包的路由作决策来保护系统。包过滤防火墙由一组接受或禁止规则列表组成。这些规则明确定义了哪个包将被允许或不允许通过网络接口。防火墙规则使用在上面描述的包头字段来决定是否允许路由一个包通过,以达到它的目的,或则无声息的将包丢弃掉,或阻止包并向它的发送机器返回一个错误状态。这些规则是基于特定的网络接口卡和主机IP地址、网络层源和目的IP地址、传输层TCP和UDP服务
15、端口、TCP连接标志、网络层ICMP消息类型及这些包是进入的还是发出的。包过滤功能是所有的防火墙都具备的一个基本功能,实际上防火墙要完成的功能从根本上来说,就是要按照用户的要求来控制网络所流通的数据包,屏蔽那些无益的连接。3 开发工具3.1 Visual C+ 6.0Visual C+6.0 是微软98 年推出的产品,它提供了强大的编译能力以及良好的界面操作性。能够对Windows 9x、Windows NT 以及Windows 2000 下的C+程序设计提供完善的编程环境。同时Visual C+6.0 对网络、数据库等方面的编程也都提供相应的环境支持。3.2 VSS版本控制是工作组软件开发中
16、的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。 VSS可以同 Visual Basic、Visual C+、Visual J+、Visual InterDev、Visual FoxPro 开发环境以及 Microsoft Office 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual
17、SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。4 防火墙系统构成4.1 需求分析该防火墙的主要功能是实现包过滤,其他功能主要包括以下几个方面。1、能设置过滤规则,包括:IP地址、子网掩码、端口号、协议。2、能添加删除规则。3、能将过滤规则保存。4、能对过滤规则进行安装和卸载操作,即:将规则发送给IP过滤驱动或从IP过滤驱动中删除规则。5、能正确完整的显示所添加的过滤规则。4.2 设计思路根据程序的需求来完成功能和模块化设计的思想,总体设计思路如下:任何程序都必须具有和用户进行信息交互的功能,因此用户接口部必须考虑,根据功能要求,该部分应具备:用户操作的功
18、能菜单、能对过滤规则进行设置、显示规则界面、添加规则界面。这样程序的功能模块应该有:过滤规则添加删除功能模块,过滤规则显示功能模块,过滤规则存储功能模块,文件储存功能模块,安装卸载规则功能模块。4.3 功能模块构成功能模块构成如图1。包过滤防火墙过滤规则添加删除功能模块过滤规则显示功能模块过滤规则存储功能模块文件储存功能模块文件载入功能模块安装卸载功能模块IP封包过滤驱动功能模块图1 功能模块图4.4 功能模块介绍4.4.1 过滤规则添加删除功能模块包过滤防火墙要进行数据包过滤就需要按照用户定义的规则进行包过滤,该功能模块就是使用户能够添加或删除过滤规则。过滤规则主要包括:源IP地址、子网掩码
19、、端口号,目的IP地址、子网掩码、端口号,协议,以及对符合该规则的数据包是放行还是阻止进行设置。然后将设置好的规则添加到存储功能模块。4.4.2 过滤规则显示功能模块该功能用于显示用户添加的规则,能够对每一条规则进行删除、安装、卸载的操作,使防火墙过滤规则能够很详细的显示给用户。4.4.3 过滤规则存储功能模块该功能用于存储用户添加的过滤规则,接受用户对每一条规则的操作,并按照用户的操作将规则进行处理。如:安装规则,则把用户选择的规则安装到IP过滤驱动,IP接收到此规则后按照此规则进行数据包过滤。4.4.4 文件存储功能模块使用户添加的过滤规则能够保存成文件的形式方便储存,在用户添加规则后可以
20、选择某一条规则进行保存,防火墙会将该规则保存为后缀名为.rul的文件,在下次打开防火墙的时候可以直接加载该规则。4.4.5 文件载入功能模块相对于文件储存功能模块,该功能是实现用户可以导入一个后缀名为.rul的并且保存了有效规则的文件。4.4.6 安装卸载功能摸块防火墙要过滤数据包,就需要将IP过滤驱动按照定义的规则进行过滤。用户通过添加规则将规则存储于防火墙的存储功能模块中,想要将规则发送给IP过滤驱动,就需要对该规则进行安装。安装和卸载的功能就是将过滤规则传送给IP过滤驱动或是将已安装的规则从过滤驱动中删除。4.4.7 IP封包过滤驱动功能模块该功能模块是整个包过滤防火墙的核心部分,IP封
21、包过滤驱动能按照用户定义的规则对数据包做出阻止或是放行的选择。5 防火墙设计5.1 程序关键类5.1.1 应用程序类CFireWallAPP每个MFC应用程序都必须包括一个从CWinApp派生的应用程序类,在本程序中的应用程序类就是CFireWAllApp。应用程序类构成了应用程序的主执行线程,它封装了一个Windows应用程序的初始化、运行和终止。5.1.2 主框架类CMainFrame主框架类CMainFrame构成整个程序的框架,包括菜单、工具、按钮等。它构成了程序功能的主框架。下面列出了CmainFrame类中的主要方法和变量。class CMainFrame:public CFram
22、eWndprotected:BOOL Installed;/规则安装标志TRUE-已安装,FALSE-未安装protected: BOOL started;/开始过滤的标志,TRUE-已开始,FALSE-未开始TDriver filterDriver;/定义一个TDriver类的变量,TDriver ipFltDrv;/protected:BOOL AddFilterToFw();/AddFilterToFw完成将过滤钩子安装到防火墙的功能。/AFX_MSG(CMainFrame)afx_msg void OnAppExit();/退出程序afx_msg void OnButtonadd();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简易 WINDOWS 防火墙 设计 实现 毕业设计 论文
链接地址:https://www.31ppt.com/p-2389960.html