squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理

squid的ACL訪問控制列表

squid提供了強(qiáng)大的代理控制機(jī)制,通過合理的設(shè)置ACL(Access Control List,訪問控制列表)并進(jìn)行限制,可針對源地址、目標(biāo)地址、訪問的URL路徑、訪問的時(shí)間等各種控制條件進(jìn)行過濾。

發(fā)展壯大離不開廣大客戶長期以來的信賴與支持,我們將始終秉承“誠信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠服務(wù)每家企業(yè),認(rèn)真做好每個(gè)細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及成都木屋等,在成都網(wǎng)站建設(shè)公司、成都全網(wǎng)營銷推廣、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。

ACL訪問控制通過以下兩個(gè)步驟來實(shí)現(xiàn):

①、使用acl配置項(xiàng)定義需要控制的條件;

②、通過http_access配置項(xiàng)對已定義的列表做“允許”或者“拒絕”訪問的控制。

  1. 定義訪問控制列表

    格式:acl 列表名稱 列表類型 列表內(nèi)容 ···

常見的訪問控制列表類型

列表類型列表內(nèi)容示例含義、用途
src(源地址) 192.168.100.1、192.168.100.0/24 源IP地址、網(wǎng)段
dst(目標(biāo)地址) 192.168.234.5、192.168.234.0/24、www.baidu.com 目標(biāo)IP地址、網(wǎng)段、主機(jī)名
port(目標(biāo)端口) 80、443、 8080、20 目標(biāo)端口
dstdomain(目標(biāo)域) .qq.com 目標(biāo)域,匹配域內(nèi)的所有站點(diǎn)
time(訪問時(shí)間) 12:00-13:00、AS 使用代理服務(wù)器的時(shí)間段
maxconn(最大并發(fā)連接) 30 每個(gè)客戶機(jī)的最大并發(fā)連接數(shù)
url_regex(目標(biāo)url地址) url_regex -i ^rtsp:// 目標(biāo)資源的URL地址,-i表示忽略大小寫
urlpath_regex(整個(gè)目標(biāo)url路徑) urlpath_regex -i sex adult 目標(biāo)資源的整個(gè)URL路徑,-i表示忽略大小寫

2.設(shè)置訪問權(quán)限

定義好各種訪問控制列表以后,使用http_access配置項(xiàng)來進(jìn)行控制。

格式:http_access allow或deny 列表名···

在設(shè)置訪問權(quán)限時(shí),需要注意兩點(diǎn):

  1. 沒有設(shè)置任何規(guī)則時(shí):squid服務(wù)將拒絕客戶端的請求
  2. 有規(guī)則但找不到相匹配的項(xiàng):squid將采用與最后一條規(guī)則相反的權(quán)限。

演示實(shí)驗(yàn)

因?yàn)橹拔覀冏隽藄quid的透明代理的實(shí)驗(yàn),所以這里就接著那個(gè)實(shí)驗(yàn)繼續(xù)做,配置好透明代理后,我們可以使用IP為192.168.100.50的client(客戶端)訪問IP為12.0.0.12的web服務(wù)器,那么下面我們就通過設(shè)置acl訪問控制列表使client不能訪問web服務(wù)器

vim /etc/squid.conf

acl localhost src 192.168.100.0/24     #定義訪問控制列表

http_access deny localhost   #對列表做拒絕處理

service squid stop
service squid start      #重啟服務(wù)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid日志分析

squid的日志分析功能需要借助sarg(Squid Analysis Report Generator),首先先部署安裝sarg工具

  • 安裝相關(guān)的軟件環(huán)境包

yum -y install gcc gcc-c++ gd gd-devel httpd #這里的dg庫是支持圖像處理的軟件

sarg下載地址

  • 安裝sarg
mkdir /usr/local/sarg       #為sarg創(chuàng)建安裝目錄

tar zxvf sarg-2.3.11.tar.gz -C /opt/  #將sarg解壓到指定目錄
cd /opt/sarg-2.3.11/    #到sarg目錄中進(jìn)行編譯安裝

./configure --prefix=/usr/local/sarg \    #這里指定安裝目錄
--sysconfdir=/etc/sarg \    #指定配置文件目錄
--enable-extraprotection    #開啟額外保護(hù)功能

配置完后,進(jìn)行編譯和安裝
make && make install
  • 修改sarg配置文件

vim /etc/sarg/sarg.conf

access_log /usr/local/squid/var/logs/access.log    #指定訪問日志文件(開啟)
title "Squid User Access Reports"      #網(wǎng)頁標(biāo)題(開啟)
output_dir /var/www/html/squid-reports    #報(bào)告輸出目錄(開啟)
user_ip no          #使用用戶名顯示(開啟)
exclude_hosts /usr/local/sarg/noreport   #不計(jì)入排序的站點(diǎn)列表文件(開啟,刪除none,添加路徑)
topuser_sort_field connect reverse   #top排序中有連接次數(shù)、訪問字節(jié)、降序排列升序是normal (開啟,修改BYTES)
user_sort_field connect reverse    #用戶訪問記錄  連接次數(shù)、訪問字節(jié)按降序排序  (開啟,修改BYTES)
overwrite_report no   #同名日志是否覆蓋(開啟)
mail_utility mailq.postfix   #發(fā)送郵件報(bào)告命令(開啟,修改mail)
charset UTF-8   #使用字符集 (開啟)
weekdays 0-6   #top排行的星期周期 (開啟)
hours 0-23   #top排行的時(shí)間周期(開啟)
www_document_root /var/www/html  #網(wǎng)頁根目錄(開啟)

touch /usr/local/sarg/noreport 創(chuàng)建上述不計(jì)入站點(diǎn)文件,添加的域名將不被顯示在排序中

ln -s /usr/local/sarg/bin/sarg /usr/local/bin/
#建立軟鏈接,方便使用命令

systemctl start httpd.service
#因?yàn)槲覀円诰W(wǎng)頁里訪問日志,需要我們開啟httpd服務(wù)

  • 運(yùn)行sarg

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

然后使用client登錄網(wǎng)頁管理界面

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

反向代理

squid反向代理可以加速網(wǎng)站的訪問速度,可將不同的URL請求分發(fā)到后臺(tái)不同的web服務(wù)器上,同時(shí)互聯(lián)網(wǎng)用戶只能看到反向代理服務(wù)器的地址,加強(qiáng)網(wǎng)站的訪問安全。

squid反向代理加速的原理描述如下:

  • Squid反向代理服務(wù)器位于本地Web服務(wù)器和Internet之間,客戶端請求訪問Web服務(wù)器時(shí),DNS將訪問的域名解析為Squid反向代理服務(wù)器的IP地址,客戶端將訪問Squid代理服務(wù)器。

  • 如果Squid反向代理服務(wù)器緩存了該請求的資源,則將該請求的資源返回給客戶端,否則反向代理服務(wù)器將向后臺(tái)的Web服務(wù)器請求資源,然后將應(yīng)答資源返回給客戶端,同時(shí)也將該資源在本地緩存一份,供下一個(gè)請求使用。

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

實(shí)驗(yàn)環(huán)境

服務(wù)器IP地址功能
代理服務(wù)器 172.16.10.137 squid代理服務(wù)
client 172.16.10.131 負(fù)責(zé)訪問
真實(shí)服務(wù)器1 172.16.10.129 提供http服務(wù)
真實(shí)服務(wù)器2 172.16.10.134 提供http服務(wù)
  • 修改squid代理服務(wù)的配置文件

vim /etc/squid.conf

acl web1 dstdomain www.yun.com
acl web2 dstdomain www.yun.com
#定義兩個(gè)個(gè)基于域名的控制列表,分別命名為web1,web2
http_access allow web1 web2
#允許以web1,web2為目標(biāo)域名的訪問
http_port 172.16.10.137:80 accel vhost vport
#將端口監(jiān)聽在 172.16.10.137的80端口上,accel 指啟用加速模式,vhost,vport用于轉(zhuǎn)發(fā)請求
cache_peer 172.16.10.29 parent 80 0 no-query originserver round-robin weight=1 name=web1
#cache_peer 指定后端服務(wù)器地址,80 為后端服務(wù)端口,0 為 ICP 端口號(hào)(多個(gè) Squid 時(shí)用),originserver 指定資源服務(wù)器,round-robin指使用輪詢方式,weight指的是權(quán)重,自由分配,name 指定一個(gè)別名
cache_peer 172.16.10.134 parent 80 0 no-query originserver round-robin weight=1 name=web2
#和上面的一樣

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

這里記得重新啟動(dòng)squid服務(wù)

  • 修改兩個(gè)http服務(wù)的首頁內(nèi)容,方便后面實(shí)驗(yàn)的驗(yàn)證

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

  • 修改客戶端win7的地址解析使之識(shí)別www.yun.com

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)

這樣就實(shí)驗(yàn)成功了,訪問www.yun.com,真實(shí)服務(wù)器會(huì)使用輪詢的方式,分別輪流訪問兩臺(tái)web服務(wù)器。

文章題目:squid代理服務(wù)的ACL訪問控制、日志分析及反向代理(4.1版本)
本文地址:http://www.muchs.cn/article30/isheso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、網(wǎng)站排名、微信小程序網(wǎng)站設(shè)計(jì)公司、關(guān)鍵詞優(yōu)化品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)