电脑上的Ubuntu系统,经过长达1星期断断续续的升级终于从6.04-> 6.10->7.04->7.10一路升级到最新版。可恨的是,手头的7.04光盘居然无法安装7.04到电脑,一直说PngP秘钥错误,只 好从网上一路升级。遗憾的是,传说中的3D桌面始终无法弄出来,看了许多网上的教程,怎么设置都不行。
升级好ubuntu,开始琢磨如何像在windows下那样方便的穿墙。tor虽然在ubuntu下运行正常,但是tor的速度还是有些慢,不如先前车东介绍的利用Putty通过ssh端口转发实现FireFox和MSN加密代理访问的方法来的快速。而我也有SSH帐号,因此开始寻找ubuntu下实现SSH隧道访问的方法。
车 东推荐的putty的确是个非常棒的用于SSH隧道的软件,在ubuntu下也可以运行。但奇怪的是,putty运行正常,也可以登录SSH主机,远程执 行命令等操作,唯独用它无法像在windows下采用同样的设置架设SSH隧道,也没有任何错误信息返回,看来是软件的bug。
又找到ubuntu下的一款软件gstm - Gnome SSH Tunnel Manager,是专门作这种用途的软件。但遗憾的是,这款软件也同样存在bug,而且非常严重 ,一到设置本地端口的地方就导致ubuntu死机。
于是只好man ssh,查看SSH的帮助文档。 终于让我找到了方法。在终端窗口输入:
ssh -L 7070:localhost:* remotehost
输入账号密码,连接成功。在firefox下使用 foxyproxy插件,以前不能访问的网站终于能够打开了!
上 面的命令行中,-L指定本地端口与远程主机端口之间的隧道, 7070是本地端口,可以任意设置,只要不和其他已经使用的网络服务冲突就可以。localhost是本地主机,也就是你的电脑,不用更改,*号可以自动 寻找远程主机可用的端口。remotehost就是所要登录的远程SSH主机名称。
写道这里才发现,车东那篇文章下面的回复里已经有人给出了另外一种SSH命令行方式:
ssh -qTfnN -D 7070 remotehost
All the added options are for a ssh session that’s used for tunneling.
-q :- be very quite, we are acting only as a tunnel.
-T :- Do not allocate a pseudo tty, we are only acting a tunnel.
-f :- move the ssh process to background, as we don’t want to interact with this ssh session directly.
-N :- Do not execute remote command.
-n :- redirect standard input to /dev/null.
In addition on a slow line you can gain performance by enabling compression with the -C option.
唉,早知道就不用自己瞎琢磨半天了。
PS:我是一名ubuntu菜鸟,如果根据我上面介绍的方法,仍然无法实现SSH隧道,或者其他的相关问题,请不要问我,因为我也不懂。 :(