Squid服务的正反向代理

正向代理

在作这个实验时我们先来规定,ip为172.25.254.102的虚拟机为可以上网,相当于现实生活中的正向代理商,它可以上外网。ip为172.25.254.2的主机是客户端,想让该主机通过正向代理商去连接外网。
客户主动的去访问的叫正向代理 浏览器是主动的,网页是被动的

部署代理服务

在ip为172.25.254.102的虚拟机上 先连网

ping www.qq.com ##ping的通可以上网
yum install squid -y ##下载squid 代理服务软件
rpm -qc squid ##可以查看squid服务的配置文件

 vim /etc/squid/squid.conf 编辑配置文件
56 http_access allow all ##允许所有的物理机使用该代理
62 cache_dir ufs /var/spool/squid 100 16 256  ##打开缓存目录端口

systemctl restart squid
systemctl stop firewalld

配置文件中
在这里插入图片描述

100缓存量为100M 超过后新产生的数据会将之前的数据覆盖
1616个1级目录
256256个2级目录

在ip为172.25.254.2的主机上
浏览器中:

点击三条杠 里面有Perferences选项 点击
在这里插入图片描述

选择 Adevanced 设置 点击Settings
在这里插入图片描述

设定主机的代理设置 输入代理机的ip
在这里插入图片描述
保存

现在在浏览器上输入www.qq.com 虽然主机没有连网 但是通过代理商我们也可以去连接外网去上网

反向代理——cdn缓存加速

我们现在举例一个现实生活中的例子来理解什么是反向代理
例如我现在西安,我现在要访问淘宝的网页,但是它的服务器在杭州,但是如果从西安经过很多次的地址转换我才能访问到是非常浪费时间的,所以在西安建立一个节点服务器,这样访问该网站时就减少了时间,同时也减轻了服务器的压力,这就是cdn缓存加速的用途即反向代理。
cdn缓存进行了三层加速 访问量 访问速度

在作实验之前我们规定 :ip为172.25.254.102的虚拟机开启apache分享网页,ip为172.25。254.202的虚拟机配置代理服务做反向代理服务器, ip为172.25.254.2的主机,通过访问代理服务器ip直接访问到作分享网页的虚拟机发布目录下的内容

在分享网页的虚拟机上编辑发布内容

systemctl start httpd ##要开启http服务
firewall-cmd --permanent --add-service=http ##防火墙设定

在反向代理服务器上:

最好在反向代理的服务器上没有http服务 因为http服务会使用80端口 squid的反向代理也需要使用80端口

vim /usr/share/doc/squid-3.3.8/squid.conf.documented ##该文件中有squid服务的其他功能编写规则

在这里插入图片描述

vim /etc/squid/squid.conf
56 http_access allow all
59 http_port 80 vhost vport ##更改之前的端口3128 建立一个http的虚拟80端口 设定为虚拟服务器
62 cache_dir ufs /var/spool/squid 100 16 256
cache_peer 172.25.254.102  parent 80 0 proxy-only  
172.25.254.102是作发布目录的主机
parent设定102虚拟机的属性为202虚拟机的父级
0表示没有备分的另一台主机 如果202主机出现了问题 没有另一台物理机代替它工作
proxy-only表示202虚拟机只做代理缓存

测试:在主机中浏览器搜索作代理虚拟机的ip 可以访问到102虚拟机分享网页(如果是接着之前的正向代理实验去做的话,需要在主机的浏览器上取消对于指定代理的设定 设定为无代理)
在未设定202为代理之前访问 ip
在这里插入图片描述

设定为代理之后 我们先来看102下的发布内容
在这里插入图片描述

设定主机浏览器无需代理 恢复之前的
在这里插入图片描述

主机浏览器再次访问202
在这里插入图片描述

实验结束

轮循调度机制

缓解web服务器的压力
在反向代理服务器:
v

im /etc/quid/quid.conf
56 http_access allow all
59 http_port 80 vhost vport
62 cache_dir ufs /var/spool/squid 100 16 256  
cache_peer 172.25.254.102 parent 80 0 proxy-only  round-robin  originserver name=web1
cache_peer 172.25.254.1 parent 80 0 proxy-only  round-robin originserver name=web2  
cache_peer_domain www.westos.com  web1 web2 ##声明web1 web2 服务器轮循做域名www.westos.com 的调度

systemctl restart squid 
 vim /etc/hosts 
172.25.254.202 www.westos.com
originserver标识此为web服务器
name服务器名称
round-robin表示采用轮循调度(负载均衡)
weight权重 后面的数字表示访问该网址时对应服务器提供的服务次数 例如等于2时提供2次服务后换下一台服务器提供服务 不设定一般默认为1

测试:在主机浏览器访问www.westos.com

反向代理服务器编辑配置文件
在这里插入图片描述

编辑本地解析
在这里插入图片描述

1号主机发布内容为hello! 102主机发布目录内容为hello linux
我们在真机上访问服务的域名 点击多出现不同的内容
在这里插入图片描述
在这里插入图片描述
若将202虚拟机的权重设定为2时 开始的前两次服务由202虚拟机提供服务第三次由1号虚拟机提供服务 ,第四次再由202虚拟机提供服务,以此循环

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值