370 likes | 486 Views
TELEKOMUNIKACE 8. cvičení VPN, DNS, QoS. 2012/2013 Martin Šrotýř srotyr@fd.cvut.cz. VPN – Virtual Private Network (virtuální privátní síť).
E N D
TELEKOMUNIKACE8. cvičeníVPN, DNS, QoS 2012/2013 Martin Šrotýř srotyr@fd.cvut.cz
VPN – Virtual Private Network (virtuální privátní síť) 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
10.10.1.100 10.10.1.100 10.10.1.100 1024 1024 1024 remote desktop management remote desktop management remote desktop management 80.250.1.1 3389 3389 3389 10.10.2.100 10.10.2.100 10.10.2.100 80.250.2.2 VPN (Virtual Private Network) 10.10.1.0/24 10.10.2.0/24 internet 80.250.2.2 80.250.1.1 10.10.1.254 10.10.2.254 eth1 eth1 eth0 eth0 gre0 gre0 10.0.0.1 10.0.0.2
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
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
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
VPN na síťové vrstvě Filtrování směrovacích informací • Omezené zveřejnění směrovacích informací
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
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
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ášť.
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í
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í
VPN tunelování • Srovnání PPTP a L2TP
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
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í
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/
DomainNameSystem(DNS) • 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)
Základní TLD • 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)
Hirearchie DNS . . . seznam com cvut edu ucb ibm fd fel cz fit cs math nepojmenovaný kořen stromu • 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
Databáze domén a doménových jmen • 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
Základní typy DNS záznamů • Ukázka jednoduché konfigurace jmenného serveru
Ř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)
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.cz a 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í.
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
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) • 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
QoS (Quality of Service) 100Mbit 10Mbit
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í
Policing vs. Shaping rychlost rychlost policing čas čas rychlost rychlost shaping čas čas
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).
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
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
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