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
上一篇:基于Linux的ICP网站
下一篇:基于Linux系统的网络安全策略
|