squid的代理功能配置
   调整Cache的选项
l request_header_max_size   数字(KB)
最大http请求头
l request_body_max_size    数字(KB
最大http请求数据内容
l reply_body_max_size  数字(KB
最大返回数据,可限制用户下载的数据大小
l reference_age  数字
LRU算法中指定LRU时间
l quick_abort_min    数字(KB)
断点续传最小值
l quick_abort_max   数字(KB)
断点续传最大值
l quick_abort_pct   数字(percent)
超过值认为续传成功
l negative_ttl   数字 minutes/hours/seconds
否定回答TTL
l positive_dns_ttl   数字  minutes/hours/seconds
DNS肯定回答TTL
l  range_offset_limit   数字  KB/MB/Bytes
请求SQUID预取数据的大小
(3)              定义超时的选项
l connect_timeout:SQUID等待客户请求的服务器回应的时间长度
l peer_connect_timeout:一个对等的缓存服务器的TCP连接超时时间
l client_lifetime:客户端同代理服务器TCP连接的最大时间长度
l read_timeout:读入数据超时
l request_timeout:客户端请求最大时间
l shutdown_lifetime:关闭squid缓存时间
(4)              定义访问控制的选项
l acl:定义一个访问列表
                 格式:acl    aclname   acltype  string
类型:(acltype)
          src:源地址
          dst:目标地址
          srcdomain:(客户)名称
          dstdomain:目标名称
          time:时间(M星期一、T星期二、W星期三、H星期四、F星期五、A星期六、S星期天)
          url_regex [-i]:URL中的正则表达式匹配
          urlpath_regex[-i]:略去协议和主机名的正则表达式
          proxy_auth:通过外部程序进行用户验证
          maxconn:IP最大连接数
          port:端口
          myip:本地IP
          srcdom_regex [-i]:匹配客户名
          dstdom_regex [-i]:匹配目标名
          myport:我的端口
          proto:协议,http,ftp..
          method:方法,  GET POST
          browser:匹配User-Agent header
          arp:匹配指定的MAC地址
          proxy_auth username:指定合法用户,REQUIRED表示所有合法用户
l http_access:代理访问控制
格式:http_access  allow|deny  [!] acl_name
l icp_access:icp访问控制
格式:icp_access  allow|deny  [!]acl_name
l cache_peer_access:其它缓存服务器访问控制
格式:cache_peer_access   cache_host  allow|deny [!]acl_name
(5)              管理员参数选项
l cache_mgr    mail地址:管理员电子邮件
l cache_effective_user  用户名:运行身份
l cache_effective_group  组名:运行组身份
(6)              CACHE注册服务选项
l announce_period  数字:发布缓存通告频率
l announce_host   主机名:通告的主机
l announce_file   文件名:通告的信息
l announce_port  端口号:通告的对方端口
(7)              HTTPD加速选项
l httpd_accel_host  主机名/vitual:加速某服务器访问
l httpd_accel_port  端口号:加速服务器的对方端口
l httpd_accel_single_host   on/off:多台服务器时设置off
l httpd_accel_with_proxy on/off:即作为加速器,又作为WEB缓存服务器,设置为on
l httpd_accel_uses_host_header   on/off:为on,能支持不同的http协议
(8)              杂项
l logfile_rotate 0-9:日志轮换版本数
l append_domain  域名:默认域名
l tcp_recv_bufsize   数字(KB):TCP缓存区大小
l err_html_text   字符串:包含在错误消息中的文本
l deny_info:禁用时显示消息
格式:deny_info    err_page_name       acl
l visible_hostname  主机名
错误消息中显示的服务器名称
l error_directory 路径:指定错误消息文件目录
2. 启动squid服务
#service squid  start
二.             配置案例
案例一: 普通的代理服务器
利用squid架设一台普通的代理服务器,代理LAN(192.168.7.0/24)接入internet,并对客户进行身份验证
1.       安装squid
#rpm  -ivh  squid-2.5.STABLE1-2.i386.rpm
2.       配置squid.conf文件
#vi /etc/squid/squid.conf
http_port  8000
cache_mem  128 MB
cache_dir ufs  /var/spool/squid 4096 16 256
cache_effective_user squid
cache_effective_group squid
dns_nameservers 202.102.192.68
cache_access_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
visible_hostname ww.abc.com
cache_mgr  admin@squid.com
auth_param basic program /usr/lib/squid/ncsa_auth  /etc/squid/passwd
auth_param basic children 5
auth_param basic credentialsttl 2 hours
auth_param basic realm linux.com’squid
acl  lan   src 192168.7.0/255.255.255.0
acl  users  proxy_auth REQUIRED
http_access  allow lan users
3.       建立squid用户
#htpasswd –c /etc/squid/passwd  px1
4.       启动服务
#service squid  start
案例二:透明代理服务器
利用Squid架设透明代理服务器.使LAN(192.168.7.0)可以接入internet
1.       安装squid
#rpm  -ivh  squid-2.5.STABLE1-2.i386.rpm
2.       配置squid.conf文件
#vi /etc/squid/squid.conf
http_port  8000
cache_mem  128 MB
cache_dir ufs  /var/spool/squid 4096 16 256
cache_effective_user squid
cache_effective_group squid
dns_nameservers 202.102.192.68
cache_access_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
visible_hostname ww.abc.com
cache_mgr  admin@squid.com
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy  on
httpd_accel_uses_host_header on
acl  lan   src 192168.7.0/255.255.255.0
http_access  allow lan
3.       启动服务
#service squid  start
案例三:反向代理服务器
1.       安装squid
#rpm  -ivh  squid-2.5.STABLE1-2.i386.rpm
2.       配置squid.conf文件
#vi /etc/squid/squid.conf
http_port  8000
cache_mem  128 MB
cache_dir ufs  /var/spool/squid 4096 16 256
cache_effective_user squid
cache_effective_group squid
dns_nameservers 202.102.192.68
cache_access_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
visible_hostname ww.abc.com
cache_mgr  admin@squid.com
http_port 80 # squid监听的端口
httpd_accel_host 172.16.250.250 #
内部WEB服务器的IP地址
httpd_accel_port 80 # WEB
服务器的IP地址
httpd_accel_single_host on #
转发为缓冲的请求到一台单独的机器
httpd_accel_with_proxy on #
httpd_accel_uses_host_header off
acl  lan   src 192168.7.0/255.255.255.0
http_access  allow lan
3.       启动服务
#service squid  start