Trojan-Panel!Trojan多用户管理面板!

前言

  • 有这样一群小伙伴,他搭建的Trojan节点需要分给其他朋友们使用,但是又怕流量透支,所以很想安装一个多用户的Trojan,并且有流量配额,流量显示!
  • 其实这Trojan的官方有这样的Trojan面板(Trojan-Panel)。只是教程很简单,很多小伙伴看了教程还是不会。
  • 那么,波仔今天把教程详细化!若是使用人很多,考虑写成一键安装脚本!
  • 本文为波仔全网首发。

准备工作

  1. VPS一台重置好系统(本系统采用Debian 9 演示,若是其他系统请自行解决相关代码)
  2. 域名一个,做好解析并已经生效
  3. 最新Trojan-Windows客户端软件:点击访问

开始安装

安装BBRPLUS

1
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

更新系统 ( Debian 9 )

1
2
3
4
5
apt-get update
apt -y install software-properties-common apt-transport-https lsb-release ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://mirror.xtom.com.hk/sury/php/apt.gpg
sh -c 'echo "deb https://mirror.xtom.com.hk/sury/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
apt-get update

安装基础依赖

1
apt install nginx curl socat sudo git unzip wget -y

第一次配置Nginx

本次配置 Nginx 的目的是为了让后面的acme.sh脚本能顺利签下证书

找到VPS以下目录 /etc/nginx ,找到 nginx.conf 文件,重命名为 nginx.conf1

在上述目录继续 新建文件 ,文件名为 nginx.conf

打开新建的 nginx.conf 写入以下配置并保存

替换代码中的 www.example.com 为你自己的域名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
user  root;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '\$remote_addr - \$remote_user [\$time_local] "\$request" '
'\$status \$body_bytes_sent "\$http_referer" '
'"\$http_user_agent" "\$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 120;
client_max_body_size 20m;
#gzip on;
server {
listen 80;
server_name www.example.com;
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
}

重启Nginx

1
systemctl restart nginx

输入你的域名,在浏览器中访问,验证nginx是否正常运行

安装官方Trojan

1
sudo bash -c "$(wget -O- https://raw.githubusercontent.com/trojan-gfw/trojan-quickstart/master/trojan-quickstart.sh)"

安装ACME.SH申请证书

1
curl https://get.acme.sh | sh

划重点

========================================
上面代码运行完成后,断开服务器,重新链接VPS,并运行下面代码
========================================

验证域名归属权

1
acme.sh --issue -d www.example.com --nginx

申请签发证书

修改下面域名为自己的域名

1
acme.sh --installcert -d www.example.com --key-file /usr/local/etc/trojan/private.key --fullchain-file /usr/local/etc/trojan/certificate.crt

设置证书自动续签,并设置文件夹权限

1
2
3
4
acme.sh --upgrade --auto-upgrade
chmod -R 755 /usr/local/etc/trojan
apt-get update
apt upgrade

安装PHP 7.2 和数据库

1
apt install -y  mariadb-server php7.2-fpm php7.2-mysql php7.2-cli php7.2-xml php7.2-json php7.2-mbstring php7.2-tokenizer php7.2-bcmath

配置数据库

输入下面代码并运行以后,需要设置一个密码,慢点输入,别输错了。密码不会明文显示。

1
mysql_secure_installation

输入密码回车以后,会提示5个问题,依次是选择是 :N Y Y Y Y

运行下面代码,并输入你刚才设置的密码。

1
mysql -u root -p

目前的 VPS 提示符为 MariaDB [(none)]>

下面的两条命令创建了一个叫trojan的数据库和一个叫trojan数据库用户,trojan的密码为,建议与Trojan的密码相同,后面要用。
(更改第二条代码中的 password 为自己的密码,随便设置,但是要记得,怕忘记,就和刚才不明文显示的密码设置一样)

1
2
CREATE DATABASE trojan;
GRANT ALL PRIVILEGES ON trojan.* to trojan@'%' IDENTIFIED BY '数据库密码( =Trojan密码)';

下面的四条命令重新加载privileges并检查配置是否成功,随后退出mysql

1
2
3
4
FLUSH PRIVILEGES;
SHOW DATABASES;
SELECT User FROM mysql.user;
quit

安装PHP软件包管理系统

1
2
3
cd /var/www
curl -sS https://getcomposer.org/installer -o composer-setup.php
php composer-setup.php --install-dir=/usr/local/bin --filename=composer

安装NodeJS和npm

1
2
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
apt install -y nodejs

运行下面代码,查看是否安装成功,成功会显示版本号

1
2
node -v
npm -v

安装Trojan-Panel

1
2
3
4
git clone https://github.com/trojan-gfw/trojan-panel.git
cd trojan-panel
composer install
npm install

若是漏洞太多,请修复!若你没有读懂是什么意思,那么就请直接执行(或是跳过)下面两条代码。

1
2
npm audit fix --force
npm install

配置Trojan-Panel运行环境

1
2
cp .env.example .env
php artisan key:generate

找到VPS以下目录 /var/www/trojan-panel ,找到 .env 文件。
找到并修改下面参数:域名修改(改为你的域名)、密码修改(改为刚才设置的不明文显示的密码)

1
2
APP_URL=https://www.example.com
DB_PASSWORD=数据库密码( = Trojan密码)

修改完成运行下列代码,提示框输入yes

1
php artisan migrate

赋予文件夹权限

1
chown -R www-data:www-data /var/www/trojan-panel

第二次配置Nginx

找到VPS以下目录 /etc/nginx ,找到 nginx.conf 文件,删掉!
找到刚才重命名的 nginx.conf1 文件,改名为 nginx.conf
找到VPS以下目录 /etc/nginx/sites-available ,编辑 default 文件
替换波仔为大家准备的代码(共有三处地方必须修改,一处地方可选修改)

  1. 修改 www.example.com 为你自己的域名
  2. 修改10.10.10.10为你VPS的IP
    进阶修改提示:
    代码里面查找 config ,可以修改为你自己的配置,比如 configxxx,防止别人恶意登录(不改不影响使用)
    里面的 https://blog.lyh6.top 可以修改为任意的地址(可选修改),但是需要 https 可以访问。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
server {
listen 127.0.0.1:80 default_server;

server_name www.example.com;

location / {
proxy_pass https://blog.lyh6.top;
}

location /config {
alias /var/www/trojan-panel/public;
index index.php;
try_files $uri $uri/ @config;

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

location ~ /\.(?!well-known).* {
deny all;
}
}

location @config {
rewrite /config/(.*)$ /config/index.php?/$1 last;
}

}

server {
listen 127.0.0.1:80;

server_name 10.10.10.10;

return 301 https://www.example.com$request_uri;
}

server {
listen 0.0.0.0:80;
listen [::]:80;

server_name _;

return 301 https://$host$request_uri;
}

修改TROJAN配置文件

找到VPS以下文件/usr/local/etc/trojan/config.json (Trojan配置文件)
修改如下内容:密码选项——多余的密码删掉,保留一组密码即可,密码需要设置为刚才Trojan的数据库密码
修改证书路径: /usr/local/etc/trojan/certificate.crt
/usr/local/etc/trojan/private.key
将mysql中的enabled改为true,password填写刚才为数据库用户trojan设置的密码。

重启Trojan和Nginx

1
systemctl restart trojan nginx

至此,VPS操作完成。

开始测试并设置

浏览器中访问:https://xxx.xxx.com/config看看是否可以访问Trojan-Panel,如果可以访问Trojan-Panel的话,那么就可以注册账户了。第一个注册的用户是管理员。
用户可以选择自行注册,然后管理员赋予流量即可使用。
Quota选项为流量管控选项。Quota设置为 -1 ,即为无限流量。
若是需要设置流量为10GB,那么Quota设置为 10240000000。Quota的单位是 字节
用户客户端需要使用的话,密码为:用户名:用户密码


转载于https://www.v2rayssr.com/trojan-panel.html


坚持技术分享,您的支持将鼓励我继续创作!