基于LINUX操作系统的防火墙技术.docx

上传人:ylj18****70940 文档编号:81337078 上传时间:2023-03-24 格式:DOCX 页数:8 大小:14.96KB
返回 下载 相关 举报
基于LINUX操作系统的防火墙技术.docx_第1页
第1页 / 共8页
基于LINUX操作系统的防火墙技术.docx_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《基于LINUX操作系统的防火墙技术.docx》由会员分享,可在线阅读,更多相关《基于LINUX操作系统的防火墙技术.docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、基于LINUX操作系统的防火墙技术 1前言防火墙作为网络平安措施中的一个重要组成部分,始终受到人们的普遍关注。LINUX是这几年一款异军突起的操作系统,以其公开的源代码、强大稳定的网络功能和大量的免费资源受到业界的普遍赞扬。LINUX防火墙其实是操作系统本身所自带的一个功能模块。通过安装特定的防火墙内核,LINUX操作系统会对接收到的数据包按肯定的策略进行处理。而用户所要做的,就是运用特定的配置软件(如ipchains)去定制适合自己的“数据包处理策略”。2LINUX防火墙配置软件IpchainsIpchains是LINUX2.1及其以上版本中所带的一个防火墙规则管理程序。用户可以运用它来建立

2、、编辑、删除系统的防火墙规则。但通常,须要自己创建一个防火墙规则脚本/etc/rc.d/rc.firewall,并使系统启动时自动运行这个脚本。一个LINUX防火墙系统的平安机制是通过Input、Output、Forward这三个“防火链”来实现的。而用户正是运用ipchains在这三个“链”上分别创建一套“防火规则”,来完成对到来数据包层层限制的目的,其组织结构如图1所示。其中,每个链都包括一组由用户创建的过滤规则,数据包依次到达每个链,并比较其中的每条规则,直到找出匹配规则并执行相应策略(如通过、拒绝等),否则执行默认策略。实际中,数据包在到达Input链之前还要进行测试和正常性检查,在到

3、路由表之前还要被推断是否被伪装,这些,在本图中都被省略了。3LINUX防火墙的几种常见功能由于每一个用户的要求和所处的环境都不一样,LINUX防火墙会依据用户的设置实现各种不同的功能。但一般说来,以下三种功能是大多数用户最常用到的。3.1包过滤对数据包进行过滤可以说是任何防火墙所具备的最基本的功能,而LINUX防火墙本身从某个角度也可以说是一种“包过滤防火墙”。在LINUX防火墙中,操作系统内核对到来的每一个数据包进行检查,从它们的包头中提取出所须要的信息,如源IP地址、目的IP地址、源端口号、目的端口号等,再与已建立的防火规则逐条进行比较,并执行所匹配规则的策略,或执行默认策略,这个过程在图

4、1中已经形象的表现出来。值得留意的是,在制定防火墙过滤规则时通常有两个基本的策略方法可供选择:一个是默认允许一切,即在接受全部数据包的基础上明确地禁止那些特别的、不希望收到的数据包;还有一个策略就是默认禁止一切,即首先禁止全部的数据包通过,然后再依据所希望供应的服务去一项项允许须要的数据包通过。一般说来,前者使启动和运行防火墙变得更加简单,但却更简单为自己留下平安隐患。通过在防火墙外部接口处对进来的数据包进行过滤,可以有效地阻挡绝大多数有意或无意地网络攻击,同时,对发出的数据包进行限制,可以明确地指定内部网中哪些主机可以访问互联网,哪些主机只能享用哪些服务或登陆哪些站点,从而实现对内部主机的管

5、理。可以说,在对一些小型内部局域网进行平安爱护和网络管理时,包过滤的确是一种简洁而有效的手段。3.2代理LINUX防火墙的代理功能是通过安装相应的代理软件实现的。它使那些不具备公共IP的内部主机也能访问互联网,并且很好地屏蔽了内部网,从而有效保障了内部主机的平安。为了清晰地描述这一重要功能的实现过程,特假设以下典型状况,如图2所示:steven为内部网中一台IP是192.168.0.2的主机,其上安装有IE5.0阅读器,并配置为运用防火墙主机192.168.0.1:8080作为代理。firewall就是我们探讨的LINUX防火墙,有两个网络接口,分别是内部接口eth1=192.168.0.1、

6、外部接口eth0=202.117.120.1。在firewall主机上安装有Web代理软件“squid”,并配置其代理端口为8080。为263网站的Web服务器,IP为211.100.31.131,Web服务端口80。假如要从steven主机访问263的主页,其详细的通信过程如图中所示:(1)IE通过steven的非专用端口1110(在102465535之间随机产生)与防火墙的代理端口8080建立连接,恳求“”页面。(2)squid代理接收到恳求后,先查找域名“”,得到地址211.100.31.131(该步骤图中省略),然后通过防火墙端口1050与该地址的80端口建立一个连接,恳求页面。(3)

7、服务器接到恳求后将页面传给squid代理。(4)防火墙代理得到页面后,把数据复制到(1)中所建立的连接上,IE得到数据并将“”页面显示出来。通过以上描述,可以清晰地了解到内部主机、LINUX代理防火墙以及外部服务器之间是如何进行数据传输的,那么,在LINUX防火墙内部,那些“防火链”又是如何工作的呢?其工作过程如图3所示:steven主机发来的数据包经由内部接口eth1进来后,首先接受INPUT链的“检查”:系统内核从包头中提取出信息,与INPUT链中全部适用于eth1接口的过滤规则逐个比较,直到匹配通过。之后,该数据包被转发给本地的代理进程。同样,代理进程发送给远程Web服务器的数据包在从防

8、火墙外部接口发送出去之前,也要经过OUTPUT链的“检查”,即与OUTPUT链中全部适用于eth0接口的规则一一比较。返回的过程正好与上述相反,在此就不再赘述为了实现以上过程,我们必需在防火墙规则脚本中添加以下规则:ipchainsAinputieth1ptcps192.168.0.21110d192.168.0.18080jACCEPTipchainsAoutputieth0ptcps202.117.120.11050d211.100.31.13180jACCEPTipchainsAinputieth0ptcp!-ys211.100.31.13180d202.117.120.11050jAC

9、CEPTipchainsAoutputieth1ptcp!ys192.168.0.18080d192.168.0.21110jACCEPT从上文对代理功能的原理和实现的叙述中,我们可以看出,LINUX防火墙事实上扮演了一个“代理网关”的角色。内部主机和远程服务器分别都只与防火墙进行连接,而真正的“起点”和“终点”之间却毫无联系。3.3IP伪装IP伪装(IPMasquerade)是LINUX操作系统自带的又一个重要功能。通过在系统内核增加相应的伪装模块,内核可以自动地对经过的数据包进行“伪装”,即修改包头中的源目的IP信息,以使外部主机误认为该包是由防火墙主机发出来的。这样做,可以有效解决运用内

10、部保留IP的主机不能访问互联网的问题,同时屏蔽了内部局域网。这一点,与前面所讲的代理所达到的目的是很类似的。关于IP伪装在LINUX防火墙内部的详细实现过程,请看图4。仍以图2中所示的典型状况为例,steven主机的IE进程干脆与远程的Web服务器建立一个连接。当数据包到达防火墙的内部接口后,照样要例行INPUT链的检查。之后,数据包被送到FORWARD链,接受系统内核的“伪装处理”,即将包头中的源IP地址改为防火墙外部接口eth0的地址,并在系统中做下记录,以便一会儿对其回应包的目的IP进行“复原”。这样,当该数据包顺当从外部接口出来时,其包头中源IP已被改为202.117.120.1。远程

11、服务器会认为这是从防火墙的合法地址发来的,从而对其做出响应。当远程服务器返回的回应包到达防火墙时,先经过INPUT链,然后会依据系统关于IP伪装的记录对数据包的目的IP进行复原,即将202.117.120.1改为192.168.0.2,最终再经过OUTPUT链返回到steven主机。为了实现这个过程,我们必需在防火墙规则脚本中添加以下规则:ipchainsAinputieth1ptcps192.168.0.21110d211.100.31.13180jACCEPTipchainsAoutputieth0ptcps202.117.120.11050d211.100.31.13180jACCEPT

12、ipchainsAinputieth0ptcp!-ys211.100.31.13180d202.117.120.11050jACCEPTipchainsAoutputieth1ptcp!ys211.100.31.13180d192.168.0.21110jACCEPTipchainsAforwardieth0s192.168.0.21110d211.100.31.13180jMASQ与代理功能比较而言,IP伪装不须要安装相应的代理软件,数据包的伪装对用户来说都是“透亮”的,并且整个过程都是在IP层实现,因此实现速度较快。缺点是不能对经过的数据包作具体的记录。以上介绍了LINUX防火墙在实际的设

13、置中常用到的三种功能。但一般说来,用户在创建自己的防火墙规则脚本时,可以依据自己的须要将这三种功能组合起来实现。4一个LINUX防火墙实例以下是我前一段时间为某办公室搭建的LINUX防火墙的实际配置,给出以供参考。该室网络拓扑图如图5:有两个局域网,LAN1地址:202.117.120.65/255.255.255.248为公共网络IP,LAN2地址为192.168.0.0/255.255.255.0,为内部保留地址。LINUX防火墙有两个内部接口:202.117.120.70接LAN1;192.168.0.1接LAN2。现对防火墙进行配置,使LAN2的主机通过IP伪装访问互联网,但只允许运用外部Web代理服务器202.117.112.34的1252端口。LAN1中的主机被限制运用几种常用的互联网服务(DNS、SMTP、POP3、HTTP和FTP)。5结束语本文着重从防火墙内部工作过程的角度分别对LINUX防火墙的包过滤、代理以及IP伪装功能进行了剖析,同时涉及到了一些网络配置、用ipchains详细实现等方面的内容。文末给出的实例已在实际中调试通过。

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

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁