侧边栏壁纸
博主头像
MicroMatrix博主等级

曲则全,枉则直,洼则盈,敝则新,少则得,多则惑。是以圣人抱一为天下式。不自见,故明;不自是,故彰;不自伐,故有功;不自矜,故长。夫唯不争,故天下莫能与之争。古之所谓“曲则全”者,岂虚言哉!诚全而归之。

  • 累计撰写 80 篇文章
  • 累计创建 21 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

3x-ui面板搭建

蜗牛
2021-11-11 / 0 评论 / 0 点赞 / 13 阅读 / 6412 字 / 正在检测是否收录...

前言

由于工作环境的需要,我们通常需要一些魔法代理。过去使用xui来搭建面板,但是作者很久没更新了。如今出现了很多变种版本,这里我使用的是伊朗开发的3xui。这里记录下我的搭建过程。

准备工作

  1. vps一台,新手请重置好主流的操作系统(CentOS / Debian / Ubuntu)
  2. 域名一个,并解析到你的vps。

搭建面板

安装docker,docker-compose

我是采用docker容器搭建,这样就可以不干扰其他的服务。我的系统是Debain9,所以我根据官网的Debian9安装教程安装。其他的操作系统请在我提供的链接跳转后,在左侧选择你的系统版本。

  1. 设置仓库
    # Add Docker's official GPG key:
    sudo apt-get update
    sudo apt-get install ca-certificates curl
    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl -fsSL <https://download.docker.com/linux/debian/gpg> -o /etc/apt/keyrings/docker.asc
    sudo chmod a+r /etc/apt/keyrings/docker.asc
    
    # Add the repository to Apt sources:
    echo \\
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] <https://download.docker.com/linux/debian> \\
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \\
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    sudo apt-get update
    
  2. 安装
    sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
  3. 验证
    sudo docker run hello-world
    # 该命令下载一个测试映像并在容器中运行它。当容器运行时,它打印一条确认消息并退出。
    

安装面板

执行如下的命令

# 创建并进入到文件夹中
mkdir x-ui && cd x-ui

创建配置文件vim docker-compose.yml ,并写入下面的内容。

version: "3.9"
services:
  xui:
    image: ghcr.io/mhsanaei/3x-ui:latest 
    container_name: xui
    volumes:
      - $PWD/db/:/etc/x-ui/
      - $PWD/cert/:/root/cert/
    environment:
      - XRAY_VMESS_AEAD_FORCED=false
    restart: unless-stopped
    network_mode: host

然后执行如下命令

# 启动容器
docker compose up -d

# 停止并删除容器
docker compose down

# 更新容器的镜像
docker pull ghcr.io/mhsanaei/3x-ui:latest

启动成功之后,可以用你的vps中的ip:54321访问,就可以看到面板页面了。

域名配置(ssl开启)

  • 假设你的 x-ui 端口是 54321
  • 假设你的 IP 是 10.10.10.10
  • 假设你的域名是 xui.example.com,且已经做好 A 记录解析
  • 假设你使用的是 Debian 10+或者 Ubuntu 18+的系统
  • 假设你的邮箱是 [email protected]
  1. 安装必要软件
sudo apt update
sudo apt install snapd nginx
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
  1. 新建一个配置文件

    touch /etc/nginx/conf.d/xui.conf
    

    增加以下配置,按照实际情况调整

    server {
        listen 80;
        listen [::]:80;
        server_name xui.example.com;
    
        location / {
            proxy_redirect off;
            proxy_pass <http://127.0.0.1:54321>;
            proxy_http_version 1.1;
            proxy_set_header Host $host;
        }
    
        # 反代websocket
         location /xray {
             proxy_redirect off;
             proxy_pass <http://127.0.0.1:10001>;
             proxy_http_version 1.1;
             proxy_set_header Upgrade $http_upgrade;
             proxy_set_header Connection "upgrade";
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header Host $http_host;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header Y-Real-IP $realip_remote_addr;
         }
    }
    
  2. 检查配置文件

    nginx -t
    
  3. 申请证书,按照提示设置

    certbot --nginx --agree-tos --no-eff-email --email [email protected]
    

    更多细节可以参考 cerbot

  4. 刷新Nginx配置

    ngins -s reload
    
  5. 配置定时任务

    sudo certbot renew --dry-run
    

之后在面板里面配置证书位置,将证书就可以用域名:端口的形式访问。

开启BBR加速

执行下面的脚本命令

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

选择安装你喜欢的内核,并开启减速管理。注意锐速内核是降级,BBR魔改是升级,所以不要混着安装这2个。

0

评论区