自建 Xray + Trojan 教程

代码
文章摘要
AI 分析文章内容中…

因为我今年一直在乌兹别克斯坦,这边对 TikTok 和抖音是屏蔽的。之前我买过一些机场,比如 DlerCloud,但是现在感觉它的服务越来越差。Quickfox,传说中留学生回国必备,也是从最开始的免费,到 VIP,然后又推出尊享 VIP。传统 VIP 是 598 元一年,买一送一(2 年); 尊享 VIP 是 1498 元一年,不送。这个软件是单独的,但是现在越来越月卡化,速度也不行了。

所以我参考 ChatGPT 的教程,根据我自己安装并实际可用的过程,整合而成。一些技术话语我不是很懂,基本都是复制的,再自己补充了一些。

客户端:
iOS(Shadowrocket)/ Android(Clash for Android) / Windows / macOS(Clash

一、为什么要自建?

  • ❌ 商用 VPN 用不起

二、整体方案选择

本教程最终采用的技术方案:VPS + Xray + Trojan + TLS(443)+ 域名证书

选择理由: Trojan 本质就是 HTTPS / 使用 443 端口,行为与普通网站一致 / 几乎所有平台代理客户端都支持

三、购买 VPS 与系统准备

1️⃣ VPS 推荐配置

1 vCPU、1 GB 内存、每月 ≥ 1000GB 带宽,系统为 Ubuntu 22.04 LTS,机房位于德国 / 美国就可以,阿里云腾讯云也最好是别用。不建议选择香港、日本(部分地区容易被重点限制)。这个我没做考究,是 AI 说的。

我是买的 Lisahost,因为看到了它的卖点是纯净 IP,虽然我不知道有没有用。你可以自己买了去PING0 测试。

我买了两个:

  1. 100Mbps VDS 固定流量版,德国双 ISP 原生住宅 IP,1C1G 20GB,3000G/月,上下 100M,季度 410 元
  2. 美国 4837 线路双 ISP 家宽原生 IP,1C1G 20GB,3000G/月,季度 187 元

2️⃣ 安装系统

  1. 默认安装系统:Ubuntu 24.04 LTS
  2. 使用 SSH 登录服务器(root 或 sudo)
  3. 确保端口放行,443 / TCP 必须开放,防火墙如果有,放行 443

3️⃣ 更新系统

apt update && apt upgrade -y

四、一键安装 Xray(官方脚本)

使用 XTLS 官方维护脚本:

bash <(curl -Ls https://github.com/XTLS/Xray-install/raw/main/install-release.sh)

验证安装:看到版本号说明安装成功 ✅

xray version

生成 UUID(Trojann的Password):

cat /proc/sys/kernel/random/uuid

示例:

123e4567-e89b-12d3-a456-426614174000

五、协议选择对比(SS / SSR / VMess / VLESS / Trojan)

协议 优点 缺点 推荐 适合人群
SS / SSR 配置简单、早期速度快 特征明显、已被精准识别 了解历史
VMess 功能多、可玩性高 配置复杂、逐步淘汰 ⚠️ 折腾型用户
VLESS 现代、性能优秀 兼容性一般 有经验用户
Trojan 看起来就是 HTTPS 需域名证书 新手 / 稳定使用

这里不是我推荐的,是 ChatGPT 推荐的。一开始他推荐我 VLESS,但我在国外回国模式下多次失败,最终 Trojan 最稳定。

六、准备域名并解析

1️⃣ 购买域名并且做好解析

任意域名都可以,不需要很好的,后面文档使用us.vpn.com作为说明,解析us.vpn.com → VPS_IP。需要解析成功才可以下一步。

七、申请 HTTPS 证书(acme.sh)

1️⃣ 安装Cron

apt update
apt install -y cron
systemctl enable cron
systemctl start cron

2️⃣ 安装 acme.sh,使用 standalone 模式申请证书需要(临时释放 80 端口)


curl https://get.acme.sh | sh
source ~/.bashrc

设置 CA:

acme.sh --set-default-ca --server letsencrypt

签发证书

acme.sh --issue -d us.vpn.com --standalone --keylength ec-256

成功标致类似下面:

Your cert is in: ~/.acme.sh/ru.vpn.ls_ecc/fullchain.cer

安装证书到 Xray 使用路径:

mkdir -p /etc/ssl/xray
acme.sh --install-cert -d us.vpn.com --ecc \
--key-file /etc/ssl/xray/privkey.pem \
--fullchain-file /etc/ssl/xray/fullchain.pem \
--reloadcmd "systemctl restart xray"

启动Xray

systemctl enable xray
systemctl restart xray
systemctl status xray

看到 active (running) 就成功了。

八、配置 Trojan(Xray)

Trojan 不使用 UUID 概念,直接使用 password,UUID 可直接作为 password。

编辑配置文件
首先需要安装nano

apt update
apt install -y nano

打开配置文件

nano /usr/local/etc/xray/config.json

参考如下

{
  "inbounds": [
    {
      "listen": "0.0.0.0",
      "port": 443,
      "protocol": "trojan",
      "settings": {
        "clients": [
          {
            "password": "替换成你的随机字符串,也就是前面的UUID"
          }
        ]
      },
      "streamSettings": {
        "network": "tcp",
        "security": "tls",
        "tlsSettings": {
          "alpn": ["h2", "http/1.1"],
          "certificates": [
            {
              "certificateFile": "/etc/ssl/xray/fullchain.pem",
              "keyFile": "/etc/ssl/xray/privkey.pem"
            }
          ]
        }
      }
    }
  ],
  "outbounds": [
    { "protocol": "freedom" }
  ]
}

Ctrl+X保存
启动服务:

systemctl restart xray
ss -lntp | grep 443

有时候小火箭超时状态,可能是Xray 以 User=nobody 身份运行,但没有权限读取私钥文件/etc/ssl/xray/privkey.pem,所以服务直接启动失败(exit-code 23)

chown -R root:nogroup /etc/ssl/xray
chmod 755 /etc/ssl/xray
chmod 644 /etc/ssl/xray/fullchain.pem
chmod 644 /etc/ssl/xray/privkey.pem

解释一句就够:

755 目录 → nobody 可以进入
644 文件 → nobody 可以读取
组用 nogroup → 与 User=nobody 匹配

重新启动Xray

systemctl restart xray
systemctl status xray

如果显示Active: active (running) 就是正常了。

九、客户端配置示例

iOS(Shadowrocket)

trojan://UUID或者你的密码@us.vpn.com:443?sni=us.vpn.com#US-TROJAN

Clash(完整 YAML)

port: 7890
socks-port: 7891
mixed-port: 7893
allow-lan: true
mode: rule
log-level: info
ipv6: false

external-controller: 127.0.0.1:9090

profile:
  store-selected: true
  store-fake-ip: true

#################################
# DNS(对 TikTok 非常关键)
#################################
dns:
  enable: true
  listen: 0.0.0.0:1053
  ipv6: false
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16

  default-nameserver:
    - 1.1.1.1
    - 8.8.8.8

  nameserver:
    - https://1.1.1.1/dns-query
    - https://8.8.8.8/dns-query

  fallback:
    - tls://1.1.1.1:853
    - tls://8.8.8.8:853

  fallback-filter:
    geoip: false

#################################
# 代理节点(Trojan)
#################################
proxies:
  - name: DE-TROJAN
    type: trojan
    server: us.vpn.com
    port: 443
    password: 你的UUID
    sni: us.vpn.com
    alpn:
      - h2
      - http/1.1
    udp: false

#################################
# 代理组
#################################
proxy-groups:
  - name: PROXY
    type: select
    proxies:
      - DE-TROJAN
      - DIRECT

#################################
# 规则(TikTok 优先)
#################################
rules:
  # 本机 / 局域网直连
  - DOMAIN-SUFFIX,local,DIRECT
  - IP-CIDR,127.0.0.0/8,DIRECT
  - IP-CIDR,192.168.0.0/16,DIRECT
  - IP-CIDR,10.0.0.0/8,DIRECT
  - IP-CIDR,172.16.0.0/12,DIRECT

  # ===== TikTok 强制代理 =====
  - DOMAIN-SUFFIX,tiktok.com,PROXY
  - DOMAIN-SUFFIX,tiktokcdn.com,PROXY
  - DOMAIN-SUFFIX,byteoversea.com,PROXY
  - DOMAIN-SUFFIX,ibytedtos.com,PROXY
  - DOMAIN-SUFFIX,byteintl.com,PROXY
  - DOMAIN-SUFFIX,muscdn.com,PROXY
  - DOMAIN-SUFFIX,musical.ly,PROXY

  # Google / YouTube / Apple(乌兹别克常被限速)
  - DOMAIN-SUFFIX,google.com,PROXY
  - DOMAIN-SUFFIX,googleapis.com,PROXY
  - DOMAIN-SUFFIX,youtube.com,PROXY
  - DOMAIN-SUFFIX,apple.com,PROXY
  - DOMAIN-SUFFIX,icloud.com,PROXY

  # 其余全部走代理(海外环境)
  - MATCH,PROXY

这个YAML配置文件需要导入到Clash里面,最好是Localsend直接传送到手机上,然后配置的时候直接导入,亲测可用。我这套也是ChatGpt给的,我现在是可用,速度还是不错, 如果不合适可以去问问豆包或者DeepSeek。
电脑端我下载了Clash导入配置但是不成功,不知道为啥,因为电脑端基本不用,我就没再去操作。有更好的方法可以留言,有不对的也喜欢给说下,我再修改。

《自建 Xray + Trojan 教程》

3 位吃瓜群众
4 条热评
  1. 沙发 皇家元林 时间 4小时前 macOS macOS Safari Safari
    国内的服务器连这样的文章都不能发。 我以为只有咱们国家会有防火墙,国外也有啊
    1. 西风 时间 7小时前 Windows Windows Chrome Chrome
      @皇家元林 只是限制了抖音,快手,视频号都是正常,不懂为啥限制。只能翻墙。
  2. 板凳 ymz316 时间 6小时前 Linux Linux Firefox Firefox
    高端用户才能接触到的操作啊。我现在代理还不会用,更别说自建了。
    1. 西风 时间 7小时前 Windows Windows Chrome Chrome
      @ymz316 哈哈,这东西没啥用,基本不乱上网的用不到。
正在加载评论...
所有评论已加载完毕
发表你的评论
欢迎交流观点,保持礼貌与理性。