存档

文章标签 ‘ssh’

Dropbox扩容详尽指南

2010年11月2日 T 14 条评论

写在最前面的话:

本文的方法实质上是在欺骗Dropbox,思想低劣,手法庸俗,实在是付不起钱不得已而为之。如果你有一定的财力,请一定购买付费服务,毕竟一个优质的软件是需要资金维持才能生存下去的!


关于这个话题已经有人详尽地写过,具体在这里。但是我在折腾的过程中又碰到了很多不可预见的问题,所以还是写一下和大家分享。

首先Dropbox作为一个被GFW光荣认证的服务,其质量的优质性不容质疑,这也是我坚定不移使用它的原因。(题外话:ubuntu下的ubuntu one也是个不错的选择。)但被墙的服务使用起来终归有些麻烦,要为其扩容更要点折腾的精神,所以我觉得你至少要知道以下一些概念:翻墙、虚拟机、ubuntu。都明白不?明白就接着看下去,不明白就走酱油通道。

  1. 申请帐号
  2. 首先当你有了自己的Dropbox以后会有邀请码,别人用你的邀请码注册Dropbox,你们双方就是多250m的Dropbox空间。先利用你的邀请码,翻墙注册n个帐号。Dropbox是不检查帐号的真实性的,你完全可以瞎填,只要方便自己记忆即可。

  3. 安装虚拟机和镜像
  4. 用这些帐号直接安装Dropbox是不会给你扩容的,因为Dropbox会检查操作系统和网卡的MAC。正因为这样,所以我们要用到虚拟机virtualbox和ubuntu的iso镜像来欺骗Dropbox造成我们在多台机器上安装Dropbox的假象。

    首先下载virtualboxubuntu的iso镜像,在virtualbox里创建ubuntu虚拟机。(创建什么系统并不重要,只要你自己熟悉就好,我觉得ubuntu的live cd比较好,如此而已。你当然也可以用Windows PE,不过我没有试过,原理上讲是一样的。)

    From Drop Box

    注意,在storage标签页里加载ubuntu的iso镜像,确定之后点击”Start”就可以顺利进入ubuntu虚拟机

    From Drop Box

    选择”Try Ubuntu“即可,不必安装,我们只是走走过场。

    From Drop Box

  5. 连接ssh
  6. 进入到ubuntu之后第一步就是连接你的ssh,一般最方便的就是直接用Terminal(终端),可以在下图的位置找到或者直接按快捷键Ctrl+Alt+T

    From Drop Box

    然后输入:

    ssh -D 7070  -p port -l user yourserver.com

    这里的port为你远端主机的端口名,一般为22或443,有变动的话一般空间商会告知你,user为你自己的用户名,yourserver.com为你ssh服务器域名或IP

    我很不幸,自己的ssh每天准时在我折腾Dropbox扩容的时候down掉,只好用1984.org提供的ssh,偏偏他们不提供shell,说要在命令行中加 -N 参数,否则在Terminal(终端)下一连接上就断开。这个我到最后都没有搞定,只能放弃,改用图形化程序gSTM。这个程序可以在Ubuntu Software Center里找到。

    From Drop Box

    在搜索框里搜索”gstm”

    From Drop Box
    From Drop Box
    From Drop Box

    安装完成后在Application–Internet中打开”gSTM”,点击”Add”

    From Drop Box

    在下图相应位置处填入信息:Name 随意;Host为ssh服务器域名或IP;Login为你的用户名;Port为端口号,一般为22或443。然后再点击”Add”,类型选”Dynamic”,端口填7070,其他默认。

    From Drop Box

  7. 安装Dropbox
  8. 这里有两种方法:一种直接在虚拟机中下载;一种在宿主机中先下载完成,再共享到虚拟机。

    我觉得后一种方法更好,省去了每次在虚拟机中下载的麻烦。虚拟机中要配置,要下载,效率上肯定是比不过宿主机的。不过这里还是一并说明一下:

    一、直接在虚拟机中下载:依次打开Firefox–Edit–Preferences– Advanced–Network–Settings,出现如下图所示:选择Manual proxy configurations,Socks Host填127.0.0.1 Port填7070,确认关闭即可。现在Firefox就全局用ssh代理了,直接去Dropbox的网站下载相应安装程序即可。当然,有人可能知道autoproxy插件,用来甄别是否需要ssh代理,毕竟很多网站并没有被墙,走ssh反而慢。不过在这里本来就不需要开多少网站,安装autoproxy插件,我认为反而麻烦了,走走全局代理即可。

    From Drop Box

    二、在宿主机中先下载完成,再共享到虚拟机:现在宿主机中下载好相应的安装程序,放入一个文件夹然后共享出来,接着在ubuntu虚拟机中依次点击Places–Connect to server,出现如下图所示。Service type根据自己的情况选择,一般大家的宿主机都是Windows吧,那么就选”Windows share”;Server填自己宿主机的IP。然后点”Connect”连接到宿主机,选择相应共享目录下的安装文件拷贝到虚拟机来安装。

    From Drop Box

    但Dropbox的安装很奇怪,也许是因为被墙的原因,大家应该都会碰到,就是安装完成后无法启动Dropbox的问题,我在以前的博里也有讲到。虽然不会很明白问题是如何产生的,也不知道解决问题的原理,但大家只要照做就行了。

    下载Dropbox daemon:32bit 这里;64bit 这里
    解压文件,解压出来的是隐藏文件,所以你可能看不到。
    进入Terminal(终端),切换到你解压文件所在的位置。然后键入:
    .dropbox-dist/dropboxd

  9. 调校Dropbox
  10. Terminal(终端)中键入命令后应该会出现如下界面,这时候还是连不上Dropbox,那是肯定的,永远别忘了Dropbox被墙了。这时候要选择”Connection Options”进行代理设置。

    From Drop Box

    如果没有的话,也可以右键Dropbox图标,点击”Preference”

    From Drop Box

    然后按图中所示填入信息:选择Manually proxy settings,Proxy Type选SOCKS5,Server填127.0.0.1,Port填7070。确认后关闭即可。

    From Drop Box

    然后跳出Setup界面,选择”I already have Dropbox account”。

    From Drop Box

    现在就要用到你文章一开始注册的那些Dropbox帐号了,将其中一个填入下图相应位置。

    From Drop Box

    最后一路Forward完成即可。

    O.K.! Done! Your Dropbox’s Capacity Has Been Enlarged!

  11. 重新再跑一遍虚拟机。
  12. 关键是不要忘了去改虚拟机的MAC地址,不然是无效的!virtualbox里提供修改的位置如下图所示:

    From Drop Box

补充说明1 : 在使用Dropbox的时候记得去改系统的hosts文件(不同的操作系统,这个文件的位置也各不相同,ubuntu下好像需要sudo一下才能修改。),增加这么一段:

174.36.30.67 dropbox.com
174.36.30.71 www.dropbox.com
75.101.129.115 dl.dropbox.com

然后Dropbox的设置改成No proxy server。现在就可以无代理正常使用Dropbox软件的同步功能,网页的话好像还是缺样式表,看上去很糟糕。不过无所谓,大家都很少登陆网页版的吧?如果这个方法失效了那就只能走ssh代理了,比较凄惨,所以尽量在Dropbox里以放小文件为主,电影什么的也走ssh代理就有些痛苦了。

补充说明2 : 如果你有edu邮箱,那么去Dropbox认证一下,你的邀请码每邀请一人可以增加500m空间。这个也很给力,让我们扩容更省力。大家可以试一试下面这个,我测试过,有效:

@ mspil.edu.cn 教育部-微软(中国) 。另外Dropbox的edu邮箱认证地址:这里

总结:

文章有些长,图有些乱,如果你已经头昏眼花了,我这里先简单地给你理理思路。

先用你Dropbox的邀请码申请账号,然后在虚拟机中用这些账号去安装Dropbox,然后利用虚拟机不停变换操作系统特征和网卡的MAC使Dropbox始终认为你在不同的电脑上用不同的账号在安装Dropbox,从而达到扩容的目的。

其中的难点在于:

  1. Dropbox自身被墙,要在虚拟机中翻墙连接Dropbox服务器。
  2. Dropbox在ubuntu下的古怪安装程序,需要辅助措施才能安装完成。

p.s : 如果有朋友确实有困难,又想扩容,我这里可以视情况提供帮助(人太多我就不能为力了),当然一定记得留下你们的邀请码

A Problem of Picasa

2010年10月7日 T 没有评论
From Drop Box

Picasa经常会出现上图所示的问题:This account is not enabled for Web Albums. 不登录就没法在本地上传照片了,很麻烦。但其实网页上登录一切都是正常的,上网搜索了一下相关问题,却惊奇地发现没有什么有效的解决办法,无论中文论坛还是英文论坛都只是描述了一下现象,有些人莫名其妙地弄好了,但他们的经验都没有通用性。我只能理解为Picasa的一个bug,好在这个bug还是有解决办法的。主要就是通过代理来登录。

前提:需要SSH

步骤:

  1. 正常连接SSH
  2. 打开Picasa,依次进入 Tools–Options–Network
  3. 在Proxy Name里输入 127.0.0.1:7070(端口号要视乎你的配置,一般都是用7070的端口)
  4. 现在登录即可。登录成功后可以切断SSH的连接了,因为按我的理解,用SSH上传还要走代理,速度肯定会慢一些。我实际测试下来只要登录成功,切断SSH后上传照片还是正常的。

最后,如果谁知道完美的解决方法,请告知,谢谢。

分类: computer 标签: ,

Call phones from Gmail

2010年8月27日 T 2 条评论

相信大家都知道Google的重量级应用Gmail Call登场了,如果你不熟悉请参见官方Blog(需翻墙)或者自行google。但是可能很多人都在苦苦等待Google将这个应用部署到自己的Gmail里,那么有米国ip地址SSH或者VPN的童鞋们有福了,只要你用米国的ip登录Gmail即可看到如下激动人心的画面了(至少我是成功的,人品?):

From Drop Box

双击点开即是如下画面,好像Google还慷慨地送了$0.1…试了一下拨打自己的手机真的能通,爽!

From Drop Box

点击右上小图标即可进入充值通道(红圈所示位置),需要用到Google Checkout的服务(Google的一项付费服务,很好用),我毫不犹豫地充了$10进去。

From Drop Box

关于资费,打美国和加拿大至少在今年内是免费的,打中国电话是$0.02每分钟。

好便宜啊~ 不过还没实际测试过,因为手头暂时只有耳机没有耳麦。有米国或者外地的童鞋想和我打电话不?^_^

分类: google 标签: , , , ,

崂山道士之术

2010年7月7日 T 2 条评论

穿墙之术众多,我只谈自己熟悉的。举一反三、勤学善问才是王道:

一、使用在线代理,赛风:http://ifuwocheng.info。这个代理太过出名,众所周知,所以很容易遭到封杀。我发这篇文章的时候应该还能用,过段时间就难说了。

二、使用SSH:首先你要有个SSH的帐号,有心的人总能找到资源,或者舍得出钱。如果觉得麻烦,看到这里就可以跳过了。拿到SSH帐号后,也要分好多情况:主要是你所使用的浏览器和操作系统,如果你用*unix,那么我默认你为高手,也就不再赘述。这里主要谈Windows,首先推荐使用tunnelier,别问为什么,大家都说好,你用熟以后自然可以自主地进行再选择。下载地址:这里。界面如下:

Host:添你申请空间的域名或ip
Port:一般是22,特殊情况空间提供商应该会告知你
Username:你懂的
Initial method:选Password,后下方会出来空格给你填密码。
然后点Login,正常情况就能连上SSH了。
接下来讨论浏览器:
1、Chrome:

用Proxy Switchy。安装地址:这里。设置界面如下:

New Profile–Profile Name随便填--SOCKS Host: 127.0.0.1 Port: 7070–选择SOCKS v5–再选择Switch Rules标签
勾选 Enable Switch Rules 然后勾选 Online Rule List,在Online Rule List 下面填写 http://autoproxy-gfwlist.googlecode.com/svn/trunk/gfwlist.txt 后面下拉列表框选择你前面命名的Profile Name,勾选 AutoProxy Compatible List,然后Save,大功告成。
2、Firefox:

用AutoProxy,安装地址:这里

添加一项,名字随意,proxy host: 127.0.0.1  port:7070,选择socks5

选择刚才命名的代理名字

选择gfwLists。OK,完成。

3、IE

Internet选项–局域网设置–勾选“为LAN使用代理服务器”–地址:127.0.0.1 端口:7070–OK,完成

看上去好像IE简单点,其实是因为它只能选择全局代理,无论看什么网页(即使没有被墙),都走SSH通道,效率上是大打折扣的。而且SSH主机一般在国外,借道国外的话很多优酷、土豆的视频因为版权问题都不会给你看的哟,兲朝真是太狡猾了。。。而Chrome和Firefox在使用了上述插件后可以自动选择是否走SSH通道,并可以由用户自定义,这当然要好的多。而且如果你希望全局代理,在Chrome和Firefox中也完全做得到。因为实际意义不大,这里就不介绍了。

ubuntu下实现ssh自动重连

2009年12月19日 T 14 条评论

作个笔记,免得自己以后忘了。相关内容网上比比皆是,原始出处,已经找不到了。如果你不知道自己为什么需要看着篇文章,那你就不需要看下去了。好,我们开工。

ubuntu下使用ssh的方法很多:

  1. openssh。一般linux系统都默认安装,直接在终端(terminal)下使用即可,可以参阅我以前写的一些东西,这里
  2. PuTTY。图形化界面,无须命令行,更便于新手使用。

但两者都有一个明显的缺点:无法实现ssh断线后的自动重连。openssh是终端命令行模式,断了只能重打命令;PutTTY则自己明确说明了一点:为了安全问题不保存密码,每次都要用户自己输入。初衷是很好,但从实际应用的角度,ssh掉线的频率比较高,每次都要重输是很累的。所以更好的解决办法是:expect

首先要获取该程序,终端(terminal)下输入:

sudo apt-get install expect

完成后随便新建一个文本,这里暂定名称是:sshgfw。可以直接在终端(terminal)下输入:

sudo gedit sshgfw

在文本中粘粘如下内容:

#!/usr/bin/expect
set timeout 60

spawn /usr/bin/ssh -D 7070 -p port -l user yourserver.com
# 这里的port为你远端主机的端口名,一般为22,有变动的话一般空间商会告知你,user为你自己的用户名,yourserver.com为你自己的服务器域名或ip
expect {
"password:" {
send "password\r"
#这里的第二个password改为你自己的密码
}
}
interact {
timeout 60 { send " "}
}

再加上可执行权限,我们仍然在终端(terminal)下执行:

chmod a+x sshgfw

如果你严格的按照我所说的做下来,那么现在在直接终端(terminal)下输入:

./sshgfw


脚本就应该自动运行起来了。现在这个脚本应该是在你的帐户下,多帐户操作的话也可以把这个文件复制到 /usr/local/bin 或 /usr/bin 等目录下,以方便本机所有用户都可以快捷的使用。


以上内容参考了互联网上的相关资料,但也经过自己的实际操作,略作改动。如还有问题请提出(不保证能解决。。。)。

好了,准备收工。以twitter上看到的一句话作结尾,也不是什么惊世骇俗的名人名言,但很中肯,希望大家引以为鉴,是@yurii_yu说的:

“最好不要在自己blog上转贴技术文章,尤其是没经过验证的,最近几次查资料(尤其中文的问题)都搞到头大:原文有错误,转贴的人根本不尝试就转贴了,搜索结果前若干页都是同一篇文章,无一可行,这就是@tinyfool说的信息退化”

分类: computer, linux, study_note 标签: , , ,

一个twitter无法访问的问题

2009年11月27日 T 4 条评论

我的情况:用ssh + autoproxy, 无法访问https://twitter.com

发现的原因。。。很傻很傻。查了一下autoproxy的规则,其中有两条:

  1. .twitter.com
  2. ||twitter.com

注意第二个规则,我通常访问时是用 https://twitter.com, 在autoproxy的规则里,这个网址不使用代理访问。。。用http://www.twitter.com才算符合规则,autoproxy的这个规则定的傻了点吧。。。要不就是我梦游的时候自己改过??

分类: computer, study_note 标签: , ,

Ubuntu下使用SSH

2009年11月10日 T 1 条评论

为了众所周知的目的,我们无论在什么操作系统下都会用到SSH。今天就讲一下Ubuntu下SSH的使用。

其实这是个被人都讲烂的问题了,但我这个人碰上啥事都会倒霉,大众化的常规方法在我这里总是失败。首先,几乎所有linux(听说的,我只用过ubuntu)都默认安装了openssh-client,所以打开terminal(终端),键入:

ssh -D 7070 -l username@servername

具体的用法,可以man ssh一下。我尝试过,内容太全了,以致我完全没有看完的兴趣。。。这里简单讲讲

-D 7070
本地一个未使用的端口

-l username
你ssh的用户名

@
别人的文章里就是这么写的,但我这么键入这个符号完全是无效的,没弄懂

servername
ssh服务器名或ip地址

所以,实际我尝试下来的应该是这么写才对

ssh -D 7070 -l 张三 xxx.xxx.xxx.xx

这就是大众化的方法,接下来正常情况会让你输密码,加密连接就建立了。很显然,不适合我。。我也很郁闷啊。仔细研究一个,发现是因为SSH默认的远端服务器端口号为22,我的恰恰不是。。于是只好去读ssh命令的帮助文件找答案。实际上我也没读得太懂,只是捡几个比较像的参数试了试,最后确定-p是远端服务器端口号参数。举例来说,如果你的SSH远端服务器端口号是874,用户名是张三,SSH服务器地址是xxx.xxx.xxx.xx,那么命令就应该这么打:

ssh -D 7070 -p 874 -l 张三 xxx.xxx.xxx.xx

然后就是浏览器的设置,只谈firefox。选项→高级→网络→设置→手动配置代理→SOCKS 主机 : 127.0.0.1 端口 : 7070

现在就是全局在ssh工作了,当然很多时候没有全局ssh的必要,有很多其他方法甄别是否需要使用ssh,但并非本文的重点,这里就略过了。

祝大家翻墙学习愉快。

-l-l
分类: computer, linux, study_note 标签: , , ,