用虚拟机匿名吧!(0) ——准备!共享代理!

2015/04/25
话说我的匿名系列也很久都没有更新了,一直停留在设置Tor+前置代理这一层面,事实上,想要真正实现高匿名,单纯在本机中设置四重代理并不够,还要借助虚拟机的力量。

我已经写过一篇介绍虚拟机的文章了:https://plus.google.com/109790703964908675921/posts/E7qQdJwTX8X
再贴一篇virtualbox使用教程(virtualbox是开源免费的,所以我推荐大家使用):http://tech.huweishen.com/gongju/1544.html

如果还有不明白的请尽情google,相关教程非常多,我就不再废话了。

在搞定了虚拟机和装上了想要运行的虚拟系统(guest os)之后,就可以开始设置虚拟机的网络连接了!

......啊,等等,还不行呢,要先共享本机(host os)的代理给guest os使用才行。host os和guest os的关系就相当于局域网中的不同主机的关系,换句话说今天介绍的把host os的翻墙软件共享给guest os使用的方法也能用于把翻墙软件共享给局域网中其他主机使用。

平时我们使用翻墙软件的时候,翻墙软件监听的地址都是127.0.0.1,也就是本机,这样是无法把翻墙软件共享给guest os的。只有让翻墙软件的监听地址绑定在0.0.0.0,才能把翻墙软件共享出去。

诸位请注意,不要想当然,这个0.0.0.0是任意的意思,就是说允许其他任何主机连接到这一翻墙代理上,并不是一个特定的地址,所以千万不要在代理设置里填写0.0.0.0啊!正确的做法是:本机上的代理设置依旧是127.0.0.1,而guest os的网络设置就因guest os的网卡模式而异了:  
 virtualbox的网络连接方式有图示这些,其中最常用的是NAT,host-only和桥接网络,其中NAT和桥接网络都可以直接让guest os连接到互联网,而host-only模式则需要经过一系列配置才能让guest os连接到互联网,但是虚拟机匿名方案里只能使用host-only模式,我会在系列下一篇进行介绍。注意到那个tails了吗?我会在系列的下下一篇介绍这个专门为了匿名而生的操作系统。

NAT模式下,guest os的代理设置为:host os的IP地址+翻墙软件端口号,千万不要填写127.0.0.1,否则无法翻墙的!

host os的IP地址就是诸位现在所使用的那个连接的IP地址,不过现在普遍采用DHCP协议自动获取IP地址了,那么应该如何查看host os的IP地址呢?

我以win7为例:win+r打开运行框,输入cmd,回车,然后输入ipconfig,回车:
嚯,一大堆呢,找到正在使用的本地连接,看到IPv4地址是192.168.1.100(这是个内网网址,不是公网网址,所以奴才们就不用想着靠这个查到我是谁了。对了,那个IPv6地址是系统默认的,也不要想着从这里下手了)。如果正在使用的是其他连接,那就找到对应的连接查看IPv4地址。

 找到了host os的IP地址之后,就可以填写代理设置了。

啊,最大的问题来了:该怎样让翻墙软件的监听地址在0.0.0.0上呢?

自由门:运行自由门之后,打开设置:
勾选“用自由门做服务器”(默认是没勾上的,我这是已经设置过了) ,自由门的监听地址就绑定在0.0.0.0上了。

无界:运行无界:
勾上“无界分享”,无界的监听地址也绑定在0.0.0.0了,同时监听端口变成了443

shadowsocks:启动shadowsocks,右键点击任务栏上的飞机图标:  
点击选择“允许来自局域网的连接”,这样shadowsocks的监听地址也绑定在0.0.0.0
了。

Tor:用记事本打开torrc文件(文件路径:Tor Browser/browser/TorBrowser/Data/Tor),在里面添加SocksListenAddress 0.0.0.0:9150:
这样Tor的监听端口也绑定在0.0.0.0上了。PS:这样做有一个副作用,就是每次启动Tor Browser之后起始页面都会显示“Tor未运行”,但是实际上Tor Browser是正常运行的,可以访问https://check.torproject.org/确认。

goagent:打开proxy.ini,找到[listen]字段:
ip = 127.0.0.1改为ip=0.0.0.0即可。

有人说:我不放心,想要确认一下监听地址真的绑定在了0.0.0.0,这该怎么做呢?

别急,还是打开运行框输入cmd之后回车,接下来输入以下命令:netstat -a,回车:


看到了吧?0.0.0.0:1080和0.0.0.0:9150,这就说明Tor(9150)和shadowsocks(1080)的监听地址已经绑定在0.0.0.0上了。

但是那些没有局域网共享设置功能的翻墙软件怎么办呢?不开启监听端口的VPN又怎么办呢?

对于VPN,有个办法:首先,在host os上正常运行VPN;然后,安装privoxy:http://www.privoxy.org/ ,安装完成之后运行provoxy,打开主要设置:
 
把listen-address由127.0.0.1改为0.0.0.0(我这是已经改过了,默认是127.0.0.1) ,然后保存退出,重启privoxy,guest os上代理设置为host os的IP地址+8118,就能通过host os的VPN翻墙了!

而其他非VPN又没有局域网共享功能的翻墙软件就麻烦了。编程随想介绍了两种方案:netsh命令和rinted ,但是我测试在win7下netsh命令无论如何都是无效的,即使是打开了系统的IP路由转发功能也是一样,还请诸位测试是否有效。

下一篇,host-only!


Related Posts