一、Amazon AWS 帐户注册 Amazon的EC2 服务相当于远程虚拟主机。有一定的免费使用额度。 注册地址:http://aws.amazon.com/ 按照提示一步步操作的即可。 注意事项: 注册中需要提供信用卡信息。Amazon会从卡上扣一美元,再即时退回,以验证信用卡。所以你会收到消费提示,但实际账单上并不会有支出。 注册中要提供可联系到你的电话或手机信息,国家代码+86最好一并写上。Amazon会即刻电话通知你验证码。 二、EC2 instance 建立 回到aws首页:http://aws.amazon.com/ 用注册好的帐户登录,切换到EC2 Service页: EC2 instance是有地区之分的。对天朝用户来说,选择Asia Pacific(Tokyo)连接速度应该会快一些,仅是猜测。 点击“Launch Instance”, 来初始化一个该区域的EC2实例。 然后进入到 Request Instances Wizard界面。注意Windows server 不在免费计划里,所以这里选择了大行其道的Ubuntu系统,点选到Community AMIs页面,在Viewing中选择Free Tier eligible就会滤出所有包括在免费计划里的instance,每一行后面的黄颜色五角星即标记此意。 然后到了这个页面,注意,Instance Type一定要选Micro这个,因为只有这个免费。Number of Instance选1个就够了,Availability Zone默认即可。点击下面的Continue。 Detial页面上,使用默认即可。需提一下的是Shutdown Behavior这项,有两个备选, stop和terminate。区别在于Amazon会自动回收已经terminate的instance。如果你的Instance由于运行错误等其他原因shutdown—-相当于关机—-这时,如果这里选的是terminate,那么,Amazon会删除掉该instance,也就是从你的Console就看不到该instance了,虽然不是即刻发生的。如果这里选stop,那么instance只是停止运行而已,会继续保留在你的Console里,你还可以重新启动运行它。 下一页, 设置Key value信息,默认已有一个Name项,可输入Name的value值,作为该Instance的名字。也可以直接跳过,之后还可以再修改。 下一页,是设置Key pair 信息。首次使用,需要创建新的Key Pair。输入Key名,可任意选择,然后点击“Create & Download your key pair”。这时你会下载到一个 Key名.pem 文件。该文件是你以后登录该Instance的认证凭据,而且仅此一份,如果你要从多台电脑登录,请复制到各电脑上。 下一个页面,是选防火墙设置,保持默认选项即可。 最后一页,选择Launch,则该Instance就最终正式运行起来了。 这时,从Dashboard上,选到相应地区,就可以看到已经在运行的Instance。 几点提示: 从Dashboard上选中Instance,可进一步看到该Instance的具体信息。其中Public DNS就是该instance的网络标识,可以通过 SSH yourUserName@yourPublicDNS 的方式连接到该Instance。 Pulbic DNS 太长很难记。一个好办法是使用Elastic IP,它就相当于一个静态IP。 在Dashboard 的 Elastic IP 页面上,可以创建一个Elastic IP, 然后马上“Associate Address”到上面创建的Instance上。注意马上。从此,该Instance就有了一个从公网可以直接连接的IP地址。 Amazon 提供的 Elastic IP 可以免费申请,也可以免费使用仅当该IP没有被空置的时候。也就是说,IP申请到后,如果马上被附加到一个Instance上,那么一切都是免费的。相反,如果申请到的IP一直空放在那儿没用,那么每一个IP, Amazon每小时收你$0.01,直到这个IP被释放掉,或者被附加到Instance上面去。 上面所有用到的Amazon的资源,对于新注册用户一年内都是免费的。另外,如果想继续免费使用,还需遵守每个月的免费额度,具体可参考 http://aws.amazon.com/free . 这些额度,对普通流量的用户来说是足够的。当然你也可以即时查询Account Activity (AWS Management Console -> Account -> Account Activity)来监控你的使用量。 三、SSH 翻墙设置 Amazon EC2上的Instance已经运行起来,就相当于你已经有了一台在墙外的电脑。接下来要做的,就是让你的本地电脑与这个远程的Instance通信,来帮你连通墙外的世界。主要通过两步来实现,SSH配置,浏览器配置。 对于SSH配置,要区分Windows用户和Linux用户。 Wondows用户SSH配置 先下载 putty.exe 和 puttygen.exe两个文件: 将之前建立Instance时下载下来的pem文件用 puttygen.exe 转成ppk文件。具体如下:打开 puttygen.exe,选择load, 导入之前的pem文件 (可能需要把文件过滤选成ALL才能看到)。正常情况下,会提示导入成功。然后点击“Save private key”,输入文件名,即可保存为ppk文件。 打开putty.exe, 在Session页面,Host Name处输入 ubuntu@yourPubli**S-or-yourElasticIP,Port用22, Protocl 选择SSH。 到Connection -> SSH -> Auth 页面, 在“Private key file for authentication”处读取之前的 ppk 文件的路径。 到Connection -> SSH -> Tunnels 页面,Source port处输入3128,选择Dynamic类型,点击Add。 回到Session页面,Saved Sessions处输入一个任意标识名,点击Save,将所有配置保存下来。下次再用时,直接Load这个标识名即可。最后,点击Open,即可看到从远程EC2 Instance返回的登录成功信息。 Linux用户SSH配置 将相应的pem保存到 .ssh 文件夹。在该文件内建立config文件,输入以下配置内容: Host aws HostName **.**.**.** User ubuntu IdentityFile ~/.ssh/your-key.pem CompressionLevel 6 DynamicForward localhost:3128 Host 为设定一个名字给该连接,可任意选,此处用aws; HostName 这里输入附加到该Instance的Elastic IP, 或者 public DNS 的连接,这些都可从Dashboard instance 信息里面看到; User 因为之前EC2上建立的是ubuntu AMI,其默认的登录用户名为 ubuntu; IdentityFile 需输入你的 pem 文件的路径; DynamicForward 默认用localhost:3128,在后面的浏览器设置中要用到。 到此ssh配置完成。从temnial输入: ssh aws 即可看到从远程EC2 Instance返回的登录成功信息。 通用的浏览器配置 前面是 Windows 用户和 Linux用户各自的SSH配置。接下来是通用的浏览器配置。 这里以Firefox为例。Preference -> Advanced -> Network -> Settings, 选择手动代理设置,SOCKS Host 中输入 localhost, 端口号3128 , SOCKS v5。OK 确认。浏览器配置完毕。这里针对 Firefox 再附加一点内容: 发现用同样的代理配置,其他浏览器正常工作,偏偏就 Firefox 不能登录 Facebook 和 Twitter,而除这两个外,其他墙外网站却都可以正常浏览。 Google了一圈,现总结如下: 在Firefox地址栏输入 about:config 有安全提示,点击继续; 找到“network.proxy.socks_remote_dns”,双击改为True(默认False); 可能需要重启Firefox。 已验证可行。 看看墙外世界 输入一个撞墙网址试试看行还是不行。不管你行不行,反正我是行了。 几点提示: 如果你想用password+userName 而不是pem的方式登录EC2 instance, 那么你需要修改 /etc/ssh/sshd_config 文件,将其中的 PasswordAuthentication 由默认的 no 改为 yes。使用passwd 设置该用户名下的密码。然后重启ssh server。 你可以在系统中添加多位用户,使他们能用password方式登录,从而共享你的EC2 instance。 |
AWS 免费使用套餐(每月):
- 750 小时的 Amazon EC2 Linux† 微型实例使用时间(配置为 613 MB 的内存、32 位和 64 位平台支持),足够整月持续运行*
- 750 小时的 Amazon EC2 Microsoft Windows Server‡ 微型实例使用时间(配置为 613 MB 内存和 32 位和 64 位平台支持),足够整月持续运行*
- 750 小时的 Elastic Load Balancing 加上 15 GB 数据处理*
- 30 GB 的 Amazon Elastic Block Storage,加上 200 万个 I/O 和 1 GB 的快照存储*
- 5 GB 的 Amazon S3 标准存储,20 000 个获取请求以及 2 000 放入请求。*
可与 Amazon DynamoDB搭配使用的 100 MB 的存储,5 个单位的写入容量和 10 个单位的读取容量。**
- 750 小时的 Amazon RDS 单一可用区域微型数据库实例使用时间,此类型数据库上运行 MySQL、Oracle BYOL 或 SQL Server(运行 SQL Server Express Edition),这足够整月持续运行数据库实例*
- 20 GB 数据库存储
- 1 000 万 I/O
- 20 GB 备份存储,用于数据库自动备份和用户发起的数据库快照
- 50 GB 的数据传出以及 2 000 000 个针对 Amazon CloudFront的 HTTP 和 HTTPS 请求*