设为首页 收藏本站
查看: 1043|回复: 0

[经验分享] squid缓存服务的搭建和配置管理

[复制链接]

尚未签到

发表于 2018-12-27 13:32:00 | 显示全部楼层 |阅读模式
  1.什么是squid服务?

         提供的代理服务(缓存服务),可以缓存用户访问过的数据,当用户下次访问同样的数据时,squid代理可以从缓存中提取数据,可以直接访问,提高了访问速度和降低了对带宽的使用。
  2.应用的环境
        公司现有100个用户需要全部上网,通过路由交换可以可以实现,也可以每人一个IP地址,通过以上方式上网不能缓存用户访问过的数据。
  
  3.squid代理的方式有三种:
      普通代理:客户端必须在自己的浏览器里指定代理服务器的ip地址和代理服务监听的端口号,才能够通过代理服务器上网,代替局域网内的所有客户端上网。
      透明代理:客户端不需要在自己的浏览器里指定代理服务器的ip地址和代理服务监听的

      反向代理:代替公网客户端访问私网的服务器。
  4.squid通过什么限制客户端通过自己访问什么样的资源?
        通过ACL(访问控制列表)来限制客户端 通过自己访问资源。

  *acl要先定义后调用,但可以只定义不调用
*调用acl时遇到匹配就执行,后边的就不查看了
*所以在调用acl时,要把要小范围的放在大范围的上边

  5.squid优点:

  •   1)通过缓存增加访问速度。
      2)提供用私有IP访问internet的方法。
      3)提高网络的安全性。
      4)方便对用户的管理。
  6.squid缺点:
       1)产生单点故障。
       2)当同时访问时网络比较慢。
  7.进程名  squid
进程所有者/组   squid
端口号   3128
数据传输协议    tcp


  实验(一)

  实验目的:搭建普通代理

  实验环境:3台服务器
         pc1      主机名:localhost     IP地址:192.168.1.10      内网客户机

         pc2      主机名:fanlj          代理服务器  (eth0连接内网IP地址192.168.1.254,eth1连接外网IP地址1.1.1.254)

         pc3      主机名:fanxiaohui   IP地址:1.1.1.1      外网web服务

  实验要求:
      PC2代理内网用户PC1可以访问外网的WEB服务。

  搭建实验环境分别安装以上要求进行搭建,并且在pc2上测试是否可以ping通1.1.1.254和1.1.1.1。
  
  在外网WEB创建一个网页index.html,内容是1.1.1.1

  在PC2上测试是否可以访问WEB的内容
  
  在PC2上部署squid代理,可以代替内网用户PC1的用户可以访问PC3WEB的内容

  1.查看软件包是否安装,如果没有安装,就安装squid软件包。
  

  2.修改主配置文件,http_port访问squid端口为3128,cache_dir为缓存存放的目录,ufs为目录的固定格式,/var/spool/squid为存放的位置,100为缓存的大小,16为/var/spool/squid目录下有16个目录,256为在16个目录下有256个子目录,cache_mem为拿出实际物理内存32M做高速缓存,visible_hostname为主机名,当系统的主机名和hosts文件中127.0.0.1中的主机名不一致时,必须在squid配置文件中要指明主机名,默认squid服务就代替私ip地址通过自己上网。
  

  
  3.重新启动squid服务,并且查看/var/spool/squid目录下是否有16个目录。


  查看端口和进程
  
  4.在客户端PC1测试,客户端必须在自己的浏览器中指定代理 服务器的IP地址和代理服务监听的端口  。

  在客户端浏览器上选择编辑---首选项----高级----网络---设置----手动配置代理指向自己本网段squid代理的IP地址和端口为3128.
  

  在自己的浏览器中直接输入http://1.1.1.1

  5.在代理服务器上查看有那些客户端访问过1.1.1.1

  普通代理缺点:
         客户端必须在自己浏览器中指定代理服务器的IP地址。

  实验(二)
  实验目的:配置透明代理
  透明代理优点:客户端不需要在自己的浏览器里指定代理服务器的ip地址和代理服务监听的,只要把网关指定代理服务器的私网接口的IP地址就可以上网。
  实验要求:客户端不在自己的浏览器中指定代理的接口和IP地址就可以上网。
  配置squid透明代理的前题条件?
企业的网关(共享接入Internet)
防火墙服务必须和代理服务运行在一台服务器上
需要设置防火墙策略(将客户机的Web访问数据转交给代理服务程序处理)

  1、把客户端访问网站的请求包,发个代理服务器

  2、在代理服务器上运行防火墙服务,编写防火墙规则,把本机接收到的访问web的请求转交给本机的代理服务







  

  iptables    -t   表名    管理选项     链名     匹配条件    -j   处理动作

表名(不同的表有不同的功能)
filter          数据包过滤
mangle     给数据包打标记
nat            给数据包做转换(源地址 \ 目的地址\ 端口)
raw            跟踪数据包状态

管理选项
-L    查看
-D   删除
-A   添加
-F    清空

链 (数据包传输的方向  以防火墙本机为参照物)
INPUT    进入防火墙的数据包
OUTPUT  从防火墙本机出去的数据包
FORWARD   经过防火墙的数据包
POSTROUTING   路由后     
PREROUTING      路由前

匹配条件
-i   指定数据包从那个物理接口进入
-s   指定数据包的来源地址
-p   指定数据传输协议
--dport   指定数据包的目标端口

处理动作
DROP  丢弃
REJECT 拒绝
DNAT  目标地址转换
SNAT   源地址转换
REDIRECT  端口状态

  

  3.在客户端测试,打开客户端浏览器输入http://1.1.1.1

  

  
实验(三)squid反向代理
  反向代理: 代替公网客户端访问私网的服务器。
  实验目的:配置squid的反向代理
  实验要求:公网用户要访问私网的服务器的内容。
  实验环境:3台服务器
         pc1      主机名:localhost     IP地址:192.168.1.10      内网web服务器

         pc2      主机名:fanlj          代理服务器  (eth0连接内网IP地址192.168.1.254,eth1连接外网IP地址1.1.1.254)

         pc3      主机名:fanxiaohui   IP地址:1.1.1.1      外网client(用户)
  
环境分析:外网用户要访问内网web服务器必须通过代理服务器来访问,代理服务器必须监听80端口才能使外网访问内网,所以代理服务器上的httpd访问必须停止,如果代理服务器上有httpd服务,那么外网只能访问代理上的web服务。

  1.修改主配置文件,使代理服务器做反向代理。cache_peer为真正后端服务器的地址,parent代理服务器和实现web服务器的关系,80代表访问的端口,0代表与其他代理服务器通信的接口,originserver代表提供服务器的真正主机。
  

  2.代理服务器停止防火墙和查看80端口是否被占用,如果占用被释放,从新启动squid服务。
  
  3.在web服务器端192.168.1.10做一个网页页面,并查看 httpd是否开启
  
  4.公网用户查看是否可以访问web服务器。
  

  
实验(四)基于域名和端口的虚拟主机的访问。
  实验目的(一):当外网用户访问www.tarena.com,内网服务器端显示wwwpage页面,(http://www.tarena.com显示wwwpage)

  用户访问bbs.tarena.com ,内网服务器端显示bbspage页面(http://bbs.tarena.com 显示bbspage)。

  1.在内网服务器创建两个文件夹用来存放页面分别为:wwwpage和bbspage



  2.在内网服务器上创建基于域名的虚拟主机,使外网用户访问不同地址时显示不同的页面。



  3.测试自己访问是否可以解析

  
  4.在squid服务器上配置DNS服务用来解析www.tarena.com和bbs.tarena.com.

  

  
  5.在外网客户端上测试查看是否可以访问www.tarena.com 和bbs.tarena.com



  




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-656525-1-1.html 上篇帖子: 学习笔记十二 : squid 下篇帖子: 针对同一个静态页面,squid、varnish、trafficserver性能以及命中率的比较
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表