| 网站首页 | 新闻中心 | 系统安全 | 网络安全 | 安全技术 | 下载中心 | 
课件制作网.
收藏本站
设为首页
安全365
基于Unix-Like的具有DMZ(非军事区)的防火墙的构建
基于Unix-Like的具有DMZ(非军事区)的防火墙的构建
作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-25 9:11:37
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   |192.168.2.0/24
                -----------------
                    |             DMZ(停火区)
                    |192.168.2.1     ------
                    ---             |   |
                  |   |192.168.1.1     |   | 192.168.1.0/24
          防火墙     |   |------------------|   |
                  |   |             |   |
                  -------           ------
                    |192.168.0.1
                    |
                    |   Intranet(内部网)192.168.0.0/24
          -----------------------------------
          |           |           |
          ------------------------------------
    注:以上IP的设置不是真实的,这需要结合您本地的需要来重新设置。
        外部网侧的网卡是192.168.2.1
        内部网侧的网卡是192.168.0.1
        DMZ侧的网卡是:192.168.1.1
        假定停火区中有一台机器(192.168.1.8)提供 80端口的WWW服务。
        并假定内部网到外部需要进行NAT(地址转换的功能)

3。目标
    防火墙要实现的目标如下:
    1。内部无限制的访问INTERNET以及DMZ(停火区)。
    2。外部可以访问DMZ的机器的公开的端口。在本例中是80.
    3。外部不能访问到内部以及防火墙。    
    4。DMZ不可以访问内部。
  通过这个目标,您就可以实现了一个防火墙的需求:
    1。保护内部网络。
    2。保护DMZ中的某些存在BUG的端口。只公布它需要提供的端口。
     
4。构建步骤
    1。硬件:需要配好有3张网卡的机器。RAM越大越好。CPU越快越好。:-))
    2。软件:当然是linux啦。我用的是redhat 5.0,5.1也可以。
    3。内核:要打开ip-firewall,ip-masqurade(如果您想实现地址转换功能的话).....
          具体可以看Firewall-HOWTO.
    4。配置网卡,网上有很多配置的方法啦。
            一般是先配好一张网卡,如果剩下的两张是跟原来是不同型号的
          ,需要配置
            一下/etc/conf.modules.加上网卡的类型模块。如果是同类型的
            网卡,就在
            lilo.conf中加入append="ether=irq,iobase,eth0                 ether=irq,iobase,eth1,ether=irq,iobase,eth2.
    5。配置网卡的路由。
    6。配置规则。也就是ipfwadm的规则啦。
          有对ipfwadm不了解的可以看man ipfwadm or man ipfw.
          #-----------------
          ipfwadm -I -p deny
          ipfwadm -O -p deny
          ipfwadm -F -p deny
          #------------------------------
          # deny ip spoof.
          ipfwadm -I -a deny -V 192.168.2.1 -S 192.168.0.0/24
          ipfwadm -O -a deny -V 192.168.2.1 -D 192.168.0.0/24
          # deny outside access intranet
          ipfwadm -I -a deny -V 192.168.2.1 -D 192.168.0.0/24
          ipfwadm -O -a deny -V 192.168.2.1 -S 192.168.0.0/24 -k
          # allow firewall access outside
          ipfwadm -I -a accept -V 192.168.2.1 -D 192.168.2.1 -k
          ipfwadm -O -a accept -V 192.168.2.1 -S 192.168.2.1
          # deny outside access firewall
          ipfwadm -I -a deny -V 192.168.2.1 -D 192.168.1.1
          ipfwadm -I -a deny -V 192.168.2.1 -D 192.168.2.1
          # allow inside access outside.
          ipfwadm -O -a accept -V 192.168.0.1 -D 192.168.0.0/24 -k
          ipfwadm -I -a accept -V 192.168.0.1 -S 192.168.0.0/24
           
          # allow outside access DMZ.
          ipfwadm -O -a accept -P tcp -V 192.168.1.1 -D 192.168.1.8 80
          ipfwadm -I -a accept -P tcp -V 192.168.1.1 -S 192.168.1.8 80 -k
         
          # IP FORWARD。。
          ipfwadm -F -a m -S 192.168.0.0/24
          ipfwadm -F -a accept -S 192.168.1.0/24
          ipfwadm -F -a accept -D 192.168.1.0/24
         
4。测试
    现在,您可以通过测试来查看规则设置得是否正确。
    1。从内部网访问外部INTERNEt,以及DMZ。
    2. 从外部访问DMZ,看是否可以访问到80端口,以及是否可以访问其他端口。
    3。从外部访问内部。看是否可以访问到。--不可以。
     
5。结论
    这是一种简单的防火墙的配置方法。更复杂的配置还包括限制内部用户对外部IP的访问。
    现有的产品有清华得实的NETST防火墙,它提供图形化的配置界面和更加细致的访问 控制以及针对IP的记费方案。
          (详情请致电010-62771617,62771618,62771619,62771620)
6。感谢
    感谢清华得实的李智鹏,是他给了我一个从事防火墙开发的机会,
      以及许多的建议和帮助。          
    感谢NCIC的赵鹏,是他提供了完成本文的机器。
    感谢我的女友,是她给了我在工作上的支持和鼓励。

    感谢LINUX,它让我们用简单的步骤实现我们的目标。【转自世纪安全网 http://www.21safe.com】
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
     
     
     
    Sun Java系统服务器嵌入
    WordPress functions.ph
    Sun Java运行时环境信息
    WordPress functions.ph
    Sun Java运行时环境信息
    MiniBB bb_func_txt.php
    Sun Solaris内核SSL功能
    Sunbelt Kerio个人防火墙
    Sun Java System Conten
    phpECard functions.php

    Copyright © 2006-2008 www.anquan365.com 安全365
    建议使用1024*768分辨率及第三方浏览器对本站进行浏览