很多人问我ssh -D的“新鲜空气”如何分享给别的计算机?又或者如何讲Mac Host Machine的ssh -D代理分享给VMware或者PD里面的虚拟机?
其实稍稍想一下就能想到办法了。以我的例子说一下,望能抛砖引玉。
我的ssh -D在Mac上建立,我想在VM里用IE看“外贸网站”。
首先我们明确一点,IE是不支持通过Socks代理打开网页的,所以我们需要把Socks代理转化为IE能够识别的HTTP代理。工具上理论上用Privoxy或者SocksCap都可以的。但是Privoxy支持配置文件,能够智能选择那些通过Privoxy,那些不通过Privoxy,所以我选择了它。
这里主要考虑到ssh -D主机大多都是算流量的,所以能不通过ssh -D的站点还是直接连接比较划算,Privoxy就提供这个可能性。
看图(我不解释了,有心人一下子就看明白了):
当然,如果你需要看的“外贸网站”比较多,你可以用pac文件做一下智能筛选。pac文件如何写?在终端执行:
curl https://dl.getdropbox.com/u/873345/download/gfwlist.pac
你就能得到一个很好的范例(基本上是Javascript的语法),这个pac文件也能附加到IE的代理设置里面:
祝大家好运!