come from: http://devtang.com/blog/2012/12/08/use-privoxy/
GoAgent
GoAgent是一个基于Google App Engine的FQ工具。关于GoAgent的安装教程,网络上已经有很多了,大家可以随便搜索一下就可以找到,当然,记得用google搜索。
SwitchySharp
拿GoAgent直接作代理服务器地址不太合适,因为如果全部走代理的话,国内的访问太慢了,所以我们需要给Chrome浏览器配置SwitchySharp插件,SwitchySharp插件加上自动更新的“墙”List(地址见下图),我们就可以在浏览器中享受无墙的世界了。
Privoxy
因为虽然SwitchySharp搞定了访问网页时的代理智能切换,但是我们在使用诸如Dropbox, twitter客户端等软件时,还是无法智能切换到代理。而使用Privoxy就能解决这个问题。
Privoxy是一个智能代理切换软件,它的使用必须基于GoAgent或其它已部署好的代理服务。下面介绍如何安装和配置privoxy。
安装
使用brew就可以一键安装:
1 |
|
自动启动
设置好自动启动后,我们就不用管它了。方法如下:
切换到/Library/LaunchAgents目录,用sudo vim新建一个名为local.privoxy.plist的文件,文件内容如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
|
编辑完成后,执行如下命令,就可以把privoxy设置成开机自动启动了:
1 |
|
可以用如下2条命令验证privoxy已经启动了。一是用ps查看是否有privoxy进程,二是查看privoxy默认监听的8118端口是否已经打开。如下所示:
1 2 3 4 5 |
|
配置
我们需要配置Provixy才能使用它。配置步骤如下:
一. 用vim打开privoxy的配置文件:vim /usr/local/etc/privoxy/config 在最后增加如下内容:
1 |
|
二. 在/usr/local/etc/privoxy/目录下新建一个名为 wall.action的文件,然后在上面添加如下内容:
1 2 3 4 5 6 7 8 9 |
|
该内容第一行表示接下来的内容会智能走端口为8087的代理,后面每行一个地址。你可以随时将你想增加的内容添加进去。该配置文件的官方详细说明文档在这里。
三. 打开mac的代理设置,将“Web代理”和”安全Web代理”都设置成127.0.0.1,端口为8118。如下图所示:
Tips
- 如果你的GoAgent监听在8087端口,而Privoxy监听在8118端口,那么到这一步,你就可以让你的所有应用正常FQ了。 需要注意的是SwitchySharp默认会忽略系统代理直接连接网络,你可能需要选择它的“使用系统代理设置”这一项,如下所示:
- 用浏览器访问 config.privoxy.org,即可用Web界面管理自己的provixy配置文件。不过,事先需要在config文件中启用Web管理功能,方 法是编辑/usr/local/etc/privoxy/config 文件,将enable-edit-actions的值设置为1即可。
- 访问 http://config.privoxy.org/show-url-info 可以查询某一个特定的URL是否会走代理服务。我们可以随时在这儿查询,结合上面的第2步,将一些URL Pattern加入到代理列表文件 wall.action 中, 我们就可以方便地管理Privoxy。
- 证书是个麻烦事儿,由于GoAgent的证书是自己生成的而不是权威机构颁发的,所以需要把GoAgent的证书加到钥匙串访问的可信证书里面,如下图所示。另外GoAgent的默认带的证书因为是公开的,所以有潜在被中间人攻击的危险,所以更安全的做法是把默认的证书删掉再重启GoAgent,这样GoAgent就会重新另外生成一个证书了,再把这个新证书加到钥匙串访问中,会更安全一些。