詳解防火牆ISA策略元素

拓撲:

clip_image002

需求:

我們的目標是先寫出一條訪問規則:允許在午休時間(12:00-13:00),人事部和財務部的員工可以訪問互聯網上除百度之外的網站,而且訪問網站時不能訪問視頻和音頻內容,我們通過這條規則的實現過程來學習策略元素

1、協議(HTTP,HTTPS,自定義協議)

2、用戶

3、計劃

4、內容類型

5、網絡對象(計算機、子網、URL集、域名集等)

正確理解防火牆策略的執行過程

ISA檢查數據包的順序是:

一 檢查是否符合網絡規則

二 檢查是否符合系統策略

三 檢查是否符合防火牆策略

網絡規則

一個數據包通過ISA時,ISA首先要檢查的就是網絡規則。網絡規則是ISA中非常重要而又很容易被忽視的一個因素。ISA檢查數據包時首先要考慮的就是這個數據包是從哪個網絡到哪個網絡,這兩個網絡間的網絡規則是什麼。也就是說ISA是基於網絡進行控制,而不是很多朋友認爲的基於主機進行控制。網絡規則只有兩種,路由或NAT。如果A網絡到B網絡的網絡規則爲路由,那麼數據包從A網絡到B網絡或者從B網絡到A網絡都有可能;如果A網絡到B網絡的網絡規則爲NAT,那麼數據包只有可能從A到B,而不可能從B到A。我們可以把兩個網絡比喻爲兩個城市,網絡規則就象是城市之間的高速公路,如果兩個網絡之間的網絡規則爲路由,那就象是兩個城市之間有一條雙向高速公路;如果網絡規則爲NAT,則就相當於兩個城市之間有一條單行高速公路

還有一個網絡規則的例子,有一個管理員用ISA把DMZ區的一個FTP服務器發佈到了外網和內網,結果外網用戶訪問正常,內網用戶卻無法訪問。爲什麼,因爲DMZ和外網是NAT關係,而DMZ和內網是路由關係。由於從DMZ到外網是NAT關係,外網用戶無法通過訪問規則直接訪問,所以通過發佈規則訪問是合理的;而內網和DMZ是路由關係,因此內網用戶就應該通過訪問規則而不是發佈規則來訪問。

綜上所述,網絡規則是ISA進行訪問控制時所要考慮的第一要務,只有從源網絡到目標網絡被網絡規則許可了,ISA纔會繼續檢查系統策略和防火牆策略;如果網絡規則不許可,ISA會直接拒絕訪問,根本不會再向下檢查系統策略和防火牆策略。大家寫訪問規則時一定要注意這點。

二、系統策略

如果一個數據包通過了網絡規則的檢查,ISA接下來就要看看它是否符合系統策略了。ISA2006標準版中預設了30條系統策略,系統策略應用於ISA本地主機,控制着從其他網絡到本地主機或者從本地主機到其他網絡的通訊,系統策略中啓用了一些諸如遠程管理,日誌,網絡診斷等功能。一般情況下,我們對系統策略只能允許或禁止,或對少數策略的某些屬性作一些修改。

以前曾經有朋友問我,爲什麼ISA安裝後防火牆策略中明明禁止了所有通訊,但ISA主機還是可以ping到其他計算機,是否ISA本機有某些特權呢?不是的,ISA能對其他網絡進行有限訪問完全是由系統策略決定的,只是由於系統策略沒有顯示出來,因此安裝完ISA後我們並沒有注意到它。

防火牆策略

防火牆策略用來控制源網絡和目標網絡的通訊,是ISA管理員控制網絡訪問的常規武器,也是本文討論的重點所在。防火牆策略的優先級就是按照規則排列的順序,而不是按照拒絕優先原則。由於系統策略優先級也是按照序號排列,和防火牆策略優先級完全一樣,我們甚至可以把防火牆策略看成是從31開始編號的系統策略。

數據包通過網絡規則的檢查後,就要面臨系統策略和防火牆策略的考驗了。ISA將從第一條策略開始檢查,檢查數據包的訪問請求是否匹配策略,如果匹配,就按照策略的規定執行,結果無非是禁止或允許。如果不匹配,ISA就將按順序檢查下一條策略,從第一條系統策略一直檢查到最後一條防火牆策略。那有人要問了,如果把所有策略都檢查完了還不匹配怎麼辦?呵呵,這是不可能的,ISA自帶的最後一條防火牆策略內容是禁止所有網絡間的一切通訊,如下圖所示,這條防火牆策略可以與所有的網絡訪問相匹配,因此ISA實際上使用了隱式拒絕,也就是說如果某個訪問請求如果沒有被策略顯式允許,那肯定會被最後一條防火牆策略所拒絕。

clip_image003

看了上面的介紹,我們要注意兩點,一是策略順序,二是策略匹配。

A 策略順序

防火牆策略的排列順序決定了優先級,排在前面的策略優先執行,根據這個原則,我們要好好設計一下防火牆策略的順序。例如,我們寫了兩條防火牆策略,一條是允許內網用戶任意訪問,另外一條是拒絕內網用戶訪問聯衆遊戲網站。如果排列順序如下圖所示,允許策略排在拒絕策略之前,那就是個錯誤的決定。拒絕訪問聯衆的策略永遠不會被執行,因爲當用戶訪問聯衆時,訪問請求匹配第一條防火牆策略,用戶就被防火牆放行了,第二條策略根本沒有執行的機會。正確的做法是將拒絕策略放到允許策略之前!

clip_image004

B 策略匹配

策略匹配是ISA管理員關注的核心問題。前面我們一直在提如果網絡訪問和防火牆策略匹配,則按防火牆策略執行允許或禁止的操作。那麼,問題是,怎麼纔算和防火牆策略匹配呢?

只有把這個問題搞清楚了,才能寫出符合你設計初衷的策略。

當ISA檢測到訪問請求時,ISA會檢查訪問請求能否匹配防火牆策略中的策略元素,策略元素的檢查順序爲 協議,從(源網絡),計劃時間,到(目標網絡),用戶,內容類型。如果和這些元素都能匹配,ISA就認爲訪問請求匹配防火牆策略。

從被檢查的策略元素來看, 到(目標網絡)元素最容易出問題。

目標網絡元素的問題容易出在哪兒呢?容易出現在DNS上,確切地說是出現在DNS的反向解析上!這個結論估計是很多管理員始料未及的,還是舉個例子加以說明吧,假設我們要禁止內網訪問百度,我見過很多管理員的處理方法都是這樣的,首先創建一個域名集,將[url]www.baidu.com[/url]包含進去,如下圖所示。

clip_image005

然後就寫出一條拒絕內網訪問百度的訪問規則,如下圖所示

clip_image006

我們在一臺內網計算機Denver上測試一下,Denver使用Web代理訪問百度,如下圖所示,錯誤信息表明ISA拒絕了Denver訪問百度的請求。這說明訪問請求和拒絕百度訪問的防火牆策略匹配成功,哈哈,看樣子大功告成了?且慢,再向下看。

clip_image007

我們在Denver上換用IP訪問,在IE中輸入202.108.22.5,如下圖所示,熟悉的百度界面已經出來了,哈哈,貌似嚴謹的訪問規則竟如此不堪一擊!這說明這次的訪問請求沒有和拒絕百度訪問的防火牆策略匹配成功,而是和第二條允許內網用戶任意訪問的防火牆策略匹配成功了。

clip_image008

看到這兒,有些朋友可能得出結論了,哦,原來用域名禁止訪問某個網站是不成立的。錯!如果202.108.22.5的反向解析結果爲[url]www.baidu.com[/url],那麼拒絕百度的防火牆策略就是成立的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章