資源描述:
《搭建linux下的squid代理服務器》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、搭建Linux下的Squid代理服務器 本文介紹Linux下非常著名、常用的Squid代理服務器的使用,并著重講述如何使用其提供的訪問控制策略,來保證代理服務器的合法使用?! 〈矸掌鞯墓δ苁谴砭W(wǎng)絡用戶取得網(wǎng)絡信息,它是網(wǎng)絡信息的中轉站。隨著代理服務器的廣泛使用,隨之而來的是一系列的安全問題。由于沒有對代理服務器的訪問控制策略作全面細致的配置,導致用戶可以隨意地通過代理服務器訪問許多色情、反動的非法站點,而這些行為往往又很難追蹤,給管理工作帶來極大的不便?! quid是Linux下一個緩存Inter數(shù)據(jù)的代理服務器軟件,
2、其接收用戶的下載申請,并自動處理所下載的數(shù)據(jù)。也就是說,當一個用戶想要下載一個主頁時,可以向Squid發(fā)出一個申請,要Squid代替其進行下載,然后Squid連接所申請網(wǎng)站并請求該主頁,接著把該主頁傳給用戶同時保留一個備份。當別的用戶申請同樣的頁面時,Squid把保存的備份立即傳給用戶,使用戶覺得速度相當快。目前,Squid可以代理HTTP、FTP、GOPHER、SSL和包進行;二是安裝從Squid的官方站點.squid-cache.org/下載該軟件的源碼進行編譯后安裝。目前網(wǎng)上最新的穩(wěn)定版本為squid-2.5.STABLE
3、10,下面以此版本為例對兩種安裝方法進行介紹。 Squid服務器工作原理示意圖 1.RPM包的安裝 首先,查看是否已經(jīng)安裝了squid: #rpm-qa
4、grepsquid RedHatLinux9自帶了Squid安裝軟件包,將第一張安裝光盤放入光驅后掛裝光盤分區(qū): #mount/mnt/cdrom 然后,進入/mnt/cdrom/RedHat/RPMS目錄: #cd/mnt/cdrom/RedHat/RPMS 最后,執(zhí)行安裝: #rpm-ivhsquid-2.5.STABLE1-2.i386.rpm 當然
5、,我們也可以在開始安裝系統(tǒng)的過程中安裝該軟件?! ?.源代碼包的安裝 從.squid-cache.org/下載squid軟件的最新源代碼包squid-2.5.STABLE10.tar.gz,然后,按照如下步驟進行安裝?! ∈紫?,將該文件拷貝到/tmp目錄: #cpsquid-2.5.STABLE10.tar.gz/tmp 然后,解開該文件: #tarxzvfsquid-2.5.STABLE10.tar.gz 解開后,在/tmp生成一個新的目錄squid-2.5.STABLE10,為了方便使用mv命令,將該目錄重命名為s
6、quid: #mvsquid-2.5.STABLE10squid 切換進入squid目錄: #cdsquid 接著,執(zhí)行/configure,可以用./configure--prefix=/directory/you/p/squid: #./configure 最后,分別執(zhí)行makeall、makeinstall: #makeall #makeinstall 安裝結束后,Squid的可執(zhí)行文件在安裝目錄的bin子目錄下,配置文件在etc子目錄下。 Squid軟件向用戶提供了許多與配置、應用程序和庫、日志等相關
7、的文檔進行配置和管理,Squid有一個主要的配置文件squid.conf。同時,在RedHat環(huán)境下所有Squid的配置文件都位于/etc/squid子目錄下。在該目錄當中,系統(tǒng)同時提供了一個默認的配置文件,其名稱為squid.conf.default,然而,在實際的應用當中,該默認的配置文件存在某些問題,所以在使用Squid之前,必須首先對該配置文件的有關內容進行修改?! ∠旅娼榻Bsquid.conf文件的結構以及一些常用的選項。squid.conf配置文件可以分為13個部分。雖然Squid的配置文件很龐大,該配置文件的規(guī)模達
8、到了3000多行。然而,如果只是為一個中小型網(wǎng)絡提供代理服務,并且只準備使用一臺服務器,那么,配置問題將會變得相對簡單,只需要修改配置文件中的幾個選項即可滿足應用需求。這些幾個常用選項分別是: 1.http_port 該選項定義Squid監(jiān)聽HTTPD客戶連接請求的端口。默認是3128,如果使用HTTPD加速模式,則為80??梢灾付ǘ鄠€端口,但是所有指定的端口都必須在一條命令行上出現(xiàn),程序才能正確地識別?! ?.cache_mem(bytes) 該選項用于指定Squid可以使用的內存的理想值。這部分內存被用來存儲以下對象:
9、In-Transitobjects(傳入的對象)、HotObjects(熱對象,即用戶常訪問的對象)、Negative-Cachedobjects(消極存儲的對象)?! ?.cache_dirDirectory-NameMbytesLevel1Level2 該