如果你的 Linux 基礎不好的話,可以直接看一鍵腳本如果你的基礎可以的話,可以繼續往下看。。。。
首先搭建前端#
這個就沒什麼好說的,直接可以使用 LNMP 一鍵搭建環境!
具體見:這裡
本教程所使用的環境是 NGINX + PHP 7 + MariaDB 10。當然其他主流 LNMP/LAMP 架構都可以(PHP >= 5.4),確保你的站點可以訪問後就繼續吧。
伺服器需要安裝 git( yum install git -y
)
下載 ss-panel 源碼#
cd 至你的站點 web 根目錄,從 git 上 clone 源碼:
git clone https://github.com/orvice/ss-panel.git && git checkout master
當然你也可以下載源碼再用 WINSCP
傳到 VPS 上
注意 git clone 後的目錄結構,請務必保證 index.php
在站點根目錄下。
配置 ss-panel#
源碼下載下來後
你需要在你站點的 NGINX 設置中加入這些(Apache 自行添加):
root /home/wwwroot/ss-panel/public;//定位到網站的根目錄
location / {
try_files $uri $uri/ /index.php$is_args$args;//url重寫
}
V3 版的 ss-panel 使用了 composer 來自動管理依賴,這樣就不用把一堆庫打包在一起
curl -sS https://getcomposer.org/installer | php composer.phar install
這樣,composer 就會根據 composer.json 中的內容自動安裝好依賴,vendor 文件夾也出現了。
接著進行配置:
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 導入到數據庫中即可。其他配置自行修改。
最後一步就是設置目錄權限
chown -R nginx:nginx ss目录
chmod -R 777 storage
現在就可以訪問你的站點了,是不是熟悉的界面?
添加管理員#
新版的 ss-panel,可以直接 cd 到你的网站目录,执行
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 到本地:
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
,如果不是,命令需要適當調整):
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!
後台運行並啟用日誌:
nohup python server.py > /var/log/shadowsocks.log
OK,大功告成!現在就可以在後台添加節點了,試試吧!
ss-panel 的好處就是大家共享 ss 節點。