首页 > 系统 > Linux > 正文
squid的正反向代理
2017-05-19 10:00:00       个评论    来源:Adhuyanchong的博客  
收藏    我要投稿

squid的正反向代理。

一.正反向代理的区别

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

反向代理.举例: 例用户访问http://ooxx/readme但ooxx上并不存在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
systemctl restart squid ##重启服务

\

测试:

在172.25.254.102主机测试:

Ping www.baidu.com

ping: unknown host www.baidu.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

\

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.111 www.westos.com

172.25.254.144 www.westos.com

测试:

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

点击复制链接 与好友分享!回本站首页
上一篇:Shell常用语法归集
下一篇:Linux运维笔记-文档总结-虚拟网络接口bond
相关文章
图文推荐
文章
推荐
热门新闻

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做实用的IT技术学习网站