一、squid代理服务器概述及功能

1. 什么是squid代理服务器?

Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。 和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。
Squid代理服务器(Squid proxy server)一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起作用。Squid最初担当中介,仅仅是把客户要求传递到服务器并存储要求对象的拷贝。如果同一个客户或同一批客户在要求还在Squid缓存(cache)时要求相同的对象,Squid就可以立刻服务,加速下载并保存带宽。

2.squid是如何实现功能的?

Squid的功能实现: 如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器,并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和WAIS等协议。但它不能处理如POP,NNTP,RealAudio以及其它类型的东西。

二、squid正向代理服务器的实验(代理服务器自己去的)

实验情况模拟:
甲有一台客户机想要访问上海的服务器,但没有能使用的网络环境,而乙有这样的环境和条件去访问上海的服务器,所以甲可以通过乙间接的去访问深圳的服务器。当甲有问题时会去问乙,乙在去问上海的服务器,等拿到答案后首先自己缓存一部分,然后去给甲,此时乙这台主机就相当于代购,叫做squid,当甲问乙的时候甲是客户端,乙是服务端;当乙问深圳服务器的时候,乙是客户上海,圳服务器是服务端,所以乙就相当于一个中间者,就叫做squid代理。

实验需求:
1.配置两台虚拟机,ip为172.25.254.212和172.25.254.112
2. 更改ip为172.25.254.212的虚拟机主机名为server
更改ip为172.25.254.112的虚拟机主机名为client
3. 搭建两台主机的yum源
4. 配置一台虚拟机可以上网,另一台不可以上网,使可以上网的主机名为server,不可以上网的主机名为client

实验环境搭建:

配置可以上网的主机server
1. 配置可以上网虚拟机的网络,设定网关为真机的ip(真机可以上网),如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.重启网络,并查看网关,如下所示:Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.更改主机名为server,如下所示:Linux下的squid代理服务器——正向代理、反向代理(cdn加速)

4. 搭建yum源,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
5.在真机开启防火墙伪装功能,如下所所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
6. 设置可以上网虚拟机的域名解析,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
7.设置虚拟机的全局网关,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
8.重启网络,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
9.测试,发现server主机能ping通百度,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
配置不能上网的主机desktop
1. 配置网络,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.重启网络,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.设置主机名为client,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
4. 搭建yum源,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
具体实验操作如下:

主机名为server的虚拟机上:
1. 在主机名为server的虚拟机上安装squid服务,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.开启服务,并查看服务的状态,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.查看squid的端口,发现端口为3128,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)4.编辑squid的配置文件,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
5.重启服务并查看,发现缓存目录下有16个一级目录,而16个一级目录下又有256个二级目录,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
主机名为client的虚拟机上:
1. 在client主机的浏览器里设置代理主机的信息,选则Edit->Preferences进入以下界面,如图所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.选择网络选项,然后选择setting进入下面,如图所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.设置代理服务器和端口以后,发现可以上网,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
4. 此时我们去ping www.baudu.com,却发现ping不通,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)

三、squid反向代理服务器的实验(企业服务器自己设定的代理信息)

实验情况模拟:
西安的客户和西安的服务器同时去访问上海的服务器,当然是西安的服务器快与客户,因为路由转发个数少,西安的服务器去访问的时候带宽比较大,所以速度更快,为了解决客户访问服务器的速度,上海的服务器在西安放置一个代理服务器,但此服务器没有数据、资源,当有客户需要时直接访问西安的服务器,如果服务器没有缓存,西安的代理会去上海缓存,所以西安的这个服务器就是反向代理,使上海的服务器压力变小,并且可以提高传输速率。

实验环境需求与配置说明:

1.在上一步的基础上更改client的主机名为shanghai
2. 实验需要三台主机,真机为西安的客户,主机名为shanghai的虚拟机是上海的服务器,主机名为server的主机为上海服务器放在西安的代理服务器
3. 主机名为shanghai的虚拟机上有apache,主机名为server的主机是squid代理,没有apache.

实验操作如下:

上海总服务器操作:
=1.更改client的主机名为shanghai,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.安装httpd服务,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.关闭火墙,开启httpd的服务并查看服务状态,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
4.进入apache的发布目录,编写发布文件,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
5.重启httpd服务,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
西安的squid代理服务器操作:
1.查看是否有httpd服务和80端口,此时发现是没有的,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)2. 进入squid的配置文件,设置80虚拟端口并缓存上海服务器的apache资源,如下所示:

Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
3.重启服务,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
西安客户测试的主机操作:
1.进入本地解析文件写代理服务器的ip以及发布文件,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)
2.打开浏览器测试,如下所示:
Linux下的squid代理服务器——正向代理、反向代理(cdn加速)

相关文章: