安装很简单 apt-get squid.
#安装squid
$sudo apt-get install squid squid-common
#备份一下/etc/squid/squid.conf
$cd /etc/squid
$ls -al
$sudo mv /etc/squid/squid.conf /etc/squid/squid.conf.old
#建立一个新的配置文件
$sudo touch squid.conf
重点是配置/etc/squid/squid.conf,我的范本
#########################
http_port 202.115.22.209:8080
cache_mgr peterpan.mail@gmail.com
cache_dir ufs /home/ufooo/squid 32 16 256
#定义squid缓存地址,尽量找空间大的地方。后三个参数不知道什么意思……照着别人依葫芦画瓢。
cache_mem 8MB
#定义使用内存
cache_swap_low 30
cache_swap_high 40
#定义使用硬盘空间百分比
visiable_hostname Peter Proxy
#定义名字
client_mask 255.255.255.255
#网上说是让squid把每个IP单独对待,不知道什么意思。而且加上这行启动squid会有个警报提示,但是不影响使用。
acl safe_ports port 80 21 443 563 70 210 1025-65535
acl all src 0.0.0.0/0
#定义访问规则组。其中all组必须定义,0.0.0.0/0表示全部ip。
http_access allow safe_ports
http_access allow all
#允许还是拒绝?这是个问题……
#############################
基本这个conf文件就能满足基本的使用。当然,为了避免被滥用,一般使用密码认证。
步骤:
#安装htpasswd用于产生用户名和密码,htpasswd包含在apache2-utils里
$sudo apt-get install apache2-utils
#在squid使用密码和用户名,需要squid的源码来安装NCSA
#下载squid的源码,再安装NCSA
$cd #到自己的目录中去
#下载squid的源码
$apt-get source squid
#下载后到有squid源码目录
$cd squid-2.7.STABLE3/
#编译NCSA组件
$ ./configure –prefix=/usr/local/squid –enable-auth=”basic” –enable-basic-auth-helpers=”NCSA”
$cd /home/ufooo/squid-2.7.STABLE3
$make
#将ncsa_auth拷贝至可执行目录/usr/sbin
$cd /home/funpower/squid-2.6.STABLE16
$cd helpers/basic_auth/NCSA/
$cp ncsa_auth /usr/sbin
#利用htpasswd创建密码文件
$htpasswd -c /etc/squid/ password www
#输入两次密码即可。
#配置squid.conf,添加如下行
auth_param basic program /usr/sbin/ncsa_auth /usr/local/squid/etc/password
#该选项指出了认证方式(basic)、需要的程序(ncsa_auth)和对应的密码文件(password)
auth_param basic children 5
auth_param basic realm Please enter the user name and password
#指定认证程序的进程数
浏览器显示输入用户/密码对话框时的领域内容
#普通用户需要通过认证才能访问Internet
acl normal proxy_auth REQUIRED
http_access allow normal
并改写http_access allow all为http_access deny all
至此基本一个利用密码验证的squid就完成了。