在 Bromure 裡跑 VPN——以及一份 Cloudflare WARP 的白話入門
VPN 究竟做了什麼、沒做什麼,為什麼在 Bromure 中以每個設定檔為單位跑 VPN 會改寫匿名性的故事,以及深入走一遍 Cloudflare WARP 的運作方式。
網路上的匿名性不是駭客才會關心的事。每當你不想讓雜貨店、保險公司、孩子的學校,還有六個廣告聯播網知道你在凌晨一點讀了哪些文章,你就會想要它。
多數人會想到 VPN,是在出差旅遊、看串流影音,或者在採買某樣他們不希望下週以彈出式廣告形式再度追著自己跑的東西時。比較少人會去想 VPN 跑在哪裡——跑在作業系統上、跑在路由器上,還是跑在某個更有意思的地方。結果證明,最後那個問題的答案關係重大。本文將帶你走過 VPN 究竟做了什麼、沒做什麼,為什麼在 Bromure 中以每個設定檔為單位跑它會改變整盤帳的算法,以及——因為大家一直問——Cloudflare WARP 到底是什麼。
你的 IP 位址是一張你摘不下來的名牌。
你的電腦對每一項網路服務發出的每一個請求,都夾帶著你的 IP 位址。它不得不如此:回應總得送回某個地方。麻煩的是,來自同一個家、同一組 IP,通常會持續好幾天、幾週,甚至幾個月,而這段時間已經長到足以讓網路上的每一條數據分析管線把它當成一個穩定的識別碼——「餐桌旁那台筆電」——並在完全無關的網站之間拼接起一幅圖像,描繪出那個坐在筆電前的人,空閒時都在做些什麼。
你的 IP 並不是網路上唯一的識別碼;cookies 和已登入的帳號都是更強的識別碼。但 IP 是你沒辦法關掉的那一個。你可以清除 cookies、可以拒絕登入,IP 還是會送出去——同一個 IP,每一個請求都送。
這正是 VPN 要解決的問題。
VPN 實際上做了什麼——以及它沒做什麼。
VPN——虛擬私人網路——會把你的流量繞過一台中繼伺服器,讓你造訪的網站看到的是 VPN 的 IP 位址,而不是你的。你的裝置與 VPN 之間的流量是加密的,你造訪的網站看到的是 VPN 選擇出口的那個地理區域。
VPN 給你的東西:
你的 IP 對網站隱藏起來
網站看到的是 VPN 的 IP。它們的廣告合作夥伴看到的是 VPN 的 IP。跨網站聚合造訪記錄的資料仲介商,最後聚合的中心會是同一個共用出口,而不是你家。
你的流量對 ISP 與所在網路隱藏起來
咖啡廳、機場、飯店,還有你的 ISP,看到的都是一條通往 VPN 的加密資料流。它們看不到你造訪的是哪些網站。DNS 查詢也會走 VPN,所以它們連你在查什麼都看不到。
你可以挑選地理出口
多數商用 VPN 都讓你挑國家。如果某個網站只在日本能用,或者你想看看海峽對岸的同儕看到的購物價格是多少,VPN 就是最輕鬆的答案。
你不會因此變得匿名
這是比較老實的一部分。VPN 隱藏的是你的 IP,而不是你的身分。如果你登入的還是你一直在登入的那些帳號,那你被辨識的程度其實跟以前一模一樣——只是走了另一個 IP 而已。瀏覽器指紋、cookies、通行密鑰,以及「以 Google 帳號登入」這些東西,根本不在乎 IP。
為什麼把 VPN 跑在 Bromure 裡面,是更好的形狀。
多數人都把 VPN 跑在作業系統上。整台機器要嘛開 VPN,要嘛關 VPN。這樣做的問題有兩層。
第一個問題是解析度。VPN 開著的時候,每一個應用程式——你的郵件用戶端、你的 Slack、你的 App Store 更新、你的 Dropbox 同步——都會走 VPN。這可能會讓登入出問題(「我們偵測到來自德國的登入」),可能會拖慢所有東西,也會把你正在用 VPN 這件事洩漏給你對話的每一個其他服務。
第二個問題是外洩。VPN 關著的時候,某個在背景裡好心做事的應用程式,就可能在你以為是匿名造訪的網站上亮出你的真實 IP。只要有一次 DNS 外洩、一次 WebRTC 外洩,那個網站就能把你和真實連線對上。
Bromure 採取的是不一樣的做法:每個設定檔都是自成一體的虛擬機,各自有自己的網路設定。一個設定檔可以掛在 WARP 上。另一個可以走直連。第三個可以掛在一個從德國出口的付費商用 VPN 上。第四個可以掛在 Tor 上。它們彼此看不見對方。而主機作業系統——你的真實 IP、你的真實連線——上面完全沒有 VPN,因為它根本不需要。
這個形狀會安靜地帶出三個結果。
**沒有意外的關聯。**工作設定檔與研究設定檔不共用同一個來源 IP。你在「個人」裡登入的網站看到的是 WARP 出口;你在「研究」裡打開的網站看到的是一個德國的商用出口。它們沒辦法從網路層面把這兩個工作階段綁在一起。
**設定檔之間不會互相外洩。**DNS 外洩、WebRTC 外洩、某個應用程式設定錯誤——這些都只會留在那台虛擬機裡。某個設定檔裡行為不當的頁面沒辦法發現主機的真實 IP,因為主機的真實 IP 根本不在那個設定檔的網路命名空間中,而是在隔壁一道牆之後。
**工作階段結束,路由也跟著結束。**跑著 WARP 的一次性工作階段,會在你關閉視窗的那一刻被拆除。下一次你再打開同一個設定檔時,前一個工作階段的任何東西——cookies、快取、WireGuard 金鑰、IP 配置——都不會還在。VPN 就和那個視窗一樣短暫。
Cloudflare WARP 入門。
WARP 是 Cloudflare 面向一般消費者、類似 VPN 的產品。說來令人有點混亂,它既是人人都能用的免費服務,也是一款付費產品,而且它旁邊還並排著一整套同樣掛著 WARP 名字的商用產品(1.1.1.1 for Families、Zero Trust、Gateway)。本節談的是免費的個人版本,也是大家會問到的那個版本。
一段非常簡短的歷史:WARP 起源自 Cloudflare 的 1.1.1.1 DNS 解析服務的消費者端,於 2019 年推出。想法很單純——Cloudflare 本來就擁有全世界最大的邊緣網路之一,用來提供網站服務;在同一個邊緣上再多終結一條 WireGuard 通道,只是多走了一小段。最初的客戶端用的是 Cloudflare 自家以 Rust 寫的 WireGuard 實作(BoringTun);較新的客戶端則加上了 MASQUE——一種建立在 HTTP/3 與 QUIC 之上、較新的 VPN 類型協定,在許多不友善的網路環境下較難被封鎖。
WARP 給你的東西:
免費,起步不需要任何帳號
基本的 WARP 方案是免費的。不需要信用卡,不需要電子郵件。裝置識別碼會在本機產生;之後若想要付費方案,可以再升級,但開箱即用的體驗就是「安裝、連線、搞定」。
速度快,因為 Cloudflare 的邊緣無處不在
傳統 VPN 會把你的流量回傳到幾十個資料中心的其中一個,再從那裡出去。Cloudflare 則在超過 300 個城市設有 PoP。你的流量多走的那一小段路,通常都很短;而且對許多使用者而言,由於 Cloudflare 的中繼對等連接,WARP 測起來甚至比完全不用 VPN 還要快。
加密的 DNS
預設情況下,通道內的 DNS 查詢會透過 DoH 或 DoT 走 1.1.1.1。你的 ISP、公司網路,還有咖啡廳的路由器,都看不到你在查哪些網域——這些在未加密網路上,否則會是純文字傳輸的。
真的能讀得懂的隱私聲明
Cloudflare 一再發布由第三方稽核機構對 WARP 進行的隱私稽核報告(最近一次是 KPMG),聲明不會記錄 IP 位址與瀏覽歷史,也不會拿來做廣告用途。這份政策並非無懈可擊,但比多數免費 VPN 好得多,而且實際上可稽核。
WARP 不是什麼。
大家很容易把 WARP 能做的事高估。把它當成一套完整的隱私解決方案之前,有幾件事要記在心上。
不是地理型 VPN
免費的 WARP 沒辦法讓你選「從日本出口」。出口的 PoP 是由你所在的位置決定的。想做地區解鎖,你還是需要一家提供國家選擇器的商用 VPN,或是提供地區控制的 WARP+ 變體。
信任從 ISP 搬到了 Cloudflare
你的流量只加密到 Cloudflare 邊緣為止。在那之後,Cloudflare 會把它繞送到公開的網際網路上。Cloudflare 能看到你連上的每一個網域、每一次 DNS 查詢、每一個未加密的位元組(儘管其中多數都已包在 TLS 之中)。你是拿你的 ISP 的可見度,去換 Cloudflare 的可見度——如果你不信任你的 ISP,這確實是實質的進步;但它就是一個單一的、眾所周知的信任錨點。
擋不住指紋辨識
VPN 隱藏的是你的 IP。它不會改變你的 user-agent 字串、你已安裝字型的清單、你的螢幕解析度、你的 WebGL/canvas 指紋、你的 TLS 簽章。裝備齊全的追蹤器不管你怎麼換 IP 都能把你對起來。把 IP 藏起來,提高了門檻;但並沒有把場地抹平。
有些網路會直接封鎖 WARP
公司網路、某些機場,以及某些國家,會偵測並封鎖標準的 WARP 端點。MASQUE 對此有所幫助,但不是萬靈丹。如果 WARP 在某個網路上拒絕連線,那通常不是 bug——而是那個網路在說不。
在 Bromure 設定檔中使用 WARP。
機械操作的部分很小。WARP 的設定可以從 1.1.1.1 應用程式匯出成一份 WireGuard 設定檔——就是任何 WireGuard 客戶端都看得懂的那種檔案。你把某個 Bromure 設定檔指向這份檔案,這個設定檔做的每一件事都會經由 Cloudflare 傳送。
因為設定是以每個設定檔為單位的,你可以把 WARP 設定檔留給日常的閱讀與瀏覽,而讓你的銀行與工作設定檔維持在直連上。與此同時,你的主機作業系統上完全沒在跑 VPN——它不需要,因為主機上沒有任何東西在設法匿名化它的流量。匿名性就剛剛好位在你想要用它的地方。
什麼時候該選哪一種,以下是一份簡短的對照表:
這些時候用 WARP……
你想把 IP 對網路上大多數地方藏起來,你在一個你並不完全信任的網路上,你想要加密的 DNS,而你又不太想為此付費或註冊任何東西。這是你用來隨便閱讀、做研究、休閒購物的設定檔的好預設值。
這些時候用付費商用 VPN……
你需要特定的國家出口,你需要一家發布更強隱私政策或位於與 Cloudflare 不同司法管轄區的供應商,或你正在做的事情可能會讓共用 IP 被限速。多數情況下比 WARP 慢,但控制權更多。
這些時候用 Tor……
你需要在面對認真對手時,真正意義上的匿名——查證消息的記者、敵對國家裡的行動者、觀察對手自身基礎設施的研究人員。比 WARP 或一般 VPN 都慢得多;能用的網站也少得多;但它所抵禦的威脅模型是不一樣的。
這些時候別用 VPN……
你要登入你的銀行、醫生、或政府服務時。這些網站天生就會對不尋常的 IP 起疑,VPN 經常會觸發額外的驗證關卡,甚至直接被擋。為這些工作階段保留一個乾淨的「真實 IP」設定檔,不是疑神疑鬼,而是方便。
結語。
你不需要一個牽涉到國家級行為者的威脅模型,才能想對自己的 IP 握有控制權。你只需要「不想被貼標籤」——在你讀的每一頁、跑的每一次搜尋、某樣你看過一眼就立刻後悔的商品上,都被貼標籤。VPN 是做這件事最常見的工具;WARP 則是給每一個想要基本功能卻不想訂閱的人的好預設值。而 Bromure,藉由把每個設定檔放進它自己的網路世界中,讓你能以這些工具本來就該有的解析度把它們混著用:不是按每台電腦、也不是按每個應用程式,而是按每個世界。
安裝 Bromure。建立一個叫「閱讀」的設定檔。把它指向 WARP。去看看當網路不再認得你時,它看起來是什麼樣子。