歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

中小企業服務器配置方案 第一章(5)

  第一章 代理接入服務器 第五節 Squid代理服務器 5.1 簡介   作為一種免費的網絡操作系統,Linux越來越受到廣大網絡愛好者的歡迎,目前因特網(Internet)上運行的主機有相當一部分采用的就是linux操作系統,而且中國已經把linux操作系統作為政府上網年的指定網絡操作系統,種種跡象表明,linux操作系統正在逐漸走向成熟。在本章我將向大家介紹一種能在Linux系統下使用的比較優秀的代理服務器軟件的配置方法。 眾所周知,當今因特網發展速度極其迅猛,IP地址資源非常緊張。而如果您想訪問因特網,共享因特網的豐富資源,您的機器必須擁有一個標准的IP地址。在因特網上,IP地址是識別您的機器的唯一標志。目前,有兩種方式可以讓您的機器擁有標准的IP地址:一種是局域網通過專線接入因特網,您的機器可以擁有靜態的IP地址。所謂靜態IP地址,就是對使用者來說,是固定不變的IP地址,這個IP地址給您使用後,其他人就不能再用了。一種是通過電話線撥號或ISDN撥號等方式接入因特網,您的機器可以在您撥號上網的在線期間從ISP的訪問服務器的IP地址池中獲得一個臨時的標准IP地址,這個IP地址在您下線後就不歸您使用了,而您下次撥號再上網,很可能分配給您的機器的是另外一個臨時的IP地址了。這種臨時分配的IP地址,稱為動態IP地址。無論是靜態地址還是動態地址,在您的機器訪問因特網時,使用起來沒有什麼區別。   現在因特網發展速度這麼快,而IP地址資源又這麼緊張,這不能不說是一個尖銳的矛盾。雖說Ipv6正在開發中,但遠水不解近渴,好多的企業、公司內部的Intranet現在就想接入因特網這個浩瀚的資源海洋,但又苦於沒有充足的IP地址資源,怎麼辦?還好,有代理服務這個好東西。代理服務是指由一台擁有標准IP地址的機器代替若干沒有標准IP地址(以下稱內部地址)的機器和因特網上的其他主機打交道,提供代理服務的這台機器稱為代理服務器。擁有內部地址的機器想到因特網上查找資料時,先把這個請求發給擁有標准IP地址的代理服務器,由代理服務器把這個請求通過它的標准IP地址發到請求的目標地址。然後目標地址的服務器把返回的結果發回給代理服務器,代理服務器再原封不動的把資料發給最初那台擁有內部IP地址的機器。這樣就完成了一次內部機器訪問因特網的一個過程。若干擁有內部地址的機器就組成了內部網,代理服務器的作用就是勾通內部網和因特網,解決內部網訪問因特網的問題。而且這種代理是不可逆的,因特網上的主機不能訪問任何一台擁有內部地址的機器,這樣又可以保障內部資料的安全性。 能夠完成這種代理功能的服務器軟件有好多,我給大家推薦一種能在linux下使用的比較優秀的代理服務器軟件Squid。之所以說它比較優秀,是因為它可以在代理服務器上作一個很大的緩存,可以把好多常去的網站內容存儲到緩存中,這樣,內部網的機器再訪問那些網站,就可以從緩存裡調用了。這樣一方面可以加快內部網浏覽因特網的速度,這就是所謂的提高客戶機的訪問命中率, 另一方面,Squid不僅僅支持HTTP協議,而且還支持FTP,GOPHER,SSL和WAIS等協議考慮到簡捷實用的原則,我們本章只向大家介紹如何設置HTTP代理,而其他的代理大同小異,各位理解了HTTP的配置也就明白應該如何配置其他的代理了。 5.2 所需資源 5.2.1 所需包 squid-2.3.STABLE1-5.rpm 5.2.2 所需配置文件 /etc/squid/squid.conf 系統自帶,管理員配置 5.2.3 相關工具 無 5.3 配置方案 /etc/squid/squid.conf 說明:squid主配置文件 源文件:


acl deny_ip_01 dst 1.1.1.1 http_Access deny deny_ip_01 # 以上兩行是基於IP的訪問控制 acl deny_url_01 url_regex http://www.www.www http_access deny deny_url_01 # 以上兩行是基於URL的訪問控制 http_port 3128 # HTTP協議代理默認代理端口 cache_mem 32 MB #開劈一塊內存區域作為緩沖 cache_dir ufs /home/squid/cache 1024 16 256 # 開劈一塊硬盤空間,作為硬盤緩沖區,這塊區域的分布是連 續的,邏輯關系由管理員設定 cache_access_log /var/log/squid/access.log # 該log文件是用來描述每次客戶請求HTTP內容時,高速緩 存命中或未命中的項目。同時描述提出請求的主機身份及它 們所需的內容。 cache_log /var/log/squid/cache.log #用於描述當squid守護進程啟動時,可看到有多少內存、交 換空間,高速緩存目錄的位置,所接受的連接類型及接受連 接的端口。 cache_store_log /var/log/squid/store.log #用於描述頁面從高速緩存中被調入調出的情況。 pid_filename /var/run/squid.pid #管理員可以通過查看此文件了解當前執行的squid進程。 dns_nameservers 192.168.0.1 #定義域名解析服務器的地址 acl all src 0.0.0.0/0.0.0.0 cache_mgr [email protected] #設置cache管理員的郵件箱地址 reference_age 3 days #設置緩沖區的更新周期 maximum_object_size 4096 KB #設置允許被緩存的一次性最大請求 5.4 測試及管理辦法 5.4.1 測試方法 1. 在客戶機下打開浏覽器,設置好代理服務器,端口是3128,看看能不能上網就是拉。 5.4.2 管理方法 1.修改完配置文件需要執行/etc/rc.d/init.d/squid restart使得配置生效。 5.7 小結 看完本章之後,我想各位一定有個深切的感受,squid的配置文件十分的長,而且能干的事情實在是太多了,但是我們作為一名合格的管理員應該從需求方案出發,以客戶的需求為導向,配置出我們自己需要的服務器,這樣不但可以滿足需要,還能大大減少我們的工作量,配置squid就是一個鮮明的例子。



5.7 小結 看完本章之後,我想各位一定有個深切的感受,squid的配置文件十分的長,而且能干的事情實在是太多了,但是我們作為一名合格的管理員應該從需求方案出發,以客戶的需求為導向,配置出我們自己需要的服務器,這樣不但可以滿足需要,還能大大減少我們的工作量,配置squid就是一個鮮明的例子。



Copyright © Linux教程網 All Rights Reserved