注意!由于squid是按allow-deny-allow-deny的规则运行的。所以要注意下面的参数在squid.conf文件中的位置。

1 安装

从源中安装

源中自带稳定版本,执行下面的命令进行安装
sudo apt-get install squid

2 配置

squid默认配制是不让任何客户端用户使用它的,你需要做相应的修改.
            shell#sudo vi /etc/squid/squid.conf (vi在unbuntu中也可换用gedit)
首先,添加两行:
http_port 10.13.88.66:808
visible_hostname
wduduanpo-G31M-ES2C
此处的wduduanpo-G31M-ES2C是计算机名字,然后,定位到
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
# Example rule allowing access from your local networks. Adapt
# to list your (internal) IP networks from where browsing should
# be allowed
#acl our_networks src 192.168.1.0/24 192.168.2.0/24
#http_access allow our_networks
http_access allow localhost
########add by wdp
acl my_network src 10.13.88.12 #设置你允许访问的ip(*请用具体的数字代替),#号前有一个空格
#此处我舍去这一部分设置,并把下面的http_access deny all 改为了http_access allow  all这样所有的局域网用户都利用该代理了
http_access allow my_network
#########end add
# And finally deny all other access to this proxy
http_access deny all
这样当你启用squid后,这几个ip就可使用这个代理了.如果你还希望客户端提供用户名密码才能使用的话,我们还需做点修改,继续定位到
#Then, set this line to something like
#
#       auth_param basic program /usr/lib/squid/ncsa_auth /usr/etc/passwd
######add by wdp
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
acl auth proxy_auth sdau
http_access allow auth
######end add
     以上修改后,你就可以启用squid(这里假设你设置好了用户名和密码,如果没有设置,参考如下)
得用apache的htpasswd工具为squid设置用户的密码:
        
shell#htpasswd -c /etc/squid/passwd proxy_user proxy_password (passwd路径你可以自己定制,但建议你参考官方建意,虽然我没有照做).

3 运行

如果是首次运行squid,你需要首先执行:
         
shell#squid -z    (必须这样做)
接下来检验我们的配制文件是否有问题
         
shell#squid -k parse
如果没有任何消息输出,恭喜,你可以使用squid了.
          
shell#squid          (后台启动)
          
shell#squid -k shutdown        (用这个命令关掉代理)
每次断网后需要手动先把squid退出再启动才能成功启动代理