Squidcache(简称squid) 是一个流行的自由软件(GNU 通用公共许可证)的代理服务器和Web缓存服务器. Squid有广泛的用途.从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度到为一组人共享网络资源而缓存万维网,域名系统和其它网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网. squid主要涉及用于unix一类系统运行

模式: c/s 模式

 

squid服务端安装:

1002  rpm -ivh/mnt/Packages/squid-3.1.10-19.el6_4.x86_64.rpm

 1003  ls/etc/squid/squid.conf

 1004 /etc/init.d/squid start

 1005 netstat -auntp | grep 3128    也可以用lsof -i3128 显示所有打开3128端口的进程

 

配置 squid 正向代理服务器   局域网--外部

搭建squid代理服务器  使内网主机192.168.2.2  能够通过 oca上的squid代理服务器加速上网

 

配置服务端网络:oca   添加eth1  配置 ip 192.168.2.1         vmnet4

客户端           client  添加eth1 配置ip  192.168.2.2 网关  192.168.2.1  vmnet4

setup 命令在网络配置 配上 ip 掩码 dns

squid 实验_第1张图片


servicesquid start

chkconfigsquid on


squid 实验_第2张图片

squid 实验_第3张图片

squid 实验_第4张图片

测试:

在浏览器中打开百度可以访问

ping  www.baidu.com 是不通的

 

 

2:  配置透明squid 代理提升访问速度

客户端不用在浏览器里指定代理服务器的ip地址和端口号,就可以直接访问公网上的网站服务器

 

 

透明代理= squid +iptables

 

打开透明代理功能

vim/etc/squid/squid.conf

wKiom1ekN0Hi4j7fAAB2Q2MkksM127.jpg

加上  transparent

servicesquid restart

 

 

开启路由转发功能

vim/et/sysctl.conf 

wKioL1ekN1rjAxu5AABhZDsWdp0183.jpg


配置 iptables

iptables-t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to 192.9.100.84

 

iptables-t nat -A PREROUTING -s 192.168.2.0/24 -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

 

 

测试:

把网页代理取消

访问www.baidu.com

squid 实验_第5张图片


3 :配置 squid  反向代理加速内网web 服务器访问速度

反向代理:cdn    蓝汛  网宿

 

反向代理服务器: 要求内存足够大,硬盘要够快 不需要太大

 

阿里  凌动处理器 atom    ssd

 

回源  多长时间跟源更新  

 

 

让外网中192.168.1.224/24 访问192.168.1.63 代理服务器

192.168.1.63代理服务器缓存 192.168.2.2web服务器中的数据

实现 oca client 加速80 81 两个服务

 

只加速静态页面  或视频 用户登录  注册码 不能加速

 

新开一个虚拟机windows系统 

c:\windows\system32\driver\etc\hosts  文件里加入两行

192.9.100.84            www.serverA.com

192.9.100.84            www.serverB.com

 

 

http_accessallow all

#http_accessdeny all

 

#Squid normally listens to port 3128

#http_port3128 transparent

http_port8000 vhost        打开虚拟主机支持

cache_peer 192.168.2.2 parent 800 no-query originserver weight=1 name=a

cache_peer 192.168.2.2 parent 810 no-query originserver weight=1 name=b

 

cache_peer_domain awww.serverA.com

cache_peer_domain bwww.serverB.com

#squuid 服务器知道

从客户端发来的请求 如果是www.serverAcom  squid 192.168.2.2的端口80发送请求;

从客户端发来的请求 如果是www.serverBcom  squid 192.168.2.2的端口81发送请求;

 

 

cache_peer_accessa allow all

cache_peer_accessb allow all

#cache_peer设置: 允许其他cache  访问ab

servicesquid restart