IPTables下防火墙的研究与实现.doc

上传人:QQ19****7833 文档编号:351632 上传时间:2018-09-25 格式:DOC 页数:33 大小:723.79KB
下载 相关 举报
IPTables下防火墙的研究与实现.doc_第1页
第1页 / 共33页
IPTables下防火墙的研究与实现.doc_第2页
第2页 / 共33页
IPTables下防火墙的研究与实现.doc_第3页
第3页 / 共33页
IPTables下防火墙的研究与实现.doc_第4页
第4页 / 共33页
IPTables下防火墙的研究与实现.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、 湖南安全技术职业学院 Hunan Vocational Institute of Safety Technology 设计(论文)题目: IPTables 下防火墙的研究与实现 学 生 姓 名: 专 业 班 级: 指 导 老 师: 系主任(院长) : 评 阅 人: 2012 年 4 月 I 摘 要 计算机网络的迅速发展给人类社会带来了前所未有的飞跃,极大的提高了工作效率,丰富了人们的精神生活,而 与此同时也带来了一个日益严峻的问题 -网络安全。防火墙作为 一种行之有效的网络安全机制,已经得到广大用户的接受和认同。另一方面,网络应用的日益广泛使得各种不同的应用层协议不断涌现,这些协议在方便使用

2、网络的同时也带了各种问题。例如 P2P 协议在有多个用户同时进行下载的情况下会占用大量的网络资源,严重影响 网络的正常服务。因此,如何识别这些协议并在需要的时候对其加以过滤具有很高的实用价值。作者在研究包过滤、代理服务、状态检测等防火墙基本实现技术的基础上,提出一种基于应用层协议过滤的 iptables 防火墙解决方 案。 关键词: Linux;网络安全;防火墙; iptables II ABSTRACT With the rapid development of computer network, the problem of network security is becoming inc

3、reasingly serious. As an effective way to guarantee the safety of network, firewall has been widely accepted and used. In the meantime, the wide use of computer network has result in more and more application protocols been introduced. These protocols make it easy for people to obtain information, b

4、ut also cause inconvenience. For example, although P2P protocol makes download efficient, network bandwidth will be exhausted quickly if many people use P2P download simultaneously, which will make network service degrade. Therefore, it is important to identify these protocols and filter them. On th

5、e basis of the studies of firewall, such as package filter, application gateway, status inspection, the author introduced a solution of iptables firewall system based on layer7-filter. Keywords: Linux; network security; firewall; iptables; 3 目 录 摘 要 . I 第一章 Linux 防火墙概述 .4 1.1 防火墙简介 .4 1.1.1 防火墙的功能 .

6、4 1.1.2 防火墙的发展史 .4 1.1.3 防火墙的分类 .5 1.2 Linux 包过滤防火墙的架构 .6 1.3 Linux 防火墙是安装,启动和关闭 .7 第二章 IPTables 简介 .9 2.1 IPTables 的基本概念 .9 2.2 IPTables 数据包的传输过程 . 10 2.3 激活 IP 包转发功能 . 10 第三章 IPTables 的使用 . 12 3.1 IPTables 的基本格式 . 12 3.2 IPTables 命令的使用 . 13 第四章 IPTables 实现 NAT 功能 . 18 4.1 NAT 服务概念 . 18 4.2 利用 IPTa

7、bles 服务实现 NAT 服务 . 19 第五章 IPTables 技巧实例 . 24 5.1 禁止访问不健康的网站 . 24 5.2 禁止某些客户上网 . 24 5.3 禁止客户使用某些服务 . 25 5.4 禁止使用 ICMP 协议 . 25 5.5 过滤网站 . 26 5.6 利用 IPTables 的定时功能 . 27 5.7 利用 IPlimit 参数设置最大连接数 . 28 结论 . 30 参考文献 . 31 致谢 . 32 4 第一章 Linux 防火墙概述 1.1 防火墙简介 1.1.1 防火墙的功能 防火墙是位于不同网络(如可信的企业内部网和不可信的公共网)或网络安全域之间

8、,对网络进行隔离并实现有条件通信的一系列软件 /硬件设备的集合。它通过访问控制机制确定哪些内部服务允许外部访问,以及允许哪些外部请求可以访问内部服务。其基本功能是分析出入防火墙的数据包,根据 IP 包头结合防火墙的规则,来决定是否接收或允许数据包通过。 防火墙系统可以由一台路由器,也可以由一台或一组主机组成。它通常被放置在网络入口处 ,所有内外部网络通信数据包都必须经过防火墙,接受防火墙的检查,只有符合安全规则的数据才允许通过。 通过使用防火墙可以实现以下功能: 保护内部网络中易受攻击的服务。 控制内外网之间网络系统的访问。 隐藏内部网络的 IP 地址及结构的细节,提高网络的保密性。 对网络存

9、取和访问进行监控和审计。 集中管理内网的安全性,降低管理成本。 1.1.2 防火墙的发展史 第一代防火墙 第一代防火墙技术几乎与路由器同时出现,采用了包过滤 (Packet filter)技术。下图 1.1 表示了防火墙技术的简单发展历史。 图 1.1 第二、三代防火墙 1989 年,贝尔实验室的 Dave Presotto 和 Howard Trickey 推出了第二代防火墙, 即电路层防火墙,同时提出了第三代防火墙 应用层防火墙 (代理防火墙 ) 的初步结构 5 第四代防火墙 1992 年, USC 信息科学院的 BobBraden 开发出了基于动态包过滤 (Dynamic packet

10、filter)技术的第四代防火墙,后来演变为目前所说的状态监视 (Stateful inspection)技术。 1994 年,以色列的 CheckPoint 公司开发出了第一个采用这种技术的商业化 的产品。 第五代防火墙 1998 年, NAI 公司推出了一种自适应代理 (Adaptive proxy)技术,并在其产品 Gauntlet Firewall for NT 中得以实现,给代理类型的防火墙赋予了全新的意义,可 以称之为第五代防火墙。 1.1.3 防火墙的分类 根据动作方式的不同,通常把防火墙分为包过滤型和应用级网关两大类。 ( 1)包过滤防火墙( Packet Filter) 包过

11、滤防火墙通常安装在路由器或者安装了网络操作系统的主机上。它在网 络层根据配置好的包过滤规则对数据包进行过滤,其工作方式为:包 过滤规则存储对应的包过滤设备端口,检查出入该防火墙端口的每一个 IP 数据包头和 TCP头或 UDP 头来决定是否允许数据包通过。 包过滤防火墙的优点是它对于用户来说是透明的,处理速度快,而且由于工 作在网络层和传输层,与应用层无关,因此不用改动客户机和主机上的应用程序,易于安装和维护。缺点是非法访问一旦突破防火墙,即可对主机上的软件和配置漏洞进行攻击。 ( 2)应用级网关( Application-level Gateway) 应用级网关又称代理服务器。它针对特定的网

12、络应用服务协议使用指定的数 据过滤逻辑,并在过滤的 同时,对数据包进行必要的分析、登记和统计,形成报告,当发现被攻击迹象时会向网络管理员发出警报,并保留攻击痕迹。 应用级网关比单一的包过滤更为可靠,而且会详细地记录所有的访问状态信 息。其不足之处是访问速度慢,因为它不允许用户直接访问网络,其次应用级网关需要对每一个特定的因特网服务安装相应的代理服务软件。 6 1.2 Linux 包过滤防火墙的架构 IPTables 是一个免费的包过滤防火墙,它伴随着内核的发展而逐渐演变,大致经历了下面 4 个阶段: 在 1.1 内核中,采用 ipfw 来操作内核包过滤规则。 在 2.0 内核中 ,采用 ipf

13、wadm 来操作内核包过滤规则。 在 2.2 内核中,采用 ipchains 来控制内核包过滤规则。 在 2.4 内核中(如 Red Hat 9.0、 RHEL),采用一个全新的内核包过滤管理工具 IPTables。 IPTables 只是防火墙与用户之间的接口,真正起到防火墙作用的是 Linux 内核中运行的 netfilter。 Linux 平台下的包过滤防火墙由 netfilter 组件和 IPTables 组件组成,其中 netfilter 运行在内核态,而 IPTables 运行在用户态,用户通过 IPTables命令来调用 netfilter 来实现防火墙的功能。 ( 1) net

14、filter 组件 netfilter 是 Linux 内核中的一个用于扩展各种网络服务的结构化底层框架。该框架定义了包过滤子系统功能的实现,提供了 filter、 nat 和 mangle3 个表,默认使用的是 filter 表。每个表中包含有若干条内建的链( chains),用户可在表中创建自定义的链。在每条链中,可定义一条或多条过滤规则( rules)。每条规则应指定所要检查的包的特征以及如何处理与这对应的包,这被称为目标( target)。目标值可以是用户自定义的一个链名,也可以 是 ACCEPT、 DROP、 REJECT、RETURN 等值。 ( 2) IPTables 组件 IP

15、Tables 组件是一个用来指定 netfilter 规则和管理内核包过滤的工具,用户通过它来创建、删除或插入链,并可以在链中插入、删除和修改过滤规则。 IPTables仅仅是一个包过滤工具,对过滤规则的执行则是通过 netfilter 和相关的支持模块来实现的。 7 1.3 Linux 防火墙是安装,启动和关闭 IPTables 防火墙内置于 RedHat 系统内核中,所以它是随系统的安装而自动安装的。可使用如下命令检查是否已安装(如下 图): 图 1.2 检查 IPTables 是否安装 安装 RHEL 4 AS 时系统会提示是否开启防火墙,默认情况下将开启防火墙。由于系统的防火墙功能是使

16、用 IPTables 实现的,因此系统会根据用户的设置在IPTables 中添加相应的规则。 如果在安装时选择禁用防火墙,则在安装完成后可在终端命令窗口中执行setup命令将弹出“配置应用程序” 窗口(如下图 1-3)。 图 1.3“配置应用程序”窗口 选择 Firewall configuration 选项,则会进入防火墙配置窗如图 1.4 8 图 1.4 “防火墙 配置”窗口 图 1.5“防火墙配置定制”窗口 完成以上配置后,可在终端命令窗口中执行如下命令启动 IPTables 防火墙如图: 图 1.6 启动 IPTables 防火墙 9 第二章 IPTables 简介 2.1 IPTab

17、les 的基本概念 在使用 IPTables 之前我们先要理解规则、链、表这 3 个概念以及 IPTables 传输数据包的过程。 规则 规则 (rules)就是网络管理员预先定义的条件,每条规则的定义方式一般是 如果封包符合这样的条件就这样处理该数包 。 链 链 (chains)是数据包传输的路径,每一条链中可以有一条或数条规则。 表 IPTables 内置了 filter 表、 nat 表和 mangle 表用于实现包过滤、网络地址转换和包重构的功能。 ( 1) filter 表 filter 表是 IPTables 默认的表,如果没有指定使用哪个表, IPTables 默认使用filte

18、r 表来执行所有的命令。 filter 表根据系统管理员预定义的一组规则过滤符合条件的数据包。在 filter 表中只允许对数据包进行接收、丢弃的操作,而无法对数据包进行更改。 ( 2) nat 表 nat 表主要是用于网络地 址转换 NAT,该表可以实现一对一、一对多、多对多等 NAT 工作。 NAT 表包含了 PREROUTING 链、 OUTPUT 链和 POSTROUTING链。其中 PREROUTING 链用于处理刚刚进入网络层未进行路由判断的数据包,OUTPUT 链用于处理在路由之前本地生成的数据包, POSTROUTING 链处理在路由判断之后即将通过网卡发送出去的数据包。 ( 3) mangle 表 某些特殊应用可能需要改写数据包的一些传输特性,例如更改数据包的 TTL和 TOS 等, mangle 表主要用于对指定包的传输特性进行修改。

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

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

Copyright © 2018-2021 Wenke99.com All rights reserved

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

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

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