最近在学习使用亚马逊云服务AWS搭建SS服务,秉着有学习输入就要有学习输出(学以致用)的原则,把整个学习过程记录下来,并分享给大家,希望这篇文章能够对那些计算机小白的用户有更大的帮助。
搭建SS服务的目的是什么呢?当然是自己建梯子翻墙,反正大家都懂的。
为什么使用亚马逊云服务?因为有一年的免费试用期,免费!免费!免费!一个月15G流量,如果不看视频,使用搜素或者看看新闻就够用了。接下来,介绍如何搭建SS服务了
一、注册亚马逊云服务AWS
注册网址:https://amazonaws-china.com/cn/
注册账号过程中,需要你准备两样东西:第一,需要你的手机号,用来接听电话输入验证码;第二,准备一个双币信用卡(美元)或者visa等信用卡,需要绑定信用卡,然后亚马逊会预授权,扣去1$,验证个人信息。
如果信用卡预授权失败,账号注册成功,也没法使用亚马逊云服务AWS。
账号注册完成后的界面如下图所示,之后就是创建亚马逊云服务实例。具体操作过程清继续往下看。

二、创建亚马逊云服务实例
点击图1左上角服务,选择EC2,然后进入图2,点击右上角,选择亚太地区(东京),再点击启动实例。

图2 启动实例进入到图3,即定制化服务器类型,选择红框中(使用ubuntu系统)

进入到图4,即选择红框中的实例,即t2 micro;

然后进入到步骤3、步骤4,均按默认配置就可以了,直接点击下一步。进入步骤5(添加标签),如图5,可以随便命名;

进入到步骤6,即配置安全组,点击添加规则,按照图所示的来做(建议先允许所有流量,开放所有端口,这个可以稍后再修改,你可以自己配置适合自己的防火墙设)

进入步骤7,即审核和启动,在这个过程会生成密钥对,如图6,名称随便填。

现在整个服务器创建过程已经完成。接下来就是连接服务器。启动实例后,就进入图8的界面,点击“获得预计费用通知”你可以创建账单预警,以免超出流量产生扣费,如图9,勾选相应的选项,然后保存就可以了。

图8 创建账单预警

三、连接创建的服务器
服务器创建完成并初始化后,我们就就可以对其进行远程连接。右键你刚创建的实例,点击连接;会弹出连接提示,如果你的电脑使用的是Windows系统,可以使用 Xshell6从本机远程连接到你刚创建的 Linux 实例。

图10 实例创建并初始化后

图11 连接实例
现在介绍利用Xshell远程连接我们在亚马逊创建的实例。
1、下载Xshell6
下载网址:https://www.netsarang.com/products/xsh_overview.html
如图12,然后点击Download

下载Xshell 6进入到图13,按照如图所示选择家庭和学校用户,然后随便填写名字和你自己常用的邮箱,提交;之后会把免费的下载链接发送到你的邮箱,你登陆邮箱点击下载就可以了。

2、配置服务登陆文件
安装Xshell 6后,打开它,关闭会话窗口,点击文件-新建,如图14,
“名称”随便填,“主机”填写在亚马逊云服务创建实例的公有IP地址,其他的默认就可以了

然后点击“用户身份验证”,进入图15,方法选择“public key”,“用户密码”通过“浏览”把之前下载的密钥对导入进去,用户名填写你密钥对的名称就可以了。

最后,就是点击“确定”,然后在会话窗口点击“连接”,进入图16,开始在服务端配置和安装Shadowsocks

四、在服务端安装和配置Shadowsocks
1、安装Shadowsocks
在图16命令行操作界面先后输入以下语句
# 获取root权限
sudo -s
# 更新apt-get
apt-get update
# 安装python包管理工具
apt-get install python-setuptools
apt-get install python-pip
# 安装shadowsocks
pip install shadowsocks
2、配置Shadowsocks
在图16命令行操作界面继续输入以下命令,创建配置文件
mkdir /etc/shadowsocks
vim /etc/shadowsocks/ss.json
然后按键盘上的i键,进入编辑模式,复制粘贴下语句
{
"server":"0.0.0.0",
"server_port":443,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"你的密码",
"timeout":300,
"method":"aes-256-cfb",
"fast_open":false,
"workers": 1
}
然后按esc键退出编辑模式,先后按“:wq”键退出保存文件
3、启动Shadowsocks
在图16命令行操作界面继续输入以下启动命令,启动Shadowsocks
# 启动
ssserver -c /etc/shadowsocks/ss.json -d start
# 停止
ssserver -c /etc/shadowsocks/ss.json -d stop
# 重启
ssserver -c /etc/shadowsocks/ss.json -d restart
4、设置开机启动
在图16命令行操作界面继续输入以下命令
vi /etc/rc.local
按i键进入编辑模式,然后在最后一行加入
sudo ssserver -c /etc/shadowsocks/ss.json -d star
然后按esc键退出编辑模式,先后按“:wq”键退出保存文件
五、回到AWS实例重新配置安全组
开启AWS入站端口:在启动实例后,把滚动条滚到最右边,点击安全下的launch-wizard-1。如图17所示。然后选择点击入站选项卡,点击编辑,修改入站规则,删除我们曾经添加的一条入站规则(当时的类型选择为所有流量),然后点击“添加规则”按照如图17的方法操作,然后单击保存,如图18所示。


六、本机安装Shadowsocks客户端。
依据你的操作系统,下载相应的客户端
Mac版:https://github.com/shadowsocks/ShadowsocksX-NG
Windows版:https://github.com/shadowsocks/shadowsocks-windows
Android版:https://github.com/shadowsocks/shadowsocks-android
以Windows版为例,解压安装包后,双击Shadowsocks客户端,然后配置相应的参数。
服务器地址:亚马逊云服务AWS公有IP地址
端口:我们配置Shadowsocks的文件时确定的端口,例如443
密码:我们配置Shadowsocks的文件时确定的密码
其他的采用默认参数即可。
启动Shadowsocks客户端后,右键点击客户端,选择启动系统代理,系统代理模式选择PAC。
整个搭建大功告成。