用反向代理技術保護Web服務器(3)_Windows教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!
      綜合反向代理功能和普通拒絕外部訪問的普通防火墻軟件相結合,就能構成一個既具有保護內部網絡、又能對外提供Web信息發布的能力的防火墻系統。由于反向代理能力需要軟件實現,因此不能使用現有的防火墻系統,需要使用相關軟件進行開發改進。Unix顯然是首選平臺,我們基于FreeBSD系統,提出一種基于ipfw、natd與squid的防火墻設置方式。其中ipfw可以基于ip地址、端口、協議等對ip包進行過濾,natd提供網絡地址轉換功能,這樣就隱藏了內部網絡的拓撲等信息,ipfw和natd結合就構成了強大的包過濾網關。而squid是Internet上最流行的Web代理服務器之一,雖然它提供的是普通的正向代理能力,但其為開放源代碼軟件,并且具有強大的可配置性,因此很容易可以將其更改為反向代理服務器。

        這種方式對內部網絡的保護能力,要小于雙層防火墻軟件,等于普通的單層防火墻軟件,然而其對Web服務器的保護卻大于雙層防火墻系統中對位于對停火區內的Web服務器的保護。然而其本身為單層系統,因此比雙層系統配置起來更方便,是一種簡單有效的方案。其中反向代理功能能夠提供豐富的連接記錄,可以用來提供預防和捕獲攻擊的能力,而包過濾和網絡地址翻譯可以讓內部網絡的主機可以使用多種協議訪問外部網絡,不需要考慮防火墻對應用協議的支持問題。這種方式適用于大多數Intranet系統。

        三、討論

        當需要對內部網絡提供更進一步的保護時,仍然可以使用雙層防火墻模式,這樣兼具反向代理對Web服務器的保護能力,和雙層防火墻對內部數據的更大的保護能力。

        當組織向外提供信息發布的時候,并不僅僅要提供一些靜態的網頁,更大的可能是要根據實際的數據動態發布信息。因此發布的網頁便需要通過訪問數據庫動態生成,通常使用的動態生成技術有CGI或服務器端文檔解析等方式生成的。然而無論那種方式,都需要使得Web服務器能夠和數據庫服務器進行連接、通信。然而系統數據庫應該是內部網絡中應該首要保護的系統,因此要求安全性要求不高的對外發布信息的Web服務器和內部數據庫服務器放置在同一個網段,就會造成相應的安全問題。

        為了提高訪問數據庫服務器的安全性,就需要對能夠訪問數據庫的CGI程序進行限制,這就要求對啟動CGI的URL請求比對普通url進行更嚴格的限制。與普通包過濾型防火墻不同,反向代理能夠理解http協議,能區分出不同的url請求,從而能夠實現對cgi請求比普通http請求更嚴格的控制,甚至可以將cgi請求發送到一臺專用的CGI服務器進行處理,從而分別處理普通url請求和cgi請求。這臺cgi服務器可以具有訪問數據庫的能力,保證數據庫的安全。

        總結本文中的論述,可以看出,反向代理方式是一種對外提供Web發布時使用的有效的防火墻技術,使用它和傳統防火墻技術相結合,就能實現簡單有效的防火墻系統。

      來源:網絡搜集//所屬分類:Windows教程/更新時間:2012-06-18
      相關Windows教程