Shuhai Shen

You may find more about me @ http://leonax.net/about/

 

AWS是Amazon旗下的云计算服务,全称是Amazon Web Services。可能Amazon在建立AWS之初,还没有“云计算”(Cloud Computing)这个词,于是它的名字和云一点关系也没有。

我现在使用了他家的EC2(Elastic Compute Cloud)作为主机、CloudFront作为CDN、Route 53作为DNS。EC2使用的是最便宜的Micro Instance,在免费期内Micro Instance一个月赠送750小时的免费额度,即完全免费。免费期有一年,一年过后,费用是$0.027每小时,即一个月$20.25。主机位于东京的数据中心,EC2在亚洲有2个数据中心,另一个在新加坡,据测试表明东京的连接速度要优于新加坡。

由于Micro Instance的限制(内存过小,CPU不给力),我最初没有办法把我的blog放在上面,被迫选择高一级的Small Instance,然后12月份就被Amazon狠狠地宰了$32.29。后来经过不懈地努力,尝试了很多种配置,终于把blog塞进了Micro Instance中,于是1月份的费用是降到了$2.01。我甚至还在EC2上搭了一个VPN服务,并且没有增加额外的费用。对此我相当满意。以下是费用清单:

  • CloudFront:1.759GB流量 + 83,828个请求 = $0.42
  • EC2:744小时Micro Instance + 8G硬盘 + 1,674,979次磁盘读写 = $0.00 (免费额度)
  • Route 53:174,931次请求 + 3个域名 = $1.59

这样一年的费用大概是150RMB,主要用于blog和VPN,还可以让我在闲得没事干的时候学点东西,比如node.js。相当得超值了……

至于如何优化WordPress使它能在Micro Instance上运行,之后再详述……

 

本来我以为这是一个越狱之后才有的功能,因为我第一次看到这个选项,是在当年越了狱之后。没想到不用越狱也能显示电量百分比。数字的显示,比如默认的线性进度条就清晰多了。

具体的方法是:设置(Settings)->通用(General)->用量(Usage),然后往下滑一点,就可以看到 显示电量百分比(Battery Percentage) 的选项了。打开这个选项,屏幕的右上角就会出现一个百分数,表示当前的剩余电量。

 

由于套餐所提供的流量有限,而WiFi几乎是免费的,我不得不研究了一下iPhone倒底是怎么样选择网络的。什么时候会使用WiFi,什么时候会使用3G。

目前还没找到官方的说明,不过大概的规则是这样的:

  1. 当只有3G连接,或只有WiFi的时候,iPhone(显然)会选择可用的那个。
  2. 当两者都可用的时候,iPhone会选择速度快的那个。通常来说WiFi的速度(至少54Mb,802.11n)要比3G(最多14Mb下行/5.76Mb上行,HSPA)快,所以iPhone会选择WiFi。
  3. 当iPhone进入睡眠状态(即黑屏)时,会将WiFi连接断开,因为相对来说WiFi比较耗电,这时候iPhone就只会连接3G了。

于是,通常情况下,iPhone都会帮我省钱,除非我不小心开了定时同步邮件,或者后台音乐播放之类黑屏之后仍然在下载的应用。

放心了……

 

以下是我常用的一些Windows软件,并不是做广告,只是为了消除一些常见的误解,和推广一些真正好用的软件。

已删除的软件:

  • 金山词霸,被网络服务Dict.cn取代
  • ACDSee,被FastStone取代
  • FireFox,被Chrome取代
  • FlashGet,被迅雷取代
  • GTalk、Skype,没什么好友一起用

更新历史:

2012-01-29:更新软件列表,增加下载链接

2007-08-19:最初版本

 

前几天,IE(Internet Explorer)的团队特地制作了蛋糕,来庆祝IE6在美国的市场占有率不足1%;与此同时,在中国仍然有高达四分之一的用户在使用着IE6。

以上数据来自IE6CountDown.com

Windows XP是一款相当成功的操作系统,IE 6也就随之一起流行了起来,尽管用现在眼光来看,IE 6有着这样那样的毛病,但是在当时,IE 6几乎就是网页设计的标准。随着科技的发展,IE 6也有退休的一天,Windows 7带来了IE 8,Windows 8即将带来IE 10。每一个新版本都有大量的新功能,新特性,而相应的网页设计也随之发生了改变。但是似乎人们的习惯并没有发生改变……

这其中可能有那么几个原因:

  1. 习惯于IE 6的界面,不愿意花时间来熟悉新的界面。这种习惯很好理解,当你熟悉一样事物时候,就不太愿意尝试其它同类的事物,比如买衣服总盯着一个牌子;喝惯了星巴克的咖啡,就觉得其它店的咖啡不好喝。这些习惯对日常生活的影响并不大,衣服在几百年前就是这个样子,几百年后也不会变得太离谱。咖啡也是。但是电子产品就不是这样了,二十年前,还没有浏览器这个东西;十年前,在线看视频还属于天方夜谭;接下去的几年里,浏览器的功能和重要性将发生天翻地覆的变化。如果你不紧跟着潮流,很快这个世界就会把你甩开了。柯达和它的胶片相机就是一个很好的例子
  2. 由于使用了盗版的Windows,没办法升级。暂且不说盗版的危害性,盗版的存在固然有它的道理。但是这并不能阻止你使用先进的软件。同样买一张盗版盘,为什么不买Windows 7的呢,反正价格都一样……
  3. 我并不清楚自己在使用哪个版本的IE。如果你正在使用Windows XP,并且没有主动升级过IE的版本,那么你很有可能正在使用IE 6;但是如果你已经升级到了Windows 7,那么恭喜你,你不用担心你的IE了。

如果你已经动心,想安装新版本的IE:

  • 如果你正在使用Windows XP,请点这里来下载并安装IE 8。因为IE 8是最后一个支持XP的版本了,后续IE版本都要求Vista及以后的Windows;
  • 如果你正在使用Windows 7,请点这里安装IE 9。IE 9是目前最新的一个正式发布版的IE。
  • 如果你的朋友也在使用IE 6,请帮忙说服他们一起升级IE,为互联网的发展做一点贡献……
 

你还在纠结WinZip和WinRAR哪个好用吗?自从Windows XP自带了Zip格式的压缩和解压功能之后,WinZip就已经被宣告死亡了;而WinRAR的免费版会经常弹广告出来,很讨厌。

事实上,你有更好的选择,那就是7-Zip。7-Zip是一款免费的压缩软件,它比WinZip和WinRAR都好用。它提供了以下几个功能:

  •  支持多种格式,如Zip、RAR、7z等。其中7z是7-Zip提出的压缩格式,压缩率很高,比Zip和RAR都要高出10%或更多。由于版权的原因,7-Zip支持RAR的解压,但不支持压缩,不过这样问题也不大,大不了不用RAR格式就可以了。
  • 和一般压缩软件一样的文件管理器。可以用来查看压缩文件的内容而不必先把它们解压。不是很常用,但总比没有好。
  • 多语言支持,包括简体中文
  • 自解压功能,和对压缩文件的加密

顺便附上7-Zip的安装文件,版本9.20,发布于2010年11月18日:

 

最近,超级本(Ultrabook)这个概念渐渐火热起来。什么是超级本?它和一般的笔记本有没什么区别?

超级本是Intel主导的一个概念,和传统的笔记本比起来,超级本更轻、更薄、耗电更少。超级本被视为Intel用来和Macbook Air抢市场的产品。

以下是一段华硕UX21的广告:

为了推动超级本的发展,Intel做了一系列努力:

目前Intel对超级本的定义是厚度小于21毫米,重量小于1.4公斤,待机时间超过5小时。上述的UX21的最厚的地方为17毫米,最薄的地方仅有3毫米,和Macbook Air相当(作为参考,iPhone 4的厚度是9.3毫米),重量1.1公斤。

半年之后,Intel将会推出新一代的Ivy Bridge CPU,进一步提高超级本的运算性能;一年之后,Intel会进一步降低CPU的功耗,从现在的17W减少到15W。

既然超级本这么好,那普通的笔记本岂不是要淘汰了?事实上,Intel的估计是到2012年末,有40%的民用笔记本是超级本,普通的笔记本依然有些很大的市场。原因是超级本的价格偏高,接近1000美元,并非人人都消费得起……所谓一分价格一分货……

 

今天一早,刘谦在微博上大呼“恐怖”,仔细一看,原来是他的密码被泄露,被人恶意地发了微博。

事件的发布者游侠安全网表示,这次的攻击并不针对刘谦本人,而是有一个漏洞,可以使坏人窃取到所有新浪用户的密码。攻击的原理是通过新浪爱问的页面中的SQL注入漏洞来完成,理论上可以获取所有新浪爱问用户的密码,由于新浪旗下的服务共享账号,所以新浪微博的用户也会受到牵连。

新浪爱问随即发表微博:由于新浪爱问存在系统漏洞,可能导致约30万登录过爱问的新浪帐号存在被盗号风险,我们已紧急修复此漏洞。这批帐号已被保护,需修改密码后才能使用。由此给用户带来的不便,我们深表歉意。近期账号安全问题突出,我们再次提醒广大用户注意账号安全。

由此,我们可以得知,新浪内部也是使用明文保存密码的。如果你的微博被盗了,不必感到奇怪,明文存储的谁都能看到……

接下来说说SQL注入(SQL Injection),这是一个什么样的攻击方式呢?在网站设计中,查询关系型数据库一般会使用SQL语言,查询语句一般是(继续拿刘谦同学作例子):

Select 用户信息 From 数据库 Where 用户名=’刘谦‘ And 密码=’刘谦的密码’

表示从数据库中查找用户名是刘谦并且密码是刘谦的密码的用户,如果存在这样的用户,就输出他的信息。用户名和密码都是用户输入的。看上去没什么大问题,但是由于编程语言层面的一些缺陷,使坏人有了可乘之机。比方说,如果有人故意把用户名写成刘谦‘ Or ’1′=’1,这样整句查询就变成了:

Select 用户信息 From 数据库 Where 用户名=’刘谦‘ Or ’1′=’1‘ And 密码=’刘谦的密码’

这样的话,由于’Or’的优先级较低,后面半句语句可视为不起作用,然后这个查询就等价于:

Select 用户信息 From 数据库 Where 用户名=’刘谦

其意义就是从数据库中查找用户名是刘谦的用户,这样就必然可以查找出刘谦同学的资料了,包括密码。当然在实践中,对SQL语句的构造方法要复杂得多,这里只是举一个例子。

SQL注入攻击在10年前相当的流行,当时国内的互联网刚刚起步,大家对相关技术都不是特别了解,于是大大小小的网站多少都存在SQL注入的问题。不过发展了这么多年,新浪依然存在这么低级的问题,实在是不敢恭维。更可恨的是,他家的密码也是明文存储的。就在前几天,新浪还信誓旦旦地说自家的密码保存工作做得很好……

 

Amazon的EC2中,默认是不允许使用用户名和密码直接连接Instance的,而是通过AWS (Amazon Web Service)提供的证书。在第一次使用EC2的时候,AWS会要求你创建一个证书并下载,证书是一个.pem文件。在Linux上可以直接使用SSH来连接,比如:

1
ssh -i 证书.pem ec2-user@Instance的IP地址

在Windows中,可以使用Putty工具来进行SSH连接,只不过Putty不能直接使用的.pem格式的证书,需要转换成.ppk才可以。这时就需要使用PuttyGen工具了(在同一个页面就有下载):

1. 打开PuttyGen工具

2. 点击Load加载.pem证书

3. 点击Save private key来保存.ppk证书

新生成的证书就可以在Putty里使用了。

大致的使用方法是在Putty的设置Connection->SSH->Auth里添加.ppk证书,如下图:

然后就可以使用Putty来连接EC2的Instance了,默认用户名是ec2-user。

 

Amazon EC2提供了一年免费试用,Micro Instance,配置是613M内存,最多2核的CPU,和每月15G的流量。搭一个VPN服务器绰绰有余了。

操作系统我选的是Amazon Linux,感觉Amazon的定制版更高效,尽管它可能没有Ubuntu那么强大。

安装过程如下:

1. 安装ppp:

1
yum install ppp

2. 下载并安装pptpd:

1
2
wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-2.el6.i686.rpm
rpm -Uhv pptpd-1.3.4-2.el6.i686.rpm

3. 修改/etc/ppp/options.pptpd 文件中添加DNS服务器:

1
2
ms-dsn 8.8.8.8
ms-dns 8.8.4.4

以上2个是Google提供的免费DNS

4. 在/etc/ppp/chap-secrets文件中添加VPN用户,格式为“用户名 服务器 密码 IP地址”:

1
vpnuser pptpd myVPN$99 *

5. 然后需要打开IP转发(IP Forward)功能,在 /etc/sysctl.conf 文件中修改:

1
net.ipv4.ip_forward = 1

6. 然后保存设置:

1
sysctl -p

7. 在IP Tables中开启IP伪装(IP Masquerade):

1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

如果你需要这个设置在重启之后依然有效,则需要把这一行添加到/etc/rc.local的末尾。

8. 然后把pptpd设置成自动运行的,重启一下就OK啦……

1
2
chkconfig pptpd on
init 6

9. 最后别忘记在EC2的管理界面(Management Console)中,打开TCP的1723端口,这是pptpd的默认连接端口。

10. 大功告成。在Windows中添加一个PPTP类型的VPN玩玩吧……

© 2004 - 2011 Leona+Suffusion theme by Sayontan Sinha