歡迎光臨
每天分享高質量文章

6 個打造你自己的 VPN 的開源工具 | Linux 中國

想嘗試建立您自己的 VPN,但是不確定從哪裡開始嗎?
— Paul Bischoff


致謝
編譯自 | 
https://opensource.com/article/18/8/open-source-tools-vpn
 
 作者 | Paul Bischoff
 譯者 | heguangzhi ??共計翻譯:3.0 篇 貢獻時間:7 天

想嘗試建立您自己的 VPN,但是不確定從哪裡開始嗎?

如果您想嘗試建立您自己的 VPN,但是不確定從哪裡開始,那麼您來對地方了。我將比較 6 個在您自己的服務器上搭建和使用 VPN 的最好的自由和開源工具。不管您是想為您的企業建立站點到站點的 VPN,還是只是想創建一個遠程代理訪問以解除訪問限制並對 ISP 隱藏你的互聯網流量,都可以通過 VPN 來達成。

根據您的需求和條件,並參考您自己的技術特長、環境以及您想要通過 VPN 實現的標的。需要考慮以下因素:

◈ VPN 協議
◈ 客戶端的數量和設備型別
◈ 服務端的兼容性
◈ 需要的技術專業能力

Algo

Algo[1] 是從下往上設計的,可以為需要互聯網安全代理的商務旅客創建 VPN 專用網。它“只包括您所需要的最小化的軟體”,這意味著為了簡單而犧牲了可擴展性。Algo 是基於 StrongSwan 的,但是刪除了所有您不需要的東西,這有另外一個好處,那就是去除了新手可能不會註意到的安全漏洞。

作為額外的獎勵,它甚至可以屏蔽廣告!

Algo 只支持 IKEv2 協議和 Wireguard。因為對 IKEv2 的支持現在已經內置在大多數設備中,所以它不需要像 OpenVPN 這樣的客戶端應用程式。Algo 可以使用 Ansible 在 Ubuntu (首選選項)、Windows、RedHat、CentOS 和 FreeBSD 上部署。 使用 Ansible 可以自動化安裝,它會根據您對一組簡短的問題的回答來配置服務。卸載和重新部署也非常容易。

Algo 可能是在本文中安裝和部署最簡單和最快的 VPN。它非常簡潔,考慮周全。如果您不需要其他工具提供的高級功能,只需要一個安全代理,這是一個很好的選擇。請註意,Algo 明確表示,它不是為瞭解除地理封鎖或逃避審查,主要是為了加密。

Streisand

Streisand[2] 可以使用一個命令安裝在任何 Ubuntu 16.04 服務器上;這個過程大約需要 10 分鐘。它支持 L2TP、OpenConnect、OpenSSH、OpenVPN、Shadowsocks、Stunnel、Tor bridge 和 WireGuard。根據您選擇的協議,您可能需要安裝客戶端應用程式。

在很多方面,Streisand 與 Algo 相似,但是它提供了更多的協議和定製。這需要更多的工作來管理和維護,但也更加靈活。註意 Streisand 不支持 IKEv2。因為它的多功能性,我認為 Streisand 在某國和土耳其這樣的地方繞過審查制度更有效,但是 Algo 的安裝更容易和更快。

使用 Ansible 可以自動化安裝,所以不需要太多的專業技術知識。通過向用戶發送自定義生成的連接指令,包括服務器 SSL 證書的嵌入副本,可以輕鬆添加更多用戶。

卸載 Streisand 是一個快速無痛的過程,您也可以隨時重新部署。

OpenVPN

OpenVPN[3] 要求客戶端和服務器應用程式使用其同名的協議建立 VPN 連接。OpenVPN 可以根據您的需求進行調整和定製,但它也需要更多專業技術知識。它支持遠程訪問和站點到站點配置;如果您計劃使用 VPN 作為互聯網代理,前者是您所需要的。因為在大多數設備上使用 OpenVPN 需要客戶端應用程式,所以最終用戶必須保持更新。

服務器端您可以選擇部署在雲端或你自己的 Linux 服務器上。兼容的發行版包括 CentOS 、Ubuntu 、Debian 和 openSUSE。Windows 、MacOS 、iOS 和 Android 都有客戶端應用程式,其他設備也有非官方應用程式。企業可以選擇設置一個 OpenVPN 接入服務器,但是對於想要使用社區版的個人來說,這可能有點過分。

OpenVPN 使用靜態密鑰加密來配置相對容易,但並不十分安全。相反,我建議使用 easy-rsa[4]來設置它,這是一個密鑰管理包,可以用來設置公鑰基礎設施(PKI)。這允許您一次連接多個設備,並因此得到完美前向保密perfect forward secrecy和其他好處的保護。OpenVPN 使用 SSL/TLS 進行加密,而且您可以在配置中指定 DNS 服務器。

OpenVPN 可以穿透防火牆和 NAT 防火牆,這意味著您可以使用它繞過可能會阻止連接的網關和防火牆。它同時支持 TCP 和 UDP 傳輸。

StrongSwan

您可能會遇到一些名稱中有 “Swan” 的各種 VPN 工具。FreeS/WAN 、OpenSwan、LibreSwan 和 strongSwan[5] 都是同一個專案的分叉,後者是我個人最喜歡的。在服務器端,strongSwan 可以運行在 Linux 2.6、3.x 和 4x 內核、Android、FreeBSD、macOS、iOS 和 Windows 上。

StrongSwan 使用 IKEv2 協議和 IPSec 。與 OpenVPN 相比,IKEv2 連接速度更快,同時提供了很好的速度和安全性。如果您更喜歡不需要在客戶端安裝額外應用程式的協議,這將非常有用,因為現在生產的大多數新設備都支持 IKEv2,包括 Windows、MacOS、iOS 和 Android。

StrongSwan 並不特別容易使用,儘管文件不錯,但它使用的詞彙與大多數其他工具不同,這可能會讓人比較困惑。它的模塊化設計讓它對企業來說很棒,但這也意味著它不是很精簡。這當然不像 Algo 或 Streisand 那麼簡單。

訪問控制可以基於使用 X.509 屬性證書的組成員身份,這是 strongSwan 獨有的功能。它支持用於集成到其他環境(如 Windows Active Directory)中的 EAP 身份驗證方法。strongSwan 可以穿透NAT 網絡防火牆。

SoftEther

SoftEther[6] 是由日本築波大學的一名研究生髮起的一個專案。SoftEther VPN 服務器和 VPN 網橋可以運行在 Windows、Linux、OSX、FreeBSD 和 Solaris 上,而客戶端應用程式可以運行在 Windows、Linux 和 MacOS 上。VPN 網橋主要用於需要設置站點到站點 VPN 的企業,因此單個用戶只需要服務器和客戶端程式來設置遠程訪問。

SoftEther 支持 OpenVPN、L2TP、SSTP 和 EtherIP 協議,由於採用“基於 HTTPS 的以太網”偽裝,它自己的 SoftEther 協議聲稱能夠免疫深度資料包檢測。SoftEther 還做了一些調整,以減少延遲並增加吞吐量。此外,SoftEther 還包括一個克隆功能,允許您輕鬆地從 OpenVPN 過渡到 SoftEther。

SoftEther 可以穿透 NAT 防火牆並繞過防火牆。在只允許 ICMP 和 DNS 資料包的受限網絡上,您可以利用 SoftEther 的基於 ICMP 或 DNS 的 VPN 方式來穿透防火牆。SoftEther 可與 IPv4 和 IPv6 一起工作。

SoftEther 比 OpenVPN 和 strongSwan 更容易設置,但比 Streisand 和 Algo 要複雜。

WireGuard

WireGuard[7] 是這個名單上最新的工具;它太新了,甚至還沒有完成。也就是說,它為部署 VPN 提供了一種快速簡便的方法。它旨在通過使 IPSec 更簡單、更精簡來改進它,就像 SSH 一樣。

與 OpenVPN 一樣,WireGuard 既是一種協議,也是一種用於部署使用所述協議的 VPN 的軟體工具。一個關鍵特性是“加密密鑰路由”,它將公鑰與隧道內允許的 IP 地址串列相關聯。

WireGuard 可用於 Ubuntu、Debian、Fedora、CentOS、MacOS、Windows 和安卓系統。WireGuard 可在 IPv4 和 IPv6 上工作。

WireGuard 比大多數其他 VPN 協議輕得多,它只在需要發送資料時才發送資料包。

開發人員說,WireGuard 還不應該被信任,因為它還沒有被完全審計過,但是歡迎你給它一個機會。這可能是下一個熱門!

自製 VPN vs. 商業 VPN

製作您自己的 VPN 為您的互聯網連接增加了一層隱私和安全,但是如果您是唯一一個使用它的人,那麼裝備精良的第三方,比如政府機構,將很容易追蹤到你的活動。

此外,如果您計劃使用您的 VPN 來解鎖地理鎖定的內容,自製的 VPN 可能不是最好的選擇。因為您只能從一個 IP 地址連接,所以你的 VPN 服務器很容易被阻止。

好的商業 VPN 不存在這些問題。有了像 ExpressVPN[8] 這樣的提供商,您可以與數十甚至數百個其他用戶共享服務器的 IP 地址,這使得跟蹤一個用戶的活動幾乎變得不可能。您也可以從成百上千的服務器中選擇,所以如果其中一臺被列入黑名單,你可以切換到另一臺。

然而,商業 VPN 的權衡是,您必須相信提供商不會窺探您的互聯網流量。一定要選擇一個有明確的無日誌政策的信譽良好的供應商。


via: https://opensource.com/article/18/8/open-source-tools-vpn

作者:Paul Bischoff[10] 選題:lujun9972 譯者:heguangzhi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

赞(0)

分享創造快樂