正向代理
正向代理:是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可以使用缓冲特性(由mod_cache提供)减少网络使用率。
使用ProxyRequests指令即可激活正向代理。因为正向代理允许客户端通过它访问任意网站并且隐藏客户端自身,因此你必须采取安全措施以确保仅为经过授权的客户端提供服务。
和反向代理不同之处在于,典型的正向代理是一种最终用户知道并主动使用的代理方式。例如Chrome浏览器中安装了switchysharp以后,通过switchysharp方便地进行代理转发服务。而为此用户必须要提前在switchysharp中做好设置才能达到相应的效果。
实验环境:
真机 172.25.254.66 可以上网,作为服务器
虚拟机 172.25.254.2 不可上网,作为远程主机
虚拟机 172.25.254.1 可以上网,作为远程主机的代理服务器
开始实验:
代理服务器上:
yum install squid -y ---- 安装代理服务
修改配置文件:vim /etc/squid/squid.conf
其中参数所表达的意思:
100 ---- 表示缓存大小不能超过100M
16 ---- 表示有16个一级目录
256 ---- 表示有256个二级目录
关闭代理主机,远程主机防火墙
进入主机浏览器,点击 Edit->preferences->Advanced->Network->settings
选择Manual proxy confirguration输入squid主机ID及接口3128
现在即可在没有网络的主机上正常浏览网页
正向代理成功
反向代理
通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中。由于外部网络上的主机并不会配置并使用这个代理服务器,普通代理服务器也被设计为在Internet上搜寻多个不确定的服务器,而不是针对Internet上多个客户机的请求访 问某一个固定的服务器,因此普通的Web代理服务器不支持外部对内部网络的访问请求。当一个代理服务器能够代理外部网络上的主机,访问内部网络时,这种代 理服务的方式称为反向代理服务。此时代理服务器对外就表现为一个Web服务器,外部网络就可以简单把它当作一个标准的Web服务器而不需要特定的配置。不 同之处在于,这个服务器没有保存任何网页的真实数据,所有的静态网页或者CGI程序,都保存在内部的Web服务器上。因此对反向代理服务器的攻击并不会使得网页信息遭到破坏,这样就增强了Web服务器的安全性。
更改配置文件:(vim /etc/squid/squid.conf ):
vhost ---- 虚拟主机
vport ---- 虚拟端口
parent ---- apache服务器IP
0 ---- 没有没有备用机
proxy-only ---- 只做代理
重启squid服务后,在真机浏览器中访问apache服务器
再在真机浏览器访问代理服务器
反向代理成功
轮巡代理
进入squid主机
编写配置文件:/etc/squid/squid.conf
即可实现轮巡代理,访问的内容由两台主机交互提供