squid介绍及其配置优化_第1页
squid介绍及其配置优化_第2页
squid介绍及其配置优化_第3页
squid介绍及其配置优化_第4页
squid介绍及其配置优化_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、squid介绍及其简单配置1. Squid是什么?Squid是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受 来自人们需要下载的目标(0 bject )的请求并适当地处理这些请求。也就是说, 如果一个人想下载一 web页面,他请求Squid为他取得这个页面。Squid随之连 接到远程服务器(比如:http: /)并向这个页面发出请求。然后, Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同 一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机 上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和 WAIS等协议

2、。但 它不能处理如POP,NNTP,RealAudio以及其它类型的东西。I1 1阪闪代幕xwwIMoom 0tH? WM JQ31GOWMJm吊2.squid代理的作用:淳代理服务器的作用。通过缓存的方式为用户提供Web访问加速o对用f1的Web访问进行过滤控制3.接下来我们主要探讨的是squid各种代理的定义正向代理标准的代理缓冲服务器一个标准的代理缓冲服务被用于缓存静态的网页(例如:html文件和图 片文件等)到本地网络上的一台主机上(即代理服务器)。当被缓存的页面被第 二次访问的时候,浏览器将直接从本地代理服务器那里获取请求数据而不再向原 web站点请求数据。这样就节省了宝贵的网络带宽

3、,而且提高了访问速度。但是, 要想实现这种方式,必须在每一个内部主机的浏览器上明确指明代理服务器的IP 地址和端口号。客户端上网时,每次都把请求送给代理服务器处理,代理服务器 根据请求确定是否连接到远程web服务器获取数据。如果在本地缓冲区有目标 文件,则直接将文件传给用户即可。如果没有的话则先取回文件,先在本地保存 一份缓冲,然后将文件发给客户端浏览器。透明代理缓冲服务器透明代理缓冲服务和标准代理服务器的功能完全相同。但是,代理操作 对客户端的浏览器是透明的(即不需指明代理服务器的IP和端口)。透明代理 服务器阻断网络通信,并且过滤出访问外部的HTTP (80端口)流量。如果客户 端的请求在

4、本地有缓冲则将缓冲的数据直接发给用户,如果在本地没有缓冲则向 远程web服务器发出请求,其余操作和标准的代理服务器完全相同。对于Linux 操作系统来说,透明代理使用Iptables或者Ipchains实现。因为不需要对浏览器 作任何设置,所以,透明代理对于ISP (Internet服务器提供商)特别有用。反向代理:a.反向代理缓冲服务器反向代理是和前两种代理完全不同的一种代理服务。使用它可以降低原 始WEB服务器的负载。反向代理服务器承担了对原始WEB服务器的静态页面 的请求,防止原始服务器过载。它位于本地WEB服务器和Internet之间,处理 所有对WEB服务器的请求,组织了 WEB服务

5、器和Internet的直接通信。如果互 联网用户请求的页面在代理服务器上有缓冲的话,代理服务器直接将缓冲内容发 送给用户。如果没有缓冲则先向WEB服务器发出请求,取回数据,本地缓存后 再发送给用户。这种方式通过降低了向WEB服务器的请求数从而降低了 WEB 服务器的负载。4. Squid主要组成部分服务名:squid主程序:/usr/sbin/squid 配置目录:/etc/squid主配文件:/etc/squid/squid.conf监听tcp端口号:3128默认访问日志文件:/var/log/squid/access.logsquid 常用配置选项(/etc/squid/squid.con

6、f)http_port 3128 (还可以只监听一个一个 ip http_port :3128)cache_mem 64MB#缓存占内存大小maximum_object_size 4096KB# 最大缓存块reply_body_max_size 1024000 allow all # 限定下载文件大小access_log /var/log/squid/access.log#访问日志存放的文件visible_hostname proxy.test.xom # 可见的主机名cache_dir ufs /var/spool/squid 100 16 256usf:缓存数据的存储格式/var/spoo

7、l/squid 缓存目录100 :缓存目录占磁盘空间大小(M)16 :缓存空间一级子目录个数256 :缓存空间二级子目录个数cache_mgr HYPERLINK mailto:webmaster webmaster# 定义管理员邮箱http_ _access deny all#访问控制好了介绍了那么多下面我们来对squid几种代理进行简 单配置:标准的代理缓冲服务器的配置:a.squid服务器上的配置准备环境:软件包:squid (任意版本)双网卡:eth0: eth1:2如图:vim /etc/squid/squid.confhttp_port 3128access_log /var/lo

8、g/squid/access.loghttp_ _access allow allb一切配置以后:squid -z初始化缓存squid -k parse检查语法service squid start 启动 squidchkconfig squid on加入开机启动netstat -nltp查看3128端口是否打开客服端的配置:ip : 2 gw:然后打开浏览器- 工具- 选项- 连接- 局域网设置- 代理服 务器地址: 端口: 3128一切搞定之后在浏览器输入http: /即可访问,上网了 easy 吧!透明代理缓冲服务器的配置:a. aquid服务器上的配置与标准的代理缓冲服务器几乎一样差别

9、就是:http_port 2:3128 transparentb添加iptables规则:iptables -t nat -A PREROUTING -p tcp -dport 80 -j REDIRECT -to 3128squid -k parseservice squid reloadc.客服端不需要在浏览器中指定代理服务器的地址,端口但需设置上网的DNS好了经过上三个步骤你就可以上网了访问控制应用访问控制的方式定义acl列表acl列表名称列表类型列表内容针对acl列表进行限制http_access allow 或 deny 列表名拒绝某个ip地址acl dy_ip src 03/32h

10、ttp_access deny dy_ip拒绝某个网段acl dy_ip src /24acl dy_ip src /24 /24acl dy_ip src -/24http_access deny dy_ip通过文件拒绝某个ip的访问acl guests src /etc/squid/guest”http_access deny guests/etc/squid/guests 内容拒绝端口号acl d_p port 80acl d_p port 1-1024http_access deny d_p允许域名为域访问本地代理服务器acl permitted_domain src http_acc

11、ess allow permitted_domain拒绝访问域acl B dstdomain HYPERLINK http_access allow allhttp_access deny B服务acl FTP proto FTPhttp_access deny FTPtimeCode DayS SundayM MondayT TuesdayW WednesdayH ThursdayF FridayASaturdayDAll weekdays (M-F)时间跨越子夜,你需要把它们分成两个ACL来写,或者使用否定机制来定义非忙时。例如:acl Offpeak1 20:00-23:59acl Of

12、fpeak2 00:00-04:00http_access allow Offpeak1 .http_access allow Offpeak2 .另外,你可以这样写:acl Peak 04:00-20:00http_access allow !Peak .不应该在同一个time ACL里放置多个日期和时间范围列表。例如,假如你输入:acl Blah time M 08:00-10:00 W 09:00-11:00,实际能做到的是:acl Blah timeMW 09:00-11:00,解析仅仅使用最后一个时间范围。正确的写法是,将它们写进 两行:acl Blah time M 08:00-1

13、0:00acl Blah time W 09:00-11:00控制访问包含sexy字段的网址acl deny_url url_regex -i sexyhttp_access deny deny_url拒绝某些字段结尾的网址acl RealFile urlpath_regex -i .rmvb$ .rm$http_access deny RealFile解释一下含义acl kaixin_net dstdomain .acl adv_net src 192.168.02-1921680.20/55acl mynetwork src /24acl kaixin time time MTWHF 7:

14、00-9:30acl all src /http_access allow adv_net kaixin_time kaixin_nethttp_access deny mynetwork kaixin_time kaixin_nethttp_access allow all练习允许网段100012424以及5/24内的所有客户机访问代理服务 器,并且允许在文件/etc/squid/guest列出的客户机访问代理服务器,除此之外的 客户机将拒绝访问本地代理服务器:允许域名为、的两个域访问本地代理服务器,其他的域都 将拒绝访问本地代理服务器:拒绝客户机通过代理服务器访问文件中指定IP或者域名的网

15、站,其中文件/etc/squid/ deny_ip中存放有拒绝访问的IP地址,文件/etc/squid/deny_dns中存放有拒绝访问的域名:允许所有的用户在规定的时间内(周一至周四的8: 30到20: 30)访问代理服务 器,只允许特定的用户(系统管理员,其网段为:/24)在周五下午访 问代理服务器,其他的在周五下午一点至六点一律拒绝访问代理服务器:向代理缓冲服务器配置注意:反向代理和透明代理不能同时使用步骤:Squid 服务器的设置,修 改 /etc/squid/squid.conf同样反向代理aquid服务器上的配置与标准的代理缓冲服务器几乎一样不同之处:http_port 2: 80

16、 vhostCache_peer 2 parent 80 0 originserverweight=5 max-conn=30上一行的解释:定义web服务器web服务器地址 服务器类型http端口 icp端口 可选项squid k parseservice squid reload客服端的设置(注意:这时的客服端就是web服务器)开启web服务好了通过以上配置外网即可访问你的web服务器了一对一反向代理Internet client 今 squid server今 internal static web server 54squid打开转发功能squid要监听80端口squid http_ac

17、cess allow all配置过程Http_port 80cache_peer 05 parent 8888 0 originservercache_peer Web服务器地址 服务器类型http端口 icp端口 可选项cache_peer指定真正WEB服务器的位置parent服务器类型对应到目标主机的缓存级别,上游Web主机一般使用“parent”(父服务 器)icp端口用于连接相邻的ICP(Internet Cache Protocol)缓存服务器(通常为另一台Squid主机),如果没有,则使用0;originserver表示该服务器作为提供Web服务的原始主机,weight=n”指定服务器的优先权重,n为整数,数字越大优先级越高(缺省为1); max-conn=n”指定反向代理主机到该web服务器的最大连接数。第二种SQUID反向代理,一对多WEB SE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论