毕业论文范文——Iptables图形管理工具的设计与实现.doc

上传人:滴答 文档编号:1254477 上传时间:2019-01-19 格式:DOC 页数:26 大小:2.64MB
下载 相关 举报
毕业论文范文——Iptables图形管理工具的设计与实现.doc_第1页
第1页 / 共26页
毕业论文范文——Iptables图形管理工具的设计与实现.doc_第2页
第2页 / 共26页
毕业论文范文——Iptables图形管理工具的设计与实现.doc_第3页
第3页 / 共26页
毕业论文范文——Iptables图形管理工具的设计与实现.doc_第4页
第4页 / 共26页
毕业论文范文——Iptables图形管理工具的设计与实现.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、Iptables 图形管理工具的设计与实现摘 要Netfilter/Iptables 防火墙是 Linux 平台下的包过滤防火墙, Iptables 防火墙不仅提供了强大的数据包过滤能力,而且还提供转发,NAT 映射等功能,是个人及企业级 Linux 用户构建网络安全平台的首选工具。但是,由于种种原因,Iptables 一直是使用命令模式管理配置防火墙,这就要求用户必须熟悉 Iptables各种繁杂的命令,为用户的使用带来了很多不便。本文设计并实现了一个基于Web 的 Iptables 图形管理工具,通过友好的配置界面,简化了 Iptables 防火墙的管理配置程序,更方便用户对 Iptabl

2、es 防火墙的使用。本工具采用 Browser/Server 模式,通过 Web 配置界面,用户可远程修改Iptables 的相关配置文件,从而到达配置 Iptables 的目的。整个工具由添加/删除规则,插入/替换规则,状态机制,关闭/启动/重启防火墙等几个模块组成。用户只需登陆到配置页面,通过简单的鼠标操作就可以轻松完成防火墙的基本配置工作。关键词:Iptables 防火墙;Browser/Server;包过滤 The Design and Implementation ofGraphics Management Tools of Iptables AbstractThe graphics

3、 management tool of Iptables can manage the Iptables firewall on website. The Iptables firewall not only provides function to filter data, but also provides a function to transfer package as well as NAT. It is used to design secure network by personal and company. But for various reasons, the Iptabl

4、es is configured by inputting commands, which means that users must be familiar to the commands. So, the paper designs and implements Iptables interfacial management tool which bases on website. The user can configure it simpler and more convenient by friendly graphics interfacial.This system uses B

5、rowser/Server mode to configure Iptables by modifying iptbales configuration files on web. The system is constituted by the following modules: the rule of addition, the rule of deleting, and the rule of insertion, the rule of replacing, the mechanism of stating, shutdown firewall, start firewall, an

6、d restarting firewall. The users can configure Iptables firewall just by login the web and clicking mouse. Key words: Iptables Firewall; Browser/Server; package filter目 录论文总页数:22页1 引 言 .12 防火墙基本理论 .12.1 防火墙技术分类 .22.1.1 包过滤技术 .22.1.2 代理技术 .22.1.3 状态监视技术 .222 包过滤防火墙工作原理 .22.3 Iptables 防火墙简介 .32.3.1 Ne

7、tfilter 组件 .32.3.2 Iptables 组件 .32.4 Iptables 工作原理 .32.4.1 Iptables 规则表简介 .32.4.2 Iptables 的工作流程 .43.系统概述 .43.1 系统摘要 .43.2 系统设计模式 .44 开发环境及工具 .54.1 开发环境 .54.2 开发工具 .65 系统构成 .65.1 系统基本构成 .65.2 功能模块构成 .75.2.1 添加规则功能模块 .75.2.2 删除规则功能模块 .75.2.3 插入规则功能模块 .75.2.4 替换规则功能模块 .75.2.5 状态机制功能模块 .75.2.6 防火墙关闭/启动

8、功能模块 .75.2.7 防火墙重启模块 .75.2.8 读取防火墙配置文件/规则链模块 .86 系统设计 .86.1 前台主页设计 .86.2 基本设置功能的设计 .96.3 状态机制功能设计 .106.4 Iptables 操作功能设计 .106.5 Iptables 配置文件/规则链读取功能设计 .117 系统实现 .117.1 基本设置及高级功能实现方法 .117.2 Iptables 操作功能实现 .157.3 读取防火墙配置文件/规则链的实现 .168 开发中遇到的问题及解决办法 .188.1 所遇问题 .188.2 解决办法 .189 系统测试 .19结 论 .20参考文献 .2

9、0致 谢 .21声 明 .22第 1 页 共 22 页1 引 言随着网络技术的进步,特别是 90 年代以来 Internet 的迅速普及和发展,网络安全问题越来越引起人们的重视,网络安全技术也成为计算机网络方向的研究热点。网络安全技术在人们的现实生活中有着广泛的应用,特别是近几年电子商务的蓬勃发展,电子银行,在线交易等已经成为人们日常生活的重要组成部分,这就要求网络服务提供相应的安全措施,以保障广大用户的权益。Internet 防火墙是这样的系统(或一组系统),它能增强机构内部网络的安全性。防火墙是在内部和外部网之间实施安全防范的系统。它可以被认为是一种访问控制机制,用于确定那些内部服务允许外

10、部访问,以及允许哪些外部服务访问内部服务。netfilter/Iptables 防火墙是组成 Linux 平台下的包过滤防火墙,它是集成在 Linux 内核 2.4.X 中的。Iptables 防火墙不仅提供了强大的数据包过滤能力,而且还提供转发,NAT 映射等功能。正是因为它的功能强大,一直是个人及企业级 Linux 用户构建网络安全平台的首选工具。但是,由于技术上的原因,Iptables 一直是使用命令模式配置防火墙,它在一定程度上有较高的灵活性,但同时也要求用户必须熟悉 Iptables 各种繁杂的命令。所以,本系统立足初级用户,使用 B/S 模式作为 Iptables 防火墙的管理模式

11、,用户只需要登陆到防火墙的管理页面便可以轻松配置防火墙。这样简化了 Iptables 防火墙的配置程序,降低了配置门槛,适合初学者使用。本系统采用的是基于 Browser/Server 即浏览器/服务器模式,在单网卡模式下实现 Iptables 的包过滤功能。前台 JSP 页面提供用户管理界面,后台用java 修改 Iptables 防火墙相应配置文件到达更改 Iptables 规则链的目的。本系统主要由以下模块组成:添加规则模块,删除规则模块,插入规则模块,替换规则模块,防火墙启动/关闭模块,防火墙重启模块,读取 Iptables 配置文件模块,读取 Iptabels 规则链模块。2 防火墙

12、基本理论Internet 防火墙是这样的系统(或一组系统),它能增强机构内部网络的安全性。防火墙是在内部和外部网之间实施安全防范的系统。可认为它是一种访问控制机制,用于确定那些内部服务允许外部访问,以及允许哪些外部服务访问内部服务。它可以根据网络传输的类型决定 IP 包是否可以传进或传出企业网。防止非授权用户访问企业内部、允许使用授权机器的用户远程访问企业内部、管理企业内部人员对 Internet 的访问。防火墙通过逐一审查收到的每个数据包,判断它是否有相匹配的过滤规则,按规则的先后顺序以及每条规则的条件第 2 页 共 22 页项进行比较,直到满足某一条规则的条件,并做出规则的动作(停下或向前

13、转发),从而来保护网络的安全。2.1 防火墙技术分类2.1.1 包过滤技术包过滤防火墙的安全性是基于对包的 IP 地址的校验。在互联网上,所有信息都是以包的形式传输的,信息包中包含发送方的 IP 地址,接收方的 IP 地址,TCP 端口,TCP 链路状态等信息读出,并按照预先设置的过滤原则过滤信息包,那些不符合规定的 IP 地址的信息包会被防火墙过滤掉,以保证网络系统的安全,这是一种基于网络层的安全技术,对于应用层的黑客行为是无能为力的。 2.1.2 代理技术代理服务器接收客户请求后会检查验证其合法性,如果合法,代理服务器向一台客户机取回所需的信息在转发给客户。它将内部系统与外界隔离开来,从外

14、面只能看到代理服务器而看不到任何内部资源。代理服务器只允许有代理的服务通过,而其他所有服务都完全被封锁住。这一点对系统安全是非常重要的,只有那些被认为“可信赖的”服务才允许通过防火墙结构对外部来讲是不可见的。2.1.3 状态监视技术这是第三代网络安全技术。状态监视服务的监视模块在不影响网络安全正常工作的前提下,才用抽取相关数据的方法对网络通信的各个层次实行监测,并作为安全决策的依据。监视模块多种网络协议和应用协议,可以方便地实现应用和服务的扩充。22 包过滤防火墙工作原理包过滤防火墙一般有一个包检查模块,该模块在操作系统或路由器转发包之前将拦截所有的数据包,并对其进行验证,查看时候满足过滤规则

15、。它的具体工作过程如下:(1) 数据包从外网传送到防火墙后,防火墙将在 IP 层向 TCP 层传送前,将数据包转发给包检查模块进行处理。(2) 首先与第一个过滤规则比较。(3) 如果与第一个模块相同,则对它进行审核,判断是否转发该数据包,这时审核结果是转发数据包,则将数据包发送到 TCP 层进行处理,否则就将它丢弃。(4) 如果与第一个过滤规则不同,则接着与第二个规则相比较,如果相第 3 页 共 22 页同则对它进行审核,过程与(3)相同。(5) 如果与第二个过滤规则不同,则继续与下一个过滤规则比较,直到与所有过滤规则比较完成,要是不满足所有过滤规则,就按默认规则处理。2.3 Iptables

16、 防火墙简介Netfilter/Iptables 防火墙是组成 Linux 平台下的包过滤防火墙,它是集成在 Linux 内核 2.4.X 中的。Iptables 防火墙不仅提供了强大的数据包过滤能力,而且还提供转发,NAT 映射等功能;不仅如此 Iptables 还可以配置成状态检测型防火墙,它会检查数据的源和目的 IP 地址、源和目的端口、流入数据包的顺序号、TCP 先后顺序的信息及头标记(SYN,ACK,FIN,RST 等)的状态,并利用 Linux 内核跟踪整个连接会话,从而使整个过滤过程相互关联,这可以提高信息包过滤的效率和速度。Netfilter/Iptables 包过滤防火墙是由

17、两个组件构成,一个是 netfilter(内核组件) ,一个是 Iptables(用户组件)。2.3.1 Netfilter 组件Netfilter 组件称为内核空间,它集成在 Linux 的内核中。Netfilter 是一种内核中用于扩展各种网络服务的结构化底层框架。Netfilter 的设计思想是生成一个模块结构使之能够比较容易的扩展。新的特性假如到内核中并不需要重新启动内核。这样,可以通过简单地构造一个内核模块来实现网络新特性的扩展,给底层网络特性扩展带来了极大的便利,使更多从事网络底层研发人员能够集中精力实现新的网络特性。Netfilter 的目的是为用户提供一个专门用于包过滤的底层结

18、构,用户和开发人员可以将其内建在 Linux 内核中。Netfilter 主要有信息包过滤表组成,它包含了控制 IP 包处理的规则集。根据规则所处理的 IP 包的类型,规则被分组放在链中,从而使内核对来自某些源、前往某些目的地或具有某些协议类型的信息包处置方法,如完成信息包的处理、控制和过滤等工作。2.3.2 Iptables 组件Iptables 组件是一个简洁强大的工具,它被称为用户空间,用户通过它来插入、删除和修改规则链中的规则,这些规则告诉内核中的 netfilter 组件如何去处理信息包。2.4 Iptables 工作原理2.4.1 Iptables 规则表简介Iptables 与其

19、他包过滤防火墙一样,它的工作原理是对 IP 数据包和规则进行匹配,根据规则表中的规则对 IP 数据包进行进一步的处理。Iptables 的规则表是保存在一个规则链中的,而规则链是由 Linux 内核进行维护。在第 4 页 共 22 页Iptables 中包含以下规则表:(1)Filter 表Filter 表主要用于过滤数据包,该表根据系统管理员预定义的一组规则过滤符合条件的数据包。对与防火墙而言,主要是利用在 filter 表中指定的一系列规则来实现对数据包的过滤操作。(2)Nat 表Nat 表主要用于网络地址转换 NAT,该表可以实现一对一、一对多、多对多等 NAT 工作,Iptables

20、就是使用该表实现共享上网的功能。Nat 表包含了PREROUTING 链,OUTPUT 链,和 POSTROUTING 链。(3)Mangle 表Mangle 表主要用于对指定的包进行修改,因为某些特殊应用可能需要去改写数据包的一些传输特性,例如更改数据包的 TTL 和 TOS 等。Mangle 表仅包含PREROUTING 链和 OUTPUT 链。2.4.2 Iptables 的工作流程当一个数据包到达主机后,iptabels 会按照下图的处理过程对数据包进行处理。当主机收到数据包后首先会去匹配 mangle 和 nat 表,如果找到相应的匹配规则会按照规则处理,然后再判断是否是发往本机的数

21、据包,如果是发往本机的数据包,则将数据包送往 INPUT 链做相应的处理,如果不是发往本机的,则将数据包发往 FORWARD 链做相应处理。若是本机产生的数据包,则会先匹配OUTPUT 链的相应规则后再做处理。3.系统概述3.1 系统摘要Iptables B/S 管理模式实现是一个通过前台 WEB 界面管理单网卡模式下Iptables 规则的系统。它可以提供友好的用户管理界面,让用户在不用输入任何的命令的情况下修改 Iptables 的相应规则,关闭/启动及重启 Iptables 防火墙,并可以查看 Iptables 相应的配置文件及规则链。本系统可以在 WEB 前台向Iptables 添加、

22、删除、替换和插入规则,并可以实现基于状态检测防火墙的规则。3.2 系统设计模式本系统采用 B/S 开发模式,即浏览器/服务器模式。这种模式可以节约客户端资源,客户端在不用安装任何软件的条件下即可使用该系统。该系统由以下第 5 页 共 22 页四大部分组成:Iptables 配置主页,Iptabels 各功能界面,客户端表单验证,Iptabels 相关文件及操作。Iptables 主页判断用户输入数据是否合法iptables 相关配置文件用户数据执行结果非法数据合法数据图 1 系统业务流程图4 开发环境及工具4.1 开发环境表 1 开发环境表类型 软件 版本OS Linux Red Hat 9.

23、0JDK 1.5.0WebServerTomcat 4.1.24浏览器 Internet Explorer 6.0 以上JDKJDK 是 Java 开发工具包(Java Development Kit)的缩写。它是一种用于构建在 Java 平台上发布的应用程序,Applet 和组件的开发环境和运行环境。JDK 是一切 Java 应用程序的基础,所有的 Java 应用程序是构建在这个之上的。它包括一组 API 和 JRE(Java 虚拟机) ,这些 API 也可以说是一些 Java 第 6 页 共 22 页Class,是构建 Java 应用程序的基础,而 Java 虚拟机是运行这些程序的基础。J

24、SPJSP技术为创建显示动态生成内容的Web页面提供了一个简捷快速的方法。JS P技术设计的目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。JSP页面由Web服务器中的JSP引擎执行,JSP引擎接受客户端对JSP页面的请求,并且生成JSP页面给客户端的响应。JSP引擎实际上是把JSP标签、JSP页中的Java代码连同静态HTML内容都转换为Java代码,这些代码块被JSP引擎组织到Java Servlet中,然后Servlet自动把它们编译成Java字节码,这些字节码由Java虚拟机(JVM)解释执行。TomcatT

25、omcat 是一个免费的开源的 Serlvet 容器,它是 Apache 基金会的 Jakarta项目中的一个核心项目,由 Apache,Sun 和其它一些公司及个人共同开发而成。由于有了 Sun 的参与和支持,最新的 Servlet 和 Jsp 规范总能在 Tomcat 中得到体现。Tomcat 不仅仅是一个 Servlet 容器,它也具有传统的 Web 服务器的功能:处理 Html 页面。但是与 Apache 相比,它的处理静态 Html 的能力就不如Apache。我们可以将 Tomcat 和 Apache 集成到一块,让 Apache 处理静态Html,而 Tomcat 处理 Jsp 和

26、 Servlet。这种集成只需要修改一下 Apache 和Tomcat 的配置文件即可。4.2 开发工具Eclipse 是一个非常优秀的集成开发环境,它旨在简化用于多操作系统软件工具的开发过程,可以用于管理多种开发任务,其中包括测试、性能调整以及程序调试等,而且还可以集成来自多个供应商的第三方应用程序开发工具。通过集成大量的插件,Eclipse 的功能可以不断扩展,以支持各种不同的应用。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT) 。5 系统构成5.1 系统基本构成本系统主要由系统 JSP 前台页面,Java Bean,Java 源代码,Linux 下Iptables 防火墙配置文件组成。JSP 前台做用户交互及数据传递操作;Java Bean 可以提高代码的利用率,它封装了一些本系统重复使用的 Java 源代码,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。