什麼是 WireGuard?為什麼 Linux 使用者為它瘋狂?
從普通的 Linux 使用者到 Linux 建立者 Linus Torvalds,每個人都對 WireGuard 很感興趣。什麼是 WireGuard,它為何如此特別?
什麼是 WireGuard?
WireGuard 是一個易於配置、快速且安全的開源 VPN,它利用了最新的加密技術。目的是提供一種更快、更簡單、更精簡的通用 VPN,它可以輕鬆地在樹莓派這類低端裝置到高階伺服器上部署。
IPsec 和 OpenVPN 等大多數其他解決方案是幾十年前開發的。安全研究人員和核心開發人員 Jason Donenfeld 意識到它們速度慢且難以正確配置和管理。
這讓他建立了一個新的開源 VPN 協議和解決方案,它更加快速、安全、易於部署和管理。
WireGuard 最初是為 Linux 開發的,但現在可用於 Windows、macOS、BSD、iOS 和 Android。它仍在活躍開發中。
為什麼 WireGuard 如此受歡迎?
除了可以跨平臺之外,WireGuard 的最大優點之一就是易於部署。配置和部署 WireGuard 就像配置和使用 SSH 一樣容易。
看看 WireGuard 設定指南。安裝 WireGuard、生成公鑰和私鑰(像 SSH 一樣),設定防火牆規則並啟動服務。現在將它和 OpenVPN 設定指南進行比較——有太多要做的了。
WireGuard 的另一個好處是它有一個僅 4000 行程式碼的精簡程式碼庫。將它與 OpenVPN(另一個流行的開源 VPN)的 100,000 行程式碼相比。顯然,除錯 WireGuard 更加容易。
不要因其簡單而小看它。WireGuard 支援所有最新的加密技術,例如 Noise 協議框架、Curve25519、ChaCha20、Poly1305、BLAKE2、SipHash24、HKDF 和安全受信任結構。
由於 WireGuard 執行在核心空間,因此可以高速提供安全的網路。
這些是 WireGuard 越來越受歡迎的一些原因。Linux 創造者 Linus Torvalds 非常喜歡 WireGuard,以至於將其合併到 Linux Kernel 5.6 中:
我能否再次宣告對它的愛,並希望它能很快合併?也許程式碼不是完美的,但我不在乎,與 OpenVPN 和 IPSec 的恐怖相比,這是一件藝術品。
Linus Torvalds
如果 WireGuard 已經可用,那麼將其包含在 Linux 核心中有什麼大驚小怪的?
這可能會讓新的 Linux 使用者感到困惑。你知道可以在 Linux 上安裝和配置 WireGuard VPN 伺服器,但同時也會看到 Linux Kernel 5.6 將包含 WireGuard 的訊息。讓我向您解釋。
目前,你可以將 WireGuard 作為核心模組安裝在 Linux 中。而諸如 VLC、GIMP 等常規應用安裝在 Linux 核心之上(在 使用者空間中),而不是內部。
當將 WireGuard 安裝為核心模組時,基本上需要你自行修改 Linux 核心並向其新增程式碼。從 5.6 核心開始,你無需手動新增核心模組。預設情況下它將包含在核心中。
在 5.6 核心中包含 WireGuard 很有可能擴充套件 WireGuard 的採用,從而改變當前的 VPN 場景。
總結
WireGuard 之所以受歡迎是有充分理由的。諸如 Mullvad VPN 之類的一些流行的關注隱私的 VPN 已經在使用 WireGuard,並且在不久的將來,採用率可能還會增長。
希望你對 WireGuard 有所瞭解。與往常一樣,歡迎提供反饋。
via: https://itsfoss.com/wireguard/
作者:Abhishek Prakash 選題:lujun9972 譯者:geekpi 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
相關文章
- ITAM是什麼?為什麼它很重要?
- 什麼是客戶分析,為什麼它很重要?
- 什麼是Nginx?Linux為什麼使用Nginx?NginxLinux
- 【Learning eBPF-1】什麼是 eBPF?為什麼它很吊?eBPF
- Linux是什麼系統?為什麼要學習Linux?Linux
- 什麼是Linux?為什麼企業會需要Linux運維?Linux運維
- Linux是什麼?為什麼推薦學習Linux技術?Linux
- 什麼是shell指令碼?Linux為什麼學習shell?指令碼Linux
- 邊緣計算是什麼以及為什麼需要它
- 【知識分享】香港伺服器的IPMI是什麼?為什麼需要它?伺服器
- 人是什麼?人生是什麼?人為什麼會變?
- 什麼是Docker?為什麼使用docker?Docker
- GC是什麼?為什麼要有GC?GC
- 在Linux中,什麼是Linux作業系統,它的特點是什麼?Linux作業系統
- 什麼是框架?為什麼說 Angular 是框架?框架Angular
- 為什麼要有 Servlet ,什麼是 Servlet 容器,什麼是 Web 容器?ServletWeb
- Python是什麼?為什麼這麼搶手?Python
- 什麼是Tornado?它的特點是什麼?
- 嵌入式Linux是什麼?它與普通Linux有什麼不同之處?Linux
- heredoc是什麼?它能為PHP做什麼?PHP
- Python是什麼?為什麼要掌握python?Python
- Elasticsearch:是什麼?你為什麼需要他?Elasticsearch
- TypeScript是什麼,為什麼要使用它?TypeScript
- 什麼是HSTS,為什麼要使用它?
- 什麼是Shell?Linux shell分為幾類?Linux
- 為什麼說js是弱型別語言,它的優缺點分別是什麼?JS型別
- [譯] 一文教你什麼是漸進增強,為什麼它很重要?
- 為什麼它叫做六西格瑪?
- 什麼是Python?Python為什麼這麼搶手?Python
- 為什麼不做開發做運維?Linux為什麼這麼廣泛?運維Linux
- 【譯】為什麼命名“它”為依賴屬性(DependencyProperty)
- 公司為什麼要使用OKR,目的是什麼?OKR
- 什麼是 SCRM,企業為什麼需要SCRM?
- 什麼是隧道代理 為什麼選隧道代理
- Python是什麼?為什麼Python受歡迎?Python
- 【前端筆記】Vuex 是什麼,為什麼需要前端筆記Vue
- Linux運維管理皮膚為什麼我只選擇它?Linux運維
- 什麼是AMD Gonzalo,為什麼說它與下一代主機有關?Go