张颢镡 发表于 2018-12-28 08:03:57

rhel6下安装配置Squid过程

  一、简介
  代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。
  Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向Squid 发出一个申请,要Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户,使用户觉得速度相当快。Squid 可以代理HTTP、FTP、GOPHER、SSL和WAIS等协议并且Squid 可以自动地进行处理,可以根据自己的需要设置Squid,使之过滤掉不想要的东西。
  1.1 工作流程
  当代理服务器中有客户端需要的数据时:
  a. 客户端向代理服务器发送数据请求;
  b. 代理服务器检查自己的数据缓存;
  c. 代理服务器在缓存中找到了用户想要的数据,取出数据;
  d. 代理服务器将从缓存中取得的数据返回给客户端。
  当代理服务器中没有客户端需要的数据时:
  1. 客户端向代理服务器发送数据请求;
  2. 代理服务器检查自己的数据缓存;
  3. 代理服务器在缓存中没有找到用户想要的数据;
  4. 代理服务器向Internet 上的远端服务器发送数据请求;
  5. 远端服务器响应,返回相应的数据;
  6. 代理服务器取得远端服务器的数据,返回给客户端,并保留一份到自己的数据缓存中。
http://images.cnitblog.com/i/370046/201406/241527357672511.jpg
  Squid代理服务器工作在TCP/IP的应用层。
http://images.cnitblog.com/blog/370046/201406/152333216706208.jpg
  1.2 Squid 分类
  按照代理类型的不同,可以将Squid 代理分为正向代理和反向代理,正向代理中,根据实现方式的不同,又可以分为普通代理和透明代理。

[*]  普通代理:需要客户机在浏览器中指定代理服务器的地址、端口;
[*]  透明代理:适用于企业的网关主机(共享接入Internet)中,客户机不需要指定代理服务器地址、端口等信息,代理服务器需要设置防火墙策略将客户机的Web访问数据转交给代理服务程序处理;
[*]  反向代理:是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
  官方地址:http://www.squid-cache.org/
  参考文档:http://www.squid-cache.org/Doc/config/
  二、系统环境

  操作系统:CentOS>  Squid版本:squid-3.1.10-20.el6_5.3.x86_64
  SELINUX=disabled
  HTTP Service: stoped
  三、安装Squid服务
  3.1 检查squid软件是否安装
  # rpm -qa|grep squid
  3.2 如果未安装,则使用yum 方式安装
  # yum -y install squid
http://images.cnitblog.com/blog/370046/201406/271610498674213.jpg
  3.3 设置开机自启动
  # chkconfig --level 35 squid on             //在3、5级别上自动运行squid服务
  四、squid服务器的配置文件说明
  squid 的主配置文件是 /etc/squid/squid.conf,所有squid的设定都是在这个文件里配置,下面我们来讲解一下该文件的配置选项。
http://common.cnblogs.com/images/copycode.gif
http_port 3128      //设置监听的IP与端口号cache_mem 64 MB      //额外提供给squid使用的内存,squid的内存总占用为 X * 10+15+“cache_mem”,其中X为squid的cache占用的容量(以GB为单位),//比如下面的cache大小是100M,即0.1GB,则内存总占用为0.1*10+15+64=80M,推荐大小为物理内存的1/3-1/2或更多。maximum_object_size 4 MB   //设置squid磁盘缓存最大文件,超过4M的文件不保存到硬盘  minimum_object_size 0 KB   //设置squid磁盘缓存最小文件
  maximum_object_size_in_memory 4096 KB   //设置squid内存缓存最大文件,超过4M的文件不保存到内存
cache_dir ufs /var/spool/squid 100 16 256   //定义squid的cache存放路径 、cache目录容量(单位M)、一级缓存目录数量、二级缓存目录数量logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %
页: [1]
查看完整版本: rhel6下安装配置Squid过程