VPN – Virtual Private Network (virtuální privátní síť)
2
Privátnost je tvořena metodou virtualizace, ať už mezi dvěma koncovými body, mezi dvěma organizacemi, mezi několika koncovými body v rámci jedné organizace, či mezi více body prostřednictvím Internetu.
VPN
• Tři základní typy:– uzel - uzel
– uzel – síť
– síť – síť
• Důvody vytváření VPN– Bezpečnost
– Ekonomika
Využívá již vybudované infrastruktry – není třeba přímá linka
Mohou být vytvářeny pomocí HW, SW a jejich kombinací
Dovolují vytvářet bezpečné privátní sítě nad veřejnými sítěmi jako je internet
3
VPN (Virtual Private Network)10.10.1.0/24
eth1
internet
eth1
10.10.2.0/24
eth0 eth0
gre0 gre0
80.250.1.1
10.0.0.1 10.0.0.2
10.10.2.25410.10.1.254 80.250.2.2
10.10.1.100
10.10.2.100
1024
3389
remote desktopmanagement
10.10.1.100
10.10.2.100
1024
3389
remote desktopmanagement
80.250.1.1
80.250.2.2
10.10.1.100
10.10.2.100
1024
3389
remote desktopmanagement
VPN• Bezpečnost VPN
– Authentication (ověřování pravosti) – zabezpečí, že data přicházejí ze zdroje, ze kterého tvrdí, že přicházejí
– Access Control (kontrola přístupu) – omezování neautorizovaných uživatelů – kontrola práv uživatelů
– Confidentality (důvěrnost) – ochrana dat přenášených veřejnou sítí před čtením nebo kopírováním neoprávněnými osobami
– Data Integrity (integrita dat) – zajištění, aby nikdo nemohl nepozorovaně měnit data při přenosu přes Internet
– Spolehlivost a robusnost - komunikace odolná proti výpadkům
– výkon – přenosová rychlost, malé zpoždění, u VPN bývá nižší
– Škálovatelnost – pro řadu subjektů je důležité, aby bylo možné VPN snadno a levně rozšířit
5
VPN
• VPN – používané komponenty, principy– Obranné valy (Firewalls) – povolení vstupu uživatelům VPN do sítě a
zabránění vstupu nechtěným návštěvníkům (filtrace, proxy)
– Ověřování – používají se schémata založená na systémech se sdíleným klíčem, jako je Challenge Handshake Authentication Protocol (CHAP), RSA, atd... . Zajišťují také integritu dat.
– Šifrování – zajištění důvěrnosti i integrity - zapouzdření dat do bezpečné obálky (šifrování tajným klíčem)
– Tunelování – přizpůsobení nekompatibilních protokolů. Např. propojení LAN s NetBEUI nebo IPX přes Internet (IP)
– Překlad adres (NAT) – použití privátních adres (RFC 1918)• 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16• Nedostatek IP adres• Časté změny poskytovatele
6
VPN
• Podle způsobu zajištění bezpečnosti– VPN se šifrováním informací – IPSec, SSL
– VPN na důvěryhodných linkách – ATM, Frame Relay
• Podle způsobu směrování– „peer“ model – výpočet směrování na každém uzlu
– „overlay“ model – ATM, Frame Relay, GRE tunely – přímé spojení mezi dvěma koncovými body
7
VPN na síťové vrstvě
Filtrování směrovacích informací• Omezené zveřejnění směrovacích informací
8
VPN tunelování
• Vytváří se tunel, kterým je přenášena specifická část komunikace
• GRE – RFC 1701, RFC 1702 – Generic Routing Encapsulation
• PPTP Point-to-point Tunneling Protocol• L2F – Layer 2 forwarding• L2TP – Layer 2 Tunneling Protocol• ATMP – Ascend Tunnel Management Protocol• DLSW – Data Link Switching (SNA over IP)• IPSec – Secure IP• Mobil IP – IP pro mobilní hosty
9
VPN tunelování
• Nejběžnějším typem tunelování je GRE (Generic Routing Encapsulation). Tunely jsou tvořeny routery, které slouží jako vstupní a výstupní body dané VPN sítě
• K přenášeným paketům se přidává GRE hlavička s cílovou adresou routeru na druhém konci tunelu. Cílový router hlavičku odstraní a pokračuje k cíli podle cílové IP adresy
10
VPN tunelování• GRE tunely jsou typu bod-bod, některé implementace
dovolují konfiguraci bod-více bodů• Výhodou je odlišná adresace – přístupové body do
páteřní sítě mají adresy této sítě a tunelování používá adresy cílových bodů z prostoru adres této sítě, zatímco VPN mají vlastní adresní rozsah. Tím vzniká odstínění těchto sítí, což je jeden z principů tzv. overlay modelu (překryvný).
• Rozdíl oproti síti filtrování směrovacích informací je, možnost používat privátní adresy.
• Výhodou je také přenos libovolného síťového protokolu. Protokol je přenášen přes páteřní síť nezměněn. GRE umí pracovat s NAT.
• Nevýhoda je náročnost konfigurace, protože všechny tunely musí být konfigurovány zvlášť.
11
VPN tunelování
• PPTP – Point-to-point Tunneling Protocol• Původně vyvinut pro vzdálený přístup do Internetu• Microsoft, Ascend, USRobotics, 3COM, ECI Telematics• Součástí MS Windows pod krycím názvem "Dial-up Networking"
nebo RAS (Remote Access Service)• Jednoduchá konstrukce VPN• Ověřovací mechanizmus PAP (Password Authentication protocol),
CHAP, MS CHAP• Dovoluje tunelování IPX, AppleTalk• Vytváří TCP spojení mezi PPTP klientem a serverem (port 1723)• Datové pakety šifrovány, PPP pakety komprimovány• GREv2 – vytváření IP datagramu (protokol ID v IP záhlaví 47)• PPTP není standardizován internetovou IETF autoritou, a tak
existuje řada implementací, které nejsou vzájemně plně kompatibilní
12
VPN tunelování
• L2TP – Layer 2 Tunneling Protocol
• L2F – Layer 2 Forwarding• L2TP = L2F + PPTP• Povoluje vytvořit více relací jedním tunelem, více QoS
tunelů mezi 2 koncovými body• Lepší komprese záhlaví, podpora řízení toku dat• Použitelný i nad ne-IP sítěmi (ATM, FrameRelay, X.25)• Nespecifikuje ověřování a šifrování
13
VPN tunelování
• Srovnání PPTP a L2TP
14
PPTP L2TP/IPSec
Klady
Jednoduchost Podpora NAT Zabudovaná podpora v OS Microsoft
a tudíž velká rozšířenost
Bezpečnost (dvojí autentizace)
Zápory
Není možné zjistit skutečného původce paketu
Ne zcela standardizovaná specifikace Problémy se zabezpečením u OS
Microsoft
Složitost Problémy s NAT
VPN tunelování
• IPSec (RFC 2401 – RFC 2406)• Rozšíření IP protokolu• Zajišťuje ověřování a integritu dat – AH Authentication Header –
pouze doplnění o zajištění integrity• Zajišťuje důvěrnost a integritu dat – ESP Encapsulating Security
Payload – zapouzdření paketu a šifrování jeho obsahu• Pracuje v režimu
– Transportním – přenos paketu mezi koncovými uživateli. Používá originální IP adresy.
– Tunelovacím – přenos paketu mezi konci tunelu. Na portálech dochází k zapouzdření paketu přidáním nového IP záhlaví s IP adresami portálů tunelu.
• Transportní režim s AH• Transportní režim s ESP• Tunelovací režim s AH• Tunelovací režim s ESP
15
IPSec
• Transportní režim
• Méne bezpečný• Nezabezpečuje IP
záhlaví
• Tunelovací režim
• Zabezpečuje IP záhlaví
• Vytváří „nové“ IP záhlaví
16
OpenVPN
• User-space aplikace využívající TUN/TAP virtuálních adaptérů
• Umožňuje tunelovat pomocí UDP i TCP• L2 i L3• Řeší obvyklé problémy VPN (MTU, NAT, redundanci a
load balancing)• Freeware• Windows, Linux, iOS, Android
• http://openvpn.net/
17
DNS – Domain Name System
18
19
• Uživatelé preferují symbolická jména strojů
• oproti číselným adresám
– Nutno zajistit mapování jméno_stroje <=> číselná_adresa
• Internet používá
– hierarchický prostor jmen (namespace)
– nezávislý na topologii sítí
– Citát: V TCP/IP Internetu jsou hierarchicky členěná jména strojů přiřazována podle struktury organizací, které mají oprávnění nakládat s částmi prostoru jmen, nikoli však nutně podle způsobu propojení fyzických sítí.
• Flexibilní hierarchie jmen
– symbolická jména strojů – doménová jména (domain name)
– celosvětově jednotná syntaxe
– hierarchie vyznačena oddělovačem '.'
– např. board.fd.cvut.cz (147.23.100.15)
• vše, co následuje za první '.' se obvykle nazývá doména
• poslední úsek ('cz') je tzv. doména 1. řádu nebo vrcholová doména (top-level domain = TLD)
Domain Name System (DNS)
20
• Původní historicky vzniklé v USA a Kanadě– stále užívané
• Přidělování domén 2. řádu je svěřeno národním autoritám– V ČR je to CZ-NIC
– V některých zemích jsou domény 2. řádu účelově orientované• Např. co.uk (britské komerční domény), ac.uk (akademické instituce)
com Komerční organizace (commertial)
edu Vzdělávací instituce (educational)gov Vládní jednotky (government)mil Vojenské užití (military)
int Mezinárodní organizace (international)
org Původně neziskové organizace
net Organizace sítě (network) – v současnosti i širší užití
arpa Historická doména nyní používaná pro "inverzní rezoluci"
národní kód
Geografické členění podle států – dvoupísmenné kódycz Česko uk Velká Britániede Německo at Rakouskous USA (málo užívané) cn Kontinentální Čína
Základní TLD
21
• Autorizace a správa jmen ve směru hierarchie– Např. cvut se registruje u správce TLD cz a spravuje cvut.cz– Správci sítě FD registrují fd u správců cvut.cz a jsou autorizováni
přidělovat jména v doméně fd.cvut.cz
edu com
ucb
cs math
ibm
. . . cz
cvut
fel fd fit
seznam
nepojmenovaný kořen stromu
Hirearchie DNS
22
• Celosvětová hierarchicky organizovaná distribuovaná databáze
– Záznamy jsou trojice (jméno, třída, obsah)• Třída označuje typ objektu, který záznam popisuje• Např. "stroj", "poštovní server" (mail exchanger) atd.
– Důsledek: Jedno jméno může označovat více různých objektů. Klient, který chce získat informaci z databáze, uvádí i typ požadovaného objektu.
• Terminologie:– Servery se označují jako jmenné servery (name servers)– DNS software na klientských strojích se nazývá rezolver (resolver)
• DNS používá množinu on-line serverů ve stromové struktuře– Daný server může obhospodařovat celý podstrom nebo jen jednu či
několik vrstev– Např. kořenový server má informace o všech TLD a jejich jmenných
serverech
Databáze domén a doménových jmen
23
• Ukázka jednoduché konfigurace jmenného serveru
Základní typy DNS záznamů
24
Řešení úlohy hledání doménových jmen
• Je nutno hledat doménová jména od kořene stromu?• V praxi
– Vyhledávání začíná u lokálního jmenného serveru • Každý stroj v lokální síti musí znát jeho adresu
– Lokální server se bude obracet na kořenový server jen zcela výjimečně– Bude se obracet na svůj nadřazený server
• Např. lokální server v Konviktské ns.fd.cvut.cz se bude obracet na ns.cvut.cz • Rekurzivní postup "směrem nahoru"
• Problém efektivity– Fakta:
• nejčastější dotazy jsou lokální• pár [jméno – adresa] se mění zřídkakdy • dotazy se často opakují
– Řešení:• Každý server si pamatuje (v cache) odpovědi, které získal od nadřazených
serverů• Dobu platnosti pamatovaného údaje (TTL) udává zdrojový server, který opravdu
drží původní datový záznam (tzv. autoritativní server)
25
Zkracování doménových jmen při hledání
• DNS pracuje s úplnými doménovými jmény• Např. board.fd.cvut.cz
• Rezolver však umožní hledaná jména zkracovat– např. na lokálním stroji je nastaveno přednostní vyhledávání v
doménách• .fd.cvut.cz, .cvut.cz
– Zadá-li uživatel (nebo jeho aplikace) jméno pouze jako www, zajistí rezolver posloupnost dotazů (v tomto pořadí)
• www.fd.cvut.cz, www.cvut.cza první pozitivní odpověď považuje za správnou (www.fd.cvut.cz)
• DNS umí mapovat jen úplná doménová jména na adresy– Zkratky jsou k dispozici pouze díky lokálním rezolverům z důvodů
většího uživatelského pohodlí.
26
Reverzní rezoluce • Přímá rezoluce: doménové_jméno IP_adresa
• Reverzní rezoluce: IP_adresa doménové_jméno– Nemusí být jednoznačné
• Více doménových jmen se může mapovat na jednu adresu– Poměrně neefektivní, avšak mnohdy potřebné
• Např. anti-spam– Používají se PTR záznamy
• Zajímavý trik realizovaný lokálním rezolverem– Zapiš adresu formálně jako jméno stroje a zeptej se na ně– Nechť IP adresa je aaa.bbb.ccc.ddd– Vytvoř dotaz na ddd.ccc.bbb.aaa.in-addr.arpa
• Využití historické TLD arpa – Odešli name-serveru dotaz na objekt typu PTR s takto vytvořeným
"syntetickým" jménem
27
Reálný DNS systém • Ukázali jsme jen princip DNS• Skutečná implementace je výrazně složitější
– požadavky na spolehlivost a efektivitu• Realizace
– Kořenových serverů je celá řada (spolehlivost, dostupnost)• Vzájemně si replikují informace o TLD serverech a "delegování" jejich
autority– Primární a sekundární name-servery
• Primární name-server je ten, který drží primární databázi informací o doméně
• Sekundární server čas od času kopíruje obsah primárního serveru a zajišťuje autoritativní odpovědi, není-li primární server dostupný
– "Caching-only" servery• Lokální doména (malá organizace) nemá svůj vlastní name-server
– Ten je např. u poskytovatele připojení• Provozuje ale "caching-only" server, který nemá svoji vlastní databázi.
Všechny dotazy přeposílá nadřazenému name-serveru, avšak jeho odpovědi si pamatuje a může pak dotazy vyřizovat lokálně
– DDNS (Dynamické DNS)• Umožňuje mobilním strojům dynamicky registrovat svoje stabilní
doménové jméno u momentálního poskytovatele připojení– Zatím málo rozšířené, implementováno zřídkakdy na klientské straně
QoS – Quality of Service
28
QoS (Quality of Service)
• QoS zajišťuje kvalitu služby (garantovaný datový tok a zpoždění)
• Přenosový kanál (síť) je nekvalitní především díky bottle-neckům (místům kde se zmenšuje šířka přenosového pásma)
• Tím vznikají následující problémy:– packet-loss – ztrátovost přenášených dat– delay – konstantní zpoždění– jitter – proměnné zpoždění– out-of-order delivery – data jsou přijata v jiném pořadí než byla
odeslána
29
QoS (Quality of Service)
100Mbit 10Mbit
30
QoS (Quality of Service)
• Při návrhu QoS jsou důležité dva parametry:– Šířka přenosového kanálu– Maximální zpoždění
• Techniky omezování šířky přenosového kanálu:– Shaping – data překračující nastavenou šířku kanálu
jsou uložena do bufferu a odeslána později– Policing – data překračující nastavenou šířku kanálu
jsou zahozena• Zpoždění generované QoS je možné ovlivnit
– Velikostí bufferu – zpoždění je omezeno na přesně definovanou velikost
– Použitím policingu – QoS nevkládá žádné zpoždění
31
Policing vs. Shaping
čas
rychlost
čas
rychlost
čas
rychlost
čas
rychlost
policing
shaping
32
QoS (Quality of Service)• Pro definici šířky pásma se používá:
– CIR (Committed Information Rate) – minimální garantovaná šířka přenosového pásma
– MIR (Maximum Information Rate) – maximální šířka přenosového pásma
– Burst – množství dat které je možné jednorázově odeslat bez ztrát
• V případě konfigurace QoS internetového připojení na routeru zákazníka je potřeba počítat s nižší propustností, aby na straně providera nepřetékala fronta v jeho QoS
• Shaping je možné provádět pouze na výstupním rozhraní zařízení (na vstupu je možné pakety pouze zahazovat. Pro shaping příchozího provozu je v Linuxu IMQ (Intermediate Queueing Device).
33
Typy front pro QoS
• Typy frontování používané pro QoS:– FIFO (First In First Out) – nejjednodušší typ fronty,
pakety jsou odesílány ve stejném pořadí jako byly přijaty
– PQ (Priority Queueing) – prioritizuje důležitý provoz (např. web před ftp) může se ovšem stát, že nedůležitý provoz nebude vůbec obsloužen
– CQ (Custom Queueing) – každému typu provozu je garantována určitá propustnost
– WFQ (Weighted Fair Queueing) – mezi jednotlivé toky (rozpoznáno na základě IP a portu) je spravedlivě rozdělena celková přenosová kapacita
34
Požadavky služeb na QoS
• WEB, FTP, MAIL, streaming atp.– Velmi malá ztrátovost– Vyšší zpoždění není podstatné– Shaping s velkým bufferem
• SSH, DNS, interaktivní provoz– Malá ztrátovost– Malé zpoždění– Shaping s malým bufferem
• VoIP, hry atp.– Minimální a konstantní zpoždění– Malá ztrátovost není podstatná– Policing
35
QoE – Quality of Experience
• kvalita zkušenosti (QoE nebo prostě QX)• subjektivní míra zkušeností zákazníka s obsluhou• stanovuje se z kompletních zkušeností z provozu, a
představuje více komplexní hodnocení než uživatelské zkušenosti (user experience), zaměřené na softwarové rozhraní a zákaznické zkušenosti (customer experience), zaměřená na podporu.
• vyvíjejí se metody jak správně „měřit“ QoE
36
Děkuji za pozornost !
37