Squid缓存服务器原理与实战演练

网友投稿 329 2022-11-12

Squid缓存服务器原理与实战演练

实验环境:代理服务器squid 192.168.80.181HTTP服务器192.168.80.182Win7客户端 192.168.80.9代理服务器端配置如下[root@aa squid-3.5.27]# tar xf squid-3.5.27.tar.gz -C /opt/ #解压squid源码包[root@aa squid-3.5.27]# yum install perl-devel #安装perl语言编译插件[root@aa squid-3.5.27]# cd /opt/squid-3.5.27/ [root@aa squid-3.5.27]# ./configure--prefix=/usr/local/squid --sysconfdir=/etc --enable-arp-acl //支持acl--enable-linux-netfilter //支持透明代理--enable-linux-tproxy //重定向--enable-async-io=100 --enable-err-language="Simplify_Chinese" --enable-underscore --enable-poll --enable-gnuregex [root@aa squid-3.5.27]# make && make install //配置、编译、安装[root@aa squid-3.5.27]# ln -s /usr/local/squid/sbin/* /usr/local/sbin //[root@aa squid-3.5.27]# useradd -M -s /sbin/nologin squid[root@aa squid-3.5.27]# chown -R squid:squid /usr/local/squid/var/[root@aa squid-3.5.27]# vi /etc/squid.conf3128 //59行,在下面新增visible_hostname 192.168.80.181cache_mem 64 MBcache_swap_low 80cache_swap_high 97cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256 //68行,去掉注释配置硬盘缓存,打开#.缓存目录100M,其中一级目录16个,二级256个cache_effective_user squidcache_effective_group squid //制定squid用户的执行主和组[root@aa squid-3.5.27]# squid -k parse //检查配置文件[root@aa squid-3.5.27]# squid –k rec //重新加载配置文件[root@aa squid-3.5.27]# squid -zX //初始化缓存目录[root@aa squid-3.5.27]# vi /etc/init.d/squid //制作管理脚本#!/bin/bash#chkconfig: 35 90 25#config: /etc/squid.conf#pidfile: /usr/local/squid/var/run/squid.pid#Description: Squid - Internet Object Cache

PID="/usr/local/squid/var/run/squid.pid"CONF="/etc/squid.conf"CMD="/usr/local/squid/sbin/squid"

-------------下面配置透明代理------------------代理服务器做为内网的网关设备,两块网卡,一块连接内网,另一块连接外网,测试客户端主机要指网关。首先理清实验拓扑:通过181的网关代理,使80.9的win7能够上互联网Win7:ip地址为192.168.80.9,网关地址为192.168.80.181代理squid:内网网卡地址为192.168.80.181,使用桥接模式连外网

-------------------下面可以配置acl访问控制---------[root@aa ~]# vi /etc/squid.confAcl和防火墙一样是从上向下依次匹配,匹配及停止,并执行匹配的动作。#acl localnet src 192.168.0.0/16 //注释本行默认配置

allow all //在本行上面新增ACL语句,如果在该行下面插入,则访问的已经被全部允许了

1.禁止某IP地址主机上网acl nolink src 192.168.90.9deny nolink

2.禁止某网段在某时间段上网acl nolink src 192.168.1.0/24acl nowang time MTWHF 9:00-11:30deny nolink nowang

3.禁止所有人访问某网站(精确匹配)acl nourl dstdomain -i qq.comdeny nourl

4.禁止所有人访问某些网站(含有关键字的都会过虑)acl nourl url_regex -i taobao.comdeny nourl

5.禁止下载某类型的文件acl nof urlpath_regex -i .avi$ .mkv$deny nof

6.禁止访问某类型的网站acl nop url_regex -i ^emule:// ^thunderdeny nop

---------------配置sarg日志---------------注意:需要在代理服务器上安装WWW服务器[root@aa ~]# yum install -y sarg-2.3.11]# tar xf sarg-2.3.11.tar.gz -C /opt/[root@aa sarg-2.3.11]# cd /opt/sarg-2.3.11/ [root@aa sarg-2.3.11]# ./configure --prefix=/usr/local/sarg --sysconfdir=/etc/sarg --enable-extraprotection[root@aa sarg-2.3.11]# make && make install[root@aa sarg-2.3.11]# vi /etc/sarg/sarg.conf7 access_log /usr/local/squid/var/logs/access.log //squid的访问日志位置25 title "Squid User Access Reports" //网页标题120 output_dir /var///分析报告的存放位置178 user_ip no //不使用IP代替用户ID184 topuser_sort_field BYTES reverse //升序排列190 user_sort_field BYTES reverse 206 exclude_hosts /usr/local/sarg/noreport //设置不生成报告的主机257 overwrite_report no289 mail_utility mailx //指定发邮件命令434 charset UTF-8518 weekdays 0-6 //指定top排序星期周期523 hours 7-12,14,16,18-20 //指定top排序时间周期633 /var///网页根目录[root@aa sarg-2.3.11]# ln -s /usr/local/sarg/bin/sarg /usr/local/bin/[root@aa sarg-2.3.11]# sarg //启动SARG: Records in file: 102, reading: 100.00%SARG: Successful report generated on /var/www/html/squid-reports/2018Mar21-2018Mar22

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:quartz时间表达式Cron详解
下一篇:村田将超小车载PoC接口用宽带电感器商品化
相关文章

 发表评论

暂时没有评论,来抢沙发吧~