定價
PiVPN 是一款免費的開源軟件套件,可使用 OpenVPN 服務器軟件設置 VPN 服務器。它是專門為在低成本 Raspberry Pi 上運行而設計的,儘管它(理論上)應該適用於大多數 Debian 設置。
基本的 Raspberry Pi 售價為 35 美元,您還需要添加一張 SD 卡來安裝操作系統,以及一個 WiFi 適配器或以太網電纜來提供互聯網連接。這些是最低要求,但您可以根據需要添加更多要求。
PiVPN 應該可以在任何 Raspberry Pi 上運行良好。我們使用舊的 Pi 2 型號 B,但鑑於其價格較低,我們建議購買最新型號的 Raspberry Pi 以獲得最佳 OpenVPN 性能。
“強烈建議”使用 Raspbian Lite(撰寫本文時為“Buster”),以便 Pi 可以充當無頭 VPN 服務器,而無需連接屏幕、鍵盤和鼠標。在這樣的設置下,您可以通過安裝和控制 PiVPN,儘管您暫時需要連接屏幕和鍵盤才能啟用 SSH。
看看我們的方法通過 SSH 連接到 rapberry Pi指南以了解更多信息。
特徵
- 一行安裝
- 將為您設置一個靜態IP地址
- 無人值守升級
- 基於 UDP 或 TCP 的 OpenVPN
- 擁有或選擇公共 DNS 服務器
隱私和安全
PiVPN 實際上只是社區開發的用於部署開源軟件的腳本的集合。所以管轄權這並不是一個真正的問題。
技術保障
用於設置 PiVPN 的所有開源腳本都是高度可配置的。但開箱即用時,您的 PiVPN 將使用以下 OpenVPN 設置:
數據通道: 一個AES-256-CBC 密碼使用 HMAC SHA256 身份驗證。
控制通道:具有 ECDH 握手加密和 HMAC SHA256 身份驗證的 AES-256-ETR 密碼。 ECHD 還提供完美的前向保密性。
ECDH 使用 ECDSA 簽名算法,用戶可以選擇 256 位到 512 位。作為參考,ECDSA-256 被認為與 RSA-384 一樣安全。如果您喜歡或需要保持與 OpenVPN 2.4 之前的客戶端的兼容性,那麼您可以選擇使用 RSA 而不是 ECDSA。
如果您想了解有關此主題的更多信息,請查看我們的VPN 加密終極指南。
不過,需要考慮的一件事是DNS加密。您可以選擇安全的 DNS 提供商(或執行您自己的 DNS 查找),但默認情況下,DNS 請求不加密。幸運的是,可以將 DNSCrypt 添加到您的 PiVPN 中。
其他考慮因素
人們經常(我們認為這是錯誤的)說法是,運行自己的 VPN 服務器比信任第三方 VPN 服務為您執行此操作更加私密。但這取決於你如何看待問題。
您的 PiVPN 將 100% 在您自己的控制之下,並且它將阻止您的互聯網提供商看到您在網上所做的事情,所有這些的好處是無需支付任何每月的訂閱費用。這也是在使用公共 WiFi 時保護您的數據和瀏覽習慣的好方法。
儘管如此,PiVPN 是通過您的 IP 地址運行的,因此使用 VPN 時執行的任何活動都可以輕鬆追溯到您。網站仍然會看到您的真實 IP 地址,因為它是您的 PiVPN 使用的 IP 地址。
運行自己的 VPN 服務器有一定的優勢,但如果您想要隱私,那麼一個好的選擇無日誌 VPN可能會更好地為您服務。
支持
儘管提供了(稍微過時的)第三方設置指南和一些教學視頻的鏈接,但對 PiVPN 的官方支持很少。然而,PiVPN 的優點在於,它使將 Raspberry Pi 設置為 OpenVPN 服務器變得非常簡單。
如果您確實遇到問題,請訪問 PiVPN 論壇github頁面處於活動狀態,但並非所有問題都會得到答案。
筆記
為了簡潔起見,由於篇幅原因,我們選擇不顯示設置過程中顯示的每個點擊屏幕,但這些都是不言自明的,應該可以毫無問題地指導您。
如果您要將 PiVPN 作為無頭服務器運行,那麼您將需要通過 SSH 連接到它。我們可能會發布我們的指南來實現這一點,但目前,請查看這篇文章如何通過 SSH 連接到 Raspberry Pi。
安裝 OpenVPN 服務器
- 啟動終端並輸入:
捲曲 -L https://install.pivpn.io |巴什
這將啟動一個簡單的 GUI 界面,在整個設置過程中您都可以輕鬆掌握。大多數步驟都是自動完成的,但安裝腳本會解釋正在發生的事情並要求您做出幾個關鍵決定。

設置 VPN 服務器連接到的靜態 IP 地址。這通常是設置您自己的 VPN 服務器時最棘手的部分之一,但 PiVPN 可以為您完成這一切!只需選擇您要使用的網絡接口(如果您有多個)...

...以及可以聯繫您的服務器的 IP 地址。如果您單擊“是”,那麼 PiVPN 將使用您當前的 IP 地址。

PiVPN 的一個很酷的功能是它會通過下載和安裝補丁和升級來自動維護自身。您可以選擇退出,但我們不確定您為什麼要這樣做。

您可以在以下位置運行 OpenVPNUDP或TCP模式,但除非您出於混淆原因需要 TCP(常規HTTPS流量通過 TCP 端口 443 運行),那麼您可能應該堅持使用 UDP。

選擇用於的加密TLS 交換。正如上面技術安全部分所討論的,默認情況下 PiVPN 使用 ECDH 和 ECDSA 簽名算法來保護 TLS 連接並提供完美的前向保密。如果您需要向後兼容舊客戶端,那麼您可以選擇使用 RSA。

假設您使用 ECDH,您可以選擇使用最多 521 位證書。

選擇 DNS 服務器。您可以使用家庭 LAN 在另一台計算機上或 Raspberry Pi 本身上運行您自己的 DNS 服務器。不過,使用第三方 DNS 服務要容易得多。

如果您稍微關心隱私,那麼您顯然應該避免使用 Google DNS 之類的服務,但也有一些優秀的注重隱私的 DNS 服務這些天在外面。

不過,正如已經提到的,如果您希望對 DNS 查詢進行加密,那麼您需要在 Raspberry Pi 上安裝 DNSCrypt。
就是這樣!只需重新啟動您的 Raspberry Pi,它就可以開始充當 OpenVPN 服務器。

這很棒,但如果沒有 OpenVPN 應用程序的 .ovpn 文件,您實際上無法連接到它......
創建 OpenVPN 配置證書
打開終端並輸入私網查看您可用的核心 PiVPN 命令。

要創建 .ovpn 證書,請輸入pivpn-a只需按照基於文本的嚮導操作即可。

您可以為客戶端使用任何您喜歡的名稱和密碼(.ovpn 文件)。完成後,.ovpn 文件將保存到 Pi 的 home/pi/ovpns 文件夾中。從這裡您可以通過電子郵件、LAN 連接、雲存儲服務、USB 記憶棒或其他方式將其傳輸到您的客戶端設備。
PiVPN 建議您為連接的每台設備創建一個唯一的 ovpn.cert。
連接到您的 PiVPN 服務器
將上一步中生成的 .ovpn 文件傳輸到您的設備後,您就可以像使用任何常規 .ovpn 文件一樣使用 OpenVPN 軟件(例如OpenVPN 圖形用戶界面對於 Windows,隧道視野對於 macOS,適用於 Android 的 OpenVPN,OpenVPN 連接(適用於大多數平台,但主要適用於 iOS),或通過 Linux 中的 NetworkManager 或 GUI。看看我們的如何為 Linux 設置 VPN頁面了解更多信息。

您可以通過輸入來監控 Raspberry Pi 中連接的設備私網-c。

重要的!
要連接到 PiVPN 服務器,您還必須通過路由器進行端口轉發。具體細節因路由器而異,因此請參閱路由器的文檔。除非您更改了默認設置,否則您需要轉發端口 1194(通常是 UDP,除非您在上面的設置步驟 4 中選擇了 TCP)。
表現
出於興趣,我們使用 2015 年的舊 Raspberry Pi 2 model B 1.1 進行了一些速度測試。
Pi 和測試機都通過以太網電纜插入我們的路由器,因此與服務器的距離不是一個因素。因此,這純粹是為了測試我們老化的 Raspberry Pi 處理這項艱鉅的工作的能力OpenVPN 加密和解密。

沒有VPN

連接到運行 PiVPN 的 Raspberry Pi 2 model B
儘管舊的 Raspberry Pi 顯然有些困難,但這些速度對於上網來說是完全可用的。但值得注意的是,新的 Raspberry Pi 4 是一台速度快得多的機器。
皮孔
一件很酷的事情是,您可以使用相同的 Raspberry Pi 來運行 PiVPN 和 Pi-hole 但這是另一個項目了!
