Bezpečně? Tunelem!

1. 3. 2005

Sdílet

Virtuální privátní sítě (VPN) jsou dnes v oblasti síťových technologií jižsamozřejmým pojmem. Nejde o speciální hračku pro administrátory, jak by se mohlo zdát na první pohled, al...

Virtuální privátní sítě (VPN) jsou dnes v oblasti síťových technologií již
samozřejmým pojmem. Nejde o speciální hračku pro administrátory, jak by se

mohlo zdát na první pohled, ale pro mnoho uživatelů je to dávno běžný

prostředek pro každodenní práci. Seznámíme vás s tím, jak vlastně pracují a co

je jejich podstatou.

Pokud nejste na internetu, na nejrozšířenější počítačové síti, úplnými

začátečníky, zřejmě máte alespoň rámcovou představu o tom, jak je momentálně

(ne)přátelský a (ne)bezpečný. Vedle toho si také snadno dovedete představit

některý z následujících scénářů: firemní obchodní cestující či doma pracující

zaměstnanec potřebuje ze svého počítače přístup na dálku k firemní síti;

společnost má kromě centrální sítě ještě malé počítačové sítě v mnoha

geografických lokalitách a ty spolu potřebují komunikovat; domácí uživatel se

chce přes permanentní internetové připojení při pobytu na cestách vzdáleně

dostat na svůj domácí počítač či do malé domácí sítě. Všechny popsané situace

mají poměrně zřejmý společný požadavek: využít dostupnou síťovou

infrastrukturu, často na vzdálenost stovek či tisíců kilometrů, a s její pomocí

bezpečně proplout všemi nástrahami až do vzdálené sítě tak, jako bychom seděli

přímo v domovské kanceláři u svého pracovního PC.



Proč VPN?

Virtuální privátní sítě jsou řešení, jak toto zajistit co možná nejlevněji,

nejbezpečněji a navíc cestou nejmenšího (technologického) odporu. Na důvod

nasazování VPN se můžeme podívat i z jiné strany – mnoho nám napoví již samotný

název či používaná zkratka. Označení „Private Networks“, tedy soukromé

(privátní) sítě, naznačuje, že se jedná o síťové propojení pro jakési výhradní

použití, především na delší vzdálenost, tedy v prostředí rozlehlých sítí (běžně

označovaných jako WAN). Před masivním nástupem technologií VPN se takové

privátní spojení skutečně rovnalo fyzickému propojení pomocí stávajících

komunikačních linek. Pobočky velkých, tedy často i náročnějších a movitějších

společností byly a stále jsou propojovány například digitálními okruhy

(linkami) ISDN. Spojením mnohem více kanálů než oněch dvou v „domácí“ variantě

EuroISDN může vzniknout pořádný „svazek“ přenosových cest, jejichž výhradní

pronájem je možné u telekomunikačních společností dojednat. Fakticky tak

získáte pravou privátní síť v podobě vyhrazených telekomunikačních cest,

vedoucích z centrály na všechny pobočky. Problémy s tímto řešením jsou nasnadě:

takové řešení je nesmírně drahé a často nerentabilní, neboť za výhradní využití

platíte stále, přestože po většinu doby nedokážete kapacitu linek vytížit.

Ve stejné situaci se s tradičním řešením vyhrazené komunikační cesty ocitá i

domácí uživatel či vzdáleně pracující zaměstnanec, jenž do centrály přistupuje

třeba z přenosného počítače na cestách. V klasickém provedení naváže uživatel

pomocí telefonní linky a dial-up modemu přímé spojení s přístupovým serverem ve

své firmě (tato služba se často označuje jako RAS) a poté pracuje, jako by byl

se svým počítačem přímo připojen k interní firemní síti. I zde je hlavní potíž

nasnadě: telefonní poplatky se při delších vzdálenostech razantně zvyšují a

navíc je potřeba podobným klientům vyhradit dostatečný počet exkluzivně

používaných telefonních linek.

Kromě finančních potíží a problémů s budováním dostatečné infrastruktury

fyzických datových okruhů narážíme u tradičních modelů soukromých sítí

samozřejmě také na problém se zabezpečením. Ačkoliv si linku můžete pronajmout

či momentálně obsadit tím, že zahájíte telefonní hovor, nemáte absolutně žádnou

možnost ovlivnit, že vaše data cestou někdo neodposlouchává či nemodifikuje. A

právě s tímto nebezpečím je potřeba stále více počítat.



VPN: hlavní koncepce

Překlenutí výše uvedených překážek nabízí koncepce virtuálních privátních sítí,

k jejichž plošnému nasazení již doba dozrála. Hlavním posunem od klasických

soukromých sítí je samozřejmě ono přetvoření do „virtuální“ podoby – nejde o

zásadně nový koncept, ale především o skutečnost, že vývoj na trhu internetové

konektivity a také pokrok výrobců aplikací a operačních systémů již dovoluje

běžný, rutinní provoz.

VPN se vyznačuje především tím, že při svém provozu nepotřebuje vyhrazený

spojovací okruh, tedy třeba ISDN či telefonní linku. Hlavní myšlenka spočívá v

tom, že k propojení dvou firemních poboček nebo přenosného počítače a hlavního

sídla společnosti je použita síť, jež je veřejně dostupná více zákazníkům, tedy

v zásadě sdílená. Bez bližšího zkoumání můžeme v tuto chvíli říci, že se jedná

jako o nejrozšířenější variantu především o internet, ale v úvahu připadají i

varianty méně časté jako ATM či Frame Relay (netrapte se, pokud nevíte, o jaké

technologie jde, zřejmě to vůbec nebudete potřebovat). Stručně řečeno: VPN

vyžaduje, aby mezi cílovými body (pobočkami, domácím uživatelem a firemním

serverem) ležela společně sdílená, nejlépe paketová síť, čemuž vyhovuje hlavně

internet. Zda bude přístup komunikujících stran k internetu zajištěn pevnou

linkou, „bezdrátem“, dial-upem či kabelovým modemem, není vůbec důležité. Právě

ono využití sdílené sítě, za které spousta dalších zákazníků společně platí,

může přinést výrazné zlevnění.

Protože VPN protlačuje soukromou komunikaci přes naprosto nedůvěryhodné

prostředí (třeba internet takový prostě je), nastává zvýšená potřeba zajistit

ono soukromí. Na tomto místě vstupují do hry další prvky, jako je ochrana

přenášených dat šifrováním či digitálním podepisováním a ověření připojovaného

uživatele – autentizace. Obě protistrany se totiž musí před zahájením přenosů

ujistit, že na druhém konci virtuální sítě není nežádoucí útočník, a posléze

zajistit ukrytí citlivých informací před čmuchaly a podvodnými živly, kteří by

se mohli pokusit o modifikaci dat na trase.

Protože označení VPN a klasické, výše popsané pojetí privátních sítí může být

stále zavádějící, pokusíme se použití VPN v paketové síti (typicky internetu)

přiblížit ještě jiným způsobem. Představte si internetovou konektivitu –

sdílené médium – jako proudící řečiště, do nějž mohou všichni uživatelé vkládat

svá data. Potřebuji-li něco poslat, prostě to zabalím, vhodím do proudu a

příjemce si zboží na konci cesty vyloví. Celá komunikace bude složena z tisíců

balíčků, jež budu postupně proplouvat řečištěm, spolu s tisíci balíčky jiných

uživatelů sdílené sítě. Koncept VPN zajišťuje následující: mé jednotlivé

balíčky budou chráněny šifrou proti falešnému rybáři, jenž by je vylovil a

chtěl rozbalit; mnou odeslané balíčky budou správným příjemcem rozpoznány jako

originální a nepoškozené; díky využití sdíleného řečiště nebudu muset platit za

pronájem celého, protože mi stačí balíček občas pohodit mezi tisíce jiných,

cizích, jež unáší stejný proud.

Když ještě připomeneme, že internetové řečiště dnes již poměrně spolehlivě

proudí jak mezi firmami, tak do domácností, je zřejmé, proč se VPN utěšeně

prosazují.



Rozdělení VPN

Roztřídit virtuální privátní sítě, což se nám pro jejich podrobnější popis bude

hodit, je možné několika způsoby. Jedním z často využívaných hledisek je typ

komunikujících protistran, a toho se rovněž budeme držet. Pokud se vrátíme k

modelové situaci propojení dvou poboček jedné firmy, dostáváme se k modelu

označovanému často jako site-to-site či gateway-to-gateway, tedy propojení dvou

vzdálených síťových bran. Pro tuto situaci je typické, že onou bránou je

zařízení, do nějž z jedné strany proudí síťová spojení ode všech lokálních

počítačů, ukrytých ve vnitřní síti, a z druhé strany vychází pouze ona chráněná

podoba VPN. Jakmile tato virtuální linka dorazí k protější bráně, „svazek“ je

opět převeden do podoby původních síťových spojení. Ta pokračují k lokálním

strojům ve vzdálené síti. Výhody tohoto řešení, jemuž se často říká tunelování,

spočívají především v tom, že pro počítače v lokálních síťových segmentech na

obou stranách je systém v podstatě neviditelný. Ochranu – tedy hlavně šifrování

- a ostatní režijní služby zajišťuje hraniční zařízení, tedy brána, a ta vše

schová. Klientské počítače v lokálních sítích mají dojem, že jejich protějšky

„za tunelem“ jsou vlastně ve stejném místním segmentu. V praxi se to projevuje

hlavně tím, že na ně nemáme žádné dodatečné nároky.

Odlišnou filozofii využívá připojení jednotlivého vzdáleného uživatele, třeba

pomocí přenosného počítače. Zde narážíme na první zásadní rozdíl na straně

onoho vzdáleného počítače, neboť ten musí sám zajišťovat jeden konec tunelu,

tedy přihlásit se vzdálené bráně, šifrovat, digitálně podepisovat atd. Naopak

pro počítače ve vzdálené firemní síti se tento stroj jeví, jako by byl „někde

poblíž“, tedy ve stejném soukromém segmentu. Tento typ spoje bývá též označován

jako client-to-gateway a vyžaduje klíčovou softwarovou komponentu, tzv. VPN

klienta. Takovou aplikaci je možné získat od různých dodavatelů (Cisco,

Checkpoint…), ale najdete ji také jako nedělitelnou součást operačního

systému Windows.

Třetím modelem, o němž jste možná vůbec nepřemýšleli, je nasazení VPN v síti,

kde potřebuje chránit komunikaci doslova každý s každým. Tento postup se

uplatňuje třeba ve vysoce citlivých vnitrofiremních sítích, kde je nepřípustné,

aby si klientské počítače navzájem „povídaly“ s rizikem odposlechu. V takovém

případě se lokální firemní síť může hemžit stovkami virtuálních sítí, které

mezi sebou sestavují jednotlivé počítače, což se samozřejmě negativně projevuje

na jejich výkonnosti: stručně řečeno, každý musí šifrovat. Bezpečnost zkrátka

něco stojí.

Předchozí případy zahrnovaly prakticky jen situace, kdy k tvorbě VPN používáme

nějakou metodu zabezpečení. Ne vždy je to však zapotřebí možná se budete divit,

ale existují VPN, jež nemusíme tak důkladně chránit. Většinou nám pak jde spíše

o to, aby vzniklý tunel pomohl datovým tokům, které by se jinak ve sdíleném

médiu mohly poztrácet nebo by jejich roztříštěný přenos způsobil časové ztráty.

O těchto variantách nicméně tentokráte hovořit nebudeme, takže jen naznačme, že

reprezentantem těchto řešení je například velmi propracovaný protokol MPLS,

jenž „balíčky v řečišti“ opatřuje speciálními nálepkami s údaji o cestě a

přednostním odbavení. Jeho primárním úkolem však není jejich utajení a ochrana.



Protokol: IPSec

Standard označovaný jako IPSec(urity) v současné době patří mezi

nejpopulárnější způsoby realizace VPN, takže se s ním seznámíme blíže. Jde o

řešení, popsané veřejnými internetovými dokumenty z dílny IETF, a to především

normami RFC 2401–2409. Zajímavá je historie jeho vzniku: původně byl vyvinut

jako závazná součást nově chystaného internetového síťového protokolu IPv6, ale

protože „šestka“ se nakonec dosti opozdila, byl IPSec přednostně adoptován do

stávajících internetových i lokálních síťových prostředí, neboť jeho potenciál

byl velmi slibný. Realita tyto odhady plně potvrdila.

Standard IPSec je určen pro tvorbu zabezpečených VPN tunelů jak v modelu

gateway-to-gateway pro kompletní ochranu komunikace mezi pobočkami, kde je

velmi populární, tak v situacích client-to-gateway, v nichž se již také zdárně

prosazuje. Dříve byla zásadní brzdou při jeho nasazování poměrně obtížná

implementace, neboť se jedná o dosti komplikované řešení, avšak plné zabudování

tohoto standardu do všech operačních systémů firmy Microsoft od Windows 2000

výše jeho prosazení dosti napomohlo.

IPSec je jedna z nejbezpečnějších metod pro sestavení VPN, jaké vůbec máme k

dispozici. Všechny fáze komunikace jsou velmi dobře propracovány: vzájemné

ověření protistran při navázání spojení, šifrování dat či jejich digitální

podepisování. Jak již bylo řečeno a jak též vyplývá z názvu, k ochraně dochází

tím, že původní datová jednotka mezisíťového protokolu IP (běžně nazývaná jako

paket) je digitálně podepsána či zašifrována a poté vhozena do internetového

„řečiště“. Změna tedy probíhá na úrovni modifikace původního IP záhlaví.

Použití protokolu IP je v tomto případě nutností, což však není problém: jedná

se o základní internetový protokol a většina lokálních sítí jej rovněž využívá.

Technologie IPSec dokáže pracovat ve dvou základních režimech, jež dokáží

postihnout odlišné nároky. V režimu tunelovacím pracuje tak, že umí „pravým“

tunelem propojit hraniční zařízení různých sítí (gateway-to-gateway) a přesně

tak se také hojně využívá. Pro lokální sítě je pak především určen režim

transportní, jenž sestavuje bezpečné spojení mezi jednotlivými koncovými

počítači a žádný další provoz netuneluje. Využívá se pro ochranu citlivých

lokálních sítí. Nejrozšířenější klientský OS Windows zvládá obě varianty od

verze 2000 výše, především tunelovací režim pak podporuje nespočet hardwarových

zařízení typů firewall, zabezpečený router apod. Některé z těchto produktů byly

zmíněny např. v přehledu v minulém čísle PC WORLDu. Faktický rozdíl mezi oběma

režimy je jasně dán tím, co IPSec provede s původním IP paketem. V případě

transportního módu je hlavička IP jen mírně modifikována tak, aby původní

informace o cestě paketu v lokální síti zůstala zachována. Naopak tunelovací

mód to bere z gruntu: na hraničním zařízení je původní IP paket zcela zabalen,

opatřen novým IP záhlavím pro cestu ve „venkovní“ nepřátelské síti, po dosažení

cílové brány je posléze opět vybalen do původní podoby. Když se obzvláště nad

tunelovacím režimem zamyslíte a uvědomíte si, že každý IP paket projde poměrně

složitým přípravným procesem, je zřejmé, že spuštění této funkce na hraniční

bráně značně sníží strojový výkon.

Při první fázi sestavování IPSec spojení dochází k velmi důležité operaci, a to

vzájemnému ověření komunikujících stran. Oba zúčastnění musí předložit

potvrzení své totožnosti, jinak VPN nevznikne. Provádí se to několika možnými

způsoby: nejprimitivnější, ovšem častou metodou je použití tzv. pre-shared key,

neboli sdíleného tajemství. Stručně řečeno: oba účastníci si vymění stejnou

textovou frázi, kterou administrátoři předem ručně nastavili na obou koncích.

Nastane-li shoda, je vše v pořádku. Ze silnějších metod se zmiňme o ověření

pomocí digitálních certifikátů (velmi podobných těm pro digitální podpis či

šifru e-mailu) nebo o protokolu Kerberos, což je již dosti složitý mechanismus,

jehož popis přesahuje rámec tohoto článku.

Pokud se protistrany ověří navzájem, začne vyjednávání o způsobu, jak bude

tunel sestaven. Oba stroje si vymění přehled svých možností a vyberou to

nejlepší, co oba dovedou. Co je k dostání? Jednotlivé pakety mohou být

šifrovány třeba pomocí algoritmů DES, 3DES či AES, jejich pravost pak může být

ověřena hašovacími funkcemi SHA-1 či MD5. Použité algoritmy jsou věcí dohody, a

protože parametry vyjednávání je potřeba uchovat, spravuje každý počítač svou

databázi, v níž se ukládají tzv. bezpečnostní vazby (SA). Jde vlastně o záznam

o tom, s kým a na čem jsem se dohodl a jak po určitou dobu budeme svou VPN

realizovat. Mimochodem, asi vám neušlo, že pokud se protistrany nikdy předtím

„neviděly“, budou si muset pro šifrovací postupy vyměnit nějaké tajné klíče

tak, aby tajemství při přenosu nebylo vyzrazeno. Využívá se k tomu geniální

postup Diffie-Hellman, jenž doslova pronese tajemství špionům „pod nosem“ tak,

že se nic kloudného nedá zachytit. Jedná se o velmi bezpečný mechanismus z

oblasti tzv. asymetrické kryptografie.

Tato úvodní fáze vzájemného vyjednávání je označována jako IKE neboli Internet

Key Exchange a může být nahrazena též statickým sestavením záznamu SA. Pak

ovšem musí administrátor všechny technické specifikace definovat na obou

stranách VPN ručně. Pro praktickou realizaci dynamické fáze IKE se využívá

protokol ISAKMP. Pokud jste správci síťového zabezpečení, pak nezapomeňte, že

právě pro tuto fázi vyjednávání je potřeba na zařízeních typu firewall otevřít

komunikační port 500/udp.

Už jsme se zmínili o přípravě na ochranu paketů a o tom, jak se protistrany

ověřují, takže nastala chvíle říci, co přesně IPSec vlastně s původními IP

pakety provádí. Můžeme jej totiž nasadit ve dvou různých úrovních, které

zajišťují odlišné nároky na zabezpečení. Varianta skromnější, ale také

rychlejší se označuje jako AH (authenticated headers), tedy „ověřená záhlaví“.

Název dobře vystihuje, že cílem je opatřit celý paket speciální digitální

pečetí, aby si příjemce mohl ověřit, že data nebyla cestou pozměněna nebo že

nepocházejí z falešného, podvrženého zdroje. Takže jde (přibližně řečeno)

vlastně o jakousi variantu digitálního podpisu. Varianta druhá pak provádí

ochranu paketů se vším všudy: obsah je chráněn jak proti změně a podvrhu, tak

proti odposlechu, a to samozřejmě kompletním šifrováním obsahu. Postup je

označován jako ESP (encapsulated security payload) a pochopitelně vyžaduje

větší část procesorového času, neboť jde o velké množství výpočtů. Zde je třeba

upozornit, že volba jedné z úrovní ochrany (AH či ESP) nijak nepředurčuje, v

jakém režimu IPSec nasadíte – transportní mód pro lokální sítě tedy může jak

šifrovat, tak pouze chránit proti změně. Fakt, že se v případě tunelování ve

valné většině případů nasazuje ESP, je věcí praktické nezbytnosti, nikoliv

technologické nutnosti.

Protože většina z nás pracuje s operačním systémem Windows, zmíníme se zde i o

implementaci na této platformě. Windows podporují standard IPSec od své verze

2000, a to prakticky se všemi základními možnostmi. Je možné jej nasadit jak v

transportním, tak tunelovacím režimu, takže počítač se může chovat jako

zabezpečený klient v nebezpečné lokální síti, ale také jako koncový bod pro

sestavení internetového tunelu. Konfiguraci parametrů IPSecu lze definovat jak

z grafického rozhraní přes konzolu MMC pomocí snap-inu Politika IPSecurity, tak

z příkazové konzoly pomocí nástroje Ipsecpol.exe (Windows 2000), Netsh ipsec

(Windows 2003) a Ipseccmd.

exe (Windows XP). V novějších verzích XP a 2003 navíc přibyl výrazně vylepšený

grafický nástroj IP Security Monitor, s jehož pomocí lze velmi dobře

monitorovat, jak se nasazené politiky skutečně projevují a případně tak hledat

chyby. Z ověřovacích metod podporují Windows tři: protokol Kerberos je vhodný

pro větší lokální sítě se službou Active Directory, výměnu certifikátů pak lze

s úspěchem využít především při komunikaci se zařízením na jiné platformě,

preshared key je vhodný pro řadu situací, včetně testování.



Protokol: PPTP

Dávno předtím, než se výrazněji prosadil standard IPSec, se v oblasti VPN

poměrně rozšířil protokol, navazující na svého slavného předchůdce. Dodnes

velmi populární protokol PPP stále patří mezi důležité mechanismy propojení

počítačů především po sériových linkách, jejichž všem důvěrně známým zástupcem

je především klasický modem na vytáčené lince (dial-up). Když před časem

společnost Microsoft hledala cestu, jak osvědčený mechanismus využít a na jeho

základě vybudovat technologii pro VPN, sáhla právě k prověřenému PPP. Výsledkem

bylo řešení s názvem Point-to-Point Tunneling Protocol, jež k běžné výbavě

svého předchůdce přidávalo klíčovou možnost: šifrování obsahu. Přestože se

jedná o původní řešení z Redmondu, tvůrci časem o tomto protokolu zveřejnili

informace v dokumentu RFC 2637 a řada firem jej rovněž začala implementovat do

svých zařízení, takže se dnes jedná o poměrně populární a rozšířenou variantu.

Základem ochrany dat je u protokolu PPTP jejich speciální balení do rámců typu

PPP. Možná si právě teď, po bližším „ohledání“ situace, říkáte, že tady něco

nehraje: PPP je přece protokol pro sériovou linku a pracuje na úplně jiné

„vrstvě“ než síťové pakety IP! Tak jak to tedy je s VPN v internetovém řečišti,

když dial-up modem vždy obsadí celou linku (okruh), aby po ní PPP mohl běžet?

To je samozřejmě pravda a celá věc je provedena poněkud rafinovaněji. Původní

síťová data jsou nejdříve zabalena jako vždy, tedy jsou běžně opatřena záhlavím

protokolu IP. Zvolíme-li pro VPN řešení PPTP, nastane na rozdíl od technologie

IPSec poněkud odlišná situace: původní IP paket je zabalen do bezpečného

záhlaví PPTP, jako bychom jej chtěli poslat po telefonní lince, avšak nic

takového se samozřejmě nestane. Naopak: příslušné ovladače jej znovu (ještě

jednou!) opatří záhlavím IP (tedy vnějším) a takto zakuklenou formu pošlou

běžnou internetovou – IP sítí. Pokud bychom tedy hlavičky kontrolovali znovu od

vnějšího „obalu“, narazíme na běžné veřejné IP záhlaví, pod ním bude PPTP

(resp. PPP), pak znovu IP (tentokráte to vnitřní, chráněné) a nakonec běžné

TCP/UDP a až pak užitečná data. Zdá se to možná podivné, ale má to své důvody,

jež vysvětlíme.

V první řadě původní protokol PPP, z něhož se vycházelo, dokáže krásně

zapouzdřit z vaší lokální sítě nejen provoz IP, ale i jiné varianty (třeba

starší NetBEUI), což se rozhodně hodí. Další výhodou je to, že protokol PPP a

upravený PPTP nabízejí mechanismus pro úvodní ověření klienta, jenž přistupuje

do vzdálené sítě a chce VPN tunel sestavit. V této fázi dojde nejen k samotné

autentizaci (tedy k prověření, s kým máme tu čest), ale také k výměně

šifrovacích klíčů, jež budou následně potřeba. Další nezanedbatelnou výhodu

představuje u mateřského PPP schopnost jisté komprese přenášených dat, čímž

také ušetříme na provozních nárocích.

Jedinou zásadně chybějící součástí bylo v případě původního protokolu PPP

šifrování. Zde Microsoft přistoupil k implementaci svého mechanismu s názvem

MPPE, který zdaleka není tak variabilní jako IPSec, neboť nabízí pouze jeden

šifrovací algoritmus a při konfiguraci lze v podstatě volit jen z několika

možností délky šifrovacího klíče.

Protože technologie PPTP pochází z dílen Microsoftu, asi nikoho nepřekvapí, že

jsou jí vybaveny především systémy Windows, a to včetně verzí 9× či NT 4.0. I

klientské stanice jsou schopny jako základní PPTP server přijmout příchozí VPN

volání a samozřejmě není problém sestavit spojení opačně, tedy v roli

volajícího klienta. Protokol PPTP se stále hojně používá, a to především tam,

kde není možné z nějakých důvodů nasadit IPSec. Pro správce firewallů opět

jedno důležité upozornění: protokol PPTP přenáší své pakety v síti TCP/IP na

portu 1723.



Protokol: L2TP over IPSec

Pokud standard IPSec představuje zavedenou cestu především v oblasti tunelování

mezi pobočkami či jinými sítěmi a protokol PPTP je hojně rozšířenou, byť mírně

zastarávající variantou při komunikaci mezi serverem a klientem

(client-to–gateway), nyní vám představíme řešení, jež spojuje výhody obou.

Společnou aktivitou firem Microsoft a Cisco vstoupil před časem do oblasti VPN

nový protokol, jenž by mohl časem nahradit právě PPTP. Název L2TP naznačuje, že

je jedná o koncepčně podobné řešení jako výše zmíněné PPTP, neboť jde opět o

tunelování na „druhé“ vrstvě, kde běží i protokol PPP – Layer 2 Tunneling

Protocol tedy také balí původní pakety vnitřní sítě tak, jako by je chtěl

poslat pomocí hypotetické telefonní linky, a používá k tomu novější záhlaví

L2F, vyvinuté společností Cisco. Na rozdíl od PPTP však přichází zásadní změna,

a to v oblasti šifrování: L2TP sám o sobě žádný šifrovací mechanismus nemá, což

vypadá jako značný problém. Ve skutečnosti však tento protokol pro svou práci

využívá možností standardu IPSec, což jej činí velmi silným a odolným, a dává

mu dobrou naději do budoucna. Pokud se nad uvedeným prolnutím technologií

zamyslíme, zjistíme, že jeho síla nespočívá jen ve využití IPSecu, ale také ve

dvojím mechanismu autentizace. Jak je to možné? Stejně jako protokol PPP a PPTP

i L2F totiž provádí ověření vzdáleného klienta na úrovni uživatele, jenž je

nucen zadat jméno a heslo či předložit svou identitu nějakou jinou formou

(třeba na chytré čipové kartě nebo „kalkulačce typu eBanka“). Jenže pokud si

vzpomínáte, jak pracuje IPSec, tak tímto vše zdaleka nekončí, neboť je rovněž

potřeba ověřit identitu vzájemně se spojujících počítačů, což právě IPSec

striktně vyžaduje. Jinak řečeno, pokud se chcete třeba z notebooku přihlásit do

vzdálené sítě, bude nejen prověřeno, zda jste to vy, ale také zda se

připojujete z určeného, ověřeného počítače.

Právě ony zmíněné bezpečnostní důvody bezesporu vedly společnost Microsoft k

tomu, že od verze Windows 2000 je VPN typu L2TP over IPSec implementována jak v

podobě klientů, tak serveru, což umožňuje její plné nasazení.



Protokol: SSL/TLS

Výše popsané technologie pro sestavování VPN spojení jsou dnes v podstatě

zvládnuty, a proto se zdá, že jsme nalezli řešení problému cesty veřejnou,

nebezpečnou sítí. Vývoj však neustává a přináší další zajímavé možnosti, jež

odstraňují některé existující překážky.

Jednou z nejnovějších cest při budování VPN je využití protokolu SSL, případně

jeho velmi podobné varianty TLS. Ne že by se jednalo o nějakou převratnou

novinku: podpora SSL je dnes v každém pořádném internetovém prohlížeči

samozřejmá a obdobným způsobem lze chránit třeba přenos pošty nebo souborů

pomocí serverů FTP. Dalšího využití se protokoly SSL/TLS dočkaly právě díky

tomu, že začaly být používány i pro účely tunelování. Tvůrce podobných řešení k

tomu mimo jiné vedla jedna důležitá skutečnost: popularita a rozšíření SSL či

TLS jsou takové, že projdou prakticky všemi síťovými cestami, neboť většina

správců sítě je považuje za užitečné a jako takové je propouští. Dalším

důležitým „plusem“ je to, že obzvláště protokol SSL je prověřen dlouhodobým

služebním nasazením a prokázala se vysoká kvalita jeho původního návrhu i

způsobu ochrany dat. Další nezanedbatelnou okolností je silná autentizace

komunikujících stran, pro niž je v případě SSL/TLS využívána výměna certifikátů.

Nasazení uvedených protokolů pro tvorbu VPN se stále více prosazuje a jeho

masivnější prosazení je zřejmě jen otázkou času. Z různých implementací můžeme

zmínit třeba produkt Kerio WinRoute Firewall, jenž dokáže tunel na bázi

protokolu SSL využít k propojení vnitřních sítí jednotlivých poboček přes

nechráněnou internetovou síť.



Související služby s VPN

Předchozí odstavce nám poskytly základní přehled, v němž bylo prozatím ukryto

několik úskalí. Naznačme si nyní některá z těch, jež jsou řešena souvisejícími

službami.

Připomeňme, co se vlastně stane při vzniku VPN: počítače, jež se dosud

„neviděly“, se stanou součástí jediného virtuálního síťového prostředí. Vůbec

při tom nezáleží na faktu, zda jsme přiřadili ve scénáři client-to-gateway

jediného uživatele do zbytku sítě, nebo jsme při nasazení gateway-to-gatewy

propojili najednou desítky počítačů z různých poboček. Takto vzniklý společný

síťový „rybník“ je však potřeba řídit. V první řadě je nutné dohlédnout na to,

aby všechny počítače měly odpovídající IP adresaci. Problémy mohou být jak rázu

konfliktního (ve stejné, náhle sestavené síti se vyskytnou duplicitní adresy),

tak charakteru „nedostupnosti“, pokud se síťové segmenty nacházejí jakoby v

jiných IP adresovacích prostorech a nemáme zajištěno směrování (routing). V

případě vzdálených klientů, tedy třeba cestujících uživatelů s notebooky, bývá

problém řešen jednoduše: novému „příchozímu“ přidělí VPN server při připojování

adresu ze své zásoby nebo prostřednictvím DHCP služby dynamicky, takže je

vystaráno.

Velmi podobně je třeba dohlédnout na práci služby DNS, která překládá

klientským počítačům internetová jména na IP adresy. Připojením pomocí VPN

totiž může dojít k přesměrování toku DNS dotazů, což může způsobit porušení

funkcionality. Právě proto je často VPN klientům zasílána, spolu s DHCP

konfigurací, i nová adresa služby DNS, aby byla zajištěna její dostupnost.

Poslední „drobnost“, kterou předložíme zvídavému čtenáři k zamyšlení, je změna

nastavení výchozího směru odchozí komunikace po připojení klientského počítače

k VPN. Klientský software totiž většinou předpokládá, že tou nejdůležitější

sítí je VPN, a proto se snaží veškerý odchozí provoz „natlačit do tunelu“.

Důsledkem je, že veškerou komunikaci směřující do internetu posílá klient třeba

z domova po trase: domácí počítač-VPN tunel-firemní VPN server-firemní brána-

výstupní proxy server (firewall)-veřejný internet a zpět. To může být žádoucí

stav, ale také nepříjemný druhotný důsledek: často chceme tunelem posílat jen

data pro interní služby ve firmě, ale internetové požadavky pak chceme posílat

přímo z domova. Problémem může být, že ne všechny klientské VPN aplikace takové

rozdvojení dovolují, což je potřeba blíže prozkoumat případ od případu.



Závěrem

Pevně věříme, že náš úvod do technologií virtuálních privátních sítí vám

přinesl alespoň základní pohled na principy jejich fungování. Pochopitelně jde

o téma tak rozsáhlé, že je nelze zpracovat v jediném článku. Protože dobře

víme, že předložený text přinesl zvídavému čtenáři řadu odpovědí a ještě více

otázek, k některým dílčím tématům se samozřejmě budeme na stránkách PC WORLDu v

budoucnu postupně vracet.