为公网用户做加速访问

Squid代理服务之反向代理模式_服务器

1)实验拓扑

Squid代理服务之反向代理模式_Centos_02

2)web服务器配置

参考传统模式中的web服务器配置,这里不再重复记录操作。

网关需要指向squid服务器的内网ip

echo "GATEWAY=10.10.10.13" >> /etc/sysconfig/network-scripts/ifcfg-ens33

3)安装squid服务

安装步骤这里不再赘述,参考传统模式中的安装步骤。

(1)开启路由转发模式

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 #开启路由转发
#立即生效
sysctl -p

(2)修改配置文件

vim /etc/squid/squid.conf

http_port 20.20.20.13:80 vhost      #监听该地址的80端口,并设置为虚拟主机模式
cache_peer 10.10.10.11 parent 80 0 originserver round-robin     #这行配置表示将一个缓存服务器配置为代理服务器的上游服务器。10.10.10.11是缓存服务器的IP地址,parent 80表示使用80端口连接到上游服务器。0是服务器的缓存级别,originserver表示上游服务器是源服务器而不是另一个缓存服务器。round-robin表示使用轮询的方式在多个缓存服务器之间分发请求。
cache_peer 10.10.10.12 parent 80 0 originserver round-robin

(3)在acl中放行公网IP

将公网网段写入squid配置文件中

vim /etc/squid/squid.conf

acl gw_web src 20.20.20.0/24    #acl后跟的是自定义名称。
#放行策略
http_access allow gw_web
#重新加载配置文件
service squid reload

Squid代理服务之反向代理模式_服务器_03

(4)重启服务再次访问查看

Squid代理服务之反向代理模式_Linux_04

4)acl参数解释

src				源地址
dst				目标地址
port			目标端口
dstdomain		目标域
time			访问时间
maxconn			最大并发连接
url_regex		目标URL地址
Urlpath_regex	整个目标URL路径
(1)acl易犯错误

如果在配置文件中定义的放行策略为deny localhost,则会拒绝自定义规则。

http_access deny localhost		#拒绝本地访问

如果在配置文件中定义的策略为allow localhost,则放行自定义规则。

http_access allow localhost		#允许本地访问

`注:如果出现访问被拒绝的情况请检查以上两项是否配置错误