鱼C论坛

 找回密码
 立即注册

centos6配置squid代理服务

已有 587 次阅读2017-8-28 10:14

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

端口:
grep squid /etc/services
squid           3128/tcp        ndl-aas         # squid web proxy

安装:
yum -y install squid

启动比开机启动
/etc/init.d/squid start
chkconfig squid on

配置squid正向代理
实验环境
centos 6.9 eth0 192.168.1.60(桥接网卡) eth1 192.168.2.1
windowsxp IP 192.168.2.2 gateway 192.168.2.1
vim /etc/squid/squid.conf
改: #http_access deny all
 为: http_access allow all          //允许所有用户使用
然后重启服务
/etc/init.d/squid restart
然后在windowsxp中设置浏览器代理

然后就可以访问网络了

配置正向透明代理

vim /etc/squid/squid.conf

改:http_port 3128

为:http_port 3128 transparent

开启路由转发功能:
vim /etc/sysctl.conf
改:net.ipv4.ip_forward = 0
为:net.ipv4.ip_forward = 1
sysctl –p

iptables -F
iptables -F -t nat
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to 192.168.1.60
//SNAT代理内部上网,将内部的地址全部转化为可以上网的地址 192.168.1.60
iptables -t nat -A PREROUTING -s 192.168.2.0/24 -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
//端口转化,来自192.168.2.0,从eth1且端口为80的数据进行数据重定向到3128,代理服务器为你工作

保存防火墙规则:
 service iptables save
然后重启服务
/etc/init.d/squid restart
然后取消浏览器上的代理就可以访问网络了

配置squid反向代理加速内网web服务器访问速度
这时候需要添加另外一台centos虚拟机,配置ip地址为192.168.2.3,并且配置两台虚拟主机www.servera.com和www.serverb.com

配置 squid代理服务器:
这里,Squid 反向代理服务器监听端口:8000 (默认是:3128)
访问时,需要在客户端,打开浏览器,在浏览器地址栏输入: www.servera.com:8000 
配置Squid 服务器监听本机 8000 端口,开启vhost 支持虚拟主机功能,这样也可以给多台服务器加速。
vim /etc/squid/squid.conf
改:http_access denny all
为:http_access allow all
改:http_port  3128
为:http_port 8000 vhost

手动添加一下几行
cache_peer 192.168.2.3 parent 80 0 no-query originserver weight=1 name=a
cache_peer 192.168.2.3 parent 81 0 no-query originserver weight=1 name=b
cache_peer_domain a www.servera.com
cache_peer_domain b www.servera.com
#以上4行配置,让 Squid 服务器知道:
#从客户端过来的请求,如果是 www.serverA.com,则 Squid 向 192.168.2.3的端
口 80发送请求;
#从客户端过来的请求,如果是 www.serverB.com,则 Squid 向 192.168.2.3 的端
口 81 发送请求;
cache_peer_access a allow all
cache_peer_access b allow all
# cache_peer 设置:允许其它 cache 机和访问a和b

其他配置参数说明
cache_dir ufs /var/spool/squid 100 16 256  #指定 Squid 服务器存放数据的目录

然后重启服务
/etc/init.d/squid restart
然后就可以访问了,访问网站是需要加上端口号
http://www.servera.com:8000
http://www.serverb.com:8000

说明:
     1)cache_peer 设置与其它 cache 机的通讯,也处理加速方式的核心设置
cache_peer hostname type http-port  icp-port [options]
no-query 不发送 icp 信息包到此机器,一般设置原始主机用(如果是 cache 机,则需要互
相发送 icp 包验证存在性)
originserver 指定此机为原始内容服务器,用于加速模式
type: either 'parent'(父亲), 'sibling'(兄弟), or 'multicast'(广播——最好不用).原
始服务器配成 parent
2)cache_peer_domain 限制/指定用户访问的邻居 cache 域,类似
cache_peer_access,cache_peer_domain europe-cache.org parent .ch .dk .fr 以
fr/dk/ch 结尾的域名访问 europe 缓存
3)cache_peer_access cache-host allow|deny [!]aclname 类似 acl,对 cache 机器进行
访问控制,一般不用。例子:cache_peer_access 192.168.0.249 allow HTTP

另外,也可以把squid代理设置为80端口,这样客户端,在访问数据时,就可以直接访问了。不需要输入端口号了。
注:cache_men不能超过cache_dir中的一个数值,否则会出现如下报错,
停止 squid:2012/08/21 16:05:46| WARNING cache_mem is larger than totaldisk cache space!


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 01:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

返回顶部