256 lines
6.8 KiB
Markdown
256 lines
6.8 KiB
Markdown
|
---
|
|||
|
title: 【主机搭梯教程】ss-panel前后端搭建方法-手动!
|
|||
|
date: 2018/2/16 22:39
|
|||
|
tags: [git, CentOS, debian, ubuntu, vps, ss-node, ss-panel]
|
|||
|
categories: 技术
|
|||
|
permalink: 19.html
|
|||
|
---
|
|||
|
|
|||
|
如果你的Linux基础不好的话,可以直接看[一键脚本](https://xtaolink.cn/14.html)如果你的基础可以的话,可以继续往下看。。。。
|
|||
|
|
|||
|
首先搭建前端
|
|||
|
============
|
|||
|
|
|||
|
这个就没什么好说的,直接可以使用LNMP一键搭建环境!
|
|||
|
|
|||
|
具体见:[这里](https://xtaolink.cn/21.html)
|
|||
|
|
|||
|
本教程所使用的环境是 NGINX + PHP 7 + MariaDB 10。当然其他主流 LNMP/LAMP 架构都可以(PHP >= 5.4),确保你的站点可以访问后就继续吧。
|
|||
|
|
|||
|
服务器需要安装git( `yum install git -y`)
|
|||
|
|
|||
|
下载 ss-panel 源码
|
|||
|
==================
|
|||
|
[ss-panel GitHub 项目地址](https://github.com/orvice/ss-panel)
|
|||
|
|
|||
|
cd 至你的站点 web 根目录,从 git 上 clone 源码:
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://github.com/orvice/ss-panel.git && git checkout master
|
|||
|
```
|
|||
|
|
|||
|
当然你也可以下载源码再用 `WINSCP` 传到 VPS 上
|
|||
|
|
|||
|
注意 git clone 后的目录结构,请务必保证 `index.php` 在站点根目录下。
|
|||
|
|
|||
|
配置 ss-panel
|
|||
|
=============
|
|||
|
|
|||
|
源码下载下来后
|
|||
|
|
|||
|
你需要在你站点的 NGINX 设置中加入这些(Apache自行添加):
|
|||
|
|
|||
|
```bash
|
|||
|
root /home/wwwroot/ss-panel/public;//定位到网站的根目录
|
|||
|
|
|||
|
location / {
|
|||
|
try_files $uri $uri/ /index.php$is_args$args;//url重写
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
V3 版的 ss-panel 使用了 composer 来自动管理依赖,这样就不用把一堆库打包在一起
|
|||
|
|
|||
|
```bash
|
|||
|
curl -sS https://getcomposer.org/installer | php composer.phar install
|
|||
|
```
|
|||
|
|
|||
|
这样,composer 就会根据 composer.json 中的内容自动安装好依赖,vendor 文件夹也出现了。
|
|||
|
|
|||
|
接着进行配置:
|
|||
|
|
|||
|
```bash
|
|||
|
cp .env.example .env
|
|||
|
```
|
|||
|
|
|||
|
将 .env.example 复制一份重命名为 .env,自行修改其中的数据库和站点信息:
|
|||
|
|
|||
|
```
|
|||
|
// ss-panel v3 配置
|
|||
|
//
|
|||
|
// !!! 修改此key为随机字符串确保网站安全 !!!
|
|||
|
key = 'randomKey'
|
|||
|
env = 'prod' // 正式环境请保持env为prod确保安全
|
|||
|
debug = 'false' // 正式环境请确保为false
|
|||
|
appName = 'ss-panel3' //站点名称
|
|||
|
baseUrl = 'https://www.google.com' // 站点地址
|
|||
|
timeZone = 'PRC' // RPC 天朝时间 UTC 格林时间
|
|||
|
pwdMethod = 'md5' // 密码加密 可选 md5,sha256
|
|||
|
salt = '' // 密码加密用,从旧版升级请留空
|
|||
|
theme = 'default' // 主题
|
|||
|
session = 'file' //默认
|
|||
|
cache = 'file' //默认
|
|||
|
tokenDriver = 'db' //默认
|
|||
|
// mu key 用于校验ss-go mu的请求
|
|||
|
muKey = ''
|
|||
|
// 邮件
|
|||
|
mailDriver = 'mailgun' // mailgun #smtp不在支持,仅供测试
|
|||
|
|
|||
|
// 注册限制,每天每个ip能注册的次数
|
|||
|
ipDayLimit = '10'
|
|||
|
|
|||
|
// 邮箱验证设置
|
|||
|
emailVerifyEnabled = 'false' // 是否开启注册时邮箱验证 (true:开启 false:关闭)
|
|||
|
emailVerifyCodeLength = '8' // 邮箱验证代码长度
|
|||
|
emailVerifyTTL = '30' // 验证代码有效时间 单位分钟
|
|||
|
|
|||
|
// 用户签到设置
|
|||
|
checkinTime = '22' // 签到间隔时间 单位小时
|
|||
|
checkinMin = '93' // 签到最少流量 单位MB
|
|||
|
checkinMax = '97' // 签到最多流量
|
|||
|
|
|||
|
//
|
|||
|
defaultTraffic = '5' // 用户初始流量 单位GB
|
|||
|
// 注册后获得的邀请码数量
|
|||
|
inviteNum = '5'
|
|||
|
|
|||
|
// 记录流量日志到dynamodb ,beta,请勿开启
|
|||
|
log_traffic_dynamodb = 'false'
|
|||
|
|
|||
|
# database 数据库配置
|
|||
|
db_driver = 'mysql'
|
|||
|
db_host = 'localhost'
|
|||
|
db_port = '3306'
|
|||
|
db_database = 'sspanel'
|
|||
|
db_username = 'sspanel'
|
|||
|
db_password = 'sspanel'
|
|||
|
db_charset = 'utf8'
|
|||
|
db_collation = 'utf8_general_ci'
|
|||
|
db_prefix = ''
|
|||
|
|
|||
|
# redis
|
|||
|
redis_scheme = 'tcp'
|
|||
|
redis_host = '127.0.0.1'
|
|||
|
redis_port = '6379'
|
|||
|
redis_database = '0'
|
|||
|
redis_pass = ''
|
|||
|
|
|||
|
# mailgun
|
|||
|
mailgun_key = ''
|
|||
|
mailgun_domain = ''
|
|||
|
mailgun_sender = ''
|
|||
|
|
|||
|
# smtp
|
|||
|
smtp_host = ''
|
|||
|
smtp_username = ''
|
|||
|
smtp_port = ''
|
|||
|
smtp_name = ''
|
|||
|
smtp_sender = ''
|
|||
|
smtp_passsword = ''
|
|||
|
smtp_ssl = 'true'
|
|||
|
|
|||
|
# aws
|
|||
|
aws_access_key_id = ''
|
|||
|
aws_secret_access_key = ''
|
|||
|
aws_region = 'ap-northeast-1'
|
|||
|
aws_ses_region = 'us-east-1'
|
|||
|
aws_ses_sender = ''
|
|||
|
```
|
|||
|
|
|||
|
数据库的创建就不多说了,建站的一般都玩过数据库吧?将根目录下的 db.sql 导入到数据库中即可。其他配置自行修改。
|
|||
|
|
|||
|
最后一步就是设置目录权限
|
|||
|
|
|||
|
```bash
|
|||
|
chown -R nginx:nginx ss目录
|
|||
|
chmod -R 777 storage
|
|||
|
```
|
|||
|
|
|||
|
现在就可以访问你的站点了,是不是熟悉的界面?
|
|||
|
|
|||
|
添加管理员
|
|||
|
==========
|
|||
|
|
|||
|
新版的ss-panel,可以直接cd到你的网站目录,执行
|
|||
|
|
|||
|
```bash
|
|||
|
php xcat createAdmin
|
|||
|
```
|
|||
|
|
|||
|
```
|
|||
|
add admin/创建管理员帐号.....
|
|||
|
Enter your email/输入管理员邮箱: xxx@xxx.com
|
|||
|
Enter password for: h@prinzeugen.net /为xxx@xxx.com 添加密码 xxx
|
|||
|
Email: xxx@xxx.com, Password: xxx
|
|||
|
Press [Y] to create admin..... 按下[Y]确认来确认创建管理员账户..... y
|
|||
|
start create admin accountSuccessful/ 添加成功!
|
|||
|
```
|
|||
|
|
|||
|
到这里,前端就已经配置完成了!
|
|||
|
|
|||
|
部署配置 ss-R
|
|||
|
=============
|
|||
|
|
|||
|
为了保证教程的可靠性,克隆自己的项目吧
|
|||
|
|
|||
|
先 clone 到本地:
|
|||
|
|
|||
|
```bash
|
|||
|
git clone https://github.com/david7207/shadowsocks-R.git
|
|||
|
```
|
|||
|
|
|||
|
然后安装必要组建
|
|||
|
|
|||
|
centos:`yum install python-setuptools easy_install pip m2crypto git -y`
|
|||
|
|
|||
|
ubuntu/debian:`apt-get install python-pip m2crypto git -y`
|
|||
|
|
|||
|
配置 ss-R
|
|||
|
==========
|
|||
|
|
|||
|
进入根目录初始化配置(假设根目录在 `~/shadowsocks` ,如果不是,命令需要适当调整):
|
|||
|
|
|||
|
```bash
|
|||
|
cd ~/shadowsocks
|
|||
|
bash initcfg.sh
|
|||
|
```
|
|||
|
|
|||
|
shadowsocks目录内,对userapiconfig.py里以下内容进行相应修改:
|
|||
|
|
|||
|
```
|
|||
|
API_INTERFACE = 'sspanelv2' //修改接口类型
|
|||
|
```
|
|||
|
|
|||
|
根据你的数据库类型,需正确选择使用sspanelv2, sspanelv3, sspanelv3ssr之一
|
|||
|
|
|||
|
然后修改usermysql.json里面的内容:
|
|||
|
|
|||
|
```
|
|||
|
{
|
|||
|
"host": "127.0.0.1",
|
|||
|
"port": 3306,
|
|||
|
"user": "ss",
|
|||
|
"password": "pass",
|
|||
|
"db": "shadowsocks",
|
|||
|
"node_id": 1, //panel先添加节点,然后确定后再管理面板就看到节点ID
|
|||
|
"transfer_mul": 1.0, //以下可以忽略
|
|||
|
"ssl_enable": 0,
|
|||
|
"ssl_ca": "",
|
|||
|
"ssl_cert": "",
|
|||
|
"ssl_key": ""
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
以上包括(按次序):数据库服务器地址,端口,数据库登陆用户名,密码,数据库,节点ID(sspanelv3支持),等等,要注意 sspanelv3 必须正确填写 node_id 才能正常使用,并且在填写该ID前,必须在面板上已经添加好该节点,以确定节点ID后,再在此处填写。
|
|||
|
|
|||
|
然后编辑user-config.json:
|
|||
|
|
|||
|
```
|
|||
|
"method":"aes-256-cfb", //修改成您要的加密方式的名称
|
|||
|
"protocol": "auth_sha1_compatible", //修改成您要的协议插件名称
|
|||
|
"obfs": "tls1.0_session_auth_compatible", //修改成您要的混淆插件名称
|
|||
|
```
|
|||
|
|
|||
|
如果需要chacha20加密
|
|||
|
|
|||
|
如果需要开机自启动,直接把代码写在rc.local!
|
|||
|
|
|||
|
后台运行并启用日志:
|
|||
|
|
|||
|
```bash
|
|||
|
nohup python server.py > /var/log/shadowsocks.log
|
|||
|
```
|
|||
|
|
|||
|
OK,大功告成!现在就可以在后台添加节点了,试试吧!
|
|||
|
|
|||
|
ss-panel的好处就是大家共享ss节点。
|