Oracle Cloud 免費層級:自託管 TURN 伺服器的經濟實惠選擇

BigGo Editorial Team
Oracle Cloud 免費層級:自託管 TURN 伺服器的經濟實惠選擇

技術社群一直在討論託管 WebRTC 基礎設施的替代方案,尤其是在 Google Cloud 的免費層級對於 DIY VPN 專案變得不太可行之後。Oracle Cloud 的免費層級已成為開發者中的熱門選擇,特別是那些希望自託管 TURN(Traversal Using Relays around NAT,使用中繼穿越 NAT)伺服器和其他網路服務而又不想花費太多的開發者。

Oracle Cloud 作為一個經濟實惠的平臺

Oracle Cloud Infrastructure(OCI)提供了一個引人注目的免費層級,包括可以無限期使用的虛擬機器、記憶體和儲存空間。雖然文章提供了在 Oracle 平臺上設定 TURN 伺服器的詳細說明,但社群成員指出,這種技術實現幾乎可以在任何虛擬機器託管平臺上執行。Oracle 產品的主要優勢似乎是價格點,儘管有些人對其長期可行性表示懷疑。

「Oracle 部分可能是整個技術棧中最基本、最可互換的部分。對我來說,困難的部分是所有埠/防火牆配置,正如你所說,這在任何地方都會非常相似。」

對於業餘專案和個人使用場景,Oracle 的免費層級提供了足夠的資源來執行 TURN 伺服器等服務,而這些服務在其他雲平臺上可能需要付費訂閱。

Oracle Cloud 免費層級資源:

  • 1-2臺執行 Ubuntu 或 CentOS 的虛擬伺服器
  • 伺服器記憶體共24GB
  • 200GB塊儲存

TURN伺服器的安全方法:

  • 基本身份驗證
  • 短期憑證生成
  • 跨域請求阻止
  • 時間限制的身份驗證機制
  • 分配驗證API

NAT 穿越的挑戰

社群討論的很大一部分圍繞著需要 TURN 伺服器的技術挑戰。NAT(網路地址轉換)穿越仍然是網路中的一個持續問題,特別是對於點對點通訊。當由於 NAT 配置或防火牆導致對等點之間無法直接連線時,TURN 伺服器充當中繼。

一些評論者將 TURN 描述為一種不優雅的解決方案,需要透過遠端伺服器路由流量,而理論上兩臺計算機可以直接通訊。然而,其他人則認為 TURN 是一種實用的解決方案,考慮到 IPv4 地址的限制和廣泛的 NAT 實施。討論強調了 IPv6 本應解決許多這些問題,但由於採用不夠廣泛,TURN 伺服器仍然必不可少。

除了 NAT 穿越外,TURN 伺服器還提供額外的好處,包括協議橋接(TCP 到 UDP)、透過隱藏客戶端 IP 地址來保護隱私,以及透過在網路邊緣建立受控分配帶來的某些安全優勢。

公共 TURN 伺服器的安全考慮

在自託管 TURN 伺服器時,安全成為一個關鍵問題。社群成員強調了潛在的濫用途徑,指出如果沒有適當的身份驗證機制,公共 TURN 伺服器可能被濫用來中繼與主機應用無關的任意流量。

文章及後續評論描述了幾種減輕這些風險的方法,包括:

  1. 實施教程中描述的基本身份驗證
  2. 為使用者生成短期、一次性憑證
  3. 阻止對憑證伺服器的跨源請求
  4. 使用具有過期時間的身份驗證機制
  5. 利用 coturn 的 API 來驗證分配和許可權只為授權使用者建立

這些安全措施對於計劃部署 TURN 伺服器的人來說至關重要,尤其是在生產環境中。

替代平臺和實現

雖然 Oracle Cloud 在討論中佔據主導地位,但評論者提到了其他平臺,如 Hetzner,對於那些願意支付少量費用的人來說,這些平臺提供了具有競爭力的價格。社群還簡要提到了除 coturn(文章中介紹的那個)之外的不同 TURN 伺服器實現,包括用 Elixir 和 Go 編寫的選項。

一些社群成員表示感謝像 PeerJS 這樣的服務,它們在開發過程中提供對 TURN 基礎設施的臨時訪問,使開發者能夠在實現自己的生產就緒解決方案之前使概念驗證應用程式正常工作。

總之,自託管 TURN 伺服器對於使用 WebRTC 和其他點對點技術的開發者來說是一項重要能力。雖然 Oracle Cloud 的免費層級目前提供了一條經濟的部署路徑,但這些討論中分享的技術知識廣泛適用於各種平臺。與任何面向公眾的服務一樣,在實施自己的 TURN 基礎設施時,安全考慮應該保持最重要的地位。

參考:如何自託管(幾乎)免費、開源的VPN伺服器