Xray VLESS Reality 設定:一步步教學指南
VLESS Reality 是一種執行加密代理的方式,對任何盯著網路看的東西來說,它看起來都像是對一個真實網站的一次尋常造訪。它把 Xray 輕量的 VLESS 傳輸與 REALITY 交握配成一對,後者借用了一個真實網站的 TLS 指紋,好讓深度封包檢測無從標記。設定只需一台小伺服器與大約十五分鐘。
簡短回答:你租一台位於被過濾網路之外的伺服器,在上面安裝 Xray,開啟一個帶 REALITY 安全層的 VLESS 入站,再把產生的連結匯入一款用戶端 App。REALITY 做了困難的部分:它讓你伺服器的 TLS 交握,與一個真實、熱門網站的交握無從區分,這正是為什麼這個組合在較舊的工具被封鎖之處,依然能通過。
重點摘要
- VLESS 是 Xray 樸實無華的傳輸。它本身不承載任何加密,所以它總是與一個安全層配對——在這裡就是 REALITY。
- REALITY 才是要緊的那招:它讓你的伺服器呈現出一個真實第三方網站的 TLS 交握,同時擊敗指紋辨識與主動探測,而無需你自己的網域或憑證。
- 這是自架的。你需要一台你自己的伺服器(一台便宜的 VPS),位於一個不受過濾的地點——沒有什麼帳號要註冊。
- 有兩條常見的設定路徑:3x-ui 網頁面板(最簡單)或一份手寫的 Xray 設定(更多掌控)。兩者底下都會涵蓋。
- 它很強大,但它得由你來運行:一台伺服器、沒有備援,以及持續的維護,才是真實的成本。
VLESS Reality 究竟是什麼
三個部件疊在一起,把它們分開來看會有幫助。
Xray(Xray-core)是代理引擎——它是 V2Ray 專案一個積極維護的後裔。它能說好幾種通訊協定;VLESS 是其中之一。
VLESS是一種刻意極簡的傳輸通訊協定。這個名字標示了它捨去了什麼:較舊的 VMess 通訊協定自己做加密與基於時間戳的認證,而 VLESS 把這一切都丟掉,本身不承載任何加密。在你看出重點之前,這聽起來像是一次降級。藉由不擋路,VLESS 讓一個專責的安全層去做加密,帶來更少的額外負擔,以及線路上更乾淨的特徵。
REALITY就是那個安全層,也是這套設定值得費這番工夫的原因。它解決的問題很具體。一個正常的 TLS 代理必須出示一張憑證,而一張憑證就是一個指紋。自簽憑證看起來可疑;一張屬於你自己網域的憑證會把伺服器與你綁在一起,並且可以被列舉出來。更糟的是,審查系統會跑主動探測:它們自己連上一台可疑的伺服器,看看它如何表現。大多數偽裝都通不過那個測試。
REALITY 的答案,是不再假裝,而開始借用。你的伺服器不再供應它自己的憑證,而是使用一個由你指定的、真實而熱門網站的身分,完成一次真正的 TLS 1.3 交握。一個被授權的用戶端——持有你的公鑰與一個相符的 short ID——會被導引進入代理。其他任何人,包括一個政府的探測器,都會被透明地轉發到那個真實網站,並看到它真實、有效的憑證。沒有什麼異常可偵測,因為對一個外部觀察者來說,這條連線就是一條通往一個真實網站的真實連線。
如果你想知道這類工具為何存在的更廣脈絡,伊朗、俄羅斯、中國如何封鎖 VPN涵蓋了 REALITY 被打造來存活下來的那些深度封包檢測與主動探測系統。
開始之前你需要什麼
- 一台 VPS(虛擬私人伺服器),位於一個不在你試圖跨越的防火牆之後的地點。任何一台跑著近期 Debian 或 Ubuntu 的小型執行個體都行。
- 以 root 或一個 sudo 使用者身分,對那台伺服器的 SSH 存取。
- 大約十五分鐘。
有一樣你不需要的東西,就是你自己的網域名稱或一張 TLS 憑證。移除那個要求,是 REALITY 主要的便利所在,也是這套設定之所以比先前那些「TLS 加網域」代理更快架起來的一大原因。
設定,路徑 A:3x-ui 面板
如果你寧可點按而不想編輯 JSON,3x-ui 面板是最常見的路線,而且它會替你產生金鑰。編號步驟如下:
- 取得一台 VPS 並連線。用你的服務商建立伺服器,然後 SSH 進去:
ssh root@your-server-ip。 - 執行安裝指令稿。從 3x-ui 專案的 README 貼上那行單列安裝程式。它會安裝面板與 Xray,並印出一個面板位址、連接埠與登入資訊。
- 登入並把它鎖緊。在瀏覽器中開啟面板 URL 並登入。立刻更改預設的使用者名稱、密碼與面板路徑——一個帶著預設憑證、暴露在外的面板,是這類設定最常見的被攻破途徑。
- 建立入站。新增一個入站,把通訊協定設為 VLESS,並把 Security 設為 REALITY。
- 讓面板填入密碼學部分。用那些按鈕產生 UUID、x25519 金鑰對與一個 short ID。至於目的地與 SNI,請挑一個符合底下那一節準則的真實網站。
- 匯出並匯入。儲存,然後把分享連結複製、或把 QR code 掃描到你的用戶端 App 裡。那單獨一條連結,就包含了用戶端所需的一切。
這就是整個流程。面板做的,正是手動路徑所做的事;它只是把設定檔藏了起來。
設定,路徑 B:手動撰寫 Xray 設定
手動路線給你更多掌控,也沒有額外會動的零件。你會執行兩條指令來產生憑據,然後寫一份設定檔。
- 安裝 Xray-core。使用來自 XTLS Xray-core 專案的官方安裝程式。它會在伺服器上放置二進位檔與一個 systemd 服務。
- 產生憑據。執行
xray uuid取得一個用戶端 ID,然後執行xray x25519取得一個金鑰對。把私鑰留在伺服器上;公鑰則交給你的用戶端。 - 撰寫設定。一個帶 REALITY 的極簡 VLESS 入站,看起來像這樣:
{ "inbounds": [{ "port": 443, "protocol": "vless", "settings": { "clients": [{ "id": "PASTE-UUID", "flow": "xtls-rprx-vision" }], "decryption": "none" }, "streamSettings": { "network": "tcp", "security": "reality", "realitySettings": { "dest": "example.com:443", "serverNames": ["example.com"], "privateKey": "PASTE-PRIVATE-KEY", "shortIds": ["", "0123abcd"] } } }], "outbounds": [{ "protocol": "freedom" }] } - 重啟並檢查。重啟 Xray 服務,確認它正在連接埠 443 上監聽。
- 組出用戶端連結。從 UUID、你的公鑰、一個 short ID 與 SNI 組出分享 URL。大多數人會把這個產生一次,然後重複使用。
這裡有幾個欄位很關鍵。flow 設為 xtls-rprx-vision 會開啟 XTLS Vision,它修剪掉「把 TLS 隧道封進 TLS」的那層重複加密,所以它既更快也更安靜。dest 與 serverNames 是那個借來的身分。privateKey 與你用戶端持有的公鑰配成一對,而 shortIds 則讓一台伺服器得以分辨各個用戶端。
挑選一個「dest」——那個唯一要緊的決定
你借用的那個目的地網站,是融入背景與顯得突兀之間的差別。瞄準一個這樣的網站:
- 支援 TLS 1.3 與 HTTP/2(REALITY 需要一個現代的交握來模仿)。
- 在你用戶端所在之處尚未被封鎖——你是藏在它的流量裡,所以它必須是連得到的。
- 託管在你自己國家之外,而且對當地人來說造訪它並不反常。
- 不是你自己的網域,也不是一個小到或冷門到、作為目的地會顯得怪異的主機。
把這個弄對,你伺服器的流量在統計上就平淡無奇。把它弄錯——一個被封鎖的網站,或一個其實並不支援你所宣稱之交握的網站——你就讓自己更顯眼,而非更不顯眼。
連接一個用戶端
同一條連線連結跨平台都能用;你把它匯入適合你裝置的那個用戶端。
- Windows / Linux:v2rayN 與類似的桌面用戶端。
- Android:v2rayNG。
- iOS:支援帶 REALITY 與 Vision flow 之 VLESS 的 App——Shadowrocket、Streisand 與 V2Box 是常見的選擇。貼上連結或掃描 QR。
無論你用什麼,連線之後都做一次快速檢查:確認你的公開 IP 已經換成伺服器的,而且 DNS 沒有從隧道旁邊洩漏出去。一個悄悄洩漏的代理,會讓這一切失去意義。
它擅長什麼——以及它真實的侷限
這套說法誠實的版本很短。VLESS Reality 是當今把一條連線弄出一個重度過濾網路最可靠的方式之一。它擊敗了會抓住較簡單工具的主動探測,它不需要網域或憑證,而有了 Vision,效能成本也很小。專就審查問題而言,它很出色。
但自架是一項交換,而非一頓免費午餐,而那些成本值得平實地說出來:
- 它是一個單點故障。一台伺服器、一個 IP 位址。如果那個 IP 被封鎖,或你的服務商標記了那個執行個體,你就掛了,在你於別處重建之前都沒有備援。
- 你就是那個運維者。替作業系統打補丁、更新 Xray、保管好金鑰與面板的安全:那份工作不會停。一個過時的面板或一個重複使用的預設密碼,是一個真實的風險,而非一個假設。
- 涵蓋範圍取決於用戶端。路由整台裝置、處理 DNS,以及在隧道中斷時安全地行為,在這裡都是用戶端的工作,而用戶端各有不同。一個完整的 VPN 會把那個行為標準化;一套代理設定則把更多的部分留給你。那個對比,正是 Shadowsocks 與 VPN 的比較的核心。
- 那個偽裝也需要維護。一個被封鎖的借來目的地,或一個落後於通訊協定的用戶端,都能把一套安靜的設定變得吵雜。
還有一條值得知道的平行路徑。REALITY 靠模仿一個網站來藏住一個代理;WireGuard 那個世界則從 VPN 那一側、靠重塑通訊協定本身來應對同一個深度封包檢測問題,那正是 AmneziaWG vs WireGuard 的主題。而如果你想先看這些隧道通訊協定的基礎比較,WireGuard vs OpenVPN vs IKEv2 列出了其中的取捨。
常見問題
什麼是 VLESS Reality?它是 Xray 裡兩樣東西的配對:VLESS,一個承載你流量的輕量傳輸通訊協定,以及 REALITY,一個把連線偽裝成對一個真實網站之尋常 TLS 造訪的安全層。兩者合起來,構成一個讓審查系統難以偵測或探測的代理。
VLESS Reality 有加密嗎?有——但不是由 VLESS。VLESS 本身不承載加密。加密來自 REALITY 所建立的那個真正的 TLS 1.3 工作階段,那與保護一般 HTTPS 的現代加密相同。所以你的流量是加密的;加密只是住在 REALITY 那一層,而不是住在傳輸裡。
「VLESS」是什麼意思?它是 V2Ray/Xray 家族裡的一個傳輸通訊協定,被設計為 VMess 一個更輕的後繼者。這個名字點出了它移除了什麼:它做得更少,最顯著的是丟掉了 VMess 所承載的內建加密與時間戳認證。那份極簡正是它的特色——它把加密留給 TLS 或 REALITY,並把額外負擔與特徵維持得很低。
VLESS 比 VMess 好嗎?就一套現代的隱身設定而言,通常是的。VLESS 更輕,而且能使用 VMess 所不能的 XTLS Vision flow,並且與 REALITY 配得乾淨俐落。VMess 仍然能用,也內建了它自己的加密,但它的交握更容易被取指紋,而那恰恰是你在一個過濾網路上試圖避免的。
VLESS Reality 免費嗎?軟體是免費的——Xray 與 REALITY 是開源、無償的。你付費的是它所跑的那台伺服器。要對網路上分享的「免費」公開設定提高警覺:用一個,意味著把你全部的流量路由經過一個陌生人的伺服器,這與任何免費代理有著相同的信任問題。
結論
- VLESS Reality 是一個自架的隱身代理:Xray 的 VLESS 傳輸加上 REALITY 交握,後者把伺服器偽裝成一個真實網站。
- 它擊敗了那些封鎖較簡單工具的指紋辨識與主動探測,而且它不需要你自己的網域或憑證。
- 設定就是一台 VPS 與一份簡短的設定(透過 3x-ui 面板,或一份手寫的檔案),而那個最重要的單一選擇,就是你借用的那個目的地網站。
- 代價是所有權:一台伺服器、沒有備援,以及隨著運行你自己的基礎設施而來的那份維護。
運行你自己的 VLESS Reality 伺服器,買來的是完全的掌控,代價是當那個替它打補丁、付帳單、讓它存活的人。如果你用的是 iPhone,並寧可有一條你不必運維的混淆 WireGuard 連線——沒有伺服器要租、沒有金鑰要輪換、沒有電子郵件或帳號——那正是 Snap VPN 為之打造的那一側,而它已上架 App Store。