Tento článek byl aktualizován o protokoly VPN WireGuard® a Stealth.

Vysvětlujeme, co je protokol VPN a co dělá. Porovnáváme také silné a slabé stránky nejběžnějších protokolů, včetně OpenVPN, WireGuard®, IKEv2, PPTP a L2TP.

Než budete důvěřovat VPN, že ochrání vaši internetovou aktivitu, musíte se ujistit, že zavedla nezbytná ochranná opatření. Hodnocení techničtějších aspektů VPN může být obtížné. Často to znamená bojovat s pochopením abecední polévky různých zkratek.

Zahájili jsme sérii příspěvků, kde vysvětlujeme některá naše bezpečnostní opatření, aby se lidé mohli informovaněji rozhodovat. Náš první příspěvek vysvětlil, co znamená HMAC SHA-384. Tento příspěvek prozkoumá protokoly VPN, co dělají, jak fungují a co to znamená, pokud služba VPN používá například OpenVPN přes L2TP.

Tento příspěvek se ponoří do některých vnitřních mechanismů VPN. I když se snažíme vysvětlit pojmy jasně, tento příspěvek bude užitečnější, pokud přijdete s nějakými základními technickými znalostmi. Pokud si nejste jisti, jak VPN funguje, může být užitečné si před pokračováním přečíst níže odkazovaný článek.

Zjistěte, jak funguje VPN

Protokoly VPN

VPN spoléhají na to, co se nazývá „tunelování“, k vytvoření soukromé sítě mezi dvěma počítači přes internet. Protokol VPN, známý také jako „tunelovací protokol“, jsou instrukce, které vaše zařízení používá k vyjednání bezpečného šifrovaného připojení, které tvoří síť mezi vaším počítačem a jiným.

Protokol VPN se obvykle skládá ze dvou kanálů: datového kanálu a řídicího kanálu. Řídicí kanál je zodpovědný za výměnu klíčů, ověřování a výměny parametrů (jako je poskytování IP nebo tras a serverů DNS). Datový kanál, jak jste možná uhodli, je zodpovědný za přenos vašich dat síťového provozu. Společně tyto dva kanály vytvářejí a udržují bezpečný tunel VPN. Aby však vaše data mohla projít tímto bezpečným tunelem, musí být zapouzdřena.

Zapouzdření je, když protokol VPN vezme bity dat, známé jako datové pakety, z vašeho síťového provozu a umístí je do jiného paketu. Tato extra vrstva je nezbytná, protože konfigurace protokolu, které vaše VPN používá uvnitř datového kanálu, nejsou nutně stejné, jaké používá běžný internet. Dodatečná vrstva umožňuje vašim informacím cestovat tunelem VPN a dorazit na správné místo určení.

To je vše trochu technické, takže široký přehled: Když se připojíte k serveru VPN, VPN používá svůj řídicí kanál k vytvoření sdílených klíčů a připojení mezi vaším zařízením a serverem. Jakmile je toto připojení navázáno, datový kanál začne přenášet váš síťový provoz. Když VPN diskutuje o silných a slabých stránkách svého výkonu nebo mluví o „bezpečném tunelu VPN“, mluví o svém datovém kanálu. Jakmile je tunel VPN vytvořen, řídicí kanál má pak za úkol udržovat stabilitu připojení.

PPTP

Point-to-Point Tunneling Protocol (PPTP) je jedním ze starších protokolů VPN. Původně byl vyvinut s podporou společnosti Microsoft, a proto mají všechny verze systému Windows a většina ostatních operačních systémů nativní podporu pro PPTP.

PPTP používá Point-to-Point Protocol (PPP), který je sám o sobě jako proto-VPN. Přestože je PPP poměrně starý, dokáže ověřit uživatele (obvykle pomocí MS-CHAP v2) a sám zapouzdřit data, čímž obstarává povinnosti řídicího i datového kanálu. PPP však není směrovatelný; nemůže být sám o sobě odesílán přes internet. Proto PPTP znovu zapouzdřuje data zapouzdřená v PPP pomocí generického zapouzdření směrování (GRE), aby vytvořil svůj datový kanál.

Bohužel PPTP nemá žádné vlastní funkce šifrování nebo ověření. Spoléhá na to, že tyto funkce implementuje PPP – což je problematické, protože systém ověření PPP a šifrování, které k němu přidal Microsoft, MPPE, jsou obojí slabé.

Šifrování: Protokol Microsoft Point-to-Point Encryption (MPPE(nové okno)), který používá algoritmus RSA RC4. Maximální síla MPPE jsou 128bitové klíče.

Rychlost: Protože jeho šifrovací protokoly nevyžadují velký výpočetní výkon (RC4 a pouze 128bitové klíče), udržuje PPTP vysoké rychlosti připojení.

Známé zranitelnosti: PPTP má od roku 1998 řadu známých bezpečnostních zranitelností. Jedna z nejzávažnějších zranitelností zneužívá nezapouzdřené ověření MS-CHAP v2 k provedení útoku man-in-the-middle (MITM).

Porty firewallu: TCP port 1723. Použití GRE u PPTP znamená, že nemůže procházet firewallem s překladem síťových adres a je jedním z nejsnáze blokovatelných protokolů VPN. (NAT firewall umožňuje několika lidem sdílet jednu veřejnou IP adresu současně. To je důležité, protože většina jednotlivých uživatelů nemá svou vlastní IP adresu.)

Stabilita: PPTP není tak spolehlivý ani se neobnovuje tak rychle jako OpenVPN přes nestabilní síťová připojení.

Závěr: Pokud máte obavy o zabezpečení svých dat, není důvod používat PPTP. Dokonce i Microsoft doporučil(nové okno) svým uživatelům upgradovat na jiné protokoly VPN, aby ochránili svá data.

L2TP/IPSec

Layer 2 Tunneling Protocol (L2TP) měl nahradit PPTP. L2TP zvládne ověření sám a provádí zapouzdření UDP, takže svým způsobem může tvořit řídicí i datový kanál. Podobně jako PPTP však sám o sobě nepřidává žádné šifrování. Zatímco L2TP může odesílat PPP, aby se předešlo inherentním slabinám PPP, je L2TP obvykle spárován se sadou Internet Protocol security (IPSec), která obstarává jeho šifrování a ověření.

IPSec je flexibilní framework, který lze použít na VPN i na zabezpečení na úrovni směrování a aplikací. Když se připojíte k serveru VPN pomocí L2TP/IPSec, IPSec vyjedná sdílené klíče a ověří připojení zabezpečeného řídicího kanálu mezi Vaším zařízením a serverem.

IPSec poté data zapouzdří. Když IPSec provádí toto zapouzdření, použije ověřovací hlavičku a použije Encapsulation Security Payload (ESP). Tyto speciální hlavičky přidávají digitální podpis ke každému paketu, takže útočníci nemohou data pozměnit bez dovolení, aniž by upozornili server VPN.

ESP šifruje zapouzdřené datové pakety tak, aby je žádný útočník nemohl přečíst (a v závislosti na nastavení VPN také ověřuje datový paket). Jakmile IPSec data zapouzdří, L2TP tato data znovu zapouzdří pomocí UDP, aby mohla projít datovým kanálem.

Několik protokolů VPN, včetně IKEv2, používá šifrování IPSec. I když je IPSec obecně bezpečný, je velmi složitý, což může vést ke špatné implementaci. L2TP/IPSec je podporován na většině hlavních operačních systémů.

Šifrování: L2TP/IPSec může používat šifrování 3DES nebo AES, ačkoli vzhledem k tomu, že 3DES je nyní považován za slabou šifru, používá se zřídka.

Rychlost: L2TP/IPSec je při použití stejné síly šifrování obecně pomalejší než OpenVPN. Je to hlavně kvůli tomu, že šifrování AES používané OpenVPN je na většině běžných procesorů hardwarově akcelerováno.

Známé zranitelnosti: L2TP/IPSec je pokročilý protokol VPN, ale uniklá prezentace NSA(nové okno) naznačuje, že zpravodajská služba již našla způsoby, jak jej narušit. Navíc kvůli složitosti IPSec mnoho poskytovatelů VPN používalo předsdílené klíče(nové okno) k nastavení L2TP/IPSec.

Porty firewallu: Pro počáteční výměnu klíčů se používá UDP port 500, pro průchod NAT UDP port 5500 a pro povolení síťového provozu L2TP UDP port 1701. Protože používá tyto pevné porty, je L2TP/IPSec snáze blokovatelný než některé jiné protokoly.

Stabilita: L2TP/IPSec není tak stabilní jako některé pokročilejší protokoly VPN. Jeho složitost může vést k častým výpadkům sítě.

Závěr: Zabezpečení L2TP/IPSec je bezpochyby vylepšením oproti PPTP, ale nemusí ochránit Vaše data před pokročilými útočníky. Jeho nižší rychlost a nestabilita také znamenají, že by uživatelé měli zvážit použití L2TP/IPSec pouze v případě, že neexistují jiné možnosti.

IKEv2/IPSec

Internet Key Exchange verze 2 (IKEv2) je relativně nový tunelovací protokol, který je ve skutečnosti součástí samotné sady IPSec. Na vývoji původního protokolu IKEv2/IPSec spolupracovaly společnosti Microsoft a Cisco, ale nyní existuje mnoho iterací s otevřeným zdrojovým kódem.

IKEv2 nastaví řídicí kanál ověřením zabezpečeného komunikačního kanálu mezi Vaším zařízením a serverem VPN pomocí algoritmu výměny klíčů Diffie–Hellman(nové okno). IKEv2 poté použije tento zabezpečený komunikační kanál k vytvoření takzvané bezpečnostní asociace, což jednoduše znamená, že Vaše zařízení a server VPN používají ke komunikaci stejné šifrovací klíče a algoritmy.

Jakmile je bezpečnostní asociace vytvořena, IPSec může vytvořit tunel, použít ověřené hlavičky na Vaše datové pakety a zapouzdřit je pomocí ESP. (Opět, v závislosti na použité šifře, může ESP obstarat ověření zprávy.) Zapouzdřené datové pakety jsou poté znovu zapouzdřeny v UDP, aby mohly projít tunelem.

IKEv2/IPSec je podporován v systému Windows 7 a novějších verzích, macOS 10.11 a novějších verzích a také ve většině mobilních operačních systémů.

Šifrování: IKEv2/IPSec může používat řadu různých kryptografických algoritmů, včetně AES, Blowfish a Camellia. Podporuje 256bitové šifrování.

Rychlost: IKEv2/IPSec je rychlý protokol VPN, i když obvykle není tak rychlý jako hardwarově akcelerovaná OpenVPN nebo WireGuard.

Známé zranitelnosti: IKEv2/IPSec nemá žádné známé slabiny a téměř všichni odborníci na bezpečnost IT jej považují za bezpečný, pokud je správně implementován s Perfect Forward Secrecy.

Porty firewallu: Pro počáteční výměnu klíčů se používá UDP port 500 a pro průchod NAT UDP port 4500. Protože vždy používá tyto porty, je IKEv2/IPSec snáze blokovatelný než některé jiné protokoly.

Stabilita: IKEv2/IPSec podporuje protokol Mobility and Multihoming, díky čemuž je spolehlivější než většina ostatních protokolů VPN, zejména pro uživatele, kteří často přepínají mezi různými sítěmi wifi.

Závěr: Díky silnému zabezpečení, vysokým rychlostem a zvýšené stabilitě je IKEv2/IPSec dobrým protokolem VPN. Nedávné zavedení WireGuard však znamená, že existuje jen málo důvodů, proč jej upřednostnit před novějším protokolem VPN.

OpenVPN

OpenVPN je tunelovací protokol s otevřeným zdrojovým kódem. Na rozdíl od protokolů VPN, které se spoléhají na sadu IPSec, OpenVPN používá SSL/TLS k řešení výměny klíčů a nastavení svého řídicího kanálu a unikátní protokol OpenVPN k řešení zapouzdření a datového kanálu.

To znamená, že jeho datový i řídicí kanál jsou šifrovány, díky čemuž je ve srovnání s jinými protokoly VPN poněkud unikátní. Je podporován ve všech hlavních operačních systémech prostřednictvím softwaru třetích stran.

Šifrování: OpenVPN může k šifrování svých dat použít kterýkoli z různých kryptografických algoritmů obsažených v knihovně OpenSSL(nové okno), včetně AES, RC5 a Blowfish.

Více informací o šifrování AES

Rychlost: Při použití UDP udržuje OpenVPN rychlá připojení, ačkoli IKEv2/IPSec a WireGuard jsou obecně považovány za rychlejší.

Známé zranitelnosti: OpenVPN nemá žádné známé zranitelnosti, pokud je implementována s dostatečně silným šifrovacím algoritmem a Perfect Forward Secrecy. Je to průmyslový standard pro VPN, které dbají na bezpečnost dat.

Porty firewallu: OpenVPN lze nakonfigurovat tak, aby běžela na jakémkoli portu UDP nebo TCP, včetně portu TCP 443, který obsluhuje veškerý síťový provoz HTTPS a jehož blokování je velmi obtížné.

Stabilita: OpenVPN je obecně velmi stabilní a má režim TCP pro překonání cenzury.

Závěr: OpenVPN je bezpečná, spolehlivá a má otevřený zdrojový kód. Je to jeden z nejlepších protokolů VPN, které se v současnosti používají, zejména pro uživatele, kteří se primárně zajímají o bezpečnost dat. Její schopnost směrovat připojení přes TCP (viz níže) z ní také činí dobrou volbu pro vyhýbání se cenzuře. I když postrádá výhodu OpenVPN proti cenzuře, WireGuard je také bezpečný a je rychlejší než OpenVPN.

WireGuard®

WireGuard(nové okno) je protokol VPN s otevřeným zdrojovým kódem, který je bezpečný, rychlý a efektivní.

Šifrování: WireGuard používá ChaCha20 pro symetrické šifrování (RFC7539(nové okno)), Curve25519 pro anonymní výměnu klíčů, Poly1305 pro ověřování dat a BLAKE2s pro hashování (RFC7693(nové okno)). Automaticky podporuje Perfect Forward Secrecy.

Rychlost: WireGuard používá nové, vysokorychlostní kryptografické algoritmy. Například ChaCha20 je mnohem jednodušší než šifry AES stejné síly a téměř stejně rychlý, přestože většina zařízení má nyní pokyny pro AES zabudované ve svém hardwaru. Výsledkem je, že WireGuard nabízí vysoké rychlosti připojení a má nízké nároky na CPU.

Známé zranitelnosti: WireGuard prošel různými formálními ověřeními a pro začlenění do jádra Linuxu byla kódová základna WireGuard pro Linux nezávisle auditována(nové okno) třetí stranou.

Porty firewallu: WireGuard lze nakonfigurovat tak, aby používal jakýkoli port, a obvykle běží přes UDP. Proton VPN však ve většině našich aplikací nabízí také WireGuard TCP.

Stabilita: WireGuard je velmi stabilní protokol VPN a zavádí nové funkce, které jiné tunelovací protokoly nemají, jako je udržování připojení VPN při změně serverů VPN nebo změně sítí wifi.

Závěr: WireGuard, špičkový protokol VPN, je rychlý, efektivní a bezpečný. Není tak „prověřený bojem“ jako OpenVPN a nenabízí možnosti OpenVPN proti cenzuře založené na TCP (viz níže), ale pro většinu lidí a po většinu času je to protokol VPN, který doporučujeme používat.

Více informací o WireGuard

OpenVPN vs. WireGuard

Stealth

Stealth je nový protokol VPN vyvinutý společností Proton. S ním můžete přistupovat na cenzurované stránky a komunikovat s lidmi na sociálních sítích, i když jsou běžné protokoly VPN blokovány Vaší vládou nebo organizací.

Stealth je založen na WireGuard tunelovaném přes TLS. Proto používá stejné šifrování jako WireGuard s přidanou vrstvou šifrování TLS. Jinak je identický s WireGuard (popsáno výše).

Zjistěte více o Stealth

Další důležité pojmy

Při procházení srovnání různých protokolů VPN jste možná narazili na zkratky nebo technické termíny, které jste neznali. Některé z nejdůležitějších zde vysvětlíme.

TCP vs. UDP

Transmission Control Protocol (TCP) a User Datagram Protocol (UDP) jsou dva různé způsoby, jak mohou zařízení komunikovat mezi sebou přes internet. Oba běží na internetovém protokolu, který je zodpovědný za odesílání datových paketů na IP adresy a z nich.

Když vidíte, že tunelovací protokol používá port TCP nebo port UDP, znamená to, že nastavuje připojení mezi Vaším počítačem a serverem VPN pomocí jednoho z těchto dvou protokolů.

To, zda protokol VPN používá TCP, UDP nebo obojí, může výrazně ovlivnit jeho výkon. TCP se primárně zaměřuje na přesné doručování dat spouštěním dodatečných kontrol, které zajišťují, že data jsou ve správném pořadí, a jejich opravou, pokud nejsou.

Zní to jako dobrá funkce, ale provádění kontrol zabere čas, což má za následek pomalejší výkon. Spuštění VPN přes TCP (TCP přes TCP) může zpomalit Vaše připojení v takzvaném TCP meltdownu.

Pokud například přes tunel TCP OpenVPN prochází síťový provoz TCP a data TCP v tunelu detekují chybu, pokusí se ji kompenzovat, což může způsobit, že tunel TCP bude kompenzovat přehnaně. Tento proces může způsobit vážná zpoždění v doručování Vašich dat.

Je to však dobré i pro překonání cenzury. Je to proto, že síťový provoz HTTPS(nové okno) používá port TCP 443, takže pokud směrujete připojení VPN přes stejný port, vypadá to jako běžný zabezpečený síťový provoz VPN.

Schopnost provozovat síťový provoz VPN přes port 443 je jednou z největších výhod používání OpenVPN (a WireGuard, pokud používáte vlastní implementaci TCP protokolu od Proton VPN).

Více informací o TCP a UDP

Perfect Forward Secrecy

Perfect Forward Secrecy je kritická bezpečnostní komponenta šifrované komunikace. Týká se operací, které řídí, jak jsou generovány Vaše šifrovací klíče. Pokud Vaše VPN podporuje Perfect Forward Secrecy, vytvoří jedinečnou sadu klíčů pro každou relaci (tj. pokaždé, když navážete nové připojení VPN).

To znamená, že i když útočník nějakým způsobem získá jeden z Vašich klíčů, může jej použít pouze k přístupu k datům z této konkrétní relace VPN. Data ve zbytku Vašich relací zůstanou v bezpečí, protože je chrání různé jedinečné klíče. Znamená to také, že klíč relace zůstane bezpečný, i když bude odhalen soukromý klíč Vaší VPN.

Protokoly používané aplikacemi Proton VPN

Spustili jsme Proton VPN, abychom zajistili, že aktivisté, disidenti a novináři budou mít bezpečný a soukromý přístup k internetu. Abychom udrželi komunitu Proton v bezpečí, používáme pouze důvěryhodné a prověřené protokoly VPN. Následující seznam ukazuje, které protokoly VPN jsou podporovány v našich různých aplikacích:

  • Windows: OpenVPN, WireGuard® a Stealth
  • macOS: OpenVPN, IKEv2, WireGuard a Stealth
  • Android: OpenVPN, WireGuard a Stealth
  • iOS/iPadOS: OpenVPN, IKEv2, WireGuard a Stealth
  • Linux: OpenVPN a WireGuard

OpenVPN a WireGuard můžete používat v režimech UDP nebo TCP.

Zjistěte, jak změnit protokoly VPN

Naše aplikace pro Windows, macOS, Android a iOS/iPadOS podporují Smart Protocol. Tato funkce proti cenzuře inteligentně sonduje sítě, aby objevila nejlepší konfiguraci protokolu VPN potřebnou pro optimální výkon nebo obejití cenzury.

Například se může automaticky přepnout z IKEv2 na OpenVPN nebo z OpenVPN UDP na OpenVPN TCP, s použitím různých portů podle potřeby.

Více informací o Smart Protocol

Všechny naše aplikace používají nejsilnější nastavení zabezpečení podporované protokolem VPN. OpenVPN, WireGuard a IKEv2/IPSec jsou jediné protokoly, na kterých se drtivá většina odborníků na bezpečnost IT shodne, že jsou bezpečné.

Odmítáme nabízet jakákoli připojení VPN využívající PPTP nebo L2TP/IPSec (i když je jejich provoz levnější a konfigurace jednodušší), protože jejich zabezpečení nesplňuje naše standardy.

Když se přihlásíte k Proton VPN, můžete si být jisti, že Vaše připojení VPN používá nejnovější a nejsilnější tunelovací protokoly.

S pozdravem,
Tým Proton VPN

ZÍSKAT PROTON VPN

Můžete nás sledovat na sociálních sítích, abyste byli informováni o nejnovějších vydáních Proton VPN:

Twitter (nové okno)| Facebook(nové okno) | Reddit(nové okno)

Chcete-li získat bezplatný šifrovaný e-mailový účet Proton Mail, navštivte: proton.me/mail(nové okno)