"Provozuji sítě nad OpenVPN i IPSec, nefunguje to nikdy úplně dobře a spolehlivě. Tady jste úplně odstíněni od složitých věcí jako výměna klíčů a můžete se spolehnout na to, že to autoři udělali dobře"
"WireGuard potřebuje znát IP adresu rozhraní, pár klíčů, veřejnou adresu protistrany a povolené IP adresy protistrany."
Tak premejslim, jestli je idiot autor tech vyroku nebo ja. OpenVPN potrebuje jen klic a IP serveru a funguje me spolehlive i na cinskym routeru pres 3G spojeni. Nak nevidim ty "vyhody" WireGuardu...
ty mas dnes nejakou bojovnou naladu, proc byste meli byt idioti? ;)
hlavni vyhoda wireguardu je v tom ze to neni userspace (jako openvpn) ale je integrovan primo v kernelu (jako ipsec), takze je (mel by byt) rychlejsi (nez openvpn) ale narozdil od ipsec je stejne lehce konfigurovatelny jako openvpn...
> Tak premejslim, jestli je idiot autor tech vyroku nebo ja. OpenVPN potrebuje jen klic a IP serveru a funguje me spolehlive i na cinskym routeru pres 3G spojeni. Nak nevidim ty "vyhody" WireGuardu...
OpenVPN sa vacsinou pouziva v TLS mode, ktory je stavovy, teda na zaciatku si musia obidve strany dohodnut kluc (ktory potom pravidelne obmienaju). Ten pociatocny handshake je bohuzial slabinou tohoto protokolu, pretoze sa da pomocou DPI identifikovat ze ide o otvorenie OpenVPN kanalu a dynamicky (a vysoko cielene) odstrihnut kombinaciu IP/port. S velkym uspechom pouzite cinskymi Sudruhmi pri GFW (a teda maslo na hlave maju aj zapadni Kapitalisti, ktori im dodali DPI riesenia schopne to zvladnut, ale to uz je o inom).
Ked sa tento problem pred rokmi vynoril, vyvojari OpenVPN to odmietli riesit s argumentom typu, ze nie je ulohou OpenVPN sa skryvat, ale sifrovat komunikaciu. Takze to nakoniec poriesili ludia mimo, ze zabalili cely OpenVPN do stunnel, pripadne do obfs3 a neskor do obfs4. Tym sa sice vyhli priamej detekcii DPI, ale prisli tym o UDP. Takze cinski Sudruhovia sa mohli vratit k svojmu snad najstarsiemu triku TCP-reset (a nemusia nic "hlboko" analyzovat).
Najnovsie im asi v OpenVPN uz doslo, ze ich prvotny nazor asi nebol moc orechovy, tak niekde od verzie 2.4 pridali volbu tls-crypt, ktory robi presne to, co ludia od nich ziadali kedysi, teda sifruje aj ten prvotny handshake ktory vyzera nahodne, teda uz nie je pomocou DPI odhalitelny.
Ale preco to tu tak takto siahodlho vykladam? Snad aby som ukazal, ze OpenVPN nie je vzdy az take jednoduche a spolahlive. Skratka sa nan postupom casu nalepilo plno veci, nastavenia su zlozite preto trva dlho kym si veci vyladis ako potrebujes... A po case sa v tych zlozitostiach objavi nejaky "fragile" detail, pomocou ktoreho sa ti to zacne rozbijat a zase to treba riesit, zase treba prilepovat nove veci... Napriklad si nie som isty, ci je terajsia implementacia OpenVPN odolna proti "uhadnutiu" ze ide o uvodny handshake postrannym kanalom z velkosti uvodnych sprav a ich casovania, to by mohlo byt dalsie "kolecko".
Wireguard ma naproti tomu ulpne trivialne nastavenie. Uz len kvoli tej jednoduchosti je rychlejsi - osobne si myslim, ze to prispieva rychlosti este viac, nez ovladac v jadre (ktory samozrejme pomaha tiez).
Dalsia vyznamna vec je, ze Wireguard je bezstavovy, teda tam nie je ziaden uvodny TLS handshake, teda jednak tento vektor utoku na WG neexistuje, a tiez ti linka nabehne podstatne rychlejsie, nez v OpenVPN. (Pre poriadok: v OpenVPN sa da nieco podobne dosiahnut pomocou pre-shared-key, kedy OpenVPN pracuje tiez bezstavovo a v principe vtedy "potrebuje jen klic a IP serveru", ale bohuzial to v tom OpenVPN dobre neskaluje, ten isty kluc pouzivaju obidve strany, prakticky je to pouzitelne len na jeden privatny point-to-point tunel kde mas pod kontrolou obidve strany. Plus robia problemy pokusy o replay utoky a chaosy s MTU, takze v reale je tych nastaveni aj tak treba predsa len viac, nez "jen klic a IP". A je to vyrazne pomalsie nez Wireguard.)
No a tiez obcas ked sa OpenVPN linka zosype, tak sa stava ze pakety zacnu chodit nechranene a ty si nemusis vsimnut, ze uz ides napriamo mimo VPN (tymto trpia aj IPsec alebo OpenConnect). Pri Wireguarde som to doteraz nepozoroval (ked sa zosype linka, alebo sa hocico stane na druhej strane, interface je stale v systeme, vsetko je routovane nan, ziadne nechranene pakety von neleakuju).
Wireguard zacal na cistom stole a evidentne sa jeho tvorcovia snazia brat do uvahy vsetky poznatky z doterajsieho vyvoja. OpenVPN tym vyvojom sam prechadzal, niektore veci spociatku zname neboli a objavovali sa az postupne, takze sa niet co cudovat, ak tam nie su riesene velmi dobre.
Mozno prave tebe ten OpenVPN v tvojich podmienkach funguje dostatocne, GFW riesit nemusis, v tom pripade gratulacia. Ini take stastie nemaju - ale niektori z nich maju potom zase take stastie, ze zaziju "zjavenie" tych vyhod Wireguard-u, ktore ty nevidis.
OK, diky za vysvetleni. GFM me fakt nezajma (pouzivam VPN k ucelu kvuli kteremu bylo VPN vytvoreno), takze zustanu u OpenVPN, kde si klasicky na serveru vytvorim klic pro kazdyho klienta zvlast a na klientu jen nastavim IP serveru a prilozim ten klic. Takhle to funguje uz snad 15 let spolehlive. Ze by mi sel trafic mimo VPN fakt nehrozi, kdyz ten trafic pouziva lokalni IP...
> Dalsia vyznamna vec je, ze Wireguard je bezstavovy, teda tam nie je ziaden uvodny TLS handshake
Čím je to vykoupené? Podporuje to například forward secrecy? Jak se to vypořádá třeba s replay attackem?
> No a tiez obcas ked sa OpenVPN linka zosype, tak sa stava ze pakety zacnu chodit nechranene a ty si nemusis vsimnut, ze uz ides napriamo mimo VPN
To je celkem těžké uhlídat obecně. Uhlídat nějaký rozsah IP adres by asi ještě šlo. Uhlídat provoz na DNS už bude těžší. A třeba v prohlížeči bez takové ochrany po 100 % času se těžko ubrátníte cache poisoningu.
> Čím je to vykoupené? Podporuje to například forward secrecy? Jak se to vypořádá třeba s replay attackem?
Takych detailnych otazok mozes polozit milion, len toto asi nie je najspravnejsie miesto... Odpovede hladaj na https://www.wireguard.com/ (napriklad forward secrecy), pripadne si to sam otestuj (trebars replay attack).
Ja mozem len zopakovat moje skusenosti z vlastneho pouzivania: WG u mna naozaj ma lepsi vykon nez OpenVPN, spojenie je robustnejsie, a konfiguracia je omnoho jednoduchsia.
> To je celkem těžké uhlídat obecně. Uhlídat nějaký rozsah IP adres by asi ještě šlo. Uhlídat provoz na DNS už bude těžší. A třeba v prohlížeči bez takové ochrany po 100 % času se těžko ubrátníte cache poisoningu.
Zase len mozem zopakovat, ze WG mi doteraz nespadol ANI RAZ (teda nic neslo mimo VPN tunela od momentu kedy som WG sam zapol az do momentu kedy som ho sam vypol), kym ine VPNka zhucia pomerne casto (a od momentu samovolneho zhucania zacnu pakety putovat do netu bez ochrany). Samozrejme na OpenVPN sa da vymyslet nejaky narovnavak na ohybak, aby po zhucani nic neslo von - ale to sme zase pri tej otazke jednoduchosti nastaveni.
DNS cache poisoning je specificky problem, ktory nesuvisi s tym, ci je WG lepsi/horsi/jednoduchsie-konfigurovatelny/..., pretoze tymto problemom sa treba zaoberat s akoukolvek VPNkou.