获得Squid的源码包(squid-2.5.STABLE14.tar.tar)或从 RedHat的 第二张光盘中获得rpm<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

一:

   解压源码包:

   # tar zxvf squid-2.5.STABLE14.tar.gz 

 

   # tar jxvf  squid-2.5.STABLE14.tar.bz2

进入 解压后的目录

   # cd  squid-2.5.STABLE14

 

二:

   对源代码进行configure配置,有诸多选项,具体应用根据个人需要,打开相应的功能模块;相应的配置项可help:( # ./configure --help

   # ./configure --prefix=/usr/local/squid \ ; 指定Squid的安装位置

  

   # --sysconfdir=/etc \  ;将主配置文件 squid.conf 放于此处,方便管理

  

   # --enable-err-languages="Simplify_Chinese" \

  

   # --enable-default-err-langures="Simplify_Chinese" \ ;以上两项定义使用简体中文错误信息

 

   # --enable-linux-netfilter \ Squid允许进行透明代理

 

   # --enable-underscorce \ ; 允许URL出现带下划线的url地址。默认Squid认为带下划线的url为非法地址

 

   # --enable-arp-acl \ ; 对客户端的MAC地址过滤,可避免对方的IP欺骗  

等等...

 

   # make make install 编译并安装

 

三 :

   对主配置文件/etc/squid.conf进行相关设置(设置之前别忘备份,以防不测):

      http_port IP:端口  ; 指定Squid监听的ip地址和端口。为使Squid服务器只监听内部ip而不是外部。只填写内部网卡ip和端口即可。

      cache_mem * mb     ;此选项指定使用多少物理内存作为服务器的高速缓存。假如此台服务器只作共享上网,无其他服务,可加大到物理内存的1/2,反之,其大小不应超过物理内存的1/3,否则影响服务器的总体性能。(另有作用,下有相应解释)

      cache_mgr [email]admin@lly.com[/email]  ; 当代理过程出现问题,可在错误提示页面中显示,供用户报告。

      dns_nameservers DNSIP  ; 定义DNS 服务器ip ,为使Squid能解析域名,必须告诉Squid域名解析DNS服务器地址。

      cache_access_log  /var/log/access.log ;设置访问日志文件位置

      cache_log /var/log/cache.log  ; 设置缓存日志文件位置

      cache_store_log /var/log/store.log ; 设置网页缓存日志位置

      cache_dir ufs /var/spool/squid 4096 16 256 ; 指定缓存区大小。其中ufs指缓存的存储类型,一般为“ufs”,无缓存时用“null”;"/var/spool/squid" 指硬盘缓冲存放的目录;”4096“代表缓存空间的最大为4096MB;”16“代表可在/var/spool/squid目录下建立的一级子目录数目;”256“代表二级子目录。定义这些子目录作用:加速查找缓存文件的速度。

     cache_swap_low 90 

     cache_swap_high 95  Squid/var/spool/squid缓存目录中,每次处理的缓存大小是32兆字节,当缓存空间使用达到95%时,新的内容将取代旧的而不直接添加到目录中,直到空间又下降到90%才停止这一活动。如果不想Squid缓存任何文件,如某些存储空间有限的专有系统,可以使用null文件系统(这样不需要那些缓存策略):

     visible_hostname 域名或ip ; 设置运行Squid 主机名称,建议写ip。当访问发生错误时,错误提示于网页上。

四:

访问策略

   acl  列表名称 列表类型 【-i】 列表值 

 ☆ 列表名称 方便区分各个访问控制列表,不可重名。尽量定义有意思的名称,如:badsrc gooddomain worktime

 ☆ 列表类型

 Src  ip

 Dst  目标ip

 Srcdomain 源名称 (客户端域)

 Dstdomain 目标名称 (服务器端域)

 Time 星期 或 时刻

 url_regex URL 规则表达式匹配

 urlpath_regex  滤去协议 和主机名 的 URL 规则表达式匹配

 maxconn  单一ip 最多连接

 time  星期: 可用这些关键字 M (Monday) T (Tuesday) W (Wednesday) H (Thursday) FFriday) 、A Saturday)、 S (Sunday)

       时刻 : 0800-1200

 例 :禁止 10.0.0.1访问 外网

 acl badsrc src 10.0.0.1

 http_access deny badsrc

 禁止10.0.0.0网段 访问 域名为 [url]www.aa.com[/url]

 acl nodst dstdomain [url]www.aa.com[/url]

 acl nosrc src 10.0.0.0/8 

 http_access deny nosrc nodst