squid代理(传统代理)

squid代理服务器

 

Squidlinux系统中经常使用的一款开源代理服务软件,能够很好地实现HTTPFTP ,以及DNS查询,SSL等应用的缓存代理,功能十分强大linux

做为应用层的代理服务器软件,Squid主要提供缓存加速,应用层过滤控制的功能web

1 代理的工做机制vim

{1}当客户机经过代理来请求Web页面时,centos

{2}指定的代理服务器会检查本身的缓存,浏览器

{3}若是缓存中已经有客户机须要的页面,缓存

{4}则直接将缓存中的内容反馈给客户机,安全

{5}若是缓存中没有客户机要访问的页面,服务器

{6}则由代理服务器向lnternet发送请求,当得到返回的web页面之后,将网页数据保存到缓存中在发送给客户机。ide

 

 2 squid服务的做用工具

   {1}.加快对http访问的速度

   {2}.提升安全性)(客户机的Web访问请求其实是由代理服务器完成的,从而能够隐藏用户的真IP地址)

   {3}.可以进行访问控制(代理服务器担任着相似“经纪人”的角色,因此会针对要访问的目标,客户机的地址,访问的时间等进行过滤控制)

 

 

3代理的基本类型

传统代理:须要在客户机的浏览器、相关的工具上手动设置代理服务器的地址和端口,访问的网页域名也是由代理服务器进行解析的

透明代理:客户不须要指定代理服务器的地址和端口,而是经过网关,由防火墙的重定向策略将用户的请求交给代理服务器处理;域名解析有客户机完成

实验要求:

1.全部的局域网pc经过共享ipip地址为200.1.1.1)的方式接入internet,用于非web访问协议的访问(如dnsftpmail等等)

2.当局域网pc访问internet中的web站点(80443端口)时,自动使用代理

3.针对局域网pcweb访问进行控制,主要要求以下。

禁止下载扩展名为.3pg .mp4.f4v.mkv.rmvb.avi的视频文件

超过4MB大小的文件不尽兴缓存,禁止下载超过10MB的文件

设置网站黑名单,禁止访问位于.qq.com.msn.com域下的web站点

容许在正常的上班时间(周一到周五的8:30~17:30)使用代理服务

默认策略设置为禁止任何客户机使用代理服务

 

1、安装squid

1.解压(挂载squid光盘)

wKioL1km68uBVnmQAAA4lFHTcIU775.png 

2.配置、编译、安装

wKiom1km69_wWEJUAAD_oOBed48158.png 

 

--sysconfdir= /etc  //单独将配置文件修改到其余目录

--enable-linux-netfilter  //使用内核过滤

--enable-linux-tproxy  //支持透明模式

--enable-err-languge=....   //错误信息的显示语言

--enable-underscore  //容许URL中有下划线

--enable-poll   //使用poll()模式

--enable-gnuregex  //使用GNU正在表达式

 

3.建立链接文件、建立用户和组

 

wKioL1km6-6zm2nkAACllWKwpe8954.png 

4.编辑squid配置文件

[root@centos2 squid-3.4.6]#vim /etc/squid.conf

省略部份内容

cache_effective_user squid   //指定squid程序用户

cache_effective_group squid  //程序基本组帐户,须要手工添加

visible_hostname centos2.benet.com  //手工添加主机名,,须要手工添加

cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256 //设置缓存目录的大小,一级子目录和二级子目录的个数(默认有此项,去点前面的#

5.squid的运行控制

1)检查配置文件语法是否正确

 

wKioL1km7ADgZMgxAABmox6BTpQ188.png 

 

2)启动 中止 squid

// -z 用来初始化缓存目录

 

 

wKiom1km7BDhiK4CAABbkfYZ3dg591.png 

 

wKioL1km7CTSfaVSAABDnMnNrqw639.png 

 

启动服务

wKiom1km7DTBcbxlAAByUVu0X7s217.png 

 

 

2、构建代理服务器

(一)传统代理

wKiom1km7EOB2q3nAABuRdOPAFc301.png 

1.squid服务器的配置

(1)修改squid.conf配置文件

wKiom1km7FCz_G16AACoyuyGks0103.png 

http_access allow all    //容许任意客户机使用代理服务器,放在http_access deny all前面(注意不加也能够,若是客户机地址正好时192.168.段就不用加,由于在squid.conf中有一个acl localnet src 192.168.0.0/16http_access allow localnet

(2)在防火墙上添加容许的策略

wKiom1km7GKTFugoAAE6zFujLMI650.png 

 

(3)配置dns服务器,为web站点注册域名www.benet.com

wKiom1km7HLAEFVCAABmYuQnnf8712.png 

 

(4)squid代理服务器上填写好dns服务器的地址(这一点特别注意,要求代理服务器自己能够解析域名)

#vim  /etc/resolv.conf

wKiom1km7MTy79N9AABkS1qyVk8244.png 

 

(5)重启squid代理服务

wKioL1km7NOSkhnQAAAw1lG5cSY461.png 

2.客户机的代理配置

1)客户机不用填写网关和dns服务器地址,彻底由squid代理解析

  在浏览器中 选择 “工具” lnternet选项,弹出lnternet选项对话框,在“链接”选项卡中“局域网LAN”设置

wKiom1km7ODzuxbkAACfyoZVA0g483.png 

 

2)代理服务的验证方法

①查看squid访问日志的新增记录

wKiom1km7Pji6XIQAABH-9BhPSc595.png 

 

 

wKioL1km7XKxobnqAADyGh_OMfI134.png 

 

②查看web访问日志的新增记录

wKioL1km7V-R_vDRAAGo94ARmcA330.png 

注意:当客户机再次访问同一个web页面时,squid访问日志会增长新的记录,web访问日志中的记录不会发生变化(除非页面变动或执行强制刷新等操做),这说明当客户机重复访问同一个静态页面时,其实是由代理服务器经过缓存提供的

相关文章
相关标签/搜索