Headscale,Tailscale 的開源實現

幾天前 我們在博客上談論 Firezone, 這是用於創建基於 WireGuard 的 VPN 服務器的出色實用程序。

現在是時候討論一個非常相似的實用程序,稱為“Headscale”,它是 作為開源實現開發的項目 服務器組件 來自 Tailscale 網絡 VPN,它允許您在自己的場所創建類似於 Tailscale 的 VPN 網絡,而無需鏈接到第三方服務。

尾鱗 允許在網絡中組合任意數量的地理上分散的主機, 建立在網狀網絡的形像上,其中每個節點直接 (P2P) 或通過相鄰節點與其他節點通信,無需通過 VPN 提供商的集中式外部服務器傳輸流量。

除此之外 支持基於ACL的路徑和訪問控制 並且為了在使用地址轉換器(NAT)的條件下建立通信通道,支持STUN、ICE和DERP機制(類似於TURN,但基於HTTPS)。 如果某些節點之間的通信通道被阻塞,網絡可以重新路由以通過其他節點路由流量。

尾鱗以及與星雲項目的區別 它還旨在創建具有網狀路由的分佈式 VPN 網絡,使用 Wireguard 協議組織節點之間的數據傳輸, 而 Nebula 使用了 Tinc 項目的開發成果, 它使用 AES-256 算法加密 GSM 數據包(Wireguard 使用 ChaCha20 加密,在測試中顯示出更高的性能和響應能力)。

另一個類似的項目 Innernet 正在單獨開發,其中 Wireguard 協議 它還用於在節點之間交換數據。 相比之下,Innernet 上的 Tailscale 和 Nebula 使用了不同的基於 ACL 的訪問分離系統 在分離和隔離不同範圍的 IP 地址時,標籤與單個節點和子網無關,就像在傳統 Internet 網絡中一樣。

此外,Innernet 使用 Rust 而不是 Go,值得一提的是,幾天前發布了具有改進 NAT 遍歷支持的 Innernet 1.5。 還有一個 Netmaker 項目,它允許您使用 Wireguard 連接具有不同拓撲的網絡,但它的代碼是在 SSPL(服務器端公共許可證)下提供的,由於存在歧視性要求,該項目不開放。

Tailscale 使用免費增值模式分發 個人和公司和團隊的付費訪問。 Tailscale 客戶端的組件,除了適用於 Windows 和 macOS 的圖形應用程序,都是在 BSD 許可下以開源項目的形式開發的。

Tailscale 用於驗證新客戶端的外包服務器軟件, 協調密鑰管理s 和組織節點之間的通信是專有的。 Headscale 項目解決了這個問題,並提供了一個單獨的 Tailscale 服務器組件的開源實現。

Headscale 接管節點公鑰交換功能s,還執行分配IP地址和在節點之間分配路由表的操作。

以目前的形式, Headscale 實現了管理服務器的所有主要功能, 除了支持 MagicDNS 和 Smart DNS。 特別是, 支持註冊節點功能 (甚至通過網絡),調整網絡以添加或刪除節點,使用命名空間劃分子網(您可以為多個用戶創建 VPN 網絡),組織從節點到不同命名空間中的子網的共享訪問,路由控制(包括分配出口節點)訪問外部世界)、通過 ACL 共享訪問和 DNS 執行。

Headscale 代碼是用 Go 編寫的,並在 BSD 許可下分發。 該項目由歐洲航天局的胡安·豐特開發。

最後,如果您有興趣能夠了解更多,可以諮詢詳情 在下面的鏈接中。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。