Squid进阶——acl的使用+日志分析+反向代理-创新互联

内容要点:

成都创新互联是一家专注于网站建设、成都网站制作与策划设计,永清网站建设哪家好?成都创新互联做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:永清等地区。永清做网站价格咨询:18980820575

一、Squid 中 ACL 的使用

二、日志分析

三、反向代理

一、Squid 中 ACL 的使用

(1)ACL 访问控制方式:

1、根据源地址、目标URL、文件类型等定义列表

  • acl 列表名称 列表类型 列表内容…

2、针对已定义的 acl列表进行限制

  • http_access allow 或 deny 列表名称…

(2)ACL 规则优先级:

当一个用户访问代理服务器时,Squid 会顺序匹配 Squid中定义的所有规则列表,一旦匹配成功,立即停止匹配。当所有规则都不匹配时,Squid 会使用与最后一条相反的规则。

(3)常用的 ACL 列表类型:

src ->源地址 dst ->目标地址 port ->目标地址 dstdomain ->目标域 time ->访问时间 maxconn ->大并发连接 ur_ regex ->目标URL地址 Urlpath_regex ->整个目标URL路径

(4)操作演示:

注:,要先做好代理功能,并且 Squid代理服务器要开放 3128端口,每次改好配置文件,都需要重启服务。

角色IP地址
Web服务器192.168.220.136
Squid代理服务器192.168.220.131
客户机192.168.220.128

修改 /etc/squid.conf 文件

添加以下代码:

1、基于IP地址限制:

acl hostlocal src 192.168.220.128/32   //hostlocal表示是名称  http_access deny hostlocal //拒绝访问

Squid进阶——acl的使用+日志分析+反向代理

2、基于时间限制:

acl work time WTHMFAS 11:00-12:00    //时间设置在 11:00-12:00 http_access deny work           //拒绝访问

Squid进阶——acl的使用+日志分析+反向代理

Squid进阶——acl的使用+日志分析+反向代理

Squid进阶——acl的使用+日志分析+反向代理

3、基于目标地址(就是web服务器地址)

可以将拒绝的目标地址添加到一个文件中

1、 mkdir /etc/squid    //先创建一个目录 vim dest.list 将拒绝的ip地址添加到文件中 192.168.220.111 192.168.220.123 192.168.220.136 2、做规则 vim /etc/squid.conf  acl destion dst "/etc/squid/dest.list" http_access deny destion

Squid进阶——acl的使用+日志分析+反向代理

二、日志分析

第一步:安装 sarg 工具

Sarg(Squid Analysis Report Generator),是一款Squid 日志分析工具,采用HTML 格式,详细列出每一位用户访问Internet 的站点信息、时间占用信息、排名、连接次数、访问量等。

(1)安装图像处理工具:

yum install -y gd gd-devel pcre

(2)创建一个文件:

mkdir /usr/local/sarg

tar zxvf sarg-2.3.7.tar.gz -C /opt/ 解压到/opt/目录下

(3)编译

./configure --prefix=/usr/local/sarg \ --sysconfdir=/etc/sarg \ --enable-extraprotection          //额外安全防护

(4)安装

make && make install

(5)修改主配置文件 /etc/sarg/sarg.conf

vim /etc/sarg/sarg.conf 开启以下功能(稍作修改即可): access_log /usr/local/squid/var/logs/access.log     //指定访问日志文件 title "Squid User Access Reports"                  //网页标题 output_dir /var/www/html/squid-reports            //报告输出目录 user_ip no                                       //使用用户名显示 exclude_hosts /usr/local/sarg/noreport           //不计入排序的站点列表文件 topuser_sort_field connect reverse             //top排序中有连接次数、访问字节、降序排列 user_sort_field reverse                       //用户访问记录、连接次数、访问字节按降序排序 overwrite_report no                           //同名日志是否覆盖 mail_utility mail.postfix                     //发送邮件报告命令 charset UTF-8                                //使用字符集 weekdays 0-6                                 //top排行的星期周期 www_document_root /varwww/html               //网页根目录

(6)添加不计入站点文件,添加的域名将不被显示在排序中

touch /usr/local/sarg/noreport

ln -s /usr/local/sarg/bin/sarg /usr/local/bin/ //方便管理,可以创建一个软连接

开启:

Squid进阶——acl的使用+日志分析+反向代理

第二步:安装 Apache

 yum install httpd -y

第三步:客户机上测试

浏览器上访问: http://192.168.220.131/squid-reports

Squid进阶——acl的使用+日志分析+反向代理

Squid进阶——acl的使用+日志分析+反向代理

通过这个工具,我们可以看到详细的访问情况。

同时,也可以使用周期性计划任务执行每天生成报告:

sarg -l /usr/local/squid/var/logs/access.log -o /var/www/html/squid-reports/ -z -d $(date -d "1 day ago" +%d/%m/%Y)-$(date +%d/%m/%Y)

三、反向代理

反向代理工作原理:

反向代理服务器位于本地WEB服务器和Internet之间。

当用户浏览器发出一个HTTP请求时,通过域名解析将请求定向到反向代理服务器(如果要实现多个WEB服务器的反向代理,需要将多个WEB服务器的域名都指向反向代理服务器)。由反向代理服务器处理器请求。反向代理一般只缓存可缓冲的数据(比如html网页和图片等),而一些CGI脚本程序或者ASP之类的程序不缓存。它根据从WEB服务器返回的HTTP头标记来缓冲静态页面。

角色IP地址
Web服务器1192.168.220.136
Squid代理服务器192.168.220.131
客户机192.168.220.128
Web服务器2192.168.220.137

1、配置 Squid 代理服务器:

修改 /etc/squidconf 文件

vim /etc/squid.conf http_port 192.168.220.131:80 accel vhost vport cache_peer 192.168.220.136 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web1 cache_peer 192.168.220.137 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web2 cache_peer_domain web1 web2 www.yun.com

service squid restart     //重启squid systemctl stop httpd.service    //关闭Apache服务

2、在两台 Web服务器上做一个测试网页:

Squid进阶——acl的使用+日志分析+反向代理

Squid进阶——acl的使用+日志分析+反向代理

3、客户机做一下域名解析:

Squid进阶——acl的使用+日志分析+反向代理

修改一下,代理服务器端口:

Squid进阶——acl的使用+日志分析+反向代理

4、浏览器访问 http://www.yun.com/

Squid进阶——acl的使用+日志分析+反向代理

Squid进阶——acl的使用+日志分析+反向代理

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网页题目:Squid进阶——acl的使用+日志分析+反向代理-创新互联
浏览路径:http://scyanting.com/article/dhpice.html