rhel 5下配置squid正向代理、透明代理

 

squid 代理服务器
一、正向代理
               正向代理存在于服务器与客户端之间,正向代理需要设置client端的浏览器,需要把代理服务器的ip地址告诉浏览器,使用squid正向代理,正向代理是用户知道有这个代理服务器的存在,正向代理使用在client端网速比较慢,当client通过squid服务器区访问web server 的时候,squid会缓存一些数据,当client再次访问的时候,squid会直接给client自己缓存的数据,节省了带宽
 
 下面开始简单的配置一个正向代理服务器
需要:
        1、     3台虚拟机,我使用的是vmware虚拟机
        client的网卡设置为
            
            
              client ip地址为:192.168.1.1/24
        squid服务器有两块网卡、设置连接模式为
          
              第一个网卡ip地址 192.168.1.2/24
              第二个网卡ip地址 172.16.1.1/16
                   (要保证squid 服务器可以同时ping通)
              要注意看看哪个连接是vmnet2 哪个连接是vmnet3
              弄乱了可是ping不通的

 

                web server 服务器网卡连接模式
           
                  web server ip地址 172.16.1.2/16
            
 
         &(这么做主要是让client 不能直接访问web server 达到测试
              squid 的目的)
 
 
下面开始配置
      一、首先在web server上搭建简单的http 服务
                 yum  install  -y  httpd
                 /etc/init.d/httpd start
      二、现在在client端访问
                

            提示是连接失败!
          ( 我们现在不能直接通过client直接去访问web server)
      三、使用squid 去访问web server
                

           
                可以看到这个页面。
      四、现在配置squid服务
           yum install -y squid //安装squid 服务
           vim /etc/squid/squid.conf
           920(行号)  http_port   192.168.1.2:3128
                       192.168.1.2 是squid服务器上于client相连接的 ip地址
                            3128 是squid的端口号
            637 (行号) http_access allow all
                            这个squid服务器 为所有的client代理
           1783(行号) cache_dir   ufs /var/spool/squid 100 16 256
                            这一行打开注释
                          ufs 代表同步,如果有请求直接写入硬盘,
                                然后在响应请求
                          aufs 代表异步,先响应请求,然后在写入磁盘
                          /var/spool/squid 这个目录下存放的是缓存的数据
                         100 : 单位是M 表示缓存数据的大小
                         16 : 一级目录的数量
                         256:二级目录的数量
             1840(行号) cache_swap_high   95
                         95:代表cache 占用swap的空间最多是百分之95,如 果大于百分之95,squid会自动删除之前保存的 数据
             1839 (行号) cache_swap_low   90
                         90: 代表删除的时候还是会保存最新的百分之90
             1576 (行号)   cache_mem 8MB
                        代表squid能使用多少内存,如果你的内存足够可以调
                        的稍微大一点
             2974 (行号)    cache_effective_user   squid
                        通知系统是以squid用户的身份去执行
 
全部配置完成 启动服务
/etc/init.d/squid start
成功启动
下面完成测试
五、在client配置浏览器(我的是firefox)
            

 

 

点击最下面的Preferences
 
 

 
点击 settings
 
 

 
ip地址写的是能于client   ping通的squid ip地址
配置完成保存退出
 
直接使用浏览器去访问http://172.16.1.2
看到测试页面,正向代理完成!

 

二、 squid 透明代理
         透明代理:原理与正向代理基本相同,只是客户端的网关需要指向squid 的ip地址,配置也基本差不多
  
①  下面开始简单配置:
      vim /etc/squid/squid.conf
     
到920行  将这一行改为http_port   192.168.1.2:3128   transparent
     
接下来配置防火墙规则
     
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
(这一行代表所有192.168.1.0这个网段访问squid的80端口,都由防火墙转发到3128的squid服务端口)
 
     
配置完成后重启服务。
client端配置
       首先取消浏览器中的代理服务 改为no proxy。然后将client的网关设置成squid的ip地址
访问web server 可以访问到测试页面,透明代理配置完成!
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

你可能感兴趣的:(squid,正向代理)