Total Pageviews

Thursday, 20 September 2012

结合tor与WallProxy实现翻墙


一直以来都是在服务器上用tor配合autoproxy.pac给网内所有主机科学上网,虽然足够安全,但是速度很慢,尤其是在多人分享带宽的时候,即使已经配置了ExitNodes参数也称不上快速。直到发现了WallProxy并且配置成功,基于Google云计算GAE主机的访问速度令人印象深刻,但是又有了令人讨厌的ssl证书问题,虽然可以通过在浏览器中导入WallProxy自己的ca来解决,但这个其实是破坏了https安全连接的,而且不太适合在局域网内自动部署。
如果可以结合tor的安全性跟WallProxy的访问速度就堪称完美了,或许修改autoproxy.pac可以实现吧,但是autoproxy.pac是自动更新的,而且我的自动更新脚本只能插入简单的自定义规则。
还是用超级缓存squid吧,在autoproxy.pac里把PROXY设知道squid上,在squid中让http的访问走WallProxy代理,其他的走tor代理,当然tor先要用Privoxy转成HTTP代理才可以在squid中调用。
autoproxy.pac的自动更新、tor/privoxy/WallProxy的配置这里就不说了,squid部分的配置如下
acl localnet src 192.168.1.0/24
acl httptraffic proto HTTP
http_access allow localnet
http_access deny all
cache_peer localhost parent 8118 0 default name=https_proxy
cache_peer localhost parent 8086 0 name=http_proxy
cache_peer_access http_proxy allow httptraffic
cache_peer_access https_proxy allow !httptraffic
never_direct allow all