squid的正反向代理

#######################################
 #############squid正反向代理###########
#######################################

.正反向代理的区别

     正向代理,也就是传说中的代理,他的工作原理就像一个跳板。简单的说,我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,他能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。从网站的角度,只在代理服务器来取内容的时候有一次记录。结论就是,正向代理,是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。 

     反向代理.举例:  例用户访问http://ooxx/readmeooxx上并不存在readme页面他是偷偷从另外一台服务器上取回来,然后作为自己的内容吐给用户 但用户并不知情这很正常,用户一般都很笨 这里所提到的ooxx这个域名对应的服务器就设置了反向代理功能 结论就是 反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理 的命名空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端,就像这些内容 原本就是它自己的一样。

     正向代理,squid后面是客户端,客户端上网要通过Squid去上;反向代理,squid后面是服务器,服务器返回给用户数据需要走squid.

 

.squid正向代理的配置

1.正向代理:

[root@foundation2 ~]#yum install squid.x86_64  ##安装squid

systemctl start squid                                             ##开启服务 

netstat -antlpe | grep squid                                  ##查看端口是否开启 

tcp6 0 0 :::3128 :::* LISTEN 0 144748 16898/(squid-1) 
vim /etc/squid/squid.conf   
56 http_access allow all                                       ##允许任何人访问 
62 cache_dir ufs /var/spool/squid 100 16 256 ##设置最大缓存为100M ,16个主目录,256个小目录
systemctl restart squid     ##重启服务

 

测试:

在172.25.254.102主机测试:

Ping www.baidu.com

ping: unknown host www.baidu.com

打开虚拟机



访问www.baudu.com可以访问

2.站点的屏蔽

 vim /etc/squid/squid.conf                      ##配置文件 
55 http_access deny badurl                ##打开屏蔽 ,要在57行之前
56 acl badurl dstdomain .baidu.com ##屏蔽百度这个站点的所有网页

      (acl badurl dst www .baidu.com)    ##只屏蔽百度
systemctl restart squid 


被屏蔽后测试访问被拒

三.squid反向代理的配置

1..反向代理 

reset 172.25.254.102主机确保没有安装Apache服务
[root@localhost ~]# yum install squid.x86_64 -y 
[root@localhost ~]# systemctl start squid 
[root@localhost ~]# vim /etc/squid/squid.conf
http_access allow all 
http_port 80 vhost vport                                                                       ##打开80端口接受请求 
cache_peer 172.25.254.144 parent 80 0 no-query originserver ##从144上缓存 
systemctl restart squid


测试:

在客户端编辑

[root@foundation2 ~]#vim /etc/hosts

172.25.254.102  www.westos.com

浏览器输入www.westos.com



2.squid轮循
可降低服务器端的访问压力

[root@localhost ~]# vim /etc/squid/squid.conf ##配置文件 
59 http_port 80 vhost vport 

60 cache_peer 172.25.254.144 parent 80 0 no-query originserver name=web1 round-robin ##被轮循的网页1 加weight=3 表示刷新被访问页面3次后跳转到另一页面 

61 cache_peer 172.25.254.111 parent 80 0 no-query originserver name=web2 round-robin ##被轮循的网页2 
63 cache_peer_domain www.westos.com web1 web2                                                                  ##每次刷新www.westos.com页面 会交替访问web1 web2 
systemctl restart squid                                                                                       



测试:

在客户端编辑

[root@foundation2 ~]#vim /etc/hosts

172.25.254.102  www.westos.com

浏览器输入www.westos.com,刷新出现网页轮循


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值