1328
需用时 02:39
Geek生存法则:给网页浏览加个密
/gkimage/bp/gi/rz/bpgirz.png

当你身处一个开放的无线热点之中,别忙着打开网页,你可曾想过,你的一切网页浏览数据都将以纯文本来发送。就像当你用办公电脑访问无安全保障的网站时,随便一个IT团队都可以轻易地截获你的数据。这种被人监控的感觉是不是让你毛骨悚然?莫慌,下面就来教你解决这个普遍的隐私问题。

遇到这些情况,只要使用简单的几个SSH命令,你就可以加密所有的网页浏览记录,并通过一个可信的电脑来重定向发送路径。所以下次当你在不安全的网络中联网时,可以借助SSH来保护你的私人资料。具体我们可以通过建立本地代理服务器来加密各种电脑系统中的联网活动,下面就是使用的方法。

PS:千万别被SSH、代理服务器这样的字眼给吓到了,这个可是一项现在很火的先进技术,我们马上开始吧!

你所需要的东西

1)使用一个SSH服务器来作为代理

“SSH服务器”听起来很骇人,实际上它不过是一个允许你用SSH登录的电脑端而已。绝大部分的主机都允许使用SSH接入它的服务器,或者你甚至可以用一些免费软件,自己搭建一个家庭服务器代理。

2)在本地电脑上需要一个SSH客户端

在Mac和Unix/Linux系统中可以直接使用命令行来使用SSH。而在Windows里头只要使用Cygwin中的OpenSSH即可。

服务器和客户端的搭建方法详见: Geek生存法则:建立家庭SSH服务器

代理是如何工作的?

简单地说,代理就是在你和互联网之间的一个中间人。你的网页请求会先发送到代理服务器,然后再由代理将请求发送到互联网,最后抓取回网页发回到你的电脑。同时网站会以为发送请求的是代理服务器,而不是你的电脑,这样就很好地隐藏了你的原始IP地址。

此外,在本地电脑和代理之间的通讯使用了SSH加密协议,这样就能保证就算是在咖啡厅上网,你的数据也不会被嗅探到。

下面这幅图更清晰地解释了代理的工作方式。

/gkimage/8f/ih/yp/8fihyp.png

下面就开始进入正题吧。

开通你的SSH隧道

在你连上SSH代理服务器之后,你需要在本机和代理之间建立一条基于SSH协议的“隧道”,用于数据传输。命令如下:

ssh -ND 9999 you@example.com

当然,你要把you替换成你的用户名,把example.com替换成你的服务器域名或IP地址。这行命令的作用是让SSH客户端在本机9999端口(也可自定义)建立一个“动态”端口转发通道,该通道是动态的,因为目的网站会时常变化。其他端口转发通道有静态规则,但对于web浏览只需要动态模式。

执行这条命令后,你会被要求输入密码,之后就没有动静了。因为命令中的“N”告诉了SSH客户端你不想要交互式会话,只是想设置一个通道而已。这样你就成功打开了一个端口,它会一直挂在那儿等待着,而这就是我们的目的。

设置火狐的SOCKS代理

一旦你的代理运行起来了,那就需要设置下火狐来使用代理了。在火狐的“工具”菜单中,选择“选项”-“高级”-“网络”选项卡,点击“配置Firefox如何连接至因特网”后的“设置”按钮,接着输入SOCKS(防火墙安全会话转换协议)信息,具体设置如下图所示,将localhost换成服务器地址,后面的端口号就用之前设置的9999。

/gkimage/m7/yt/qg/m7ytqg.png

保存设置后,你可以怀着激动的心情打开一个网页试试。什么?和平时没什么区别?的确,网页的加载表面上和往常一样,实际上其中使用了与代理服务器之间的加密通道。

关于安全代理的一些小提示

1)为了快速启动代理,你可以写一个批处理脚本来启动SSH连接,这样只要一个点击就可以搞定一切。

2)如果你只想在进入某个网站时使用代理,那可以使用火狐插件 Foxy Proxy ,它可以让你在各自的网页中切换使用代理和直连。

3)相反地,你也可以使用一个单独的 火狐配置文件 来让所有的网页请求都使用代理发送。

4)如果你想让代理服务器做DNS解析的话,可以在火狐地址栏输入about:config回车,将network.proxy.socks_remote_dns设置成true。

5)如果SSH连接降低了你的网速,那你可以在命令中加入-C选项,这样就会让SSH压缩发送数据(使用gzip)。

这项技术已经很普遍了,建立代理的方法其实还有很多。使用SSH加密的网页会话,可以保证你的隐私不再泄露,从此你的机子再也不会在网上“裸奔”啦!


来源: lifehacker

The End

发布于2011-03-24, 本文版权属于果壳网(guokr.com),禁止转载。如有需要,请联系果壳

举报这篇文章

小杨

软件工程师

pic