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 -i:3128 显示所有打开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
servicesquid start
chkconfigsquid on
测试:
在浏览器中打开百度可以访问
ping www.baidu.com 是不通的
例2: 配置透明squid 代理提升访问速度
客户端不用在浏览器里指定代理服务器的ip地址和端口号,就可以直接访问公网上的网站服务器
透明代理= squid +iptables
打开透明代理功能
vim/etc/squid/squid.conf
加上 transparent
servicesquid restart
开启路由转发功能
vim/et/sysctl.conf
配置 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
例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.serverA。com 则 squid向 192.168.2.2的端口80发送请求;
从客户端发来的请求 如果是www.serverB。com 则 squid向 192.168.2.2的端口81发送请求;
cache_peer_accessa allow all
cache_peer_accessb allow all
#cache_peer设置: 允许其他cache机 访问a和b
servicesquid restart