1。介绍本文将介绍如何利用LINUX来建立一个更具有实用意义的防火墙.在当前,Internet越来越普遍的在企业,学校中使用,而安全问题也越来越得到重视,如何能让内部的用户使用INTERNET而又能保护内部服务器以及外部发布公共信息服务器的安全,这种需求使得防火墙广泛的在企业中得到广泛的使用。但是,这种类型的防火墙是需要大量的经费的,如CISCO的IPX,CHECK POINT的FIRWALL-I等。利用一个稳定内核的LINUX,同样也能做到一个功能齐备的防火墙,而它的费用也只是其他同类防火墙的几十分只一。感谢LINUX,它让我们用简单的步骤实现我们的目标。本文可以自由转载,只要不破坏以及修改本文即可。2。概念在开始创建防火墙之前,我们有几个概念需要明白。1。防火墙(Firewall),它是利用网络层的ip包过滤程序以及一些规则来保护内部网的一种策略,有硬件实现,以及软件的实现。2。停火区(非军事区),也称为DMZ,是一个公布信息的区域,外部INTERNET以及内部INTRANET可以自由的访问该区。3。内部网(Intranet,or Private Network),是企业或学校内部使用的网络,可能重要的不对外公开的服务器都在其中。4。外部网,可以说是INTERNET,是一个不安全的网络,存在大量有用的信息以及一些可能有恶意攻击内部网的人。5。地址转换,内部网的任何机器通过防火墙时,源地址均被设置成防火墙的外部地址。即在外部看来,内部的机器均是一个地址。下面是一个图例:-----------------| Internet || DMZ(停火区)| --------- | || | | | 防火墙 | |------------------| || | | |------- ------||| Intranet(内部网)| | |------------------------------------注:以上IP的设置不是真实的,这需要结合您本地的需要来重新设置。外部网侧的网卡是内部网侧的网卡是侧的网卡是:假定停火区中有一台机器()提供 80端口的WWW服务。并假定内部网到外部需要进行NAT(地址转换的功能)3。目标防火墙要实现的目标如下:1。内部无限制的访问INTERNET以及DMZ(停火区)。2。外部可以访问DMZ的机器的公开的端口。在本例中是。外部不能访问到内部以及防火墙。4。DMZ不可以访问内部。通过这个目标,您就可以实现了一个防火墙的需求:1。保护内部网络。2。保护DMZ中的某些存在BUG的端口。只公布它需要提供的端口。4。构建步骤1。硬件:需要配好有3张网卡的机器。RAM越大越好。CPU越快越好。:-))2。软件:当然是linux啦。我用的是redhat 也可以。3。内核:要打开ip-firewall,ip-masqurade(如果您想实现地址转换功能的话).....具体可以看。配置网卡,网上有很多配置的方法啦。一般是先配好一张网卡,如果剩下的两张是跟原来是不同型号的,需要配置一下/etc/.加上网卡的类型模块。如果是同类型的网卡,就在中加入append="ether=irq,iobase,eth0 ether=irq,iobase,eth1,ether=irq,iobase,。配置网卡的路由。6。配置规则。也就是ipfwadm的规则啦。有对ipfwadm不了解的可以看man ipfwadm or man ipfw.#-----------------ipfwadm -I -p denyipfwadm -O -p denyipfwadm -F -p deny#------------------------------# deny ip -I -a deny -V -S -O -a deny -V -D deny outside access intranetipfwadm -I -a deny -V -D -O -a deny -V -S -k# allow firewall access outsideipfwadm -I -a accept -V -D -kipfwadm -O -a accept -V -S deny outside access firewallipfwadm -I -a deny -V -D -I -a deny -V -D allow inside access -O -a accept -V -D -kipfwadm -I -a accept -V -S allow outside access -O -a accept -P tcp -V -D 80ipfwadm -I -a accept -P tcp -V -S 80 -k# IP FORWARD。。ipfwadm -F -a m -S -F -a accept -S -F -a accept -D 。测试现在,您可以通过测试来查看规则设置得是否正确。1。从内部网访问外部INTERNEt,以及DMZ。2. 从外部访问DMZ,看是否可以访问到80端口,以及是否可以访问其他端口。3。从外部访问内部。看是否可以访问到。--不可以。5。结论这是一种简单的防火墙的配置方法。更复杂的配置还包括限制内部用户对外部IP的访问。现有的产品有清华得实的NETST防火墙,它提供图形化的配置界面和更加细致的访问 控制以及针对IP的记费方案。(详情请致电,62771618,62771619,62771620)6。感谢感谢清华得实的李智鹏,是他给了我一个从事防火墙开发的机会,以及许多的建议和帮助。感谢NCIC的赵鹏,是他提供了完成本文的机器。感谢我的女友,是她给了我在工作上的支持和鼓励。感谢LINUX,它让我们用简单的步骤实现我们的目标。出处: