曾经写过SSH隧道的妙用,今天才意识到SSH隧道远不止用来“翻墙”这一个用处,很多常见的应用都可以通过SSH来实现。
比如,SVN的svn+ssh协议,CVS的ext连接模式,rsync的-e参数,这些都可以通过SSH隧道来实现在远程主机上的操作,它们不需要远程主机启动相应的服务或打开相应的端口,唯一的要求就是远程主机可以正常的ssh登录,它们就可以正常的工作。具体的操作不赘述了,很简单,自己man一下就好。
想到这个问题的原因如下:
目前我用的Blog系统是用GNU Emacs和Muse加上一点简单的ASP自己搭建的,所有的文章页面都是在本地生成好后上传上到服务器上,所以需要写Blog时,就一定得用我自己的电脑,进入Linux,打开Emacs才可能完成。如果电脑不在身边或当时正在运行Windows就无法进行Blog创作,这在很大程度上会影响写Blog的积极性,很多时候有想法,却因为环境不Ready就没有写下来,等热情过去了也就放弃了。解决这个问题的方法就是需要把Blog的创作环境放到一个随时可以访问到的地方。网上有很多公共的SSH环境(比如Unix-Center提供的环境),但如果把创作环境放到这些环境中时,数据与本地的同步就会是一个问题。想到用rsync/CVS/SVN等方式来管理,但通常SSH主机又不提供这些服务。这种情况下,直接通过SSH隧道来使用rsync/SVN/CVS就是一个完美的解决方案了。
本文就是通过SSH到我在Unix-Center主机上新搭建的Blog创作平台上撰写的,跟以前一样,还是写完后运行脚本直接上传到网页空间,只不过还要记得在写完后在必要的时候与本地做一次rsync的同步。下一步的目标是确保在手机上也可以发文章,这个可能要麻烦一点,因为手机上虽然能SSH,但SSH后的操作还是很不方便的,所以有必要专门开放一个接口可以直接通过Web的方式进行文章发布,功能不用很强,够用就好。
有些朋友会问,为何要这么麻烦?在Web空间里随便装一个WordPress之类的Blog系统不就可以随时随地随心方便的用了么?嗯……确实是这样,可是这世上有些人就是喜欢没事乱折腾。
嗯,你就折腾吧,折腾出来,大家收益,嘿嘿~
在junchenwu的blog里看到你参加UCD聚会的照片,刚想找你邀请下加入UCD呢
Re Jinyang:
UCDChina不用邀请啊,有活动时就可以去参加。如果要加入UCDChina在Google Groups上的邮件列表,可以跟Junchen联系。