计算机毕业论文,毕业论文,毕业设计 毕业论文免费检测 知网论文检测
当前位置: 骆驼论文网 > 信息安全 >

简易Windows防火墙

时间:2011-04-11 12:49来源: 骆驼毕业论文网 作者:admin
简易Windows防火墙的设计与实现 摘 要 当今时代是飞速发展的信息时代,计算机与信息处理技术日渐成熟。随着Internet和计算机网络技术的蓬勃发展,网络安全问题现在已经得到普遍重视。网络防火墙系统就是网络安全技术在实际中的应用之一。本设计实现的防火墙

QQ交谈计算机毕业设计,毕业设计,毕业论文,计算机毕业论文

简易Windows防火墙的设计与实现
摘  要
当今时代是飞速发展的信息时代,计算机与信息处理技术日渐成熟。随着Internet和计算机网络技术的蓬勃发展,网络安全问题现在已经得到普遍重视。网络防火墙系统就是网络安全技术在实际中的应用之一。本设计实现的防火墙采用IP过滤钩子驱动技术,过滤钩子驱动是内核模式驱动,它实现一个钩子过滤回调函数,并用系统提供的IP过滤驱动注册它,IP过滤驱动随后使用这个过滤钩子来决定如何处理进出系统的数据包。本防火墙由以下几个模块组成:过滤规则添加模块,过滤规则显示模块,过滤规则存储模块,文件储存模块,安装卸载规则模块,IP封包过滤驱动功能模块。用户只需要通过主界面菜单和按钮就可以灵活地操作防火墙,有效地保护Windows系统的安全。

关键词:防火墙;过滤钩子;过滤驱动;包过滤
目  录
论文总页数:21页

1 引言 1
1.1 课题背景 1
1.2 本课题研究意义 1
1.3 本课题研究方法 1
2 防火墙概述 1
2.1 防火墙的定义 1
2.2 防火墙的基本策略 2
2.3 包过滤防火墙 2
2.3.1 数据包 2
2.3.2 包过滤防火墙的工作原理 2
3 开发工具 3
3.1 VISUAL C++ 6.0 3
3.2 VSS 3
4 防火墙系统构成 3
4.1 需求分析 3
4.2 设计思路 4
4.3 功能模块构成 4
4.4 功能模块介绍 4
4.4.1  过滤规则添加删除功能模块 4
4.4.2  过滤规则显示功能模块 4
4.4.3  过滤规则存储功能模块 5
4.4.4  文件存储功能模块 5
4.4.5  文件载入功能模块 5
4.4.6  安装卸载功能摸块 5
4.4.7  IP封包过滤驱动功能模块 5
5 防火墙设计 5
5.1 程序关键类 5
5.1.1  应用程序类CFireWallAPP 5
5.1.2  主框架类CMainFrame 5
5.1.3  文档类CFireWallDoc 6
5.1.4  视图类CFireWallView 7
5.1.5  _RuleInfo类 7
5.2 详细设计 8
5.2.1  主界面 8
5.2.2  添加过滤规则 8
5.2.3  删除过滤规则 11
5.3 驱动程序设计 13
5.3.1  简介 13
5.3.2  结构图 14
5.3.3  该驱动的优点 14
5.3.4  本程序的驱动设计 14
6 程序测试 16
结    论 18
参考文献 19
致    谢 20
声    明 21
 
2 防火墙概述
2.1 防火墙的定义
防火墙是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它可通过监测、限制、更改跨越防火墙的数据流,尽可能地对外部屏蔽网络内部的信息、结构和运行状况,以此来实现网络的安全保护。
在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和Internet之间的任何活动,保证了内部网络的安全。
防火墙是设置在被保护网络和外部网络之间的一道屏障,实现网络的安全保护,以防止发生不可预测的、潜在破坏性的侵入。防火墙本身具有较强的抗攻击能力,它是提供信息安全服务、实现网络和信息安全的基础设施。
2.2 防火墙的基本策略
按照美国国家计算机安全协会(NCSA)的建议,制定安全计划必须包括服务访问策略和防火墙设计策略。服务访问策略应包括控制用户对某些Internet服务的访问。另外,用户也需要限制访问的方式,如PPP或SLIP。在建立服务访问政策时,需要注意两个方式:
1、不允许从Internet上访问到用户的网络,但是允许个别用户(设定得到)的网络访问有限Internet站点。但必须进行地址伪装;
2、允许有限的从Internet上访问到公司网络,如从Internet上只能访问公司的WWW和FTP服务器。
作为防火墙策略,就是定义实现服务访问策略的具体规则。在实现防火墙策略时,用户可以采用以下两个原则之一:
1、除了允许的事件之外,拒绝其它的任何事件。
2、除了拒绝的事件之外,允许其它的任何事件。
制定的策略是由一条条规则构成的,防火墙的规则可分为三条链:输入链、输出链和转发链。
2.3 包过滤防火墙
2.3.1 数据包
数据包是指IP网络消息。IP标准定义了在网上两台计算机之间发送的消息的结构.结构上,一个包包含了一个信息头和应被传送数据的一段消息体。Linux中包含的IP防火墙机制3种IP消息类型:ICMP(Internet控制消息协议)、UDP(用户数据报协议)和 TCP(传输控制协议)。所有的IP包头包含了源、目的IP地址、IP协议消息类型。包头里根据协议类型还包括了不同的字段。ICMP数据包包含了一个类型字段,用来标识控制或状态消息类型。UDP和TCP包包含了源和目的服务端口号。
2.3.2 包过滤防火墙的工作原理
采用这种技术的防火墙产品,通过在网络中的适当位置对数据包进行过滤,根据检查数据流中每个数据包的源地址、目的地址、所有的TCP端口号和TCP链路状态等要素,然后依据一组预定义的规则,以允许合乎逻辑的数据包通过防火墙进入到内部网络,而将不合乎逻辑的数据包加以删除。因为路由器通常分布在有不同安全需求和安全策略的网络的交界处,因此可以通过在路由器上使用包过滤在可能的情况下实现只允许授权网络的数据进入。在这些路由器上使用包过滤师一种比较经济的在现有路由基础结构上增加防火墙功能的机制。顾名思义,包过滤在路由过程中对指定包进行过滤(丢弃)。对过滤的判断通常基于单个包的头部所包含的内容(例如源地址,目的地址,协议,端口等)。
包过滤防火墙通常在操作系统内部实现,并且操作在IP网络和传输协议层。它在对基于IP包头信息实施过滤后,通过对包的路由作决策来保护系统。包过滤防火墙由一组接受或禁止规则列表组成。这些规则明确定义了哪个包将被允许或不允许通过网络接口。防火墙规则使用在上面描述的包头字段来决定是否允许路由一个包通过,以达到它的目的,或则无声息的将包丢弃掉,或阻止包并向它的发送机器返回一个错误状态。这些规则是基于特定的网络接口卡和主机IP地址、网络层源和目的IP地址、传输层TCP和UDP服务端口、TCP连接标志、网络层ICMP消息类型及这些包是进入的还是发出的。
包过滤功能是所有的防火墙都具备的一个基本功能,实际上防火墙要完成的功能从根本上来说,就是要按照用户的要求来控制网络所流通的数据包,屏蔽那些无益的连接。
3 开发工具
3.1 Visual C++ 6.0
Visual C++6.0 是微软98 年推出的产品,它提供了强大的编译能力以及良好的界面操作性。能够对Windows 9x、Windows NT 以及Windows 2000 下的C++程序设计提供完善的编程环境。同时Visual C++6.0 对网络、数据库等方面的编程也都提供相应的环境支持。
3.2 VSS
版本控制是工作组软件开发中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。
VSS可以同 Visual Basic、Visual C++、Visual J++、Visual InterDev、Visual FoxPro 开发环境以及 Microsoft Office 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。
4 防火墙系统构成
4.1 需求分析
该防火墙的主要功能是实现包过滤,其他功能主要包括以下几个方面。
1、能设置过滤规则,包括:IP地址、子网掩码、端口号、协议。
2、能添加删除规则。
3、能将过滤规则保存。
4、能对过滤规则进行安装和卸载操作,即:将规则发送给IP过滤驱动或从IP过滤驱动中删除规则。
5、能正确完整的显示所添加的过滤规则。
4.2 设计思路
根据程序的需求来完成功能和模块化设计的思想,总体设计思路如下:
任何程序都必须具有和用户进行信息交互的功能,因此用户接口部必须考虑,根据功能要求,该部分应具备:用户操作的功能菜单、能对过滤规则进行设置、显示规则界面、添加规则界面。
这样程序的功能模块应该有:过滤规则添加删除功能模块,过滤规则显示功能模块,过滤规则存储功能模块,文件储存功能模块,安装卸载规则功能模块。


4.4 功能模块介绍
4.4.1 过滤规则添加删除功能模块
包过滤防火墙要进行数据包过滤就需要按照用户定义的规则进行包过滤,该功能模块就是使用户能够添加或删除过滤规则。过滤规则主要包括:源IP地址、子网掩码、端口号,目的IP地址、子网掩码、端口号,协议,以及对符合该规则的数据包是放行还是阻止进行设置。然后将设置好的规则添加到存储功能模块。
4.4.2 过滤规则显示功能模块
该功能用于显示用户添加的规则,能够对每一条规则进行删除、安装、卸载的操作,使防火墙过滤规则能够很详细的显示给用户。
4.4.3 过滤规则存储功能模块
该功能用于存储用户添加的过滤规则,接受用户对每一条规则的操作,并按照用户的操作将规则进行处理。如:安装规则,则把用户选择的规则安装到IP过滤驱动,IP接收到此规则后按照此规则进行数据包过滤。
4.4.4 文件存储功能模块
使用户添加的过滤规则能够保存成文件的形式方便储存,在用户添加规则后可以选择某一条规则进行保存,防火墙会将该规则保存为后缀名为.rul的文件,在下次打开防火墙的时候可以直接加载该规则。
4.4.5 文件载入功能模块
相对于文件储存功能模块,该功能是实现用户可以导入一个后缀名为.rul的并且保存了有效规则的文件。
4.4.6 安装卸载功能摸块
防火墙要过滤数据包,就需要将IP过滤驱动按照定义的规则进行过滤。用户通过添加规则将规则存储于防火墙的存储功能模块中,想要将规则发送给IP过滤驱动,就需要对该规则进行安装。安装和卸载的功能就是将过滤规则传送给IP过滤驱动或是将已安装的规则从过滤驱动中删除。
4.4.7 IP封包过滤驱动功能模块
该功能模块是整个包过滤防火墙的核心部分,IP封包过滤驱动能按照用户定义的规则对数据包做出阻止或是放行的选择。

参考文献
[1] 张越.Visual C++网络程序设计实例详解[M].北京:人民邮电出版社,2003。
[2] Keith E.Strassberg,Richard J.Gondek.防火墙技术大全[M].北京:机械工业出版社,2003。
[3] 朱雁辉.Windows防火墙与网络封包截获技术[M].北京:电子工业出版社,2002。
[4] 黎连业,张维.防火墙及其应用技术[M].北京:清华大学出版社,2004。
[5] Steven Holzner.Visual C++ 6.0轻松进阶[M].北京:电子工业出版社,2005。
[6] John E.Swanke.Visual C++MFC编程实例[M].北京:机械工业出版社,2005。
[7] 张海棠.Visual C++ 6.0编程指南[M].北京:航空工业出版社,2002。
 
 

本文内容只是论文部分简介,如需了解更多详情请咨询本站客服! QQ交谈计算机毕业设计,毕业设计,工程硕士论文,计算机毕业论文
毕业论文搜集整理:毕业论文网 计算机毕业设计 计算机毕业论文 毕业设计


顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
计算机毕业设计
计算机毕业论文
论文发表