使用FreeBSD構建流量控制防火墻(ZT)
發表于:2007-05-25來源:作者:點擊數:
標簽:
作者:李冬 郵件:ld@freebsdchina.org 概述 利用FreeBSD內核支持的BRIDGE、IPFIREWALL以及DUMMYNET選項,可以建立基于FreeBSD的透明流量控制防火墻(橋接模式),起到限制流量和包過濾的功能。 準備 可以在任何FreeBSD的兼容硬件上構建流量控制防火墻,但是基
作者: 李冬
郵件: ld@freebsdchina.org
概述
利用FreeBSD內核支持的BRIDGE、IPFIREWALL以及DUMMYNET選項,可以建立基于FreeBSD的透明流量控制防火墻(橋接模式),起到限制流量和包過濾的功能。
準備
可以在任何FreeBSD的兼容硬件上構建流量控制防火墻,但是基于
性能和管理上的考慮,建議:
使用Intel PII450以上的處理器
使用至少128MB RAM
使用高性能10/100Mbps自適應
網絡適配器
如果多于一組橋接設備,建議使用雙處理器系統
另外準備一塊單獨的網絡適配器用于管理
--------------------------------------------------------------------------------
實例
聯想萬全1300 PC
服務器,具有一顆Intel PII300處理器,配置有128MB RAM,主板集成Intel 82557網絡適配器,另外安裝了4塊3Com 3C905B 10/100Mbps自適應PCI網絡適配器。
--------------------------------------------------------------------------------
安裝
安裝最新版本的FreeBSD??梢詮膚ww.FreeBSD.org獲取當前的FreeBSD版本信息,并且獲得安裝源文件??梢允褂霉獗P安裝和FTP安裝方式。為了保證最好的硬件
兼容性,請使用FreeBSD 4.3 RELEASE或者更高的版本。
必須安裝操作系統源代碼中的"sys"部分,安裝完成以后需要重新編譯系統內核以支持必要的流量控制防火墻選項。
--------------------------------------------------------------------------------
實例
安裝FreeBSD-4.3-20010818-STABLE版本,從
ftp://releng4.freebsd.org/pub/FreeBSD/snapshots/i386/
獲得。使用FTP安裝方式,安裝選項為:
[X] bin
[X] crypto
[X] man
[X] src->sys
--------------------------------------------------------------------------------
配置
完成操作系統安裝以后,必須重新編譯系統內核使其支持橋接流量控制防火墻選項。必須在系統內核編譯配置文件中添加以下內容:
options BRIDGE
options DUMMYNET
options IPFIREWALL
options IPFIREWALL_DEFAULT_TO_A
CCEPT
重新編譯完系統內核以后必須重新啟動計算機。
--------------------------------------------------------------------------------
實例
# cd /usr/src/sys/i386/conf
# cp GENERIC BRGFW
# echo "options BRIDGE" >> BRGFW
# echo "options DUMMYNET" >> BRGFW
# echo "options IPFIREWALL" >> BRGFW
# echo "options IPFIREWALL_DEFAULT_TO_ACCEPT" >> BRGFW
# config
# cd ../../compile/BRGFW
# make depend all install
# reboot
--------------------------------------------------------------------------------
重新啟動計算機以后,使用以下命令激活橋接流量控制防火墻選項:
sysctl -w net.link.ether.bridge_ipfw=1
sysctl -w net.link.ether.bridge_cfg=""
sysctl -w net.link.ether.bridge=1
其中bridge_cfg參數用于設置多組橋接設備,如果僅考慮單組橋接,可以忽略。實例使用集成的Intel 82557網絡適配器作為管理網絡,其他3Com 3C905B網絡適配器分為兩組網橋使用。
--------------------------------------------------------------------------------
實例
# sysctl -w net.link.ether.bridge_ipfw=1
# sysctl -w net.link.ether.bridge_cfg="xl0:0,xl1:0,xl2:1,xl3:1"
# sysctl -w net.link.ether.bridge=1
--------------------------------------------------------------------------------
使用
使用ipfw命令來控制流量和防火墻策略。其中流量控制是作為一條防火墻策略實現的,因此ipfw是唯一的管理界面。通過實例來說明ipfw的使用。
在實例中,網段192.168.254.0/24經過第一組網橋,網段192.168.250.0/24經過第二組網橋,并建立以下策略:
允許所有的ICMP連接,限制總流量為10Kbit/s
允許所有的UDP鏈接,限制總流量為100Kbit/s
允許TCP到網段192.168.254.0/24的所有連接,限制流量為5Mbit/s
允許TCP到主機192.168.250.222的HTTP連接,限制流量為2Mbit/s
允許TCP到主機192.168.250.0/24的所有其他連接,限制流量為1Mbit/s
禁止其他所有連接
--------------------------------------------------------------------------------
實例
# ipfw -flush
# ipfw add 100 pipe 1 icmp from any to any
# ipfw pipe 1 config bw 10Kbit/s
# ipfw add 200 pipe 2 udp from any to any
# ipfw pipe 2 config bw 100Kbit/s
# ipfw add 300 pipe 3 tcp from 192.168.254.0/24 to any
# ipfw pipe 3 config bw 5Mbit/s
# ipfw add 400 pipe 4 tcp from any to 192.168.254.0/24
# ipfw pipe 4 config bw 5Mbit/s
# ipfw add 500 pipe 5 tcp from any to 192.168.250.222 80
# ipfw pipe 5 config bw 2Mbit/s
# ipfw add 600 pipe 6 tcp from 192.168.250.222 80 to any
# ipfw pipe 6 config bw 2Mbit/s
# ipfw add 700 pipe 7 tcp from 192.168.250.0/24 to any
# ipfw pipe 7 config bw 1Mbit/s
# ipfw add 800 pipe 8 tcp from any to 192.168.250.0/24
# ipfw pipe 8 config bw 1Mbit/s
# ipfw add 60000 deny ip from any to any
# ipfw -a l
段譽 回復于:2005-06-12 00:37:25
|
沒驗證,不過,先加為精華,第一是鼓勵樓主的法帖的熱情,第二是有更多的人看到精華后,才好出現驗證的機會。
謝謝kecai_cale
|
kecai_cale 回復于:2005-06-13 19:26:12
|
謝謝,我正在做實驗,謝謝鼓勵!
|
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|