Amazon AWS 架设EC2服务器(datizi)fanqiang (更新手机VPN/L2TP设置)
今天用AWS在东京架设了一台服务器用来个人fanqiang。为什么用AWS呢,阿里云学生价9.9可以搭在香港,但是我的学制今年2月份在学信网上就到期了,腾讯云holy shit,我司AZURE据说员工进去每月有150刀的订阅可以用,不过还没入职,Amazon12个月的免费云看来是性价比最好了。折腾了一天做点记录吧:
登录AWS网站(http://aws.amazon.com)注册AWS帐号,这里amazon的帐号也是可用的。准备一张信用卡,本人用的中行信用卡。会有语音回拨的操作。注册号之后直接登录帐号。选择服务——所有AWS服务——EC2(Elastic Compute Cloud)。

我的服务器地区选在了东京节点,可以在右上方选择:

EC2共有:弗吉尼亚北部,俄勒冈,加利福尼亚北部,爱尔兰,法兰克福,新加坡,东京,悉尼,圣保罗(巴西)七个节点。从地理位置上来说,爱尔兰,法兰克 福在欧洲,可以直接忽略,因为根据国际出口的状况,联通,移动这两个运营商会绕行美国到欧洲,而且欧洲的延迟也不是非常理想。南美洲的可以直接忽略,因为 南美洲都是发展中国家,网络设施不是很发达。而在美国,弗吉尼亚在美国东海岸,相当于访问需要跨越一个大洋和一个大陆,所以基本也不用考虑了。而西海岸的 俄勒冈和加利福尼亚,在我本地(福建)电信的ping为200和230,如果你访问的主要是美国站点,可以考虑。而亚太地区,悉尼不用考虑,中澳的网络状 况并不是很好(没有直连光纤),日本和新加坡有直连光纤,但新加坡和中国间的网络貌似很复杂,有的运营商直接访问非常快(移动),而有的却要绕行美国(电 信),而日本就不存在这个问题,所以请大家自己权衡。
(https://www.zxc.so/shadowsocks-ladder.html?replytocom=2536)
登录控制台之后,选择选择一个Amazon 系统映像(AMI)。Ubuntu Server 14.04 LTS (HVM)和Microsoft Windows Server 2012 R2 Base 我都试过,AWS12月免费的套餐中,后者在给的1G的内存条件下比较卡,因此最后选择了前者。亚马逊又有HVM和PV两种虚拟化模式,免费套餐HVM的资源会更多,所以一定要使用HVM的镜像。(前提是上述套餐都标注了符合条件的免费套餐)

选择镜像之后,第二步选择实例类型和第三步配置实例都可以用默认的设置。第四步添加存储时候,我创建Ubuntu时候,一开始默认的应该是8g,实际上可以最多设置30g。第五步标签实例,由于我的目的是搭个梯子fanqiang,这一步不管他也没问题,第六步配置安全组可以暂时不动,后面实例创建好之后在添加和修改安全组。最后审核,启动实例。启动后弹出


这里创建的密钥是一个"密钥对名称.pem"文件,用于登录你的服务器,因此要妥善保存,最好备份。然后摸索下界面,查看实例如下:

这里记下公有DNS及IP,可以看到这里IP有共有IP和弹性IP(Elastic IP),搭梯子最好选择弹性IP,原因是共有ip的租赁周期,每次服务器重启共有IP会改变,而弹性IP是AWS的技术,申请弹性IP之后可以关联实例,覆盖实例的共有IP,可以看作实例之后的IP都是这个,不受IP租赁周期影响。

具体申请方式,进入网络安全——弹性IP,先分配新地址,操作中可以关联到我们指定的实例,关联完成后原来实例中的共有和弹性IP即都变成这里申请的IP了。(PS:万能的搜索引擎说IP不要多申请,除非关联到了实例,不然空闲的IP满十五分钟就开始算时间,就是说会扣钱,反正我是没试过)
下面开始远程登录服务器:(我用的mac)
打开bash终端,步骤如下:
cd /users/dave_zhou/desktop //我的pem密钥文件放在桌面上了 chmod ubuntu.pem //提升密钥权限 ssh -i ---.ap-northeast-.compute.amazonaws.com //用密钥文件登录服务器
记不住没事,右键你的实例,选择连接

然后会有如下提示:

see,一毛一样。然后就是看到welcom,成功登录了:

windows的话会提示你下两个东西:putty和puttygen。看AWS Help吧。
下面开始介绍在服务器设置shadowsocks代理服务:
sudo -s //root权限
apt-get update //更新包
apt-get install python-pip //一个管理和安装python包的工具,中间yes yes yes
pip install shadowsocks //安装shadowsocks服务
////////////////////////////////////////////////////////////
/*上述安装等待完成后,开始配置shadowsocks服务*/
///////////////////////////////////////////////////////////
vi /etc/shadowsocks.json
/* 插入代码如下: vim插代码哟
{
"server":"0.0.0.0",
"server_port":端口, //端口取11383
"local_address":"127.0.0.1",
"local_port":1080,
"password":"密码", //密码对应该端口的,我取的六位密码
"timeout":300,
"method":"aes-256-cfb",
"fast_open":false
}
上述是配置单用户的设置,多用户配置如下:
{
"server":"0.0.0.0",
"port_password": {
"端口1": "密码1",
"端口2": "密码2"
},
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}
*/
上述配置好之后
ssserver -c /etc/shadowsocks.json -d start //启动shadowsocks服务 vi /etc/rc.local //配置shadowsocks开机启动
在rc.local中插入代码ssserver -c /etc/shadowsocks.json -d start,如下:

接下来就是配置安全组规则,就是一开始我们没做的,用来限制服务器入和出的流量约束,有点像ACL。进入网络与安全——安全组,选择已有的或者创建你自己的安全组,右键编辑安全组规则,我的编辑如下:

有些端口可能开了也没用,我开了好多。其中11383端口是当初配置shadowsocks时候设置的,代理服务器端口,ssh:22号端口默认开的,rdp:3389用来远程的端口号,还有一些端口是用来l2tp协议的,用来配置手机的VPN,iphone没越狱,也下不到ios的shadowsocks,这是后话。
然后mac上shadowsocks开启,设置如下:


这里地址就是前面申请的弹性IP,端口号是服务器端shadowsocks配置文件中设置的端口号,密码也是该配置文件中对应端口号的密码,加密方式也是配置文件中描述的加密方式,然后开启自动代理模式,fanqiang成功。
至于手机端,我用的移动卡,貌似移动pptp协议的流量封了,但是l2tp流量还能走,服务器端配置l2tp协议就可以在手机端设置VPNfanqiang,以后再写吧。
苹果大陆商店是没有shadowsocks的,香港区才有,我懒得弄支付,手机也没有越狱,所以选择用VPN连接。
服务器l2tp脚本:https://github.com/philpl/setup-simple-ipsec-l2tp-vpn
这脚本会跑一会,中间可以设置账户,密码以及秘钥。记下后在iphone——通用——VPN设置如下:

服务器这里填的弹性IP地址,也可以写公有DNS,账号密码秘钥就是之前脚本中设置的。协议类型选择L2TP。PPTP的之前设置过,我是移动卡,VPN显示已连接,但是上不了网。
这样子,链接VPN后手机端也成功fanqiang啦。youtube 1080p播放会卡,1080p以下播放无压力


另外,AWS一个月是15g上行和15g下行。用了两天,昨晚我查了一下已经用了2g上行和2g下行了,视频看得多吧可能。这里上行下行流量基本一样,因为我主要看了不少视频源,东京的服务器下行下载了流量还要上行输出来,所以~就酱。
Amazon AWS 架设EC2服务器(datizi)fanqiang (更新手机VPN/L2TP设置)的更多相关文章
- [Ting's笔记Day7]活用套件carrierwave gem:(2)利用Amazon S3架设图片服务器
来到第7篇了!培养写作习惯真是不容易:) 在我的上一篇文章活用套件carrierwave gem:(1)在Rails实现图片上传功能,上传图片功能已经完成啦!但是目前图片仅能上传在自己的本地文件夹内孤 ...
- 使用AWS的EC2服务器,进行跳墙
选Ubuntu的服务器 一开始先设置Root,命令:su root 在安装之前,先Update一下源:apt-get update update完就可以安装: 1.安装pi,命令:apt-get in ...
- 将亚马逊aws的ec2服务器的登陆方式改为密码登陆
1.在用密钥登陆ec2后,为root用户创建密码: sudo passwd root 系统会让你输入两次密码 2.切换为root用户,并且编辑sshd_config文件,PasswordAuthent ...
- Amazon AWS S3 操作手册
Install the SDK The recommended way to use the AWS SDK for Java in your project is to consume it fro ...
- AWS EC2服务器的HTTPS负载均衡器配置过程
AWS EC2服务器配置负载均衡器步骤: 1.普通负载均衡器 至少两台EC2实例,这里以Centos6.7系统为例 启动之后先安装个apache的httpd服务器默认80端口,或者使用其他服务 ...
- AWS之EC2实例搭建LAMP服务器
在 Amazon Linux 2 上安装 LAMP Web 服务器 创建EC2实例,在安全组添加HTTP(80)规则 步骤 1:准备 LAMP 服务器 1.使用putty连接到你的EC2实例上(AMI ...
- 如何在 Amazon AWS 上设置一台 Linux 服务器
摘要: AWS(Amazon Web Services)是全球领先的云服务器提供商之一.你可以使用 AWS 平台在一分钟内设置完服务器.在 AWS 上,你可以微调服务器的许多技术细节,如 CPU 数量 ...
- Amazon AWS EC2开启Web服务器配置
在Amazon AWS EC2申请了一年的免费使用权,安装了CentOS + Mono + Jexus环境做一个Web Server使用. 在上述系统安装好之后,把TCP 80端口开启(iptable ...
- 使用root用户登录到AWS EC2服务器,上传文件到/var/www目录
关键词 1.aws ec2中上传文件到/var/www目录(使用filezilla) 2.使用root用户登录aws ec2实例 上一篇随笔中记录了在aws ec2实例中部署apache服务器的过程, ...
随机推荐
- html / css打印样式
最近做公司后台系统,需要打印贴箱标签,按照正常打印A4纸的标准,测试的效果不是自己想要的,文字排版布局都乱了,查了一些资料,需要设置的东西我总结了一下: 显示器(screen)和打印机(printer ...
- console
你所不知道的 Console 2016-12-19 ZHANGXIANGLIANG JavaScript 转自 https://segmentfault.com/a/119000000672160 1 ...
- 更改make/bison的版本
一.make版本 1.下载make的压缩包 ftp://ftp.gnu.org/gnu/make/ 2.解压,安装 cd make-x.x ./configuration sh build.sh su ...
- 安装Python时遇到如下问题,解决方案
~$ sudo apt-get install python-pip 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 python-pip 已经是最新的版本了 ...
- 设置默认python模块源
可以在Linux编辑~/.pip/pip.conf或者在Windows下编辑%HOME%\pip\pip.ini,内容如下:[global]index-url = http://pypi.douban ...
- android事件拦截处理机制详解
前段时间刚接触过Android手机开发,对它的事件传播机制不是很了解,虽然网上也查了相关的资料,但是总觉得理解模模糊糊,似是而非,于是自己就写个小demo测试了一下.总算搞明白了它的具体机制.写下自己 ...
- JAVA线程安全总结(转载)
JAVA线程安全总结(一) JAVA线程安全总结(二) 最近想将java基础的一些东西都整理整理,写下来,这是对知识的总结,也是一种乐趣.已经拟好了提纲,大概分为这几个主题: java线程安全,jav ...
- Windows Store App JavaScript 开发:页内导航
页内导航是在一个页面内根据需要加载其他页面的内容,在开发基于JavaScript的Windows应用商店应用时,可以使用WinJS.Navigation.navigate函数传递要加载的页面地址并使用 ...
- 恢复 root 本地无权限 Access denied for user 'root'@'localhost' (using password: NO)
调试远程的时候,覆盖了本地的权限.导致 本地无法登陆系统表. 远程连接上mysql 执行以下命令恢复. 恢复root 本地管理权限 使用空密码 grant all on *.* to roo ...
- N 皇后问题
#include <set> #include <iostream> #include <string> #include <vector> #incl ...