squid3反向代理配置
源码编译安装
当然你也可以到下面的官方网站下载最新的版本进行编译安装:
http://www.squid-cache.org/
其中STABLE稳定版、DEVEL版通常是提供给开发人员测试程序的,假定下载了最新 的稳定版squid-2.5.STABLE2.tar.gz,用以下命令解开压缩包:
tar xvfz squid-2.5.STABLE.tar.gz
用bz2方式压缩的包可能体积更小,相应的命令是:
tar xvfj squid-2.5.STABLE.tar.bz2
然后,进入相应目录对源代码进行配置和编译,命令如下:
cd squid-2.5.STABLE2
配置命令configure有很多选项,如果不清楚可先用“-help”查看。通常情况下,用到的选项有以下几个:
--prefix=/web/squid
指定Squid的安装位置,如果只指定这一选项,那么该目录下会有bin、sbin、man、conf等目录,而主要的配置文件此时在conf子目录中。为便于管理,最好用参数--sysconfdir=/etc
把这个文件位置配置为/etc。
允许解析的URL中出现下划线,因为默认情况下Squid会认为带下划线的URL是 非法的,并拒绝访问该地址。 整个配置编译过程如下:
./configure--sysconfdir=/etc
其中一些选项有特殊作用,将在下面介绍它们。 最后执行下面两条命令,将源代码编译为可执行文件,并拷贝到指定位置。
make
sudo make install
配置文件squid.conf
auth_param digest program /usr/local/squid/libexec/digest_file_auth -c /etc/squid3/digest_pwds
#auth_param basic program /usr/local/squid/libexec/basic_ncsa_auth /etc/squid3/ncsa_pwds
auth_param digest realm proxy
#auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
digest认证
sudo htdigest -c /etc/squid3/digest_pwds proxy root
root
basic_ncsa_auth 认证
sudo htpasswd -c /etc/squid3/ncsa_pwds guest
guest
squid命令
kill命令
/usr/local/squid/sbin/squid -k kill
加载配置文件命令
/usr/local/squid/sbin/squid -s
测试
curl -i --proxy-digest -U root --proxy http://192.168.17.129:3128 http://www.baidu.com
root
curl -i --basic -U guest --proxy http://192.168.17.129:3128 http://www.baidu.com
guest
参考
http://www.squid-cache.org/Doc/config/auth_param/
https://my.oschina.net/yygh/blog/383288
https://segmentfault.com/a/1190000004362731
http://zyan.cc/book/squid/chap12.html#a3
http://wiki.ubuntu.org.cn/Squid#.E6.BA.90.E7.A0.81.E7.BC.96.E8.AF.91.E5.AE.89.E8.A3.85