获得Squid的源码包(squid-2.5.STABLE14.tar.tar)或从 RedHat的 第二张光盘中获得rpm
一:
   解压源码包:
   # 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