WireGuard - WireGuard
![]() | |
Původní autoři | Jason A. Donenfeld |
---|---|
Vývojáři | Jason A. Donenfeld |
Stabilní uvolnění | 0.0.20190913[1] / 13. září 2019 |
Úložiště | ![]() |
Napsáno | C (Linux modul jádra, OpenBSD ovladač jádra), Jít (implementace uživatelského prostoru) |
Operační systém | [2][3][A] |
Typ | Soukromá virtuální síť |
Licence | GPLv2 |
webová stránka | www |
WireGuard je zdarma a open-source softwarová aplikace a komunikační protokol který implementuje soukromá virtuální síť (VPN) techniky k vytváření zabezpečených bod-bod připojení v směrováno nebo přemostěn konfigurace. Je spuštěn jako modul uvnitř Linuxové jádro (nebo jádro BSD) a usiluje o lepší výkon a větší úsporu energie než IPsec a OpenVPN tunelovací protokoly.[4] Autorem je Jason A. Donenfeld a je publikován pod GNU General Public License (GPL) verze 2.[5] Verze softwaru pro Linux dosáhla stabilního produkčního vydání a do vydání jádra Linuxu byla začleněna koncem března 2020.[3]
Pozdravovat
Cílem WireGuard je poskytnout jednoduchou a efektivní implementaci virtuální privátní sítě. Recenze z roku 2018 od Ars Technica poznamenal, že populární technologie VPN, jako je OpenVPN a IPsec je často složité nastavit, snadno se odpojit (při absenci další konfigurace), zabrat značný čas vyjednávání o opětovném připojení, mohou používat zastaralé šifry a mají relativně rozsáhlé kódové základny s více než 400 000 respektive 600 000 řádky kódu, což brání ladění .[6]
Návrh WireGuardu se snaží tyto problémy omezit a jeho cílem je zvýšit zabezpečení a snadnou správu tunelu ve výchozím nastavení. Použitím verzování kryptografických balíčků se zaměřuje na šifry, o nichž se předpokládá, že patří mezi nejbezpečnější současné metody šifrování, a v době Ars Technica recenze měla kódovou základnu přibližně 4000 řádků kódu jádra, z toho asi 1% OpenVPN nebo IPsec, tvorba bezpečnostní audity jednodušší a chválen Linuxové jádro tvůrce Linus Torvalds ve srovnání s OpenVPN a IPsec jako „umělecké dílo“.[7] Ars Technica uvedl, že při testování byly stabilní tunely snadno vytvořeny pomocí WireGuard ve srovnání s alternativami, a uvedl, že by bylo „těžké se vrátit zpět“ k dlouhým zpožděním opětovného připojení ve srovnání s okamžitým opětovným připojením „bez nesmyslu“ od WireGuard.[6]
Protokol
WireGuard využívá následující:[5]
- Křivka25519 pro výměna klíčů
- ChaCha20 pro šifrování
- Poly1305 pro autentizace dat
- SipHash pro hashtable klíče
- BLAKE2s pro hashování
- Pouze na základě UDP.[8]
V květnu 2019 vědci z INRIA zveřejnil strojově ověřený důkaz WireGuard, vyrobený pomocí CryptoVerif důkaz asistent.[9]
Šifrování
WireGuard podporuje pouze ChaCha20.
WireGuard podporuje Pre-shared Symmetric, která je zahrnuta pro zmírnění veškerých budoucích pokroků v kvantovém výpočtu. Z krátkodobého hlediska, pokud dojde k narušení předem sdíleného symetrického klíče, klíče Curve25519 stále poskytují více než dostatečnou ochranu.
Síťování
WireGuard funguje pouze do konce UDP.
WireGuard plně podporuje IPv6, uvnitř i vně tunelu. Podporuje pouze vrstva 3 pro oba IPv4 a IPv6 a může zapouzdřit v4-v-v6 a naopak.[10]
WireGuard podporuje více topologie:
- Point-to-point
- Hvězda (Server / klient)
- Koncový bod klienta nemusí být definován dříve, než klient začne odesílat data.
- Koncové body klienta lze staticky předdefinovat.
- Pletivo
Od té doby bod-bod je podporováno, lze vytvořit i jiné topologie, ale ne ve stejném tunelu.
Rozšiřitelnost
Program WireGuard je navržen tak, aby byl rozšířen o programy a skripty třetích stran. To se používá k rozšíření WireGuard o různé funkce, včetně uživatelsky přívětivějších rozhraní pro správu (včetně snadnějšího nastavení klíčů), protokolování, dynamických aktualizací brány firewall a LDAP integrace.
Vyloučení takových složitých funkcí z minimální základní kódové základny zlepšuje jeho stabilitu a zabezpečení.
Dějiny
Nejstarší snímky kódové základny existují od 30. června 2016.[11] Poskytovateli služeb VPN byli čtyři první uživatelé WireGuard Mullvad,[12] AzireVPN,[13] IVPN[14] a kryptoměna.[15] WireGuard obdržel dary od Mullvad, Soukromý přístup k internetu, IVPN, NLnet Foundation[16] a nyní také z OVPN.[17]
Od června 2018[Aktualizace] vývojáři WireGuardu doporučují zacházet s kódem a protokolem jako s experimentálními a upozornit, že dosud nedosáhli stabilního vydání kompatibilního s CVE sledování všech bezpečnostních slabin, které by mohly být objeveny.[18][19]
Dne 9. prosince 2019 David Miller - primární správce síťového zásobníku Linux - přijal záplaty WireGuard do stromu správce „net-next“ pro zařazení do připravovaného jádra.[20][21][22]
Dne 28. ledna 2020 Linus Torvalds sloučil David Millerův síťový další strom a WireGuard vstoupil do hlavního stromu linuxového jádra.[23]
20. března 2020 Debian vývojáři povolili možnosti sestavení modulu pro WireGuard ve své konfiguraci jádra pro verzi Debian 11 (testování).[24]
Dne 29. března 2020 byla aplikace WireGuard začleněna do stromu vydání Linux 5.6. Verze softwaru pro Windows zůstává v beta verzi.[3]
Dne 30. března 2020, Android vývojáři přidali nativní podporu jádra pro WireGuard ve svém Generic Image jádra.[25]
Dne 22. dubna 2020, NetworkManager vývojář Beniamino Galvani se spojil GUI podpora pro WireGuard. [26]
Dne 12. května 2020 navrhl Matt Dunwoodie patche pro nativní podporu jádra WireGuard v OpenBSD.[27]
Dne 22. června 2020, po práci Matta Dunwoodieho a Jasona A. Donenfelda, byla podpora OpenGuard importována do OpenBSD.[28]
Dne 23. Listopadu 2020 vydal Jason A. Donenfeld aktualizaci Okna balíček zlepšující instalaci, stabilitu, PAŽE Podpěra, podpora, podnik funkce.[29]
Dne 29. listopadu 2020 byla podpora WireGuard importována do FreeBSD 13 jádra.[30]
Recepce
Oregon senátor Ron Wyden doporučil Národní institut pro standardy a technologie (NIST), že hodnotí WireGuard jako náhradu za stávající technologie jako IPsec a OpenVPN.[31]
Implementace
Implementace protokolu WireGuard zahrnují:
- Donenfeldova počáteční implementace, napsaná v jazyce C and Go.[32]
- Cloudflare 's BoringTun, a uživatelský prostor implementace napsaná v Rez.[33][34]
- Implementace Matta Dunwoodieho pro OpenBSD, napsaná v C.[35]
- Implementace wg (4) Ryoty Ozaki pro NetBSD je napsána v jazyce C.[36]
Uživatelské vesmírné programy podporující WireGuard
Programy uživatelského prostoru podporující WireGuard zahrnují:
- NetworkManager od verze 1.16[37]
- systemd od verze 237[38]
- Intel ConnMan od verze 1.38[39]
- Mozilla VPN [40]
- NordVPN přes Nordlynx[41]
- PiVPN od 17. října 2019[42]
- pfSense balík.[43]
- Síť NOIA [44]
- Soukromý přístup k internetu VPN od 10. dubna 2020[45]
- Surfshark od října 2020[46]
- Mistborn (software) VPN od března 2020[47]
- Projekt OpenWrt: WireGuard
- oVPN od února 2020[48], zavedení v roce 2021[49]
- Torguard od roku 2020[50]
- VPN Unlimited od listopadu 2019[51]
- Windscribe v roce 2020[52]
- Vypr VPN od května 2020[53]
- Oracle Linux s Unbreakable Enterprise Kernel Release 6 Update 1, od listopadu 2020[54]
- Veeam Powered Network v2, od května 2019[55]
Viz také
- Porovnání služeb virtuální privátní sítě
- Zabezpečte Shell (SSH), kryptografický síťový protokol používaný k zabezpečení služeb přes nezabezpečenou síť.
Poznámky
- ^ Ne všechny platformy mohou mít aktuálně vydanou verzi a některé mohou být v beta verzi.
Reference
- ^ https://git.zx2c4.com/WireGuard/tag/?h=0.0.20190913; vyvoláno: 24. září 2019.
- ^ "Instalace". WireGuard. Citováno 23. dubna 2020.
- ^ A b C Salter, Jim (30. března 2020). „WireGuard VPN je na 1.0.0 - a do dalšího linuxového jádra“. Archivováno z původního dne 31. března 2020. Citováno 23. dubna 2020.
- ^ Preneel, Bart; Vercauteren, Frederik, eds. (11. června 2018). Aplikovaná kryptografie a zabezpečení sítě. Springer. ISBN 978-3-319-93387-0. Archivováno z původního dne 18. února 2019. Citováno 25. června 2018.
- ^ A b „WireGuard: rychlý, moderní a bezpečný tunel VPN“. WireGuard. Archivováno z původního dne 28. dubna 2018. Citováno 28. dubna 2018.
- ^ A b Salter, Jim (26. srpna 2018). „Recenze WireGuard VPN: Nový typ VPN nabízí vážné výhody“. Ars Technica. Archivováno z původního dne 20. září 2018.
- ^ „Linux-Kernel Archive: Re: [GIT] Networking“.
- ^ Donenfeld, Jason A. „Známá omezení - WireGuard“. www.wireguard.com. Citováno 1. června 2020.
- ^ Lipp, Benjamin; Blanchet, Bruno; Bhargavan, Karthikeyan (2019), Mechanizovaný kryptografický důkaz protokolu virtuální privátní sítě WireGuard, Výzkumná zpráva RR-9269, Paříž: Inria, str. 49, hal-02100345
- ^ Donenfeld, Jason A. „Úvod a motivace“ (PDF). WireGuard: Síťový tunel jádra nové generace (PDF). Archivováno (PDF) z původního dne 4. března 2018.
- ^ „Index of / Monolithic-historical /“.
- ^ Mason, John (13. února 2019). „Mullvad Review“. thebestwpn. 2. Silné tunelovací protokoly - OpenVPN & WireGuard. Archivováno z původního dne 24. června 2019. Citováno 8. dubna 2019.
- ^ Mason, John (19. února 2019). „AzireVPN Review“. thebestvpn. 2. Působivé protokoly a šifrování. Archivováno z původního dne 8. května 2019. Citováno 8. dubna 2019.
- ^ Pestell, Nick (11. prosince 2018). „Představujeme Wireguard“. Citováno 22. září 2019.
- ^ „Přidána podpora WireGuard!“. blog o kryptoměně. 5. dubna 2019. Archivováno z původního dne 9. prosince 2019. Citováno 9. prosince 2019.
- ^ „Dary“. WireGuard. Archivováno z původního dne 28. dubna 2018. Citováno 28. dubna 2018.
- ^ „OVPN přispívá na podporu WireGuard“. OVPN. 23. března 2020.
- ^ „O projektu“. WireGuard. Probíhá práce. Archivováno z původního dne 25. června 2018. Citováno 25. června 2018.
- ^ "Instalace". WireGuard. Archivovány od originál dne 26. června 2018. Citováno 26. června 2018.
- ^ "e7096c131e5161fa3b8e52a650d7719d2857adfd - pub / scm / linux / kernel / git / davem / net-next - Git na Google". kernel.googlesource.com.
- ^ „LKML: David Miller: Re: [PATCH net-next v2] net: zabezpečený síťový tunel WireGuard“. lkml.org.
- ^ „[OZNAM] WireGuard se spojil do net-next, na cestě k Linuxu 5.6“. 9. ledna 2020. Archivovány od originál dne 9. ledna 2020.
- ^ Torvalds, Linus. "index: kernel / git / torvalds / linux.git". Strom zdroje linuxového jádra. Kernel.org. Citováno 2. února 2020.
- ^ "ovladače / síť: Povolit WIREGUARD jako modul".
- ^ „ANDROID: GKI: enable CONFIG_WIREGUARD“.
- ^ "sloučit větev 'bg / wireguard' (d321d0df) · Commit · GNOME / network-manager-applet". gitlab.gnome.org. Citováno 30. května 2020.
- ^ „WireGuard for OpenBSD Kernel Patches Posted“.
- ^ „add wg (4), an in kernel driver for WireGuard vpn communication“.
- ^ „[OZNAM] WireGuard pro Windows 0.3: Podpora ARM, podnikové funkce a další“.
- ^ „Importovat jádro podporu WireGuard“.
- ^ „Americký senátor doporučuje NIST pro vládní VPN Open-Source WireGuard. Phoronix. 30. června 2018. Archivováno z původního dne 5. srpna 2018. Citováno 5. srpna 2018.
- ^ Donenfeld, Jason (7. června 2019). „WireGuard: rychlý, moderní a bezpečný tunel VPN“. Citováno 16. června 2019.
- ^ Krasnov, Vlad (18. prosince 2018). „BoringTun, implementace uživatelského prostoru WireGuard v Rustu“. Cloudflare Blog. Archivováno z původního dne 4. dubna 2019. Citováno 29. března 2019.
- ^ „CloudFlare spouští„ BoringTun “jako implementaci uživatelského prostoru WireGuard napsanou rezem. phoronix.com. Citováno 29. března 2019.
- ^ Johansson, Janne (21. června 2020). „WireGuard importován do OpenBSD“.
- ^ "wg (4) - NetBSD manuální stránky". 20. srpna 2020.
- ^ Haller, Thomas (15. března 2019). „WireGuard v NetworkManageru“. Blogy GNOME.
- ^ Poettering, Lennart (28. ledna 2018). „[OZNAM] systemd v237“. systemd-devel (Poštovní seznam).
- ^ Larabel, Michael (18. února 2020). „Intel ConnMan 1.38 vydán s podporou WireGuard“. Phoronix.
- ^ „Mozilla VPN: Chraňte celé své zařízení“.
- ^ „Co je NordLynx? | Zákaznická podpora NordVPN“. support.nordvpn.com. Citováno 1. září 2020.
- ^ „pivpn / pivpn“. GitHub. Citováno 30. května 2020.
- ^ "Ascrod / pfSense-pkg-wireguard". github. 27. května 2020. Citováno 1. června 2020.
- ^ Radziukas, Augustas (16. července 2020). „Aktualizace vývoje 07.02–07.16“. Střední. Citováno 25. července 2020.
- ^ „WireGuard® na PIA již nemá beta verzi a je k dispozici pro použití v systémech Windows, Mac, Linux, Android a iOS“. Citováno 26. srpna 2020.
- ^ „Na Surfsharku nyní funguje rychlý a bezproblémový protokol WireGuard“. Surfshark. 19. října 2020. Citováno 8. listopadu 2020.
- ^ „Mistborn sdružuje důležité internetové služby do vaší domácí sítě a zajišťuje je pomocí tunelu VPN WireGuard, pravidel Pi-hole, pravidel iptables a samostatných kontejnerů“. Citováno 16. října 2020.
- ^ „Co je to WireGuard?“. OVPN.com. Citováno 7. listopadu 2020.
- ^ „Nové aktualizace oVPN - WireGuard + OpenVPN 2.5 již brzy! - YouTube“. www.youtube.com. Citováno 7. listopadu 2020.
- ^ „Wireguard VPN | TorGuard“. torguard.net. Citováno 7. listopadu 2020.
- ^ „Co je WireGuard VPN Protocol a jak jej používat s VPN Unlimited“. Blog bez omezení VPN. 15. listopadu 2019. Citováno 7. listopadu 2020.
- ^ S, Jegor (21. července 2020). „Představujeme WireGuard“. Střední. Citováno 8. listopadu 2020.
- ^ „VyprVPN WireGuard VPN Protocol je tu, aby vás chránil!“. AndroidPIMP. 14. května 2020. Citováno 8. listopadu 2020.
- ^ „Oznámení Unbreakable Enterprise Kernel Release 6 Update 1 pro Oracle Linux“. Blog Oracle Linux. 12. listopadu 2020. Citováno 12. listopadu 2020.
- ^ „Proč jsme pro Veeam PN v2 vybrali WireGuard“. Oficiální blog společnosti Veeam Software. 15. května 2019. Citováno 2. prosince 2020.