開啟 3 天免費試用
註冊即可免費體驗全部高級功能。
*只限新用戶;每位用戶只可獲得一次試用。


這篇 Trojan 代理伺服器架設採用 Xray-core v26.3.27、你控制的域名及有效 TLS 憑證。先建立受限測試入口,再分別驗證代理轉送、TLS 可用性、錯誤認證資料、撤銷與復原;作者未完成端到端部署實驗。
關鍵要點
- 沒有合法域名、匹配憑證或獨立管理通道便停止。
- 固定一種實作,不把 Trojan-gfw 或 Trojan-rs 指令混入 Xray。
- 保持憑證驗證,本地 SOCKS 只監聽回環位址。
- 備援網站有回應,不代表代理認證成功。
- 續期、重啟、認證資料撤銷及復原須各自驗收。
預留伺服器前先讀自建網絡責任指南。參考環境是專用、未使用的 Ubuntu 24.04 LTS 主機,獨立授權客戶端執行同一 Xray 版本。本例只轉送明確設定的 TCP 應用程式,不證明全裝置 DNS、IPv6、UDP 或 TUN 覆蓋。
Trojan 協議說明另講機制。協議將密碼衍生的認證值與請求置於 TLS 內。[1]固定版本支援以下欄位,但對 Trojan 發出棄用警告;固定版本是交代示例,不是建議忽略維護或將來移除。[3]需求或客戶端支援不同,可先比較 VLESS/REALITY 與 Trojan 的取捨。
文件匹配不等於實測相容。本例客戶端是同版本官方 Xray core,避免猜測第三方應用程式匯入格式。換客戶端前核對官方協議、傳輸、TLS 名稱及認證欄位,再自行完成驗收。
使用自有或明確獲授權營運的域名,按既有獲准 DNS 流程指向伺服器。經授權簽發機構或 ACME 流程取得該名稱的有效憑證。簽發方式視供應商而定,是部署前提,不能借用第三方網站身份或內容。
開放監聽前檢查 Trojan TLS 憑證鏈、有效期、私鑰配對及續期負責人。域名或憑證缺少、過期或不匹配便停止,不能用 insecure、略過驗證、網上共用秘密或無關名稱的憑證補救。
盤點監聽、服務、安裝路徑、防火牆管理工具及復原主控台。預留伺服器 TCP 18443 和客戶端回環 TCP 10808。高連接埠免除特權連接埠需求,但運行 capabilities 仍要審查。Xray、安裝路徑、服務身份或連接埠已屬其他工作時,停止全新安裝做法,另審遷移。
維護期間保留獨立管理。供應商及主機初始入站只准授權測試客戶端位址。無限制出站可到達主機可達目的地,應使用沒有敏感內部路由的隔離主機,或先實施經審查的目的地存取政策;認證本身不限制目的地。
官方 tag 是 v26.3.27。[5]將官方安裝腳本先下載成檔案,審查下載、檔案寫入、服務及帳戶變更和移除行為,記錄上游修訂。安裝腳本獨立於核心 tag 持續更新;shell 語法通過不表示可信。[6]
以下是專用主機的讀者操作,不是作者執行結果。審查腳本並確認路徑、身份未佔用後,才作特權安裝:
curl --fail --location --proto '=https' --proto-redir '=https' \
--output install-release.sh \
https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh
less install-release.sh
bash -n install-release.sh
sudo adduser --system --group --no-create-home xray-lab
sudo bash install-release.sh install --version v26.3.27 --install-user xray-lab
sudo systemctl disable --now xray.service
sudo systemctl is-enabled xray.service
/usr/local/bin/xray version
sudo systemctl cat xray.service
全新安裝會啟動並啟用服務。disable --now 停止及取消開機啟用,檢查應顯示 disabled。按實際單元確認 /usr/local/bin/xray、/usr/local/etc/xray/config.json 與運行帳戶 xray-lab。路徑異常、root 運行或版本不符都要停止,不可憑預設繼續。
在私人終端產生唯一高熵臨時密碼,例如 openssl rand -hex 32。只存受保護設定,不放 shell 參數、截圖或工單。日後每部裝置獨立認證資料,方便撤銷。此 tag 入站使用 clients[].password,不混入 VLESS UUID、Vision flow 或 REALITY 密鑰。[3]
替換伺服器 JSON 全部大寫預留值。SERVER_LISTEN_IPV4 須實際分配於本機,供應商 NAT 公網位址未必可綁定。把憑證鏈與私鑰放在所列私人路徑,供 xray-lab 讀取;目錄 root:xray-lab、750,檔案 640。不要全域放寬簽發工具目錄,由續期負責人部署專用受保護副本。
{
"log": {"access": "none", "loglevel": "warning"},
"inbounds": [{
"tag": "trojan-lab", "listen": "SERVER_LISTEN_IPV4", "port": 18443,
"protocol": "trojan",
"settings": {"clients": [{"password": "DISPOSABLE_PASSWORD", "email": "lab-device"}]},
"streamSettings": {
"network": "raw", "security": "tls",
"tlsSettings": {"certificates": [{
"certificateFile": "/usr/local/etc/xray/tls/fullchain.pem",
"keyFile": "/usr/local/etc/xray/tls/privkey.pem"
}]}
}
}],
"outbounds": [{"protocol": "freedom", "tag": "direct"}]
}
設定檔同樣為 root:xray-lab、640,目錄 750。用 sudo -u xray-lab /usr/local/bin/xray run -test -config /usr/local/etc/xray/config.json 驗證,再只啟動專用 xray.service 並查看 ss -lntp。語法通過不證明監聽、認證或轉送成功;只開放經審查 TCP 入站規則,保留管理政策。
入站文件說明 Trojan 與可選 fallback 行為。[2]本最小示例沒有備援網站。固定傳輸解析器支援 raw、TLS 憑證路徑及客戶端 serverName。[4]不加其他實作欄位,也不為消除錯誤而停用信任驗證。
獨立授權客戶端將以下儲存為私人 client.json,替換端點域名及相同密碼。PROXY_DOMAIN 須匹配憑證。回環 SOCKS 只支援 TCP;共用主機的其他本地用戶可能存取無認證回環入口,應用隔離客戶端或經審查的本地存取控制。[8]
{
"log": {"access": "none", "loglevel": "warning"},
"inbounds": [{
"listen": "127.0.0.1", "port": 10808, "protocol": "socks",
"settings": {"auth": "noauth", "udp": false}
}],
"outbounds": [{
"protocol": "trojan",
"settings": {"address": "PROXY_DOMAIN", "port": 18443, "password": "DISPOSABLE_PASSWORD"},
"streamSettings": {
"network": "raw", "security": "tls",
"tlsSettings": {"serverName": "PROXY_DOMAIN"}
}
}]
}
client.json 只供擁有者讀寫,權限 600;確認 xray version,執行 xray run -test -config client.json,再於私人前景終端執行 xray run -config client.json。其他網絡客戶端保持原樣。10808 已佔用,不可終止其擁有者;在本次設定及請求一致改用空閒連接埠。
在授權客戶端替換真實域名作憑證檢查。OpenSSL 文件支援主機名驗證及遇驗證錯誤時返回失敗。[7]這只建立 TLS 證據,並非 Trojan 認證:
openssl s_client -connect PROXY_DOMAIN:18443 -servername PROXY_DOMAIN \
-verify_hostname PROXY_DOMAIN -verify_return_error </dev/null
檢查憑證鏈、名稱、日期及驗證結果。信任或名稱失敗便停止,修復授權憑證部署,不用免驗證選項。測代理轉送時,將下列授權任務主機及路徑換成自有或可存取的目標,再對應目標自己的請求證據:
curl --fail --socks5-hostname 127.0.0.1:10808 https://AUTHORIZED_TASK_HOST/task
--socks5-hostname 要求 SOCKS 端解析目標名稱,不改變全裝置 DNS。[9]刻意驗證互聯網出口時,經明確設定的測試應用程式檢查可見出口位址,另查 DNS、IPv6 及失敗政策。TCP 示例不證明全裝置接管。
| 檢查 | 讀者方法 | 預期現象,並非實測結果 |
|---|---|---|
| 正確身份 | 匹配密碼與有效 TLS 下建立新請求 | 授權任務經預定代理到達目標 |
| 錯誤密碼 | 只改臨時客戶端密碼,重啟該前景客戶端再請求 | 不得認證轉送該任務 |
| 錯誤憑證名稱 | 還原密碼,只把客戶端 serverName 改成無關名稱,重啟測試客戶端並發起新請求 | TLS 驗證拒絕,不轉送任務 |
| 還原基線 | 還原正確名稱、密碼並重啟測試客戶端 | 原許可任務再次可用 |
| 另設備援時 | 獨立檢查自有備援回應與代理任務證據 | 網站可用不能當成代理登入 |
每次修改客戶端設定後,只停止本次測試啟動的前景 Xray 程序,以 xray run -test -config client.json 驗證,再用 xray run -config client.json 重新啟動並發起新任務請求。編輯檔案不會令運行程序重新載入設定。[10]錯誤名稱案例須從私人客戶端輸出確認憑證名稱驗證錯誤;只有逾時或認證失敗,不能據此下結論。
錯誤名稱無需聯絡該域名:端點不變,只改 TLS 驗證身份。負面案例仍轉送時,關閉本次新增暴露,查看實際設定與客戶端接管後才繼續。不可接受無效憑證來「修復」失敗案例。
指定續期負責人,記錄到期監察及獲准續期演練。簽發成功後,以相同受限權限部署匹配鏈與私鑰,由服務身份驗證,再經專用單元套用。客戶端獨立檢查真正提供的憑證並重測新授權任務;磁碟檔案已續期,不證明運行服務已採用。
正負案例通過後才啟用開機啟動,核對啟用狀態,並於獲准重啟時段檢查版本、路徑、身份、監聽及新轉送。沒有重啟授權,開機持久性仍未驗證;理解本文毋須實際重啟。
撤銷裝置時,從持久伺服器設定移除其密碼項,驗證後在獲准中斷時段重啟專用實例。重啟會終止該實例全部工作階段,不只被移除裝置。舊密碼的新連線必須無法轉送。後續測試產生新臨時密碼,同時確認新密碼接受、舊密碼拒絕。刪除客戶端檔案或訂閱不等於伺服器撤銷。
續期、重啟或設定變更失敗,只關閉新增入站暴露,還原上一組相容執行檔、設定及仍有效憑證與私鑰。不可從備份還原已洩露密碼或已撤銷私鑰。獨立確認原管理路徑及服務才再嘗試;沒有有效憑證就保持代理不可用,先修復信任。
決定誰長期維護憑證與服務時,參考VPS 維運與託管 VPN 服務,不暗示託管應用可匯入 Trojan 或管理此伺服器。有限失敗證據用Xray 伺服器日誌處理,完成後還原臨時日誌設定。
一次性部署實驗完成後,撤銷測試認證資料,只停止及停用其單元,移除所屬入站規則及初始盤點允許的資源。使用保留安裝腳本移除前,先審查行為;共用路徑即停止條件。獨立確認實驗前服務及管理,不可把停止指令當成清理成功。
不能按這條路線。開放前須有合法域名與有效匹配憑證。無關網站名、insecure 選項及公開共用認證資料都不符前提,應停止並另選受支援方案。
不可以。本例兩端固定 Xray-core v26.3.27,路徑、欄位及服務行為屬該實作。其他客戶端官方文件須先匹配協議與 TLS 要求,再另作相容測試。
不是。TLS 或網頁回應可以獨立於代理認證存在。須有明確客戶端請求及授權目的地證據。本最小伺服器沒有備援,新增它便多一條須另審的路徑。
新請求不得經代理轉送授權任務。只改臨時密碼、重啟測試客戶端,分清拒絕與備援回應;仍能轉送便停止暴露,檢查運行狀態後才繼續。
不可以。保持驗證,查看名稱、鏈、日期、密鑰配對及真正提供的憑證。憑證錯誤是停止條件,錯誤名稱測試是證明拒絕,不是繞過理由。
不會。移除伺服器客戶端項目、驗證,了解全工作階段中斷後重啟專用實例,再以舊身份新連線重測。復原備份不可帶回洩露認證資料。
保持代理不可用,經授權簽發流程修復信任。舊憑證與私鑰只在仍有效而且未洩露時才可還原。重查運行服務憑證及新轉送,磁碟有檔案並不足夠。
免責聲明: 本文是依據文件的操作流程,不是作者實測部署或相容保證。只操作授權資源及目的地,遵守法律和供應商條款;域名歸屬、憑證信任、範圍或復原無法確認便停止。
來源:
Sources checked 2026 年 10 月 11 日。
註冊即可免費體驗全部高級功能。
*只限新用戶;每位用戶只可獲得一次試用。