今天看到亚马逊云服务的广告,说现在开通AWS可以免费用一年。然后我爱占小便宜心又犯了,所以绑定信用卡,开通了AWS,在这过程中,不知道为什么扣了我两笔6.59的钱,想联系客服也找不到人。。
进入AWS主页后看到有很多服务可以用,实在眼花缭乱,先一个一个来,我猜测EC2的意思就和阿里云主机是一个意思,所以就开通了一个,选择的是新加坡节点,果然开通时提示我可以免费用一年。既然这样的话,不如拿来搭一个ss服务器吧,哈哈哈~(因为其他暂时没想到做什么用,也许以后我会在这上边部署一个爬虫之类的)
在此过程中,让我下载了一个pem
格式的私钥文件,用来登录。
登录命令:ssh -i "aws-for-panmax.pem" [email protected]
进来之后,我使用sudo adduser panmax
创建了新的账户。
我ping了一下twitter,延迟200+,有些略失望~
更新和安装需要用到的包:
sudo apt-get update
sudo apt-get install nginx
sudo apt-get install mysql-client-5.5 mysql-server-5.5
sudo apt-get install php5 php5-fpm php5-cli php5-cgi php5-mysql php5-gd
以上这些如果没有报错,就证明安装成功了。安装mysql过程中需要创建root密码。
接下来创建数据库:
mysql -u root -p
输入安装mysql时设置的root密码。
创建shadowsocks数据库:
create database shadowsocks
然后建立一个名为ss,密码为ss的MySQL用户,因为这个用户只能本地登录,所以密码简单点也无所谓:
grant all privileges on shadowsocks.* to ss@localhost identified by 'ss';
到这步,我们的数据库已经完成了,,下面我们来安装shadowsocks ss-panel supervisor,一次执行下面的命令:
sudo apt-get install python-pip git python-m2crypto
sudo pip install cymysql
git clone -b manyuser https://github.com/mengskysama/shadowsocks.git
cd shadowsocks/shadowsocks/
然后我们来修改配置文件/root/shadowsocks/shadowsocks/Config.py
1 | #Config |
然后我们还要修改这个文件/root/shadowsocks/shadowsocks/config.json
1 | { |
然后我们来导入数据库。进入MySQL:
mysql -u root -p
use shadowsocks;
source ~/shadowsocks/shadowsocks/shadowsocks.sql;
exit
导入数据库之后,我们在shadowsocks目录下运行一下server.py,python server.py
没有error的话,ctrl + c结束进程,我们进行下一步,安装守护进程,这样重启以后或者程序崩了还能自己重启。
sudo apt-get install python-pip python-m2crypto supervisor
然后我们需要新建两个文件,具体如下:
sudo vim /etc/supervisor/conf.d/shadowsocks.conf
内容:
1 | [program:shadowsocks] |
再创建一个文件:
sudo vim /etc/supervisor/conf.d/cgi.conf
内容:
1 | [program:cgi] |
然后命令:
cd shadowsocks/shadowsocks
service supervisor start
supervisorctl reload
在以下两个文件/etc/profile和 /etc/default/supervisor结尾添加如下代码(/etc/default/supervisor不存在,直接sudo vi /etc/default/supervisor 即可):
1 | ulimit -n 51200 |
至此ss的后端服务已经搞定了,现在我们来整前端界面:
cd /usr/share/nginx/
wget -b v2 https://github.com/orvice/ss-panel/archive/master.zip
安装解压软件:
sudo apt-get install unzip
解压文件:
sudo unzip master.zip
然后重命名文件夹,
mv ss-panel-master ss
现在来修改文件夹权限,
cd /usr/share/nginx/
sudo chmod 777 * -R /usr/share/nginx/html
sudo chmod 777 * -R /usr/share/nginx/ss
sudo chown -R www-data:www-data /usr/share/nginx/html
sudo chown -R www-data:www-data /usr/share/nginx/ss
然后我们需要将ss-pane中的数据库导入我们刚刚创建的数据库中,还是进入MySQL:
mysql -u root -p
use shadowsocks;
source /usr/share/nginx/ss/sql/invite_code.sql;
然后我们需要将ss-pane中的数据库导入我们刚刚创建的数据库中,查看/usr/share/nginx/ss/sql下的内容,把里边的文件导入:
例如:
1 | use shadowsocks; |
然后我们来修改配置文件
1 | cd /usr/share/nginx |
修改congfig.php
里边的数据库相关配置信息
到此,ss-panel前端界面也安装完毕,然后我们需要修改一下Nginx配置文件
1 | cd /etc/nginx/sites-available/ |
修改为1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18server {
listen 443;
server_name localhost;
server_name_in_redirect off;
root /usr/share/nginx/ss;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/ss$fastcgi_script_name;
}
}
然后重启一下
1 | root@ubuntu-512mb-sfo1-01:~# shutdown -r now |
完成。
/admin 进入管理员界面。
默认帐号:[email protected]
默认密码:1993
绑定域名:
新增CNAME,主机记录ss,记录值为AWS EC2的公有 DNS
。