RSS订阅Good Luck To You!
你现在的位置:网站首页 / PHP / 正文内容

Trojan多用户面板+宝塔

48540 PHP | 2021年08月30日

Trojan多用户面板+宝塔面板+wordpress

本教程参考了bozai相关的教程以及jrohy的项目,实现了Trojan面板和宝塔、wordpress共存。实现原理主要就是利用nginx的分流,由nginx接管443端口,通过匹配不同的域名将流量由443转发到相关的服务端口去,从而实现443端口的复用,达到多服务共存的效果。可是实现如trojan.wayne.com访问trojan服务,blog.wayne.com访问,IP:port访问面板。

0. 准备工作

  • 需要一台VPS建议采用Centos7x系统可以极速安装LNMP环境,其他系统需要编译安装等待时间太长。

  • 准备好2个域名,并将2个域名解析到该VPS上。

  • 使用脚本安装好加速,推荐bbr

 yum install -y wget && wget -N --no-check-certificate https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh
   chmod +x tcp.sh
   ./tcp.sh
  1. 安装宝塔面板

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

2. 安装LNMP环境

在安装好宝塔后,打开宝塔面板的页面会弹出相应的的界面,安装好Nginx,MySqL,PHP就够了,没有弹出的话就去软件商店里面找。

3. 宝塔一键部署Wordpress

在宝塔的应用商店找到,一键部署,然后点击WordPress,在域名的地方填入准备好的2个域名,并同时选择数据库以及php版本。

001.png

4. 设置网站及数据库

部署后,打开blog.wayne.com地址设置好相应的数据库。数据库名称和密码可以在宝塔的数据库界面找到。

5. 在线申请证书

打开宝塔面板网站栏,在网站设置打开SSL中勾选2个绑定的域名,并为其申请Let's Encryupt证书。

002.png

然后关闭SSL,然后打开/www/server/panel/vhost/cert/blog.wayne.com/路径查看是否有2个的pem文件。

6. 安装Trojan及面板

#安装/更新
source <(curl -sL https://git.io/trojan-install)

#卸载
source <(curl -sL https://git.io/trojan-install) --remove

安装是采用手动填写证书路径如:

/www/server/panel/vhost/cert/blog.wayne.com/fullchain.pem
/www/server/panel/vhost/cert/blog.wayne.com/privkey.pem

数据库设置选择自定义:

  • 库名可以回车或自定义

  • 用户名:root

  • 密码:到宝塔面板对应的数据库栏找到相应的密码并填入。

如果不小心填错了,可以先停止trojan-web服务,卸载面板重新安装

systemctl stop trojan-web # 停止面板source <(curl -sL https://git.io/trojan-install) --remove # 卸载面板

安装好Trojan后最好测试一下是否能够正常访问。

7. 修改Trojan及面板端口

  • 修改Trojan面板端口

systemctl status trojan-web # 查看service

003.png

进入到service文件中修改端口

004.png

systemctl restart trojan-web 重启trojan面板
  • 修改Trojan服务端口

systemctl status trojan # 查看配置文件

005.png

打开配置文件并修改为:

975435569.png

端口修改完成这一步终结。

8. 配置Nginx分流

在宝塔面板中找到Nginx,并在Nginx的配置修改的http模块前面加入一下代码:(访问域名通过 Nginx 判断域名是否是 trojan域名 如何是则直接转到trojan服务端口 否则跳转到4433端口

stream {
    # 这里就是 SNI 识别,将域名映射成一个配置名
    map $ssl_preread_server_name $backend_name {
        blog.xxxxx.com web;
        trojan.xxxxx.com trojan;
    # 域名都不匹配情况下的默认值
        default web;
    }
 
    # web,配置转发详情
    upstream web {
        server 127.0.0.1:4433;(此端口是因为已经监听了443端口,下面的网站不能在设置443端口了。所有这里定义了一个4433端口,所有WEB访问都进入4433端口)
    }
 
    # trojan,配置转发详情
    upstream trojan {
        server 127.0.0.1:10110;(此端口是trojan设置的服务端口,在trajan config.json中配置 local_port=(本地服务端口))
    }
 
    # 监听 443 并开启 ssl_preread
    server {
        listen 443 reuseport;
        listen [::]:443 reuseport;
        proxy_pass  $backend_name;
        ssl_preread on;
    }
}

保存配置并重启nginx服务

9. 修改网站配置

  • 打开宝塔面板的网站配置,开启部署SSL证书。

  • 修改配置文件中的端口443为4433如图:(这里是继承父级nginx访问443转向过来的4433端口,要ssl 如下 listen 4433 ssl http2

006.png

  • 在文件末尾增加代码

  server
  {
      # listen 10111; 修改前 
      listen 80; #修改后,可以续签。
      server_name trojan.xxxx.com;
      location / {
          
          if ($http_host !~ "^blog.xxxxx.com$") {
            rewrite  ^(.*)    https://blog.xxxx.com$1 permanent;
          }
   
          proxy_redirect off;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          
      }
      access_log logs/aaa.com_access.log;
  }

以上代码中的网址请根据自己的需求进行更改,保存设置之后,找到Nginx并重启服务。

10. 最后重启trojan服务

  systemctl restart trojan #重启服务
  
  systemctl status trojan #查看状态

终于大功告成了。

命令行

Usage:
  trojan [flags]
  trojan [command]

Available Commands:
  add           添加用户
  clean         清空指定用户流量
  completion    自动命令补全(支持bash和zsh)
  del           删除用户
  help          Help about any command
  info          用户信息列表
  log           查看trojan日志
  restart       重启trojan
  start         启动trojan
  status        查看trojan状态
  stop          停止trojan
  tls           证书安装
  update        更新trojan
  updateWeb     更新trojan管理程序
  version       显示版本号
  import [path] 导入sql文件
  export [path] 导出sql文件
  web           以web方式启动

Flags:
  -h, --help   help for trojan




一键安装 Trojan-Panel 多用户版 带加速器

脚本介绍

下面这些功能是 Jrohy大神 Trojan多用户管理部署程序的基本功能

  • 在线web页面和命令行两种方式管理trojan多用户

  • 启动 / 停止 / 重启 trojan 服务端

  • 支持流量统计和流量限制

  • 命令行模式管理, 支持命令补全

  • 集成acme.sh证书申请

  • 生成客户端配置文件

  • 支持trojan://分享链接和二维码分享(二维码仅限web页面)

脚本代码

一键更改 Trojan-Panel 面板端口并设置伪装站点


wget -N --no-check-certificate "https://raw.githubusercontent.com/V2RaySSR/Trojan_panel_web/master/trojan-web-panel.sh" && chmod +x trojan-web-panel.sh && ./trojan-web-panel.sh




上一篇:Git提示“warning: LF will be replaced by CRLF”最详细解释+解决方案

下一篇:自动执行任务无限跳转翻页方法

猜你喜欢