發布時間:2011-11-16
實驗背景
代理服務器是介于瀏覽器和Web服務器之間的一臺服務器,有了它之后,瀏覽器不是直接到Web服務器去取回網頁而是向代理服務器發出請求,Request信號會先送到代理服務器,由代理服務器來取回瀏覽器所需要的信息并傳送給你的瀏覽器。而且,大部分代理服務器都具有緩沖的功能,就好象一個大的Cache,它有很大的存儲空間,它不斷將新取得數據儲存到它本機的存儲器上,如果瀏覽器所請求的數據在它本機的存儲器上已經存在而且是新的,那么它就不重新從Web服務器取數據,而直接將存儲器上的數據傳送給用戶的瀏覽器,這樣就能顯著提高瀏覽速度和效率(速度會隨著代理服務器地理位置的不同以及網絡傳輸情況而改變),而且由于不同國家與地區的網絡政策環境存在差異,部分區域可能存在特定的訪問限制。為滿足跨境業務開展與信息獲取的合規需求,企業通常會部署經授權的專用技術方案,以保障國際通信與信息交流的順暢進行。
對于服務提供商來說:
1.大部分代理服務器都具有緩沖的功能。它有一個很大的Cache(一個很大的硬盤緩沖區),不斷地將新取得的數據保存在Cache中。
如果瀏覽器所請求的數據在其緩沖區中已經存在而且是新的,那么它就不會重新到Web服務器取數據,而直接將緩沖區中的數據傳送給瀏覽器,從而顯著地提高瀏覽速度;
2.代理服務器能夠提供安全功能。它連接Internet與Intranet,有防火墻功能。由于內部網與外部網之間沒有其它的直接連接,所有的通信都必須通過代理服務器,因此外界不能直接訪問到內部網,使得內部網的安全性得到提高。同時也可以設置IP地址過濾,來限制內部網對外部的訪問權限;
3.可以節省IP開銷。由于所有用戶對外只占用一個有效的IP,所以不必租用過多的有效IP地址,降低網絡的維護成本。由于目的服務器只能查出所使用的代理服務器的IP,所以對防止網絡黑客還有一個不言而喻的好處,那就是通過這種方法隱藏自己的真實IP地址。
對于個人來說:
代理服務器的好處是可以通過代理來訪問本身不能訪問到的地方。例如169的GUEST用戶。他們使用公用的賬號上網,只能訪問當地信息港。有了代理服務器,就可以任意出國!電子信箱、主頁空間、ICQ、FTP、各種信息資源……統統敞開著。不過,如果你有自己的賬戶則不再需要代理服務器了,你可以自由出國。當然,如果你想隱藏自己的真實IP地址,也可使用代理服務器。
代理服務器怎樣工作方式:
實現代理服務器有三種方式:一是在應用層實現,相當于應用網關,如web代理服務器和Socks代理服務器;二是在IP層或更低層實現,通過對數據包的轉發來完成代理功能;三是通過更改系統調用的方式實現,如微軟的Winsock代理服務器,在自己的計算機上安裝代理程序,程序將自動地修改系統調用。由于Web代理服務器是目前使用得普遍的代理服務器,因此下面主要針對Web代理服務器來說明代理服務器的實現原理。
Web 代理服務器一般由過濾器和應用程序兩部分組成。過濾器判斷收到的HTTP請求是代理格式還是標準格式,如果是標準格式,則交由本地WWW服務器處理;如果是代理格式,則交由代理應用程序處理。代理應用程序首先在代理緩存區內查找,如果數據存在且有效,則從緩存區中取出數據;如果不存在,則連接至遠程目標服務器,并獲得數據。不論代理服務器從緩存區中還是從Internet遠程服務器中獲取數據,它都按照HTTP協議使用80號端口將信息返回給請求者。
因此本實驗將介紹如何使用squid軟件配合linux中的iptables防火墻來進行透明代理設置。

該實驗是防火墻教學過程中,需要讓學生重點掌握的內容,可以通過實驗室環境使學生掌握具體的操作技術。
