歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

基於LINUX的具有DMZ(非軍事區)的防火牆的構建

  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,它讓我們用簡單的步驟實現我們的目標。



# 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,它讓我們用簡單的步驟實現我們的目標。



Copyright © Linux教程網 All Rights Reserved