高效配置Linux代理服務(wù)器 Squid介紹 |
發(fā)布時間: 2012/8/11 10:51:11 |
作為一種免費(fèi)的網(wǎng)絡(luò)操作系統(tǒng),Linux越來越受到廣大網(wǎng)絡(luò)愛好者的歡迎,目前Internet上運(yùn)行的主機(jī)有相當(dāng)一部分采用的就是Linux,而且中國已經(jīng)把Linux作為政府上網(wǎng)的指定網(wǎng)絡(luò)操作系統(tǒng)。種種跡象表明,Linux正在逐漸走向成熟。
為了解決Internet發(fā)展迅速和IP地址資源緊張的矛盾,代理服務(wù)器的使用越來越廣泛。Squid是一種在Linux系統(tǒng)下使用的比較優(yōu)秀的代理服務(wù)器軟件。 代理服務(wù) 代理服務(wù)是指由一臺擁有標(biāo)準(zhǔn)IP地址的機(jī)器代替若干沒有標(biāo)準(zhǔn)IP地址的機(jī)器和Internet上的其它主機(jī)打交道,提供代理服務(wù)的這臺機(jī)器稱為代理服務(wù)器。擁有內(nèi)部地址的機(jī)器想連接到Internet上時,先把這個請求發(fā)給擁有標(biāo)準(zhǔn)IP地址的代理服務(wù)器,由代理服務(wù)器把這個請求通過它的標(biāo)準(zhǔn)IP地址發(fā)到請求的目的地址。然后目標(biāo)地址的服務(wù)器把返回的結(jié)果發(fā)回給代理服務(wù)器,代理服務(wù)器再原封不動的把資料發(fā)給內(nèi)部主機(jī)。若干擁有內(nèi)部地址的機(jī)器就組成了內(nèi)部網(wǎng),代理服務(wù)器的作用就是溝通內(nèi)部網(wǎng)和Internet,解決內(nèi)部網(wǎng)訪問Internet的問題。這種代理事不可逆的,Internet上的主機(jī)不能訪問任何一臺擁有內(nèi)部地址的機(jī)器,這樣又可以保障內(nèi)部資料的安全性。 代理軟件的一個優(yōu)點是它能夠檢驗除了數(shù)據(jù)包之外的許多東西。Squid對數(shù)據(jù)包的有效載荷進(jìn)行檢驗,也就是穿越防火墻的數(shù)據(jù)包中TCP(或者UDP)部分所占地份量。根據(jù)數(shù)據(jù)包報頭(數(shù)據(jù)包中的IP部分)和數(shù)據(jù)包有效載荷(TCP部分)的信息,代理防火墻能夠決定數(shù)據(jù)包將發(fā)往何處,數(shù)據(jù)包請求什么,以及根據(jù)數(shù)據(jù)包所必須提供的這些信息決定采取什么樣的行動。 對于Web用戶來說,Squid是一個高性能的代理緩存服務(wù)器,可以加快內(nèi)部網(wǎng)瀏覽Internet的速度,提高客戶機(jī)的訪問命中率。Squid不僅支持HTTP協(xié)議,還支持FTP、gopher、SSL和WAIS等協(xié)議。和一般的代理緩存軟件不同,Squid用一個單獨(dú)的、非模塊化的、I/O驅(qū)動的進(jìn)程來處理所有的客戶端請求。 Squid將數(shù)據(jù)元緩存在內(nèi)存中,同時也緩存DNS查尋的結(jié)果,除此之外,它還支持非模塊化的DNS查詢,對失敗的請求進(jìn)行消極緩存。Squid支持SSL,支持訪問控制。由于使用了ICP,Squid能夠?qū)崿F(xiàn)重疊的代理陣列,從而最大限度的節(jié)約帶寬。 Squid由一個主要的服務(wù)程序Squid,一個DNS查詢程序dnsserver,幾個重寫請求和執(zhí)行認(rèn)證的程序,以及幾個管理工具組成。當(dāng)Squid啟動以后,它可以派生出指定數(shù)目的dnsserver進(jìn)程,而每一個dnsserver進(jìn)程都可以執(zhí)行單獨(dú)的DNS查詢,這樣一來就大大減少了服務(wù)器等待DNS查詢的時間。 Squid的另一個優(yōu)越性在于它使用訪問控制清單(ACL)和訪問權(quán)限清單(ARL)。訪問控制清單和訪問權(quán)限清單通過阻止特定的網(wǎng)絡(luò)連接來減少潛在的Internet非法連接,可以使用這些清單來確保內(nèi)部網(wǎng)的主機(jī)無法訪問有威脅的或不適宜的站點。 編譯安裝Squid squid軟件包有兩種:一種是RedHat所使用的rpm包,另一種是源代碼包。 rpm包的安裝: 1.進(jìn)入/mnt/cdrom/RedHat/RPMS。 2.執(zhí)行rpm -ivh squid-2.2.STABLE4-8.I386.rpm。 源代碼包的安裝: 1.從http://www.squid-cache.org下載squid-2.2.STABLE4-src.tar.gz。 2.將該文件拷貝到/usr/local目錄。 3.解開該文件tar xvzf squid-2.2.STABLE4-src.tar.gz,在/usr/local目錄下生成一個新的目錄squid-2.2.STABLE4,為了方便使用mv squid-2.2.STABLE4 squid將目錄更名為squid。 4.進(jìn)入squid目錄。 5.執(zhí)行./configure,可以用./configure -prefix=/directory/you/want指定安裝目錄。系統(tǒng)默認(rèn)安裝目錄為/usr/local/squid。 6.執(zhí)行make all。 7.執(zhí)行make install。 8.安裝結(jié)束后,Squid的可執(zhí)行文件在安裝目錄的bin子目錄下,配置文件在etc子目錄下。 配置文件squid.conf Squid有一個主要的配置文件squid.conf,位于/etc/squid目錄下,用戶僅僅需要修改該配置文件即可。 squid.conf配置文件分為13個部分,分別是: 1.NETWORK OPTIONS(有關(guān)的網(wǎng)絡(luò)選項) 2.OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM(作用于鄰居選擇算法的有關(guān)選項) 3.OPTIONS WHICH AFFECT THE CACHE SIZE(定義cache大小選項) 4.LOGFILE PATHNAMES AND CACHE DIRECTORIES(定義日志文件的路徑及cache的目錄) 5.OPTIONS FOR EXTERNAL SUPPORT PROGRAMS(外部支持程序選項) 6.OPTIONS FOE TUNING THE CACHE(調(diào)整cache選項) 7.TIMEOUTS(超時) 8.ACCESS CONTROLS(訪問控制) 9.ADMINISTRATIVE PARAMETERS(管理參數(shù)) 10.OPTIONS FOR THE CACHE REGISTRATION SERVICE(cache注冊服務(wù)選項) 11.HTTPD-ACCELERATOE OPTIONS(HTTPD加速選項) 12.MISCELLANEOUS(雜項) 13.DELAY POOL PARAMETERS(延時池選項) 雖然squid的配置文件很龐大,但是用戶可以根據(jù)自己的實際情況修改相應(yīng)的選項,并不需要配置所有的選項。下面介紹幾個常用的選項。 1.http_port 定義squid監(jiān)聽HTTP客戶連接請求的端口。缺省是3128,如果使用HTTPD加速模式則為80。可以指定多個端口,但是所有指定的端口都必須在一條命令行上。 2.cache_mem 指定squid可以使用的內(nèi)存理想值,建議設(shè)為內(nèi)存的1/3. 3.cache_dir Directory-Name Mbytes Level1 Level2 指定squid用來存儲對象的交換空間的大小及其目錄結(jié)構(gòu)?梢杂孟旅娴墓絹砉浪阆到y(tǒng)所需要的子目錄數(shù)目。 已知量: DS = 可用交換空間總量(單位KB)/ 交換空間數(shù)目 OS = 平均每個對象的大小= 20k NO = 平均每個二級子目錄所存儲的對象數(shù)目 = 256 未知量: L1 = 一級子目錄的數(shù)量 L2 = 二級子目錄的數(shù)量 計算公式: L1 x L2 = DS / OS / NO 本文出自:億恩科技【www.cmtents.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |