建立可全面監(jiān)控Squid代理服務(wù)器 |
發(fā)布時(shí)間: 2012/8/13 11:19:29 |
代理服務(wù)器的功能是代理網(wǎng)絡(luò)用戶取得網(wǎng)絡(luò)信息,它是網(wǎng)絡(luò)信息的中轉(zhuǎn)站。隨著代理服務(wù)器的廣泛使用,隨之而來的是一系列的安全問題。由于沒有對(duì)代理服務(wù)器的訪問控制策略作全面細(xì)致的配置,導(dǎo)致用戶可以隨意地通過代理服務(wù)器訪問許多色情、反動(dòng)的非法站點(diǎn),而這些行為往往又很難追蹤,給管理工作帶來極大的不便。
部署Squid服務(wù)器 1.各種代理服務(wù)器的比較 Linux下的代理服務(wù)器軟件很多,但是被廣泛應(yīng)用的只有Squid、socks、Apache等幾個(gè)實(shí)踐證明是高性能的代理軟件。下面我們分別來比較一下這幾個(gè)軟件,如圖1所示。
雖然上面所列種類還不太全面,但是所謂窺一斑而知全豹,從中我們也可以看出什么樣的代理服務(wù)器是被用戶廣泛使用的。Squid是Linux下一個(gè)緩存Internet數(shù)據(jù)的代理服務(wù)器軟件,其接收用戶的下載申請(qǐng),并自動(dòng)處理所下載的數(shù)據(jù)。也就是說,當(dāng)一個(gè)用戶想要下載一個(gè)主頁時(shí),可以向Squid發(fā)出一個(gè)申請(qǐng),要Squid代替其進(jìn)行下載,然后Squid連接所申請(qǐng)網(wǎng)站并請(qǐng)求該主頁,接著把該主頁傳給用戶同時(shí)保留一個(gè)備份。當(dāng)別的用戶申請(qǐng)同樣的頁面時(shí),Squid把保存的備份立即傳給用戶,使用戶覺得速度相當(dāng)快。目前,Squid可以代理HTTP、FTP、GOPHER、SSL和WAIS協(xié)議,暫不能代理POP3、NNTP等協(xié)議。Squid可以工作在很多操作系統(tǒng)中,如AIX、Digital、Unix、FreeBSD、HP-UX、Irix、Linux、NetBSD、Nextstep、SCO、Solaris、OS/2等。Squid支持以下協(xié)議: 客戶端協(xié)議:HTTP、FTP、Gopher、WAIS、SSL 2.Squid工作原理和流程圖 1)代理服務(wù)器的工作機(jī)制 代理服務(wù)器的工作機(jī)制很象我們生活中常常提及的代理商,假設(shè)你自己的機(jī)器為A機(jī),你想獲得的數(shù)據(jù)由服務(wù)器B提供,代理服務(wù)器為C,那么具體的連接過程是這樣的。首先,A機(jī)需要B機(jī)的數(shù)據(jù),A直接與C機(jī)建立連接,C機(jī)接收到A機(jī)的數(shù)據(jù)請(qǐng)求后,與B機(jī)建立連接,下載A機(jī)所請(qǐng)求的B機(jī)上的數(shù)據(jù)到本地,再將此數(shù)據(jù)發(fā)送至A機(jī),完成代理任務(wù)。 2)Squid工作流程
圖2Squid工作原理圖 ◆客戶端計(jì)算機(jī)向代理服務(wù)器端發(fā)送一個(gè)數(shù)據(jù)需求封包; 通常說來,安裝Squid有兩種方法:一是從Linux發(fā)行版本中獲取該軟件的RPM包進(jìn)行;二是安裝從Squid的官方站點(diǎn)http://www.squid-cache.org/下載該軟件的源碼進(jìn)行編譯后安裝。首先要確認(rèn)是否已經(jīng)安裝vsftpd可以使用以下命令查看: [rpm-qsquid] 如果在系統(tǒng)安裝時(shí)已經(jīng)把squid安裝上了,那么我們就可以直接對(duì)vsftpd進(jìn)行配置使用了。否則,可以通過RatHetEnterpriseLinux圖形界面下的“添加/刪除應(yīng)用程序”工具進(jìn)行安裝。具體方法是,選擇“主選單”→“系統(tǒng)設(shè)置”→“添加/刪除應(yīng)用程序”,在彈出的界面中選中萬維網(wǎng)服務(wù)器的“squid”選項(xiàng),單擊“更新”即可,見圖3。
圖3安裝Squid代理服務(wù)器 也可以從Squid站點(diǎn)www.squid-cache.org獲取該軟件的源代碼安裝包,包括gz和bz2兩種壓縮方式。 1.使用Linux命令和工具分別使用KDE系統(tǒng)衛(wèi)士和netstat命令檢查Squid代理組服務(wù)器允許情況,和端口使用情況,如圖4。
圖4查看Squid服務(wù)器運(yùn)行進(jìn)程和端口 如果你的桌面出現(xiàn)圖3類似的情況表示Squid代理服務(wù)器基本運(yùn)行正常。 2.使用cachemgr.cgi 1)cachemgr.cgi配置過程 squid本身提供一個(gè)cgi程序,文件名為cachemgr.cgi,squid安裝完后將它復(fù)制到Apache服務(wù)器下的cgi-bin這個(gè)目錄下即可使用。 #cp/usr/lib/squid/cachemgr.cgi/home/httpd/cgi-bin 下面我們通過apache進(jìn)行監(jiān)控squid,修改配置文件/etc/http/conf/http.conf,添加以下內(nèi)容: <Location/cgi-bin/cachemgr.cgi> 生成口令文件: #cd/usr/local/squid/etc 重啟squid與http,要察看CacheManager提供的信息時(shí),請(qǐng)?jiān)跒g覽器的地址列中鍵入http://服務(wù)器的名稱或IP地址/cgi-bin/cachemgr.cgi。首先看到用戶認(rèn)證界面,經(jīng)過認(rèn)證后進(jìn)入登錄界面,輸入代理服務(wù)器地址和端口號(hào),見圖5。
圖5cachemgr.cgi登錄界面
圖6cachemgr.cgi實(shí)時(shí)監(jiān)控界面 (2)重點(diǎn)解讀監(jiān)控?cái)?shù)據(jù) cachemgr.cgi提供的數(shù)據(jù)非常詳細(xì),下面重點(diǎn)解讀一些內(nèi)容: ◆MemoryUtilization(內(nèi)存使用情況) 內(nèi)存是Linux所管理的最重要的資源之一。內(nèi)存管理系統(tǒng)是操作系統(tǒng)中最為重要的部分,因?yàn)橄到y(tǒng)的物理內(nèi)存總是少于系統(tǒng)所需要的內(nèi)存數(shù)量。虛擬內(nèi)存就是為了克服這個(gè)矛盾而采用的策略。系統(tǒng)的虛擬內(nèi)存通過在各個(gè)進(jìn)程之間共享內(nèi)存而使系統(tǒng)看起來有多于實(shí)際內(nèi)存的內(nèi)存容量。Linux支持虛擬內(nèi)存,就是使用磁盤作為RAM的擴(kuò)展,使可用內(nèi)存相應(yīng)地有效擴(kuò)大。核心把當(dāng)前不用的內(nèi)存塊存到硬盤,騰出內(nèi)存給其他目的。當(dāng)原來的內(nèi)容又要使用時(shí),再讀回內(nèi)存。MemoryUtilization監(jiān)控界面見圖7。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |