获得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) 、F(Friday) 、A (Saturday)、 S (Sunday) 、
时刻 : 08:00-12:00
例 :禁止 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
转载于:https://blog.51cto.com/freeliu/104832