使用MRTG进行squid流量的限制-配置lSquid

运维 系统运维
使用MRTG进行squid流量的限制:MRTG是什么?MRTG(Multi Router Traffic Grapher)是一个监控网络链路流量负载的工具软件,通过snmp协议得到设备的流量信息。本文讲述的是配置lSquid

  使用MRTG进行squid流量的限制

       本文讲述的是 使用MRTG进行squid流量的限制:

       介绍准备MRTG的安装配置lSquid其他配置

  lSquid配置(仅对必要选项配置并说明

  http_port 80  

  1.  

  此选项用于Squid代理所侦听的端口,由于要实现Http加速代理,则侦听端口80

  1.   tcp_outgoing_address 255.255.255.255  
  2.  

  此句法指定了远程服务器的IP地址,这里我们使用255.255.255.255来指定为所有地址

  1.   tcp_incoming_address  
  2.  

  这里可以使用http_port语法进行绑定端口和IP地址。表示客户端的请求。可以不使用。

  1.   cache_mem 64 MB  
  2.  

  由于Squid在读写磁盘,I/O通道,数据转贮等需要大量内存,我们可以把内存值稍微设置大一些,这样可以提供服务器性能。

  1.   cache_swap_low 95  
  2.  

  这用做表示缓存内部对象的替换的衡量基线。当交换分区的磁盘利用率超越这个基线,那么缓存对象替换也就随之开始。这里是用百分率做衡量标准。

  1.   cache_swap_high 98  
  2.  

  此标记用于缓存对象替换的最高程度,当交换分区磁盘利用率接近此设置,则表示对象的更新程度更为剧烈。这里由于我的缓存区设置比较大,因此设置为98%。

  下面几个配置标记采用系统默认配置。

  1.   { maximum_object_size 4096 KB  
  2.  

  { 超过此尺寸的对象将不缓存。

  1.   { minimum_object_size 0 KB  
  2.  

  { 小于此尺寸的对象将不缓存。

  1.   { maximum_object_size_in_memory 8 KB  
  2.  

  { 内存中能缓存的最大对象尺寸。

  1.   { ipcache_size 1024  
  2.  

  { 指定IP缓存大小。

  1.   { ipcache_low 90  
  2.  

  { 缓存IP地址的最低基线。

  1.   { ipcache_high 95  
  2.  

  { 缓存IP地址的最高极限。

  1.   { fqdncache_size 1024  
  2.  

  { 缓存DNS全域名解析的尺寸。

  1.   cache_replacement_policy lru  
  2.  

  此标记用于当缓存新对象时,使用缓存策略来清除缓存中特定对象。这里使用lru表示:它只替换长时间没有被访问过的对象。其他策略请参看配置文档介绍。

  1.   memory_replacement_policy lru  
  2.  

  此用法同上,区别在于替换内存对象。

  1.   cache_dir ufs /cache 4000 16 256  
  2.  

  设置缓存根目录为/cache,类型为ufs,缓存区大小为4G,可以有16个二级子目录,每有二级目录有256个三级子目录。

  1.   cache_access_log /var/log/squid/access.log  
  2.  
  3.   cache_log /var/log/squid/cache.log  
  4.  
  5.   cache_store_log /var/log/squid/store.log  
  6.  
  7.   cache_swap_log /var/log/squid/swap.log  
  8.  

  上面几项是缓存日志记录的路径和文件名。

  1.   log_ip_on_direct on  
  2.  

  记录客户端主机的IP地址。

  1.   log_fqdn on  
  2.  

  记录全DNS域名解析。

  1.   mime_table /usr/local/squid/etc/mime.conf  
  2.  

  Squid所用mime的文件路径

  1.   pid_filename /usr/local/squid/logs/squid.pid  
  2.  

  Squid进程ID的文件。

  1.   ftp_user Squid@ynst.net.cn  
  2.  

  这里可以使用匿名登陆FTP服务器。

  1.   ftp_list_width 32  
  2.  

  FTP文件列表长度,超过长度则截断文件名。

  1.   ftp_passive on  
  2.  

  允许主动连接FTP服务器。

  1.   dns_nameservers 202.98.187.1  
  2.  

  指定代理的域名解析服务器。

  1.   authenticate_program /usr/local/squid/bin/ncsa_auth  
  2.  
  3.   /usr/local/squid/etc/passwd  
  4.  

  代理认证程序,这里在/usr/local/squid/etc使用htpasswd产生一个密码文件,具体方法如下:

  1.   #htpasswd –cdb passwd auth_usr1 pass1  
  2.  
  3.   #htpasswd –db passwd auth_usr2 pass2  
  4.  
  5.   #htpasswd –db passwd auth_usr3 pass3  
  6.  

  创建passwd文件,并添加auth_usr1,auth_usr2,auth_usr3三个认证用户。

  1.   authenticate_children 5  
  2.  

  所需要要产生的认证进程数。

  1.   authenticate_ttl 3600  
  2.  

  此标记设置认证保持时间。

  1.   authenticate_ip_ttl 1800  
  2.  

  此标记设置认证绑定IP地址的时间长度。

  1.   authenticate_ip_ttl_is_strict on  
  2.  

  此标记可在authenticate_ttl时间内,拒绝其他非认证IP地址访问。

  1.   request_header_max_size 10 KB  
  2.  
  3.   request_body_max_size 1 MB  
  4.  

  设置了Http请求的包头和数据大小。

  1.   request_body_max_size 0  
  2.  

  这里,请求所返回的数据大小为0,意义为没有任何限制。

  1.   connect_timeout 180 seconds  
  2.  
  3.   read_timeout 15 minutes  
  4.  
  5.   request_timeout 20 seconds  
  6.  

  上面几项是代理服务几个超时设置,这里使用配置文件默认值。

  下面是访问控制列表一些配置,这里对访问的IP地址,域名,访问类型极其访问代理的权限做的限制:

  1.   acl acldomain dstdomain .ynst.net.cn  
  2.  
  3.   acl acceleratedport port 80  
  4.  
  5.   acl acceleratedhost dst 202.98.187.17/255.255.255.255  
  6.  
  7.   acl aclprotocol proto HTTP FTP  
  8.  
  9.   acl aclmethod method GET POST  
  10.  
  11.   acl aclauth proxy_auth required  
  12.  

  (注:这里使用required表示任何passwd文件中存在的合法用户才授予访问权限。)

  1.   acl aclsnmp snmp_community secrect  
  2.  

  MRTG可以使用snmp协议检测此代理服务运行状态。

  1.   acl aclconn maxconn 20  
  2.  

  可并行连接的最大数量。

  启用定义的访问控制列表

  1.   http_access allow manager localhost  
  2.  
  3.   http_access deny manager  
  4.  
  5.   http_access allow aclauth  
  6.  
  7.   http_access allow acceleratedport acceleratedhost  
  8.  
  9.   http_access deny all  
  10.  

  下面为缓存管理设置

  1.   cache_mgr admin@ynst.net.cn  
  2.  

  设置缓存管理者的接受邮件地址。

  1.   cache_effective_user squidusr  
  2.  
  3.   cache_effective_group squidgrp  
  4.  

  设置执行Squid的用户和用户组。

  {注:设置用户和用户组及其权限修改方法如下:

  1.   #groupadd squidgrp  
  2.  
  3.   #useradd –g squidgrp –d /home/squidusr squidusr  
  4.  

  修改log日志权限属性,使squidusr有写权限。

  1.   #chown squidusr /var/log/squid  
  2.  
  3.   #chgrp squidgrp /var/log/squid  
  4.  
  5.   #chown squidusr /var/log/squid/*.log  
  6.  
  7.   #chown squidgrp /var/log/squid/*.log  
  8.  
  9.   }  
  10.  
  11.    

   使用MRTG进行squid流量的限制-配置lSquid介绍到这里了,接下来一节是其他的配置,有Http服务加速代理、延迟队列池进行配置、运行Squid代理服务、lMRTG配置

【编辑推荐】

FreeBsd下安装和配置MRTG

Mrtg流量监控

如何使用MRTG监控CPU温度

责任编辑:zhaolei 来源: CSDN
相关推荐

2011-03-31 13:40:48

2011-03-31 13:40:48

MRTGsquid流量

2011-03-31 13:40:36

MRTGsquid流量

2011-03-31 10:24:15

2011-04-01 15:05:45

Redhat配置mrtg

2011-04-06 11:36:28

MRTG流量

2011-04-02 08:59:35

MRTG监控

2010-06-01 12:51:00

2011-03-31 15:31:03

2011-03-30 08:56:43

mrtg流量图

2011-03-30 11:30:31

MRTG

2010-05-28 18:57:15

Mrtg配置

2011-04-01 10:19:13

MrtgCISCO安装

2010-01-27 10:01:20

2011-03-31 10:31:18

MRTG配置

2011-04-01 09:18:03

FreeBSD安装MRTG

2011-04-06 10:57:14

监控MRTG

2011-03-30 15:05:41

MRTG流量图

2011-03-30 11:31:10

MRTG

2010-06-01 10:45:02

Mrtg 安装
点赞
收藏

51CTO技术栈公众号