新聞中心
Squid cache(簡稱為Squid)是一個流行的自由軟件(GNU通用公共許可證)的代理服務(wù)器和Web緩存服務(wù)器。Squid有廣泛的用途,從作為網(wǎng)頁服務(wù)器的前置cache服務(wù)器緩存相關(guān)請求來提高Web服務(wù)器的速度,到為一組人共享網(wǎng)絡(luò)資源而緩存萬維網(wǎng),域名系統(tǒng)和其他網(wǎng)絡(luò)搜索,到通過過濾流量幫助網(wǎng)絡(luò)安全,到局域網(wǎng)通過代理上網(wǎng)。Squid主要設(shè)計用于在Unix一類系統(tǒng)運行。

目前創(chuàng)新互聯(lián)公司已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、夏河網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
系統(tǒng)環(huán)境
操作系統(tǒng):CentOS release 6.5 Squid版本:squid-3.1.10-20.el6_5.3.x86_64 關(guān)閉httpd 關(guān)閉防火墻
安裝Squid服務(wù)
檢查squid軟件是否安裝
# rpm -qa|grep squid
如果未安裝,則使用yum 方式安裝
# yum -y install squid
設(shè)置開機自啟動
# chkconfig --level 35 squid on //在3、5級別上自動運行squid服務(wù)
squid服務(wù)器的配置文件說明
squid 的主配置文件是 /etc/squid/squid.conf,所有squid的設(shè)定都是在這個文件里配置,下面是一些常用的配置選項。
http_port 3128 //設(shè)置監(jiān)聽的IP與端口號
cache_mem 64 MB //額外提供給squid使用的內(nèi)存,squid的內(nèi)存總占用為 X * 10+15+“cache_mem”,其中X為squid的cache占用的容量(以GB為單位),
//比如下面的cache大小是100M,即0.1GB,則內(nèi)存總占用為0.1*10+15+64=80M,推薦大小為物理內(nèi)存的1/3-1/2或更多。
maximum_object_size 4 MB //設(shè)置squid磁盤緩存最大文件,超過4M的文件不保存到硬盤
minimum_object_size 0 KB //設(shè)置squid磁盤緩存最小文件
maximum_object_size_in_memory 4096 KB //設(shè)置squid內(nèi)存緩存最大文件,超過4M的文件不保存到內(nèi)存
cache_dir ufs /var/spool/squid 100 16 256 //定義squid的cache存放路徑 、cache目錄容量(單位M)、一級緩存目錄數(shù)量、二級緩存目錄數(shù)量
logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %h" "%{User-Agent}>h" %Ss:%Sh //log文件日志格式 access_log /var/log/squid/access.log combined //log文件存放路徑和日志格式 cache_log /var/log/squid/cache.log //設(shè)置緩存日志 logfile_rotate 60 //log輪循 60天 cache_swap_high 95 //cache目錄使用量大于95%時,開始清理舊的cache cache_swap_low 90 //cache目錄清理到90%時停止。 acl localnet src 192.168.1.0/24 //定義本地網(wǎng)段 http_access allow localnet //允許本地網(wǎng)段使用 http_access deny all //拒絕所有 visible_hostname squid.david.dev //主機名 cache_mgr example@test.com //管理員郵箱
普通代理服務(wù)
即標(biāo)準(zhǔn)的、傳統(tǒng)的代理服務(wù),需要客戶機在瀏覽器中指定代理服務(wù)器的地址、端口。 實驗拓撲圖如下:
配置Squid 代理服務(wù)器IP地址
將eth1的IP地址修改為200.168.10.1
# ifconfig eth1 200.168.10.1
CentOS6 Squid代理服務(wù)器的安裝與配置CentOS6 Squid代理服務(wù)器的安裝與配置
編輯squid 主配置文件/etc/squid/squid.conf
http_port 3128
cache_mem 64 MB
maximum_object_size 4 MB
cache_dir ufs /var/spool/squid 100 16 256
access_log /var/log/squid/access.log
acl localnet src 192.168.1.0/24
http_access allow localnet
http_access deny all
visible_hostname squid.david.dev
cache_mgr mchina_tang@qq.com
初始化
# squid -z
CentOS6 Squid代理服務(wù)器的安裝與配置CentOS6 Squid代理服務(wù)器的安裝與配置
啟動Squid
# /etc/init.d/squid start
配置Web 服務(wù)器
A. 安裝Apache
# rpm -qa|grep httpd
# yum -y install httpd
B. 啟動Apache并加入開機啟動
# /etc/init.d/httpd start
# chkconfig httpd on
C. 創(chuàng)建index.html
# echo "Squid-Web1/200.168.10.2
" > /var/www/html/index.html
D. 修改Web服務(wù)器IP地址 將web服務(wù)器的IP地址修改為200.168.10.2
# ifconfig eth0 200.168.10.2
配置客戶端IP地址
CentOS6 Squid代理服務(wù)器的安裝與配置CentOS6 Squid代理服務(wù)器的安裝與配置
配置瀏覽器代理
打開瀏覽器(以IE為例,其他類似),菜單欄 -> 工具 -> Internet 選項 -> 連接 -> 局域網(wǎng)設(shè)置 -> 代理服務(wù)器,按照以下格式設(shè)置。
測試
CentOS6 Squid代理服務(wù)器的安裝與配置CentOS6 Squid代理服務(wù)器的安裝與配置
透明代理服務(wù)
適用于企業(yè)的網(wǎng)關(guān)主機,客戶機不需要指定代理服務(wù)器地址、端口等信息,通過iptables將客戶機的Web訪問數(shù)據(jù)轉(zhuǎn)交給代理服務(wù)程序處理。 實驗拓撲圖如下:
修改squid 主配置文件/etc/squid/squid.conf
http_port 3128 transparent
cache_mem 64 MB
maximum_object_size 4 MB
cache_dir ufs /var/spool/squid 100 16 256
access_log /var/log/squid/access.log
acl localnet src 192.168.1.0/24
http_access allow localnet
http_access deny all
visible_hostname squid.david.dev
cache_mgr mchina_tang@qq.com
在http_port 3128 后添加transparent 關(guān)鍵字。
reload
reload 讓上面的配置生效。
# /etc/init.d/squid reload
添加iptables規(guī)則,把內(nèi)部的http請求重定向到3128端口
A. 啟動iptables 服務(wù)
# /etc/init.d/iptables start
B. 清除現(xiàn)有iptables filter 表規(guī)則
# iptables -F
C. 保存iptables 設(shè)置
# /etc/init.d/iptables save
D. 在nat表中新增一條規(guī)則
# iptables -t nat -I PREROUTING -i eth0 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
E. 保存
# /etc/init.d/iptables save
修改客戶端IP地址
將默認網(wǎng)關(guān)設(shè)置為squid 服務(wù)器的內(nèi)網(wǎng)ip地址。
在瀏覽器中,取消代理設(shè)置
CentOS6 Squid代理服務(wù)器的安裝與配置CentOS6 Squid代理服務(wù)器的安裝與配置
反向代理服務(wù)
為Internet用戶訪問企業(yè)Web站點提供緩存加速。 實驗拓撲:
關(guān)閉防火墻
# /etc/init.d/iptables stop
修改Web Server 主頁
Web1:
# echo "Squid-Web1/192.168.1.18
" > /var/www/html/index.html
Web2:
# echo "Squid-Web1/192.168.1.19
" > /var/www/html/index.html
配置squid
http_port 80 accel vhost
http_access allow all
cache_peer 192.168.1.18 parent 80 0 originserver round-robin weight=1
cache_peer 192.168.1.19 parent 80 0 originserver round-robin weight=1
visible_hostname squid.david.dev
cache_mgr mchina_tang@qq.com
啟動Squid服務(wù)
squid啟動失敗,因為上面設(shè)定了squid的監(jiān)聽端口是80,和系統(tǒng)的http服務(wù)沖突,所以要將http服務(wù)停掉,然后再啟動squid。
測試
squid 采用了round-robin,所以客戶端的訪問將輪詢兩臺web服務(wù)器,采用 “Ctrl + F5” 來深度刷新測試。 Web1: Web2:
標(biāo)題名稱:CentOS中部署Squid代理服務(wù)
鏈接分享:http://www.dlmjj.cn/article/cogjdgs.html


咨詢
建站咨詢
