一、为什么写?


google以很有创意的推广方式推出gmail后,在国内很是热闹了一段时 间,但随即大家发现,gmail似乎不如传说中的那么好用,虽然号称容量上 G,但总是动不动就弹出个对话框:“Oops...unable to reach Gmail. Please check your internet connection and try again.”,什么操作都是不灵光的。“什么google,骗人罢了……”很多朋友可能会这样想。


其实,google又何尝不想快?只是,很多事情,想是没有用的。本文仅从技术角度说明一种可以有效访问gmail的方法,供拥有gmail帐号但却难以正常连接的朋友参考。


二、什么是Tor?


Tor的全称是“The Onion Router“号称是“An anonymous Internet communicaton system”,主页在:http://tor.eff.org

它 针对现阶段大量存在的流量过滤、嗅探分析等工具,在JAP之类软件基础上改进的,支持Socks5,并且支持动态代理链(通过Tor访问一个地址时,所经 过的节点在Tor节点群中随机挑选,动态变化,由于兼顾速度与安全性,节点数目通常为2-5个),因此难于追踪,有效地保证了安全性。另一方面,Tor 的分布式服务器可以自动获取,因此省却了搜寻代理服务器的精力。

下图是一个简单的Tor安全访问与危险访问的区别示意图(可以参见:http://tor.eff.org/overview.html,本来无需画图,只是为了测试 dia 这个linux下画拓扑、流程图的工具献把丑。)








三、如何安装与使用Tor


3.1 Debian上的安装与使用


3.1.1 安装Tor及相关工具

在/etc/apt/sources.list中增加如下两行:


deb http://mirror.noreply.org/pub/tor stable main

deb-src http://mirror.noreply.org/pub/tor stable main


然后运行:apt-get update && apt-get install tor tsocks


安装完毕后系统会创建Debian-tor的用户,并且以该用户的身份启动tor,开机自动起动,可以在/etc/rc2.d/下进行调整。


3.1.2 编辑相关配置文件

需要编辑的文件其实只有一份,即/etc/tsocks.conf,只需要三行即可:


server = 127.0.0.1
server_type = 5
server_port = 9050

要用Tor进行代理的程序,以tsocks启动,比如,希望用Tor代理所有web访问,则可以运行:


$ tsocks firefox


3.2 Windows上的安装与使用


在Windows上的使用要更为简单些,http://tor.eff.org/cvs/tor/doc/tor-doc-win32.html 有一个详细的图形介绍可以参考。


也可以将Tor+Privoxy+OpenSSL+SocksCap32(SocksCap32可以用FreeCap替代)联合使用,将OpenSSL的库解压到Tor安装目录,最终你的Tor目录应该有至少libeay32.dll、ssleay32.dll、tor.exe、tor_resolve.exe等几份文件。
运行Tor会开启一个dos窗口,提示运行情况,可以置于后台,必要时可以编辑C:/Documents and Settings/User Name/Application Data/tor下面的配置文件torrc(通常不必)。之后以运行Sockscap32,设置服务器地址为:Socks5:127.0.0.1:9050,将常用工具拉入Sockscap32运行即可。

3.3 测试

安装完毕后,打开浏览器,连接到这个检查proxy的地址:

http://proxyjudge.com/prxjdg.cgi,如果页面上找不到你现在自身的IP地址,说明已经能够通过tor代理上网了。

这时再试试连接http://www.gmail.com,就应该能够正常访问了。



四、写在最后


通过Tor不仅能够进行web浏览,实际上多数网络应用程序都能通过它进行透明socks代理,有兴趣的朋友可以自行参考http: //wiki.noreply.org/wiki/TheOnionRouter_2fTorifyHOWTO。

最后介绍几款参考工具,可以与Tor联合使用,通过一些有创意的组合,达到有效连接互联网络的目的,比如tk琢磨的多重加密等。


stunnel<http://www.stunnel.org>socat<http://www.dest-unreach.org/socat/>

privoxy<http://www.privoxy.org/>

snake<http://xfocus.net/tools/200209/361.html>