圖1一個DMZ網(wǎng)絡(luò)

使用防火墻從互聯(lián)網(wǎng)和內(nèi)部網(wǎng)(受信任的)分割出一個DMZ網(wǎng)絡(luò),你可以用非常細(xì)粒度的方法編寫規(guī)則,來定義這3個區(qū)域內(nèi)的主機(jī)如何與其他區(qū)域的主機(jī)進(jìn)行交互。象這樣的規(guī)則公式,你應(yīng)該會認(rèn)為暴露給攻擊者的范圍是接近無限大的,在DMZ內(nèi)的主機(jī)應(yīng)該被視為半受信任的,也就是說,你應(yīng)該假設(shè)在DMZ內(nèi)的主機(jī)可能會泄密,因此,你應(yīng)該盡可能少允許從DMZ到互聯(lián)網(wǎng)的傳輸。

你也應(yīng)該考慮遭到破壞的DMZ內(nèi)的主機(jī)對外部網(wǎng)絡(luò)的威脅,如果一個來自互聯(lián)網(wǎng)的攻擊者破壞了你的DNS服務(wù)器,例如:甚至如果攻擊者試圖進(jìn)入你的內(nèi)部網(wǎng),但被你的防火墻規(guī)則阻止了,那個攻擊者仍然可以讓你的組織受困,如果被破壞的服務(wù)器能連接到互聯(lián)網(wǎng)上其他任意系統(tǒng)的話,甚至還會引起法律上的問題。防火墻應(yīng)該給用戶和系統(tǒng)完成它們工作需要的最小網(wǎng)絡(luò)傳輸權(quán)限,非必須的數(shù)據(jù)流遲早會濫用網(wǎng)絡(luò)。

你在圖1中或許注意到了,那里使用了2個防火墻,這是個典型的夾住DMZ區(qū)域的架構(gòu),但是許多組織選擇了更經(jīng)濟(jì)的多宿主防火墻DMZ架構(gòu)(圖2),它是只有一個單獨(dú)的防火墻,具有多個網(wǎng)絡(luò)接口,限制不同網(wǎng)絡(luò)間的通訊,雖然雙防火墻拓?fù)浣Y(jié)構(gòu)能提供更好的保護(hù),但也有弱點(diǎn),例如:外部防火墻本身在某種意義上可能泄密。只要你足夠細(xì)心地編寫規(guī)則,多宿主防火墻接近同樣的作用。


圖2 DMZ和多宿主防火墻

無論你是使用一個單一的多宿主防火墻還是成對使用防火墻,每個網(wǎng)絡(luò)區(qū)域(內(nèi)部、外部/互聯(lián)網(wǎng)和DMZ)連接到一個專用的防火墻物理網(wǎng)絡(luò)接口是非常重要的,是的,這讓你的防火墻有單點(diǎn)故障,但是,如果某個網(wǎng)絡(luò)區(qū)域內(nèi)的主機(jī)路由數(shù)據(jù)包到其他網(wǎng)絡(luò)區(qū)域不經(jīng)過防火墻,你的防火墻就沒有什么價值了。

我介紹的最后一個防火墻設(shè)計原則目前只能用于多接口防火墻(也就是說,不能用于本地/個人防火墻):總是使用反欺騙規(guī)則。

回顧圖1中面向互聯(lián)網(wǎng)的防火墻,它有2個網(wǎng)卡接口:內(nèi)部(面向DMZ)和外部(面向互聯(lián)網(wǎng)),假設(shè)圖1中的內(nèi)部網(wǎng)絡(luò)使用c類網(wǎng)絡(luò)空間192.168.55.0/24內(nèi)的ip地址,DMZ使用192.168.77.0/24。

因此,防火墻能丟掉抵達(dá)互聯(lián)網(wǎng)接口的源自這2個私有ip范圍內(nèi)的ip地址的任何數(shù)據(jù)包,這些數(shù)據(jù)包容易被欺騙,攻擊者有時偽造這些數(shù)據(jù)包的源ip地址,試圖通過防火墻或戰(zhàn)勝其他基于源ip的認(rèn)證機(jī)制(TCPwrappers,hosts.equiv等)。

事實上,在任何防火墻上面向互聯(lián)網(wǎng)的網(wǎng)絡(luò)接口應(yīng)該丟掉源ip地址來自際任何非internet路由的ip范圍的數(shù)據(jù)包,特別是那些在RFC1918中定義的:10.0.0.0/8,172.16.0.0/12和192.168.0.0/16(如果這些號碼屬于CIDR【譯者注:無類別域間路由】標(biāo)記法范圍內(nèi)的ip地址,如果你弄不清楚也不要著急,稍后會介紹一些iptables工具)。

為了更通俗易懂的方式說明這個重要的防火墻設(shè)計原則,你應(yīng)該配置你的防火墻丟掉源ip地址方向不對的任何數(shù)據(jù)包。

以上就是所有防火墻應(yīng)該做的事情,現(xiàn)在我們開始看看如何做這些事情。

分享到

yajing

相關(guān)推薦