Squid简介
Squid是比较知名的代理软件,它不仅可以跑在linux上还可以跑在windows以及Unix上,它的技术已经非常成熟。目前使用Squid的用户也是十分广泛的。Squid与Linux下其它的代理软件如Apache、Socks、TIS FWTK和delegate相比,下载安装简单,配置简单灵活,支持缓存和多种协议。
Squid之所以用的很多,是因为它的缓存功能,Squid缓存不仅可以节省宝贵的带宽资源,也可以大大降低服务器的I/O. 从经济角度考虑,它是很多网站架构中不可或缺的角色。Squid不仅可以做正向代理,又可以做反向代理。
# 正向代理 # Squid后面是客户端,客户端想上网不管什么网都得经过Squid. 当一个用户(客户端)想要请求一个主页时,它向Squid发出一个申请,要Squid替它请求,然后Squid 连接用户要请求的网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户请求同样的页面时,Squid把保存的备份立即传给用户,使用户觉得速度相当快。使用正向代理时,客户端需要做一些设置,才能实现,也就是平时我们在IE选项中设置的那个代理。
# 反向代理 # Squid后面为某个站点的服务器,客户端请求该站点时,会先把请求发送到Squid上,然后Squid去处理用户的请求动作。
- 正向代理:Squid后面是客户端 客户端上网要通过Squid去上
- 反向代理:Squid后面是服务器 服务器返回给用户数据需要走Squid
Squid安装
yum安装
- 安装包:yum install -y squid-3.1.10-19.el6_4.i686
- 注:CentOS系统自带Squid包
源码包安装
1、解压安装包
tar -xvzf 压缩文件
2、进入目录下编译安装
./configure --prefix=/usr/local/squid --disable-dependency-tracking --enable-dlmalloc --enable-gnuregex --disable-carp --enable-async-io=240 --with-pthreads --enable-storeio=ufs,aufs,diskd,null --disable-wccp --disable-wccpv2 --enable-kill-parent-hack --enable-cachemgr-hostname=localhost --enable-default-err-language=Simplify_Chinese --with-build-environment=POSIX_V6_ILP32_OFFBIG --with-maxfd=65535 --with-aio --disable-poll --enable-epoll --enable-linux-netfilter --enable-large-cache-files --disable-ident-lookups --enable-default-hostsfile=/etc/hosts --with-dl --with-large-files --enable-removal-policies=heap,lru --enable-delay-pools --enable-snmp --disable-internal-dns
make &&make install
Sqiud 常用操作
- 测试配置文件:squid -kcheck
- 读取配置文件:squid -krec
- 获取squid帮助信息:squid -h