Retele Virtuale Private

PROIECT DE DIPLOMĂ

Rețele virtuale private

CUPRINS

1. Introducere

2. Elemente fundamentale despre interconectarea calculatoarelor

2.1 Modelul de referință OSI
2.2 Modelul TCP/IP
2.3 Adrese IP
2.4 Tipuri de rețele și metode de interconectare

3. Rețele Virtuale private
       3.1 Introducere in VPN

3.2 Modul de funcționare

3.3 Avantaje VPN

3.4 Tipuri de rețele VPN

3.4.1 Acces VPN la distanță

3.4.2 Intranet VPN

3.4.3 Extranet VPN

3.4.4 VPN cu livrare sigură (Trusted VPN)

3.4.5 VPN securizate (Secure VPN)

3.4.6 VPN hibrid

3.5 Tunelare

3.5.1 Fundamentele tunelării

3.5.2 Rețea virtuală privată administrată de furnizor (PPVPN)

3.5.3 Protocoale de tunelare

3.5.3.1 Protocolul Ipsec

3.5.3.2 Protocolul SSL

3.5.3.3 Protocolul L2TP

3.5.3.4 Protocolul L2TPv3

3.5.3.5 Protocolul MPLS

3.6 Componente VPN. Metode de realizare a soluțiilor VPN

3.7 Securitate VPN3.7.1 Amenințări la adresa securității rețelelor publice

3.7.2 Soluții VPN

3.7.3 Criptarea datelor

3.7.3.1 Criptosisteme cu cheie privată (simetrice)

3.7.3.2 Criptosisteme cu cheie publica (asimetrice)

3.7.3.2.1 Diffie-Hellman

3.7.3.2.2 Rivest Shamir Adleman (RSA)

3.7.4 Semnături digitale și autentificări de date

3.7.5 Autentificarea utilizatorilor și controlul accesului

3.8 VPN și NAT

4. Software-ul Hamachi pentru VPN

5 Open VPN

5.1 Generalități

5.2 Rutare vs Punte de rețea

5.3 Modul Rutare in OpenVpn

5.4 Modul Poartă in OpenVpn

5.5 Certificate pentru autentificare

6. Aplicație

7. Concluzii

Bibliografie

Anexa1- Abrevieri

1. Introducere

Dezvoltarea extraordinară pe care a cunoscut-o industria calculatoarelor a fost însoțită pas cu pas de apariția și extinderea rețelelor. În aproximativ 30 de ani realizările sunt uimitoare: calculatoarele au dimensiuni reduse și performanțe greu de bănuit cu ani în urmă, iar rețelele, după ani de încercări în care s-au elaborat diverse modele, standarde, în care s-au experimentat diverse proiecte care au dispărut sau care s-au unificat se prezintă astăzi într-o formă destul de avansată. Totodată, a crescut numărul aplicațiilor care necesită o rețea de calculatoare.

Proiectul de diplomă tratează una dintre tehnologiile moderne utilizate în cadrul rețelelor de comunicații și anume rețelele virtuale private (Virtual Private Networks-VPN). Tehnologia rețelelor virtuale a apărut ca o soluție prin care se asigură confidențialitatea datelor vehiculate printr-un mediu public precum Internet-ul. Rețelele virtuale private reprezintă un mod de a conecta locații aflate la distanță (filiale, utilizatori mobili, clienți, furnizori etc.) într-o unică rețea virtuală, asigurându-se mecanisme de securitate. Aceste rețele stau la baza comunicării eficiente între birourile, locațiile firmelor de dimensiuni mijlocii și mari utilizând rețele publice/Internetul, din România și din întreaga lume. Prin VPN, angajații aflați la distanță au acces direct la resursele companiei. În acest caz, esențiale sunt simplitatea pentru utilizator (pe principiul: “Indiferent de distanță, trebuie ca resursele să-ți fie la fel de accesibile ca și cum ai fi în sediul firmei”) și administrarea ușoară și centralizată. Pe de altă parte, accesul este permis utilizatorilor diferențiat, în funcție de profilul prestabilit.

Abia în ultima perioadă companiile au început să înțeleagă și, cele mai avansate dintre ele, să simtă avantajele pe care le oferă comunicarea la distanță prin Internet prin canale de bandă largă, față de tradiționalul acces prin dial-up. Motivația de bază pentru construirea unui VPN este reducerea costurilor legate de comunicații. Pentru că este mult mai ieftin să se folosească o singură legătură fizică comună pentru servirea mai multor clienți din rețea decât să se utilizeze legături separate pentru fiecare client din rețeaua privată.

În oricare dintre scenariile de acces la distanță prin VPN, ușurința în utilizare este un criteriu important. Majoritatea problemelor de securitate sunt atribuite erorilor de configurare, deci cu cât sistemul este mai ușor de administrat, cu atât șansele de a scăpa ceva din vedere sunt mai mici. Din punctul de vedere al clientului, simplitatea este critică, pentru că mulți angajați aflați în deplasări sau la distanță nu au cunoștințele necesare sau accesul la resursele tehnice pentru a depista și rectifica cauzele unor eventuale disfuncționalități.

Scopul acestei lucrări este familiarizarea cu elementele fundamentale ale unei rețele de calculatoare, prezentare noțiunilor teoretice care stau la baza realizări rețelelor virtuale private, precum și a modalităților de implementare. Lucrarea prezintă pe lângă soluții care necesită cunoștiințe avansate și soluții VPN pentru începători, care sunt la îndemâna oricui.

Obiectivul proiectului de diplomă este realizarea unui tunel între două calculatoare cu ajutorul programului OpenVPN. Am ales în partea practică folosirea acestui program deoarece este un concept modern în zilele noastre, care are foarte multe opțiuni ce pot fi exploatate. OpenVpn permite realizarea unei tunelări robuste și foarte flexibile care utilizează toate caracteristicile de autentificare și certificare a criptării ale bibliotecii OpenSSL pentru a tunela în mod securizat rețele IP. În plus acest program VPN este gratuit și open source.

Am optat în alegerea temei “Rețele Virtuale Private” cu scopul de a mă perfecționa în domeniul rețelelor de calculatoare. Cunoștiințele dobândite în cadrul facultății în acest domeniu, precum și în urma participării la cursurile de Cisco, m-au determinat să tratez acest concept modern al rețelelor de calculatoare.

2. Elemente fundamentale despre interconectarea calculatoarelor

2.1 Modelul de referință OSI

Modelul de referință OSI se bazează pe o propunere dezvoltată de către Organizația Internațională de Standardizare (Internațional Standards Organization – OSI) ca un prim pas către standardizarea internațională a protocoalelor folosite pe diferite niveluri (Day și Zimmerman, 1983).

Modelul se numește ISO OSI (Open Systems Interconection – Interconectarea sistemelor deschise), pentru că el se ocupă de conectarea sistemelor deschise comunicării cu alte sisteme.

Modelul OSI [Tanenbaum -Rețele de Calculatoare pagina 34] cuprinde șapte niveluri, după cum se poate observa în figura 2.1a. Trei concepte sunt esențiale pentru modelul OSI: serviciile, interfețele, protocoalele. Probabil că cea mai mare contribuție a modelului OSI este că a făcut explicită diferența între aceste trei concepte. Fiecare nivel realizează niște servicii pentru nivelul situat deasupra sa. Definiția serviciului spune ce face nivelul, nu cum îl folosesc entitățile de pe nivelurile superioare sau cum funcționează nivelul.

Interfața unui nivel spune proceselor aflate deasupra sa cum să facă accesul. Interfața precizează ce reprezintă parametrii și ce rezultat se obține. Nici interfața nu spune nimic despre funcționarea internă a nivelului.

Protocoalele pereche folosite într-un nivel reprezintă problema personală a nivelului. Nivelul poate folosi orice protocol dorește, cu condiția ca acesta să funcționeze (adică să îndeplinească serviciul oferit).

Figura 2.1a Modelul OSI

2.2 Modelul TCP/IP

TCP/IP(Transmission Control Protocol/Internet Protocol) este o suită de protocoale, dintre care cele mai importante sunt TCP și IP, care a fost transformat în standard pentru Internet de către Secretariatul pentru Apărare al Statelor Unite, și care permite comunicația între rețele eterogene (interconectarea rețelelor). Modelul de referință ISO/OSI definește șapte nivele pentru proiectarea rețelelor, pe când modelul TCP/IP utilizează numai patru din cele șapte nivele[Tanenbaum – Rețele de Calculatoare pagina 37]., după cum se vede din figura 2.2a.

Figura 2.2a Modelul TCP/IP

Familia de protocoale TCP/IP are o parte stabilă, dată de nivelul Internet (rețea) și nivelul transport, și o parte mai puțin stabilă, nivelul aplicație, deoarece aplicațiile standard se diversifică mereu.

În ceea ce privește nivelul gazdă la rețea (echivalentul nivelul fizic și legătura de date din modelul OSI), cel mai de jos nivel din cele patru, acesta este mai puțin dependent de TCP/IP și mai mult de driverele de rețea și al plăcilor de rețea. Acest nivel face ca funcționarea nivelului imediat superior, nivelul Internet, să nu depindă de rețeaua fizică utilizată pentru comunicații și de tipul legăturii de date.

Nivelul Internet are rolul de a transmite pachetele de la sistemul sursă la sistemul destinație, utilizând funcțiile de rutare. La acest nivel se pot utiliza mai multe protocoale, dar cel mai cunoscut este protocolul Internet ¬IP. Nivelul transport are rolul de a asigura comunicația între programele de aplicație. Nivelul aplicație asigură utilizatorilor o gamă largă de servicii, prin intermediul programelor de aplicații. La acest nivel sunt utilizate multe protocoale, datorită multitudinii de aplicații existente, și care sunt în continuă creștere.

2.3 Adrese IP

Fiecare calculator, gazdă sau router, din INTERNET are un nume global, numit adresă IP, care codifică identitatea sa precum și identitatea rețelei căreia îi aparține. Această combinație de adrese trebuie să fie unică. Nu este permisă existența a două calculatoare cu aceeași adresă IP. Structura generală a unei adrese IP poate fi observata in figura 2.3a.

Figura 2.3a Structură adresă IP

Toate adresele IP au lungimea de 32 de biți și sunt incluse în câmpurile adresă sursă și adresă destinație din antetul datagramelor IP. În fiecare țară care implementează rețele TCP/IP, există un comitet național responsabil de administrarea și distribuirea adreselor IP. Responsabilitatea mondială pentru administrarea adreselor IP o are grupul IANA, Internet Assigned Numbers Authority. În mod uzual adresele IP sunt scrise în zecimal cu punct, DDN, Dotted Decimal Numbers. Iată un exemplu de adresă IP: 193.226.10.90.

Domeniul de adresare cuprins între 0.0.0.0 și 255.255.255.255 a fost împărțit în 5 clase, A, B, C, D și E ale căror elemente diferă în funcție de modul de specificare a câmpurilor ID rețea și ID host. Structura generală a adreselor pentru cele 5 clase se observă în figura 2.3b.

Figura 2.3b Structura adreselor pentru cele 5 clase

2.4 Tipuri de rețele

Dacă toate dispozitivele dintr-o rețea sunt situate în aceeași clădire, atunci este vorba despre o rețea locală, LAN (Local Area Network). În acest caz toate dispozitivele din rețea sunt conectate cu același tip de cablu.

Mai multe rețele locale, situate în clădiri diferite, conectate împreună, formează o rețea metropolitană, MAN (Metropolitan Area Network) dupa cum se poate observa în figura 2.4a. În acest caz legăturile pot fi pe linie telefonică, sau pe fibră optică.

Figura 2.4a Tipuri de rețele

Mai multe rețele metropolitane, situate în localități diferite, conectate împreună, formează o rețea regională, WAN (Wide Area Network). În acest caz legăturile pot fi radio, terestre sau prin satelit[Tanenbaum – Rețele de Calculatoare pagina 16]..

Modalitatea de organizare a unei rețele, tipurile de echipamente care o compun precum și modul lor de interconecare definesc topologia acelei rețele.

În cazul rețelelor locale există mai multe tipuri de topologii:magistrală, stea, inel [Tanenbaum – Rețele de Calculatoare pagina 15].

3. Rețele Virtuale Private

3.1 Introducere in VPN

O rețea constă din două sau mai multe dispozitive care pot comunica liber, electronic, între ele, prin cabluri sau fire. În primul rând VPN este o rețea. Chiar dacă fizic nu există, un VPN trebuie să fie perceput ca o extensie a infrastructurii unei rețele, care aparține unei companii. Acest lIP: 193.226.10.90.

Domeniul de adresare cuprins între 0.0.0.0 și 255.255.255.255 a fost împărțit în 5 clase, A, B, C, D și E ale căror elemente diferă în funcție de modul de specificare a câmpurilor ID rețea și ID host. Structura generală a adreselor pentru cele 5 clase se observă în figura 2.3b.

Figura 2.3b Structura adreselor pentru cele 5 clase

2.4 Tipuri de rețele

Dacă toate dispozitivele dintr-o rețea sunt situate în aceeași clădire, atunci este vorba despre o rețea locală, LAN (Local Area Network). În acest caz toate dispozitivele din rețea sunt conectate cu același tip de cablu.

Mai multe rețele locale, situate în clădiri diferite, conectate împreună, formează o rețea metropolitană, MAN (Metropolitan Area Network) dupa cum se poate observa în figura 2.4a. În acest caz legăturile pot fi pe linie telefonică, sau pe fibră optică.

Figura 2.4a Tipuri de rețele

Mai multe rețele metropolitane, situate în localități diferite, conectate împreună, formează o rețea regională, WAN (Wide Area Network). În acest caz legăturile pot fi radio, terestre sau prin satelit[Tanenbaum – Rețele de Calculatoare pagina 16]..

Modalitatea de organizare a unei rețele, tipurile de echipamente care o compun precum și modul lor de interconecare definesc topologia acelei rețele.

În cazul rețelelor locale există mai multe tipuri de topologii:magistrală, stea, inel [Tanenbaum – Rețele de Calculatoare pagina 15].

3. Rețele Virtuale Private

3.1 Introducere in VPN

O rețea constă din două sau mai multe dispozitive care pot comunica liber, electronic, între ele, prin cabluri sau fire. În primul rând VPN este o rețea. Chiar dacă fizic nu există, un VPN trebuie să fie perceput ca o extensie a infrastructurii unei rețele, care aparține unei companii. Acest lucru inseamnă că trebuie să fie disponibil și rețelei existente, sau la un grup restrâns de utilizatori din aceea rețea.

Virtual înseamnă ireal sau într-o altă stare de existență. În VPN comunicația privată între două sau mai multe dispozitive se realizează printr-o rețea publică, Internetul. Astfel, comunicația este virtuală dar nu și prezentă fizic. 

Privat înseamnă a ascunde ceva publiculuilui general. Chiar dacă dispozitivele comunică între ele într-un mediu public, nu există o terță parte care poate întrerupe această comunicație sau recepționa datele schimbate între ele.

O Rețea Virtuală Privată (VPN – Virtual Private Network-figura 3.1a) conectează componentele și resursele unei rețele private prin intermediul unei rețele publice. Altfel spus, o rețea virtuală privată este o rețea a companiei implementată pe o infrastructură comună, folosind aceleași politici de securitate, management și performanță care se aplică de obicei într-o rețea privată. Practic, tehnologia rețelelor virtuale private permite unei firme să-și extindă prin Internet, în condiții de maximă securitate, serviciile de rețea la distanță oferite utilizatorilor, reprezentanțelor sau companiilor partenere. Avantajul este evident: crearea unei legături de comunicație rapidă, ieftină și sigură.

Figura 3.1a VPN (Rețea Privată Virtuală

3.2 Modul de funcționare

VPN permite utilizatorilor să comunice printr-un tunel prin Internet sau o altă rețea publică în așa fel încât participanții la tunel să se bucure de aceeași securitate și posibilități puse la dispoziție numai în rețelele private.

Pentru a utiliza Internetul ca o rețea privată virtuală, de tip WAN (Wide Area Network), trebuie depășite două obstacole principale. Primul apare din cauza diversității de protocoale prin care comunică rețelele, cum ar fi IPX sau NetBEUI, în timp ce Internetul poate înțelege numai traficul de tip IP. Astfel, VPN-urile trebuie să găsească un mijloc prin care să transmită protocoale non-IP de la o rețea la alta. Când un dispozitiv VPN primește o instrucțiune de transmitere a unui pachet prin Internet, negociază o schemă de criptare cu un dispozitiv VPN similar din rețeaua destinație. Datele în format IPX/PPP sunt trecute în format IP pentru a putea fi transportate prin rețeaua mondială. Al doilea obstacol este datorat faptului că pachetele de date prin Internet sunt transportate în format text. În consecință, oricine poate vedea traficul poate să și citească datele conținute în pachete. Aceasta este cu adevărat o problemă în cazul firmelor care vor să comunice informații confidențiale și, în același timp, să folosească Internetul. Soluția la aceste probleme a permis apariția VPN și a fost denumită tunneling. În loc de pachete lansate într-un mediu care nu oferă protecție, datele sunt mai întâi criptate, apoi încapsulate în pachete de tip IP și trimise printr-un tunel virtual prin Internet.

Din perspectiva utilizatorului, VPN este o conexiune punct-la-punct între calculatorul propriu și serverul corporației (figura 3.2a)

Figura 3.2a Rețea Privată Virtuală – Echivalent logic

Confidențialitatea informației de firmă care circulă prin VPN este asigurată prin criptarea datelor. În trecut, rețelele private erau create folosind linii de comunicație închiriate între sedii. Pentru a extinde acest concept la Internet, unde traficul mai multor utilizatori trece prin aceeași conexiune, au fost propuse o serie de protocoale pentru a crea tuneluri. Tunelarea permite expeditorului să încapsuleze datele în pachete IP care ascund infrastructura de rutare și comutare a Internetului la ambele capete de comunicație. În același timp, aceste pachete încapsulate pot fi protejate împotriva citirii sau alterării prin diverse tehnici de criptare.

Tunelurile pot avea două feluri de puncte terminale, fie un calculator individual, fie o rețea LAN cu un gateway de securitate – poate fi un ruter sau un firewall. Orice combinație a acestor două tipuri de puncte terminale poate fi folosită la proiectarea unei rețele VPN.

În cazul tunelării LAN-to-LAN, gateway-ul de securitate al fiecărui punct terminal servește drept interfață între tunel și rețeaua privată LAN. În astfel de cazuri, utilizatorii fiecărui LAN pot folosi tunelul în mod transparent pentru a comunica unii cu alții.

Cazul tunelului client-to-LAN, este cel stabilit de regulă pentru utilizatorul mobil care dorește să se conecteze la rețeaua locală a firmei. Pentru a comunica cu rețeaua de firmă, clientul (utilizatorul mobil), inițiază crearea tunelului. Pentru aceasta, clientul rulează un software client special, care comunică cu gateway-ul de protecție al rețelei LAN.

3.3 Avantaje VPN

Mediul de afaceri este în continuă schimbare, multe companii îndreptându-și atenția spre piața globală. Aceste firme devin regionale, multinaționale și toate au nevoie stringentă de un lucru: o comunicație rapidă, fiabilă și sigură între sediul central, filiale, birouri și punctele de lucru, adică de o rețea WAN (de arie largă).

O rețea WAN tradițională presupune închirierea unor linii de comunicație, de la cele ISDN (128/256Kbps) la cele de fibră optică OC-3 (155 Mbps) care să acopere aria geografică necesară. O astfel de rețea are avantaje clare față de una publică, cum este Internetul, când vine vorba de fiabilitate, performanță și securitate. Dar deținerea unei rețele WAN cu linii închiriate este scumpă, proporțional cu aria geografică acoperită.

O dată cu creșterea popularității Internetului, companiile au început să își extindă propriile rețele. La început au apărut intraneturile, care sunt site-uri protejate prin parolă destinate angajaților companiei. Acum, multe firme și-au creat propriile VPN-uri pentru a veni în întâmpinarea cerințelor angajaților și oficiilor de la distanță.

Un VPN poate aduce multe beneficii companiei:

Reducerea costurilor-Rețelele private virtuale sunt mult mai ieftine decât rețelele private proprietare ale companiilor. Se reduc costurile de operare a rețelei (linii închiriate, echipamente, administratori rețea).

Integrare, simplitate-Se simplifică topologia rețelei companiei private. De asemenea, prin aceeași conexiune se pot integra mai multe aplicații: transfer de date, Voice over IP, Videoconferințe.

Mobilitate -Angajații mobili precum și partenerii de afaceri (distribuitori sau furnizori) se pot conecta la rețeaua companiei într-un mod sigur, indiferent de locul în care se află.

Securitate -Informațiile care circulă prin VPN sunt protejate prin diferite tehnologii de securitate (criptare, autentificare, IPSec).

Oportunități, comert electronic-Se pot implementa noi modele de business (business-to-business, business-to-consumer, electronic commerce) care pot aduce venituri suplimentare pentru companie.

Scalabilitate-Afacerea companiei crește, deci apare o nevoie permanentă de angajați mobili și conexiuni securizate cu partenerii strategici și distribuitorii.

3.4 Tipuri de rețele VPN

La ora actulă există 3 tipuri principale de VPN-uri(figura 3.4a):

– VPN-urile cu acces de la distanță (Remote Access VPN) permit utilizatorilor dial-up să se conecteze securizat la un site central printr-o rețea publică. Acestea mai sunt numite și „dial” VPN-uri.

– VPN-urile intranet (Intranet VPN) permit extinderea rețelelor private prin Internet sau alt serviciu de rețea publică într-o manieră securizată. Acestea sunt denumite și VPN-uri „site-to-site” sau „LAN-to-LAN”.

– VPN-urile extranet (Extranet VPN) permit conexiuni securizate între partenerii de afaceri, furnizori și clienți, în general în scopul realizării comerțului electronic. VPN-urile extranet sunt o extensie a VPN-urilor intranet la care se adaugă firewall-uri pentru protecția rețelei interne.

Figura 3.4a Tipuri de rețele VPN

Toate aceste rețele virtuale private au rolul de a oferi fiabilitatea, performanța și securitatea mediilor WAN tradiționale, dar cu costuri mai scăzute și conexiuni ISP (Internet Service Provider) mult mai flexibile. Tehnologia VPN poate fi folosită și într-un intranet pentru a asigura securitatea și controlul accesului la informații, resurse sau sisteme vitale. De exemplu, se poate limita accesul anumitor utilizatori la sistemele financiare din companie sau se pot trimite informații confidențiale în manieră securizată.

3.4.1 Acces VPN la distanță

Acces VPN la distanță(Remote Access VPN)– permite conectarea individuală (utilizatori mobili) sau a unor birouri la sediul central al unei firme, aceasta realizându-se în cele mai sigure condiții (figura 3.4.1a).

Figura 3.4.1a. Remote Access VPN

Există două tipuri de conexini VPN de acest fel:

Conexiune inițiată de client – Clienții care vor să se conecteze la site-ul firmei trebuie să aibă instalat un client de VPN, acesta asigurându-le criptarea datelor între computerul lor și sediul ISP-ului. Mai departe conexiunea cu sediul firmei se face de asemenea în mod criptat, în concluzie întregul circuit al informației se face în mod criptat. Trebuie precizat că în cazul acestui tip de VPN sunt folosiți o multitudine de clienți de VPN. Un exemplu este Cisco Secure VPN dar și Windows NT sau 2000 au integrat clienți de VPN. Figura 3.4.1b schematizează acest tip de Access VPN :

Figura 3.4.1b. Acces de la distanță inițiat de client

Access VPN inițiat de serverul de acces – acest tip de conexiune este ceva mai simplă pentru că nu implică folosirea unui client de VPN(figura 2.4.1c). Tunelul criptat se realizează între server-ul de acces al ISP-ului și sediul firmei la care se vrea logarea. Între client și server-ul de acces securitatea se bazează pe siguranța liniilor telefonice (fapt care uneori poate fi un dezavantaj).

Figura 3.4.1c Acces de la distanță inițiat de server-ul de acces

3.4.2 Intranet VPN

Intranet VPN – permite conectarea diferitelor sedii ale unei firme folosind legături dedicate (permite realizarea unor medii client-server foarte performante prin utilizarea conexiunilor dedicate care pot să atingă rate de transfer foarte bune) (figura 3.4.2a). Diferența față de Remote Access VPN constă în faptul că se folosesc legături dedicate cu rata de transfer garantată, fapt care permite asigurarea unei foarte bune calități a transmisiei pe lângă securitate și bandă mai largă.

Figura 3.4.2a. Intranet VPN

Arhitectura aceasta utilizează două routere la cele două capete ale conexiunii, între acestea realizându-se un tunel criptat. În acest caz nu mai este necesară folosirea unui client de VPN ci folosirea IPSec. IPSec (IP Security Protocol) este un protocol standardizat de strat 3 care asigură autentificarea, confidențialitatea și integritatea transferului de date între o pereche de echipamente care comunică. Folosește ceea ce se numește Internet Key Exchange ( IKE ) care necesită introducerea la ambele capete ale conexiunii a unor chei de autentificare care mai apoi vor permite logarea reciprocă. Schematic conexiunea este prezentată în figura 3.4.2b: 

Figura 3.4.2b. Arhitectura Intranet VPN

3.4.3 Extranet VPN

Extranet VPN – este folosit pentru a lega diferiți clienți sau parteneri de afaceri la sediul central al unei firme folosind linii dedicate, conexiuni partajate, securitate maximă(figura 3.4.3a).

Figura 3.4.3a. Extranet VPN

Acest tip de VPN seamănă cu precedentul cu deosebirea că extinde limitele intranetului permițând logarea la sediul corporației a unor parteneri de afaceri, clienți etc.; acest tip permite accesul unor utilizatori care nu fac parte din structura firmei. Pentru a permite acest lucru se folosesc certificate digitale care permit ulterior realizarea unor tunele criptate. Certificatele digitale sunt furnizate de o autoritate care are ca activitate acest lucru.

Exista doua tipuri de VPN in ceea ce priveste securitatea: Vpn securizate si Vpn fiabile.

3.4.4 VPN cu livrare sigură (Trusted VPN)

Înainte ca Internetul să devine aproape universal, o rețea virtuală privată consta în unul sau mai multe circuite închiriate de la un furnizor de comunicații. Fiecare circuit închiriat se comporta ca un singur fir într-o rețea controlată de client. Deasemenea, câteodată furnizorul ajută la administrarea rețelei clientului, dar ideea de bază era ca acesta, clientul, să poată utiliza aceste circuite închiriate la fel ca și cablurile fizice din rețeaua proprie.

Siguranța oferită de aceste VPN-uri „moștenite” se referea doar la faptul că furnizorul de comunicații asigura clientul că nimeni altcineva nu va folosi aceleași circuite. Acest lucru permitea clienților să aibă adresarea IP și politici de securitate proprii. Circuitele închiriate treceau printr-unul sau mai multe switch-uri de comunicații, fiecare dintre acestea putând fi compromis de către cineva doritor să intercepteze traficul rețelei. Clientul VPN avea încredere că furnizorul de VPN va menține integritatea circuitelor și va utiliza practicile cele mai bune disponibile pentru a evita interceptarea traficului pe rețea. De aceea, aceste rețele se numesc VPN cu livrare sigură (Trusted VPN).

VPN securizate (Secure VPN)

Odată cu popularizarea Internetului ca un mediu de comunicații corporativ, securitatea a devenit un aspect important atât pentru clienți cât și pentru furnizori. Văzând că VPN cu livrare sigură nu oferă o reală securitate, furnizorii au început să creeze protocoale care permit criptarea traficului la marginea rețelei sau la calculatorul de origine, trecerea prin rețea ca orice alte date și apoi decriptarea în momentul în care datele ajung la rețeaua corporativă sau calculatorul de destinație. Acest trafic criptat se comportă de parcă ar fi un tunel între cele două rețele: chiar dacă un atacator poate observa traficul, nu-l poate citi și nu îi poate schimba conținutul fără ca aceste schimbări să fie observate de partea de recepție și, în concluzie, rejectate. Rețelele construite utilizând criptarea se numesc VPN securizate (Secure VPN).

Recent, furnizorii de servicii au început să ofere un nou tip de VPN cu livrare sigură, de data asta folosind Internetul în loc de rețeaua telefonică, ca suport pentru comunicații. Noile VPN-uri cu livrare sigură tot nu oferă securitate perfectă, dar dau posibilitatea clienților să creeze segmente de rețea pentru WAN-uri (Wide Area Network). În plus, segmentele de VPN cu livrare sigură pot fi controlate dintr-un singur loc și deseori furnizorul garantează o anumită calitate a serviciilor (QoS – Quality of Service).

3.4.6 VPN hibrid (Hybrid VPN)

Un VPN securizat poate rula ca parte a unui VPN cu livrare sigură, creând un al treilea tip de VPN, foarte nou pe piață: VPN hibrid (Hybrid VPN). Părțile sigure a unui VPN hibrid pot fi controlate de client (de exemplu, utilizând echipament VPN securizat de partea lor) sau de același furnizor care asigură partea de încredere a VPN-ului hibrid. Câteodată întregul VPN hibrid este asigurat cu VPN-ul securizat dar, de obicei, doar o parte a VPN hibrid este sigură.

3.5 Tunelare

3.5.1 Fundamentele tunelării

Tunelarea este o metodă de a folosi infrastructura interrețea pentru a transfera datele unei rețele printr-o altă rețea (figura 3.5.1a). Datele de transmis (sau sarcina utilă) pot fi cadre (sau pachete) sau un alt protocol. În loc să se trimită cadrele cum se produc în nodul de origine, protocolul de tunelare încapsulează cadrul într-un header adițional. Headerul adițional oferă informații de dirijare, astfel că sarcina utilă încapsulată să poată traversa interrețeaua intermediară.

Pachetele încapsulate se dirijează apoi între capetele tunelului prin interrețea. Calea logică după care se deplasează pachetele încapsulate prin interrețea se numește tunel. Odată ce cadrele încapsulate ajung la destinație în interrețea, cadrul se decapsulează și se transmite la destinația finală. Tunelarea include tot acest proces (încapsularea, transmisia și decapsularea pachetelor).

Figura 3.5.1a. Tunelare

Interrețeaua de tranzit poate să fie orice interrețea, cea mai cunoscută fiind Internetul. Sunt multe exemple de tuneluri care se transmit prin interrețele corporative. Și cum Internetul oferă interrețeaua cea mai atotpătrunzătoare și eficientă, referințele la Internet pot fi înlocuite de orice altă interrețea publică sau privată care se comportă ca o interrețea de tranzit.

Tehnologia de tunelare poate fi bazată pe un protocol de tunelare pe nivel 2 sau 3. Aceste nivele corespund modelului de referință OSI. Protocoalele de nivel 2 corespund nivelului legătură de date, și folosesc cadre ca unitate de schimb. PPTP, L2TP și L2F (expediere pe nivel 2) sunt protocoale de tunelare pe nivel 2; ele încapsulează încărcătura într-un cadru PPP pentru a fi transmis peste inter-rețea. Protocoalele de nivel 3 corespund nivelului rețea, folosesc pachete IP și sunt exemple de protocoale care încapsulează pachete IP într-un antet IP adițional înainte de a le transmite peste o inter-rețea IP.

Pentru tehnologiile de nivel 2, cum ar fi PPTP sau L2TP, un tunel este asemănător cu o sesiune; ambele capete ale tunelului trebuie să cadă de acord asupra tunelului și să negocieze variabilele de configurare, cum ar fi atribuirea adreselor, criptarea, comprimarea. În cele mai multe cazuri, datele transferate prin tunel sunt trimise folosind un protocol bazat pe datagrame. Pentru gestionarea tunelului se folosește un protocol de menținere a tunelului.

Tehnologiile de tunelarea pe nivel 3 pleacă de la premiza că toate chestiunile de configurare au fost efectuate, de multe ori manual. Pentru aceste protocoale, poate să nu existe faza de menținere a tunelului. Pentru protocoalele de nivel 2, un tunel trebuie creat, menținut și distrus.

Tunelul odată stabilit, datele tunelate pot fi trimise. Clientul sau serverul de tunel folosește un protocol de transfer de date de tunel pentru a pregăti datele pentru transfer. De exemplu, când clientul de tunel trimite sarcină utilă către serverul de tunel, clientul de tunel adaugă un antet de protocol de transfer de date de tunel la informația utilă. Apoi clientul trimite informația încapsulată rezultată prin interrețea, care o dirijează către serverul de tunel. Serverul de tunel acceptă pachetul, elimină antetul de protocol de transfer de date și transmite informația utilă la rețeaua țintă. Informația trimisă între serverul de tunel și client se comportă similar.

În prezent există o mare varietate de astfel de protocoale – de exemplu PPTP, L2F, L2TP, IPSec, SOCKS5, FPSecure. Unele se suprapun în funcționalitate, altele oferă funcții similare dar complementare.

Traficul VPN poate fi transmis pe infrastructura publică (ex: pe Intenet), folosind protocoale standard (și deseori nesigure), sau peste rețeaua unui provider de servicii de telecomunicații care furnizează servicii VPN bine definite de SLA (Service Level Agreement) între consumatorul VPN și furnizorul de servicii VPN.

3.5.2 Rețea virtuală privată administrată de furnizor (PPVPN)

Blocurile componente

Blocurile componente ale rețelei( figura 3.5.2a) depind de nivelul PPVPN-urilor ; acestea pot fi numai de nivel 2, numai de nivel 3, sau o combinație de nivel 2 și 3. Funcționalitatea MPLS estompează identitatea L2-L3.

Dispozitivele de la granița clientului, CE (Customer Edge Device) sunt dispozitive prezente fizic la locul unde îsi desfăsoară activitatea clientul și care permit accesul la serviciile PPVPN. În unele implementări, sunt considerate puncte de demarcație între responsabilitățile clientului și cele ale furnizorului de servicii, alteori pot fi configurate de către clienți.

Dispozitivul de la granița furnizorului, PE (Provider Edge Device) este un dispozitiv sau un set de dispozitive, la granița rețelei furnizorului, care oferă furnizorului o viziune asupra clientului. PE știe care sunt VPN-urile conectate, pentru care menține și informațiile de stare.

Dispozitivul furnizorului, P (Provider Device) se află în interiorul rețelei furnizorului (core network) și nu interfațează direct cu nici un client. Poate fi folosit, de exemplu, pentru a furniza dirijarea prin tuneluri operate de furnizorul de servicii, aparținând diverșilor clienți PPVPN. Acest dispozitiv este un element cheie la implementarea PPVPN, dar el nu cunoaște starea rețelei și nu menține informațiile de stare despre VPN. Sarcina sa principală este să permită furnizorului să se adapteze la oferta PPVPN, acționând ca un punct de agregare pentru mai multe PE-uri. Astfel, conexiunile P-la-P asigură o capacitate mare de transport, deseori prin legături optice între locațiile importante ale furnizorilor.

Figura 3.5.2a Modelul de referință PPVPN

3.5.3 Protocoale de tunelare

Pentru stabilirea unui tunel atât clientul cât și serverul de tunel trebuie să folosească același protocol de tunelare

Protocoalele de tunelare VPN includ:

Multi-Protocol Label Switching (MPLS) reprezintã ultimul pas fãcut în evoluția tehnologiilor de comutare/rutare pentru Internet, folosind o soluție ce integreazã atât controlul rutãrii IP, cât si comutarea de la nivelul legãturii de date (nivelul 2 din modelul OSI).

Layer 2 Tunneling Protocol (L2TP) este o înlocuire bazată pe standarde, și totodată un compromis, preluând avantajele fiecăruia dintre cele două protocoale VPN proprii: Layer 2 Forwarding a lui Cisco și Point-to-Point Tunneling Protocol (PPTP) a lui Microsoft.

IPsec (IP security) – folosit cu IPv4, fiind o parte obligatorie a IPv6.

SSL/TLS folosite pentru tunelare și pentru securizarea proxy-urilor web. SSL este cadrul principal, cel mai des asociat cu comerțul electronic, e-commerce, dar și pentru accesul la resursele de la distanță. VPN-urile care lucrează cu SSL sunt vulnerabile la atacul de tip refuzarea serviciului (Denial of Service) asupra conexiunilor lor TCP, deoarece acestea sunt ulterior neautentificate.

OpenVPN, este un standard VPN deschis. Este o variantă de VPN bazată pe SSL capabilă să ruleze pe UDP.

L2TPv3 (Layer 2 Tunneling Protocol version 3), o nouă variantă pentru L2TP.

VPN Quarantine – calculatoarele clientului de la capetele VPN pot fi tratate ca surse de atac. Problema trebuie rezolvată de administratorii rețelei VPN. Microsoft ISA Server 2004/2006 împreună cu VPN-Q 2006 de la Winfrasoft, respectiv aplicația QSS (Quarantine Security Suite) oferă această facilitate.

MPVPN (Multi Path Virtual Private Network), marcă înregistrată a Ragula Systems Development Company.

3.5.3.1 Protocolul IPSec

Protocoalele IPsec operează la nivelul 3 OSI, nivelul rețea. Alte protocoale pentru de securitate a Internetului de uz larg, cum ar fi SSL, TLS și SSH, operează de la nivelul de transport în sus (nivelurile 4-7 OSI). Asta face ca IPsec să fie mai flexibil și să poată fi utilizat pentru protejarea protocoalelor de nivelul 4, inclusiv TCP și UDP (protocoalele cele mai des utilizate).

Ipsec e o extensie a protocolului IP care furnizează securitatea IP-ului și a protocoalelor nivelelor superioare. Prima oară a fost dezvoltat pentru noul standard Ipv6 și apoi adaptat la Ipv4. Arhitectura Ipsec-ului e descrisă în RFC2401.au

Ipsec folosește 2 protocoale diferite – AH și ESP – pentru a asigura autenticitatea, integritatea și confidențialitatea comunicării. Poate proteja fie intreaga datagramă a IP-ului sau numai protocoalele nivelelor superioare. Modurile cele mai convenabile/potrivite sunt: modul tunel (tunnel mode) și modul transport (transport mode). În modul tunel, datagrama IP e toată încapsulata de o nouă datagramă IP folosind protocolul Ipsec. În modul transport doar incărcătura utilă(payload-ul) datagramei IP e condus de protocolul Ipsec inserând header-ul Ipsec între header-ul IP și header-ul protocolului superior (vezi figura 3.5.3.1a)

Figura 3.5.3.1a Datagrame modul tunel și modul transport

Pentru a proteja integritatea datagramelor IP, protocoalele Ipsec folosesc coduri de autenticitate HMAC (hash message authentication codes). Pentru a căpăta acest HMAC, protocoalele Ipsec folosesc algoritmi hash ca MD5 și SHA pentru a calcula un hash bazat pe o cheie secretă și pe conținuturile datagramei IP. Acest HMAC e apoi inclus în headerul protocolului Ipsec și receptorul pachetului poate controla/accesa HMAC-ul dacă are acces la cheia secretă.

Pentru a proteja confidențialitatea datagramelor IP, protocoalele Ipsec folosesc algoritmi standard simetrici de encriptare. Standardul Ipsec necesită implementarea NULL și DES. Acum, de obicei, algoritmii puternici sunt folosiți ca 3DES, AES și Blowfish. Pentru a proteja, impotriva respingerii atacurilor, protocoalele folosesc o fereastră alunecătoare (sliding window). Fiecărui

pachet i se stabilește un număr de secvență și e acceptat doar dacă numărul pachetului e în cadrul ferestrei sau în apropiere. Pachetele mai vechi sunt imediat îndepărtate. Aceasta protejează împotriva atacurilor cu răspuns unde atacatorul înregistrează pachetele originale și le răspunde mai târziu.

Pentru ca partenerii să fie capabili să încapsuleze și decapsuleze pachetele Ipsec au nevoie de un mod de a păstra cheile secrete, algoritmii și adresele IP implicate în comunicare. Toți acești parametri necesari pentru protecția datagramelor IP sunt stocate/salvate într-o asociație de securitate SA (security association). SA sunt depozitate într-o bază de date SA (SAD).

Fiecare SA definește următorii parametrii:

Sursa și destinația adresei IP a header-ului Ipsec rezultat.

Protocolul Ipsec (AH sau ESP), câteodată comprimarea (IPCOMP) e suportată de asemenea.

Algoritmul și cheia secretă folosite de protocolul Ipsec.

Parametrul index de securitate (Security Parameter Index – SPI). Acesta e un număr pe 32 de biți care identifică SA.

Câteva implementări ale bazei de date SA permit parametrilor suplimentari să

fie stocați/salvați:

Modul Ipsec (tunel sau transport)

Mărimea ferestrei alunecătoare(sliding window) pentru a proteja împotriva atacurilor cu răspuns (replay attacks)

Timpul de viața a SA

De când SA definește sursa și destinația adreselor IP, poate proteja doar într-o direcție a traficului într-o comunicare Ipsec duplex întreagă. Pentru a proteja în ambele direcții Ipsec necesită 2 SA unidirecționale. SA doar specifică cum Ipsec trebuie să protejeze traficul. Informația adițională e necesară să definească care trafic să protejeze și când. Această informație e stocată/salvată în politica de asigurare SP (security policy) care în schimb e salvată într-o bază de date cu politici de asigurare SPD (security policy database).

De obicei, un SP specifică următorii parametrii:

Sursa și destinația adreselor pachetelor care necesită să fie protejate. În modul transport acestea sunt aceleași adrese ca la SA. În modul tunel ele pot să difere.

Protocolul (și portul) care trebuie protejat. Unele implementări Ipsec nu permit definiția protocoalelor precise pentru protecție. În acest caz tot traficul între adresele IP menționate e protejat.

SA este folosit pentru protecția pachetelor.

Legătura/conectarea manuală a SA e o eroare complet predispusă și nu prea sigură. Cheia secretă și algoritmii encriptati trebuie să fie împărțiți între toți participanții în rețeaua virtuală privată (virtual private network). În special schimbul cheilor ridică probleme critice pentru administratorul sistemului: Cum să schimbi chei simetrice secrete când nici o modalitate de encriptare nu e inca stabilita?

Pentru a rezolva această problemă s-a dezvoltat protocolulul de schimbat chei IKE (Internet Key Exchange Protocol). Acest protocol autentifică participanții în primă fază. În a doua fază SA negociază și cheile secrete simetrice sunt alese folosind un schimb de chei Diffie Hellmann. Apoi protocolul IKE chiar are grijă să redefinească cheile secrete pentru a le asigură confidențialitatea.

Header-ul AH are o lungime de 24 bytes(figura 3.5.3.1b).

Figura 3.5.3.1b Header-ul AH protejează integritatea pachetului

Primul byte e câmpul Headerului următor. Acest câmp specifică protocolul următorului header. În modul tunel o datagramă IP e încapsulată; de aceea valoarea acestui câmp e 4. Când se încapsulează o datagramă TCP, în modul transport, valoarea corespunzătoare e 6. Următorul byte specifică lungimea încărcăturii utile. Acest câmp e urmat de 2 bytes necomunicativi (rezervați). Următorul cuvânt double menționează lungimea 32 bit indexul parametrului de securitate SPI (Security Parameter Index). SPI specifică pentru decapsularea pachetului să se folosească SA. Secvența de 32 biți protejează împotriva atacurilor cu răspuns. În cele din urmă bitul 96 reține HMAC. Acest HMAC protejează integritatea pachetelor din moment ce doar partenerii care știu cheia secretă pot crea și verifica HMAC-ul. De când protocolul AH protejează datagrama IP incluzând părți permanente a header-ului IP, cum IP-ul se adresează, protocolul AH nu permite translatarea adreselor de rețea NAT (Network address translation). NAT înlocuiește o adresă IP în header-ul IP (de obicei sursă IP) de o adresă IP diferită. După schimb HMAC nu mai e valid.

ESP – Encapsulated Security Payload

Protocolul ESP poate asigura integritatea pachetului folosind un HMAC dar și confidențialitatea folosind encriptări. După encriptarea pachetului și calcularea HMAC-ului, e generat header-ul ESP și adăugat la pachet (figura 3.5.3.1c ).

Figura 3.5.3.1c. Header ESP

Primul cuvânt double din header-ul ESP specifică indexul parametrului de securitate SPI (Security Parameter Index). SPI specifică să folosească SA pentru decapsularea pachetului ESP. Al 2-lea cuvânt double specifică numărul de secvență. Numărul de secvență e folosit pentru a proteja împotriva atacurilor cu răspuns. Al 3-lea cuvânt double specifică inițializarea vectorului IV (Initialization Vector) care e folosit pentru procesul de encriptare. Algoritmii simetrici de encriptare sunt sensibili la un atac frecvent dacă nu e folosit nici un IV. IV-ul asigură că două încărcături utile identice duc la încărcături utile encriptate diferit. Ipsec folosește cifru de blocare pentru procesul de encriptare. De aceea încărcăturile utile pot avea nevoie să fie căptușite dacă lungimea încărcăturii utile nu e un multiplu/variantă a lungimii obstacolului. Lungimea “căptușelii” e apoi adăugată. Urmărind lungimea căptușelii câmpul header-ului următor lung de 2 bytes specifică header-ul următor. În cele din urmă HMAC, lung de 96 biți, e adăugat la header-ul ESP asigurând integritatea pachetului. HMAC-ul ia în considerare doar încărcătura utilă a pachetului.

Folosirea lui NAT nu strică protocolul ESP. Totuși, în cele mai multe cazuri, NAT nu e posibil în combinație cu Ipsec. NAT-Traversal oferă o soluție în acest caz prin încapsularea pachetelor ESP înăuntrul pachetelor UDP.

3.5.3.2 Protocolul SSL

Aut SSL (Secure Sockets Layer) este un protocol dezvoltat de Netscape pentru transmiterea documentelor private prin Internet. SSL utilizează un sistem de criptare cu două chei, una publică, cunoscută de toată lumea și una privată, cunoscută doar de beneficiarul mesajului (receptorul). Atât Netscape cât și Internet Explorer suportă protocolul SSL, iar o serie de site-uri îl utilizează pentru obținerea informațiilor sensibile, cum ar fi numărul cărții de credit. Re

Pașii care sunt urmați în procesul criptografic al implementării SSL sunt :

1) Se criptează codul cu cheia secretă a expeditorului

2) Se criptează codul cu cheia publică a destinatarului

3) Se generează certificate care transportă cheia publică folosită în criptografia asimetrică

Esență procesului de comunicare prin SSL constă în stabilirea unor parametri criptografici înainte de transmiterea efectivă a datelor. Stabilirea parametrilor poartă numele de ‘’SSL handshake’’. În primul rând, clientul comunică serverului ce ‘’cipher suites’’ are disponibile . Un ‘’cipher suite’’ reprezintă o combinație de parametri criptografici ce definesc algoritmul și cheile folosite pentru autentificare și criptare. Apoi, serverul se poate autentifică (acest pas este opțional), permițându-i clientului să fie sigur că entitatea server este ceea cu care clientul se așteaptă să comunice. Pentru aceasta, serverul prezintă clientului un certificat ce conține cheia sa publică. Verificând acest certificat clientul poate fi sigur de identitatea serverului. Din acest moment, pot fi schimbate date între client și server.

Pe parcursul primei faze, clientul și serverul negociază care algoritm de criptare va fi folosit. Implementarea curentă urmărește următoare alternativele:

Pentru criptarea cu cheie publică: RSA, Diffie-Hellman, DSA sau Fortezza;

Pentru cifru simetric: RC2, RC4, IDEA, DES, Triple DES sau AES;

Pentru funcții de criptare pe un singur drum: MD5 sau SHA.

Protocolul SSL schimbă înregistrările; fiecare înregistrare poate fi compresată opțional, criptată și împachetată cu un MAC (message authentication code). Fiecare înregistrare are un câmp(field) content_type care specifică nivelul superior al protocolului ce a fost început să fie folosit.

Când conexiunea începe, nivelul înregistrării încapsulează un alt protocol, protocolul handshake, care are content_type 22. Clientul trimite și primește mai multe structuri handshake:

El trimite mesajul ClientHello specificând lista de cipher suites (suită de cifruri), metoda de compresie și cea mai superioară versiune de protocul pe care îl suportă. El deasemenea trimite bytes la întâmplare, care vor fi folosiți mai târziu.

Mai apoi el primește mesajul ServerHello, în care serverul alege parametrii de conexiune, din alegerile oferite de către client.

Când parametrii de conexiune sunt cunoscuți, clientul și serverul schimbă certificatele(care depinde de cheia publică selectată). Aceste certificate sunt în curent de tipul X.509, dar deasemenea recruteza specificările folosite de bazele certificatelor OpenPGP.

Serverul poate solicita un certificat de la client, astfel acesta conexiune poate fi în mod reciproc autentificată.

Clientul și serverul negociază convorbirea secretă comună “master secret”, e posibil folosirea ca rezultat un schimb de tipul Diffie- Hellman, sau mai simplu criptând un secret cu o cheie publică acesta fiind decriptat cu o cheie privată peer. Toate celelalte chei sunt derivate din din acest “master secret” (și clientul și serverul generează valori la întâmpare), care sunt rămase în urmă print-o atenție deosebită prin proiectarea funcției “Pseudo Random Function”. Dwwdwd

3.5.3.3 Protocolul L2TP

L2TP se comportă ca un protocol de nivel de legătură de date (nivelul 2 al modelului OSI) pentru traficul de rețea, tunelat între două capete peste o rețea existentă (de obicei Internetul). L2TP este de fapt un nivel de sesiune de protocol de nivelul 5 și folosește portul UDP înregistrat 1701. Tot pachetul L2TP, inclusiv informația utilă și headerul L2TP, se trimite printr-o datagramă UDP. Se obișnuiește transportul unor sesiuni PPP (Point-to-Point Protocol) în interiorul tunelului L2TP.

L2TP nu asigură de unul singur confidențialitate sau autenticitate puternică. Deseori se utilizează Ipsec pentru securizarea pachetelor L2TP, prin asigurarea confidențialității, autenticității și integrității. Combinația acestor protocoale se mai numește L2TP/Ipsec.

Figura 3.5.3.3a Scenariu L2TP

Cele două capete a unui tunel L2TP sunt: concentratorul de acces L2TP (LAC – L2TP Access Concentrator) și serverul de rețea L2TP (LNS – L2TP Network Server). LAC este inițiatorul tunelului, în timp ce LNS este serverul care așteaptă tunelurile noi. Odată ce s-a stabilit tunelul, traficul între puncte este bidirecțional. Pentru utilizarea în rețelistică, prin tunelul L2TP se trimit protocoale de niveluri superioare. Prin această facilitate, pentru fiecare protocol de nivel superior, cum ar fi PPP, se stabilește o sesiune L2TP (sau apel). O sesiune poate fi inițiată de LAC sau LNS. L2TP izolează traficul pentru fiecare sesiune, deci este posibilă stabilirea mai multor rețele virtuale prin același tunel.

Pachetele utilizate într-un tunel L2TP se împart în pachete de control și pachete de date(figura 3.5.3.3b). L2TP asigură integritatea pachetelor de control dar nu și a celor de date. Dacă se dorește, integritatea poate fi asigurată prin protocoalele utilizate în sesiunile tunelului L2TP.

Figura 3.5.3.3b Structura unui pachet L2TP conținând date de utilizator

Fig 3.5.3.3c Criptarea unui pachet L2TP cu IPSec ESP

(Encapsulating Security Payload)er 2 Tcreat irma echipei Microsoftth Virtual Private Network). MPestînregistrată a

3.5.3.4 L2TPv3

L2TPv3 este o versiune-proiect a L2TP propus ca alternativă la protocolul MPLS, pentru încapsularea traficului de comunicații multiprotocol de nivelul 2 (figura 3.5.3.4a). La fel ca L2TP, L2TPv3 asigură un serviciu de „pseudo-fir”, dar adaptat la cerințele purtătorului.

Se poate spune că L2TPv3 este pentru MPLS ce este IP pentru ATM: o versiune simplificată a aceluiași concept, având majoritatea avantajelor la o fracțiune din efort (costul pierderii anumitor caracteristici tehnice, considerate mai puțin importante pe piață). În cazul L2TPv3, caracteristicile pierdute sunt cele de inginerie a traficului, considerate a fi importante în MPLS. Protocolul suport pentru L2TPv3 este deasemenea cu mult mai mare decât MPLS. Totuși nu există motive pentru care aceste caracteristici nu pot fi reintegrate în, sau peste L2TPv3, în produsele viitoare.

Figura 3.5.3.4a Tunel L2TPv3

3.5.3.5 MPLS

Comutarea Multiprotocol cu Etichete (Multi Protocol Label Switching) reprezintã o nouã arhitecturã în care nodurile terminale adaugã o etichetã unui pachet IP ce identificã drumul spre destinație, iar pachetele sunt direcționate pe baza etichetei, fãrã inspectarea header-ului inițial.

MPLS reprezintã ultimul pas fãcut în evoluția tehnologiilor de comutare/rutare pentru Internet, folosind o soluție ce integreazã atât controlul rutãrii IP, cât și comutarea de la nivelul legãturii de date (nivelul 2 din modelul OSI). Mai mult, MPLS oferã bazele unor servicii de rutare avansate, rezolvând o serie de probleme:

-se adreseazã problemelor privind scalabilitatea, legate de modelul IP-over-ATM, reducând complexitatea operațiilor din rețea;

-faciliteazã apariția de noi posibilități de rutare, ce îmbunătățesc tehnicile de rutare IP existente;

-oferã o soluție standardizatã, ce are avantajul interoperabilității între diverși furnizori de produse și servicii.

Esență MPLS-ului este generarea unei etichete „label” scurte, de dimensiune fixă, care se comportă ca o reprezentare simplificată a header-ului pachetului IP. Este la fel cum codul poștal este o formă simplificată pentru adresa unei case, a unei străzi și a unui oraș în adresa poștală, folosind această etichetă pentru a lua o decizie în procesul de forward. Pachetele IP au un câmp în header-ul lor care conține adresă spre care pachetul este rutat. Procesul tradițional de rutare într-o rețea procesează această informație la fiecare router, într-o cale a pachetului prin rețea (rutare pas cu pas).

În MPLS, pachetele IP sunt încapsulate cu aceste etichete de către primul dispozitiv MPLS pe care-l întâlnesc de cum intră în rețea. Router-ul MPLS din margine (egde-router) analizează conținutul header-ului IP și selectează o etichetă potrivită cu care să încapsuleze pachetul.

Cel mai mare avantaj al MPLS-ului vine tocmai din faptul că în contrast cu rutarea IP convențională, această analiză poate să nu se bazeze numai pe adresa destinație care este purtată de header-ul IP, ci și pe alte elemente. La fiecare dintre nodurile ulterioare din rețea, eticheta MPLS (și nu header-ul IP) se folosește pentru a lua decizia de forwarding pentru un pachet. În final, pe parcurs ce pachetele MPLS etichetate părăsesc rețeaua, un alt edge router elimină etichetele.

În terminologia MPLS, nodurile sau router-ele care manipulează pachetele se numesc Label Switched Routers (LSR) – routere cu comutare de etichete. Derivarea acestor termeni este evidentă: router-ele MPLS forward-eaza pachetele, luând decizii de comutare bazate pe eticheta MPLS. Aceasta ilustrează un alt concept cheie în MPLS. Router-ele IP convenționale conțin „tabele de rutare” care sunt interogate folosind un header IP dintr-un pachet pentru a decide cun să forward-eze acest pachet. Aceste tabele sunt construite de către protocoale de rutare IP (cum ar fi RIP, OSPF), care poartă informația IP destinație sub formă de adrese IP. În practică observăm că acest forwarding (inspectarea header-ului IP) și planurile de control (generarea tabelelor de rutare) sunt strâns cuplate. Întrucât forwarding-ul MPLS este bazat pe etichete, este posibilă separarea clară a planului de forward-are (bazat pe etichetă) de planul de control pentru protocolul de rutare. Prin separarea acestora două, fiecare poate să fie modificat independent. Cu o astfel de separare, nu mai avem nevoie să schimbăm mașina care face forwarding-ul, de exemplu, pentru a migra spre o nouă strategie de rutare în rețea.

Suita de protocoale TCP/IP (și în special protocolul IP) este acum fundamentul pentru multe rețele publice (Internet-ul) și private (Intranet-uri) de date. Viitoarea convergență a vocii, datelor și rețelelor multimedia se așteaptă să fie în mare bazată pe protocoale IP, ducând la necesitatea de îmbunătățiri din punct de vedere tehnic și operațional.

MPLS permite să avem decizii de forwarding bazate pe: Traffic Engineering, multicast, VPN, QoS, etc.

Figura 3.5.3.5a Nodurile MPLS

Rutarea VPN/Instanță de Forward(VPN Routing and Forwarding Instance) VRF

Un VRF se alcătuiește dintr-o tabelă de rutare IP, o tabelă derivată de forward , un set de interfețe ce utilizează tabela de forward, și un set de reguli și protocoale de rutare care determină ce pachete urmează să intre în tabela de forward. În general, un VRF include informația de rutare care definește locația VPN a clientului care este atașată ruterului PE.

Routerele PE mențin două tabele de rutare separate(figura 3.5.3.5b):

-Tabela globală de rutare, care conține rutele P și PE

-VRF tabelele de rutare și forwardare asociate cu unul sau mai multe locații conectate (rutere CE).

VRF-ul este asociat cu orice tip de interfață, fie ea fizică sau logică. Interfețele pot să împartă același VRF dacă locațiile conectate folosesc aceeași informație de rutare.

Company. Căutați Trad

Figura 3.5.3.5be Tabele de rutare in MPLS-VPNmar

k Applications

Regist Pentru a obține securitatea necesară pentru administrarea VPN-urilor prin Internet, folosind abordarea de nivel 3, e necesară separarea adreselor și dirijare traficului între clienți. Acest lucru se subînțelege în cazul unei abordări de nivel 2, dar trebuie proiectată special pentru soluțiile VPN de Nivel 3. Pentru rezolvarea acestei probleme, un număr de experți în Internet (Cisco, Juniper, AT&T, Alcatel, Worldcom) au definit modul de realizare al separării de adrese și al dirijării folosind BGP (Border Gateway Protocol), precum și modul de transmitere a acestei informații și a traficului VPN în sine, prin backbone-ul MPLS.

Modelul presupune ca furnizorul de servicii (SP – Service Provider) să fie proprietarul backbone-ului și să administreaze serviciile VPN de la echipamentul PE (Provider Edge), care comunică direct cu echipamentul CE (Customer Edge) folosind tehnologii standard, cum ar fi Frame Relay, ATM, DSL și T1. Astfel, clientul achiziționează serviciile VPN direct de la SP. Apoi SP va furniza serviciile VPN clienților multipli folosind un dispozitiv PE partajat.

Cheia spre a oferi securitate în echipamentul PE se realizează prin extensiile BGP-VPN. Fiecare ruter PE trebuie să mențină un număr de tabele de dirijare, fiecare dintre ele fiind asociat cu o clasă de VPN. Când se recepționează un pachet de la echipamentul CE, se folosește tabelul de dirijare asociat locației pentru a determina dirijarea datelor. Fiecare VPN are propriul tabel unic de dirijare, cunoscut sub numele VRF – VPN Routing and Forwarding. Dacă un dispozitiv PE are conexiuni multiple la aceași locație, se poate asocia un singur VRF la toate acele conexiuni. Extensiile BGP-VPN pentru suportul VRF permit apoi BGP-ului să trimite informația specifică de dirijare la ruterul PE conectat la celălalt capăt al VPN-ului. În această abordare se menține separarea rutelor pentru fiecare client unic VPN.

În acest tip de arhitectură, numai ruterele PE trebuie să poarte informația VRF. Nu este necesar ca ruterele care nu sunt „de graniță” de pe backboneul SP să știe tot despre informația VRF. Acest design extinde foarte mult scalabilitatea abordării VPN de nivel 3. În fiecare ruter PE se pot asocia subinterfețe VRF-urilor; în acest caz spunem că asocierea este multi-ton. Două subinterfețe nu se pot asocia cu același VRF dacă nu intenționează să arate informația de rutare și dacă adresa de destinație a pachetului VRF este determinată de subinterfața prin care se recepționează.

Se definește un concept de adrese VPN-Ipv4 folosit pentru a distinge rutele. O adresă VPN-Ipv4 este o adresă de 12 octeți care începe cu un separator de adrese (RD – Route Distinguisher) de 8 octeți și se termină cu o adresă Ipv4 de 4 octeți. Extensiile Multiprotocol BGP (BGP-MP) permit BGP să transporte rute din această nouă familie de adrese. Familia de adrese VPN-Ipv4 și RD asigură că dacă se folosesc adrese similare în două VPN diferite, se pot menține rute diferite către adresa respectivă.

Extensiile BGP-VPN permit configurarea politicilor de distribuție de rute pentru distribuția corespunzătoare a informației de rutare. Ruterele PE pot, de asemenea, să autodescopere celălalt dispozitiv PE atașat la același VPN. Acest lucru elimină nevoia de a reconfigura ambele PE-uri la reconfigurația sau configurația inițială a VPNului

3.6 Componente VPN. Metode de realizare a soluțiilor VPN

În funcție de tipul VPN-ului (cu acces de la distanță sau site-to-site), pentru a construi un VPN este nevoie de câteva componente:

software client pentru fiecare utilizator de la distanță;

hardware dedicat, precum un concentrator VPN sau un firewall PIX de securitate;

un server VPN dedicat serviciilor dial-up;

un NAS (server de acces la rețea) folosit de furnizorul de servicii pentru accesul VPN al utilizatorilor de la distanță;

un centru de administrare a politicilor din rețeaua VPN.

O soluție VPN bazată pe Internet este alcătuită din patru componente principale: Internet-ul, porțile de securitate (gateways), politicile de securitate ale server-ului și autoritățile de certificare.

Internet-ul furnizează mediul de transmitere. Porțile de securitate stau între rețeaua publică și rețeaua privată, împiedicând intruziunile neautorizate în rețeaua privată. Ele, deasemenea, dispun de capacități de tunelare și criptare a datelor înainte de a fi transmise în rețeaua publică. În general, o poartă de securitate se încadrează în una din următoarele categorii: routere, firewall, dispozitive dedicate VPN harware și software.

Sisteme VPN bazate pe routere

Pentru că router-ele trebuie să examineze și să proceseze fiecare pachet care părăsește rețeaua, pare normal ca în componența acestora să fie inclusă și funcția de criptare a pachetelor. Comercianții de routere dedicate VPN( figura 3.6a ), de obicei oferă două tipuri de produse: ori cu un suport software pentru criptare, ori cu un circuit adițional echipat cu un co-procesor care se ocupă strict de criptarea datelor. Acestea din urmă reprezintă cea mai bună soluție pentru situațiile în care sunt necesare fluxuri mari de date. Trebuie avut grijă la adăugarea de noi sarcini pentru router (criptarea), pentru că, dacă router-ul nu poate face față și „pică”, atunci întreg VPN-ul devine nefuncționabil.

Cisco 3660 Series Cisco 1710 Series Cisco 3620 Series

Figura 3.6a. Routere folosite la VPN

Din punct de vedere al performanțelor, soluția bazată pe routere este cea mai bună dar implică un consum foarte mare de resurse, atât din punct de vedere financiar cât și din punct de vedere al resurselor umane, fiind necesari specialiști în securitatea rețelelor pentru a configura și întreține astfel de echipamente. Este o soluție potrivită pentru companiile mari, care au nevoie de un volum foarte mare de trafic și de un grad sporit de securitate.

Figura 3.6b Soluție VPN bazată pe routere

Sisteme VPN bazate pe firewall

Mulți comercianți de firewall includ în produsele lor capacitatea de tunelare. Asemeni router-elor, firewall-urile trebuie să proceseze tot traficul IP. Din această cauză, nu reprezintă o soluție potrivită pentru tunelare în cadrul rețelor mari cu trafic foarte mare.

Combinația dintre tunelare, criptare și firewall reprezintă probabil soluția cea mai bună pentru companiile mici, cu volum mic de trafic. Ca și în cazul router-elor, dacă firewall-ul „pică”, întreg VPN-ul devine nefuncționabil.

Folosirea firewall-urilor pentru creearea de VPN reprezintă o soluție viabilă, îndeosebi pentru companiile de dimensiuni mici, ce transferă o cantitate relativ mică de date (de ordinul 1-2 MB pe rețeaua publică).

Soluția unui firewall cu VPN integrat(figura 3.6c) prezintă avantajul unei securități sporite (poarta de securitate a VPN-ului fiind protejată de filtrele aplicate de firewall) și, de asemenea, este mult mai ușor de întreținut, făcându-se practic management pentru amândouă componentele simultan.

Figura 3.6c. Firewall cu VPN integrat

Echipamente harware dedicate

O altă soluție VPN o reprezintă utilizarea de hardware special (figura 3.6d) proiectat să îndeplinească sarcinile de tunelare, criptare și autentificarea utilizatorilor. Aceste echipamente operează de obicei ca niște punți de criptare care sunt amplasate între router-ele rețelei și legătura WAN (legătura cu rețeaua publică). Deși aceste echipamente sunt proiectate pentru configurațiile LAN-to-LAN, unele dintre ele suportă și tunelare pentru cazul client-to-LAN.

Figura 3.6d Client hardware VPN

Integrând diverse funcții în cadrul aceluiași produs poate fi destul de atrăgător pentru o firmă care nu beneficiază de resursele necesare pentru a instala și întreține echipamente de rețea diferite. O simplă pornire a unui astfel de echipament este mult mai simplă decât instalarea unui software pe un firewall, configurarea unui router și instalarea unui server RADIUS.

Chiar dacă multe din aceste echipamente hardware(figura 3.6e) par că oferă cele mai bune performanțe pentru un VPN, tot trebuie decis câte funcții dorești să integrezi într-un singur echipament. Companiile mici, care nu dispun de personal specializat în securitatea rețelelor vor beneficia de aceste produse care integrează toate funcțiile unui VPN. Unele produse – cele mai scumpe – includ surse duble de alimentare și au caracteristici deosebite care asigură fiabilitatea funcționării.

Este greu de depășit performanța acestor echipamente în capacitatea lor de a susține un volum de trafic mare și un număr impresionant de tuneluri simultane, lucru esențial pentru companiile mari.

Figura 3.6e. Cisco VPN 3002 Hardware Client

Soluții software dedicate

Componente software VPN sunt deasemenea disponibile pentru creearea și întreținerea de tuneluri, fie între două porți de securitate, fie între un client și o poartă de securitate. Aceste sisteme sunt agreeate datorită costurilor reduse și sunt folosite pentru companiile mici, care nu au nevoie să procesese o cantitate prea mare de date. Aceste soluții pot rula pe servere existente, împărțind astfel resursele cu acestea. Reprezintă soluția cea mai potrivită pentru conexiunile de tipul client-to-LAN.

Practic, se instalează o aplicație software pe calculatorul clientului care stabilește conexiunea cu serverul VPN. Există multe firme producătoare de astfel de aplicații, Microsoft, integrând de altfel în ultimele sisteme de operare lansate soluții software de acest gen. Asfel, sistemul de operare Windows 2003 Server are încorporat un server VPN iar, din punct de vedere al clienților, sistemele de operare Windows 2000 Pro, respectiv Windows XP au încorporat un client VPN. Practic se poate realiza o aplicație VPN fără a mai instala alte produse software sau hardware, trebuind doar configurate cele existente.

Pe lângă porțile de securitate, o altă componentă importantă a unui VPN o reprezintă politica de securitate a server-ului. Acest server menține listele de control al accesului și alte informații legate de utilizatori. Porțile de securitate folosesc aceste informații pentru a determina care este traficul autorizat.

În cele din urmă, autoritatea de certificare este necesară pentru a verifica cheile partajate între locații și pentru a face verificări individuale pe baza certificatelor digitale. Companiile mari pot opta pentru a-și menține propria bază de date cu certificate digitale pe un server propriu, iar în cazul companiilor mici intervine o „terță” parte reprezentată de o autoritate de încredere.

3.7 Securitate VPN

3.7.1 Amenințări la adresa rețelelor publice

Cele mai vulnerabile situații ale pachetelor securizate și stabile identificate în rețele sunt:

pierderea caracterului privat al rețelei ,impostura, pierderea integrității datelor , refuzul serviciului.

VPN oferă soluții pentru înlăturarea amenințărilor de tipul celor menționate mai sus asigurând:

1. Pentru a păstra confidențialitate – Criptarea sau criptografierea datelor

2. Pentru a înlătura impostura – Autentificarea

3. Integritatea pachetelor

4. Satisfacția unui serviciu la un preț accesibil

În general orice intrus în rețea urmează procesul descris mai jos:

Supravegherea (din exterior) – Persoana rău intenționată accesează informații publice sau apare ca utilizator obișnuit. În acest stadiu este aproape imposibil să îi fie identificate intențiile. Între timp el poate accesa tabela DNS (Domain Name System) și identifică numele stațiilor de lucru, aflându-se aparent într-o căutare a unor date publice (ex. știri, comentarii despre companie etc).

Recunoașterea sau scanarea – Intrusul caută informații, dar încă nu produce nimic rău. De cele mai multe ori accesează site-urile companiei în căutarea scripturilor CGI (Common Gateway Interface), acestea fiind cel mai ușor de atacat.

Exploatarea sistemului-Intrusul încearcă să utilizeze posibilele deficiente în securitatea sistemelor utilizate. Astfel, el are câteva alternative: să transmită un volum mare de date și să se folosească de blocajul sistemului sau să speculeze conturile de autentificare neprotejate de parole sau cu parole ușor de identificat.

La atac – În acest stadiu, intrusul este deja în rețea fiind deghizat într-una dintre stațiile de lucru utilizate în rețea. Obiectivul principal al intrusului este de a șterge urmele, astfel ca la auditarea tranzacțiilor în rețea să nu fie identificat traseul de pătrundere. El trebuie să se asigure totuși că va putea reveni oricând va dori. Așa că intrusul poate instala utilitare proprii care să îi dea acces, înlocuind serviciile existente după sistemul calului Troian sau generând un cont de utilizator.

Bătălia finală – Intrusul sustrage date, utilizează resursele sistemului pentru alte atacuri viitoare sau mutilează datele paginii Web. Toate acestea afectează atât utilizatorii interni, cât și imaginea externă a companiei.

Pentru a înlătura aceste iminente atacuri, datele tranzitate prin rețelele VPN trebuie să fie criptate. Astfel nu vor putea fi accesate decât de cei autorizați, păstrându-se astfel confidențialitatea datelor.

3.7.2 Solutii VPN

O rețea VPN bine proiectată folosește câteva metode care mențin datele și conexiunea securizate: firewall-uri, criptarea, IPSec sau server AAA. Astăzi securitatea rețelei este în principal asigurată de firewall-uri, produse care pun o barieră software între resursele companiei (rețeaua privată) și Internet. Firewall-urile pot fi configurate să restricționeze numărul de porturi deschise, pot fi instruite care feluri de pachete să le lase să treacă și care nu, dar un firewall poate fi utilizat pentru a încheia sesiunile VPN(figura 3.7.2a).

Figura 3.7.2a. Firewall

CheckPoint Software Technologies și Raptor Systems sunt două dintre cele mai cunoscute firme care vând soft de firewall pentru servere Unix, situate în apropierea router-ului de rețea. Alte firme, ca Cisco Systems și Ascend Communications, vând produse de securitate la nivel de router.

Cel mai întâlnit dintre protocoalele VPN discutate anterior este IPSec – un „open-standard” de securitate folosit de cele mai mari firme, printre care se numără IBM, Sun sau BayNetworks – pentru stabilirea comunicațiilor directe private prin Internet.

Internet Protocol Security (IPSec)( Figura 3.7.2b) oferă caracteristici de securitate extinsă, precum și algoritmi de criptare mai buni, pe lângă mecanisme de autentificare. IPSec poate cripta date între diverse echipamente: router-router, firewall-router, PC-router, PC-server.

IPSec protejează datele în trei moduri, folosind tehnici criptografice:

Autentificare: Procesul prin care este verificată identitatea unui host (stație de lucru).

Verificarea integrității: Procesul prin care se semnalează orice modificări ale datelor survenite în procesul de transport prin Internet, între sursă și destinație.

Criptarea: Procesul de codificare a informației în tranzit prin rețea, pentru a asigura caracterul său privat.

Figura 3.7.2b Un Remote Access VPN cu Ipsec

Serverele AAA (de autentificare, autorizare și jurnalizare) sunt folosite pentru accesurile mult mai securizate dintr-un mediu VPN de accesul la distanță. Când vine o cerere de stabilire a unei sesiuni de la un client dial-up, serverul AAA verifică următoarele:

-cine sunteți (autentificare);

-ce permisiuni aveți (autorizare);

-ce anume de fapt faceți (jurnalizare).

Funcția de jurnalizare este utilă atunci când se urmărește ce anume face clientul, în scopul facturării.

O soluție completă pentru realizarea unei rețele VPN necesită îmbinarea a trei componente tehnologice critice: securitatea, controlul traficului și administrarea la nivelul organizației.

Securitatea

Tehnologiile importante care acoperă componența de securitate a unei rețele VPN sunt: controlul accesului pentru garantarea securității conexiunilor din rețea, criptarea, pentru protejarea confidențialității datelor, autentificarea, pentru a verifica identitatea utilizatorului, cât și integritatea datelor.

Controlul traficului

O a două componentă critică în implementarea unei rețele VPN este dată de controlul traficului, realizat pentru un scop simplu și clar: garantarea fiabilității, calității serviciilor și a unor performanțe optime în ceea ce privește ratele de transfer. Comunicațiile în Internet pot duce la apariția unor zone de congestie, impropii unor aplicații critice în domeniul afacerilor. Alternativa este dată de stabilirea unor priorități de rutare a traficului, astfel încât transferul datelor să fie realizat cu fiabilitate maximă.

Administrarea la nivelul organizației

Ultima componentă critică este dedicată garantării unei integrări complete a rețelei VPN în politica de securitate globală, unei administrări centralizate (fie de la o consolă locală, fie de la una la distanță) și unei scalabiltăți a soluției alese.

Deoarece în cazul rețelelor VPN nu există o rețetă unică, este necesară o combinație particulară a acestor trei componente, astfel încât rezultatul practic să întrunească criteriile de evaluare mai sus cros

3.7.3 Criptarea datelor

i Criptarea este o metodă de codare a datelor prin intermediul unei forme algoritmice într-o formă indescifrabilă înainte de transmiterea acestora de către stația de lucru sursă și decodate ulterior la destinație prin aplicarea algoritmului de criptare în sens invers.

Fără ca să existe un mecanism de criptare a datelor, acestea ar circula în clar pe canalele de comunicație publice ale Internetului. Aceste date ar putea fi citite și interceptate prin tehnici banale (analizor de protocol, instrumente de diagnoză în rețea, adeseori incluse în sistemele de operare în rețea). Sistemul care asigură prelucrarea consecventă a datelor în acest scop poartă denumirea de criptosistem, format din procesele de criptare/decriptare și de participanții la acesta – emițătorul și receptorul. În prezent există două tipuri de criptosisteme: cu cheie privată și cu cheie publică.

3.7.3.1 Criptosisteme cu cheie privată (simetrice)

Acest tip de sistem utilizează aceeași cheie secretă, atât pentru criptare cât și pentru decriptare. Cheia este de fapt un șir de biți, având o lungime fixă.

Schemele de criptare simerică sunt foarte rapide, algoritmii utilizați în prezent de producătorii VPN sunt RC-4 (RSA), DES (Data Encryption Standard), IDEA (Internațional Data Encryption Algorithm), triple-DES, FWZ-1 sau tehnologia de criptare Skipjack, propusă de guvernul Statelor Unite și implementată în cipul Clipper. Fiecare dintre acești algoritmi diferă prin lungimea cheii, care adesea este asimilată cu "puterea" de criptare a algoritmului. Această putere determină efortul de calcul necesar pentru descoperirea cheii. Cu cât o cheie este mai lungă cu atât algoritmul de criptare este mai "puternic".

Cu toate acestea, utilizarea doar a unui sistem cu cheie privată prezintă câteva dezavantaje. Din moment ce "cheia secretă" este folosită atât pentru criptare, cât și pentru decriptare, oricine deține această cheie poate intercepta datele care au fost sau nu criptate, punând sub semnul riscului comunicațiile desfășurate sub această cheie. Din această cauză, cheile trebuie livrate într-o manieră intrinsec protejată, cum ar fi transferul direct între persoane.

Confidențialitatea comunicațiilor se bazează pe integritatea cheii secrete, de aceea cheia trebuie înlocuită periodic. Printr-o înlocuire foarte frecventă, un anumit stil de criptare este expus publicului pentru o fereastră de timp cât mai mică. Această metodă de transmisie și înlocuire a cheilor este acceptabilă în cazul unui număr mic de chei. Odată cu creșterea numărului de chei, procesul devine mult mai complicat. De exemplu, pentru 100 de utilizatori în VPN, într-un criptosistem simetric, trebuie administrate 4950 de chei. În acest scenariu, componenta de setare și distribuție a cheilor pe perechi de parteneri de comunicații, luând în considerare și înlocuirea lor periodică, devine extraordinar de dificilă și consumatoare de timp.

3.7.3.2 Criptosisteme cu cheie publică (asimetrice)

Un astfel de sistem folosește o pereche de chei aflate într-o relație matematică: o cheie privată, menținută în secret în cadrul sistemului și o cheie publică, ce poate fi cunoscută de oricine. Astfel crearea și distribuția cheilor, prin cheia publică, poate fi realizată mult mai simplu față de cazul unui criptosistem cu cheie privată. Există două tipuri de criptosisteme utilizate în mod curent în cazul unor rețele VPN: Diffie-Hellman (DH) și Rivest Shamir Adlemen (RSA).

3.7.3.3 Diffie-Hellman

Unul dintre modurile prin care două sisteme care comunică pot cădea de acord asupra unei valori pentru cheia de criptare este sistemul cu cheie publică Diffie-Hellman. În acest sistem, combinația dintre cheia privată a utilizatorului1 și cheia publică a utilizatorului2 va genera același rezultat ca și combinația dintre cheia privată a utilizatorului2 și cheia publică a utilizatorului1. Această proprietate poate fi extinsă la orice combinație de două chei, astfel încât cheia publică a oricărui partener de comunicații poate fi distribuită liber, fără a pune în pericol securitatea criptositemului. Cele două părți, care schimbă propriile chei publice, sunt singurele care pot genera ceea ce se numește secretul comun (shared secret). Sistemul devine foarte sigur, fără ca o altă parte să poată crea sau cunoaște secretul comun.

Un criptosistem cu cheie publică poate fi folosit pentru sporirea unui sistem cu cheie privată, prin distribuirea unei chei secret comun celor două părți care doresc să stabilească o sesiune de comunicații privată. Primul pas este obținerea de către utilizatorul1 a cheii publice a utilizatorului2 și obținerea de către utilizatorul2 a cheii publice a utilizatorului1. În continuare utlilizatorul1 și utilizatorul2 calculează cheia secretului comun. În fine, ei pot utiliza secretul comun pentru criptarea și decriptarea tuturor transmisiilor de date dintre ei. Din acest punct de vedere, criptosisternul cu cheie publică Diffîe-Hellman este cunosct și sub numele de sistem cu distribuție de chei publice Diffie-Hellman.

Există însă o componentă a mecanismului de distribuție a cheii ce trebuie utilizat pentru a asigura proveniența cheilor. Dacă cei doi corespondenți, își obțin cheile publice reciproce printr-un canal de comunicație nesigur, cum ar fi Internetul, ei trebuie să fie siguri de proveniența cheilor. Ei nu își pot cere pur și simplu cheile publice, din cauza pericolului ca altcineva să supravegheze tocmai această sesiune de comunicații. O altă persoană poate să intercepteze cererea utilizatorului1 de a primii cheia publică a utilizatorului2 și să-și trimită propria cheie publică către ambii corespondenți. Dacă se întâmplă acest lucru, corespondenții vor avea un secret comun cu aceea persoană, care va devenii un virtual corespondent pentru fiecare dintre cei doi. Această situație este cunoscută sub numele de amenințarea "omului din mijloc'1 (Man în the Middle). O metodă de protecție împotriva acestei amenințări, ca și a altora, este utilizarea unei combinații între un criptosistem cu cheie publică cu RSA și un sistem de semnături digitale, astfel încât distribuția cheilor să fie realizată sigur și protejat.

3.7.3.4 Rivest Shamir Adleman (RSA)

Metoda RSA este aproape singura metodă "adevărată" de criptare cu cheie publică. Ea a fost publicată în anul 1977. S-a demonstrat însă recent că de fapt această metodă a fost inventată în anul 1973 de către Clifford Cocks. Algoritmul RSA se bazează pe următoarele fapte matematice:

Dacă se ridică un număr la o putere (d), modulo un număr N, numărul original poate fi recuperat prin ridicarea rezultatului la o altă putere (e) modulo același număr. Cunoscând numărul N utilizat ca și modul precum și prima putere folosită se poate determina cu ușurință care a fost cea de a doua putere folosită.

Criptosisternul cu cheie publică RSA poate fi folosit pentru două scopuri: criptare și semnături digitale. Orice informație criptată cu cheia privată RSA poate fi decriptată numai cu cheia publică RSA corespunzătoare. Dacă utilizatorul1 își folosește cheia privată RSA pentru criptarea unui mesaj, oricine deține cheia sa publică poate decripta acel mesaj. În această manieră, schema RSA (cunoscută mai bine sub numele de Semnătură Digitală RSA) poate fi aplicată pentru atingerea unor scopuri diferite, inclusiv transportul cheilor sau a materialului criptat.

Un atac împotriva metodei de criptare cu cheie publică RSA este așa numitul atac cu text în clar limitat. Dacă există un număr mic de mesaje care trebuiesc transmise, un atacator ar putea să le cripteze pe toate, cu diferite chei publice, folosind algoritmul RSA și să-l identifice pe cel transmis la un moment dat comparându-l cu toate textele cifrate pe care le-a obținut.

3.7.4 Semnături digitale și autentificări de date

Așa cum s-a văzut mai sus, un mesaj este introdus într-un algoritm matematic cunoscut sub numele de funcție hash (demixare) care mapează valori mai mari pe valori mai mici. Mărimea mesajului este micșorată, astfel încât să se asigure performanțele maxime la transmisia pe rețea – cu cât un mesaj este mai scurt, cu atât mai puține calcule sunt neceasare, deci și performanțele sunt mai mari.

Rezultatul funcției hash, cunoscut sub numele de message digest (sumar de mesaj) este apoi criptat cu cheia privată a emițătorului. Sumarul de mesaj astfel criptat formează semnătura digitală, care va fi atașată la mesajul original, ambele componente fiind apoi criptate și trimise destinatarului. Acesta poate autentifica mesajul după cum urmează. Mai întâi, prin folosirea aceleiași funcții de mixare de mai sus, stabilite de comun acord, se regenerează sumarul de mesaj. Semnătura digitală încorporată în mesaj este apoi decriptată cu cheia publică a expeditorului. În final, se compară cele două rezultate. Dacă și numai dacă cele două sumare coincid, se poate concluziona cu siguranță că:

– mesajul a fost transmis prin utilizarea cheii private corespondente;

– mesajul nu a fost alterat în decursul transferului.

Unele dintre funcțiile de mixare criptografice folosite în procesul de semnătură digitală sunt: MD4, MD5, SHA-1 și CBC- DES-MAC, între ele fiind diferențe de lungime a cheilor și de metodă de hash.

Am descris cum pot fi folosite funcțiile hash/de mixare pentru transportul cheilor. Ele pot fi utilizate și pentru a verifica dacă mesajul a fost recepționat în forma originală (integritatea datelor). Atunci când sunt folosite pentru controlul integrității datelor, funcțiile hash (ca și semnăturile digitale rezultate) sunt mult mai cunoscute sub numele de algoritmi de autentificare a datelor. Utilizarea unui sistem de semnături digitale pentru autentificarea datelor dovedește că:

– mesajul a fost transmis de o anumită persoană și nu a fost falsificat (autentificarea datelor);

– mesajul nu a fost modificat sau corupt (integritatea datelor).

Prin folosirea unei combinații între: schema de semnături digitale RSA, sistemul de distribuție a cheilor Diffie-Hellman și sistemul simetric de criptare cu cheie, se poate stabilii o sesiune criptată VPN care facilitează confidențialitatea datelor, autentificarea datelor și integritatea datelor. Odată cu stabilirea unei sesiuni criptate VPN, ea este protejată în fața unor forme diferite de atac, inclusiv a "omului din mijloc".

Securitatea unei rețele VPN nu se bazează numai pe algoritmi și chei de natură matematică, ci și pe un mecanism sigur de generare, distribuție și administrare a cheilor. Dacă aceste chei sunt compromise, atunci întreaga rețea poate fi compromisă. Entitatea responsabilă de generarea seturilor de chei private și publice pentru fiecare utilizator, ca și distribuire acestora, trebuie să aibă cel mai mare nivel de încredere. Asocierea perechilor de chei cu utilizatorii determină securitatea întregului sistem de chei. În acest scenariu, entitatea responsabilă este numită Certificate Authority (CA – Autoritatea de certificare), iar procesul de administrare a cheilor este realizat printr-un set de linii directoare stabilite global de industria de specific, cunoscut sub numele de Public Key Infrastructure (PKI – Infrastructura publică pentru chei). CA este de obicei o terță parte, a cărei responsabilitate unică sau set de produse se desfășoară în jurul componentelor PKI, cum ar fi generarea, distribuția, revocarea și depozitarea cheilor.

3.7.5 Autentificarea utilizatorilor și controlul accesului

Procedurile de autentificare sunt implementate la nivelul punctului de acces la rețeaua VPN. Prin acestea se stabilește identitatea persoanei care folosește "nodul VPN" și se elimină posibilitatea unui acces neautorizat în rețeaua unei organizații.

Cele mai cunoscute scheme de autentificare a utilizatorilor sunt: username/password (prin sistemul de operare), S/Key password (de unica folosință), schema de autentificare RADIUS și schema bazată pe token. Cea mai puternică și viabilă schemă de autentificare a utilizatorilor disponibilă în prezent pe piată este schema de autentificare cu doi factori (two-factor), care necesită două elemente pentru verificarea identității unui utilizator: un element fizic aflat in posesia acestuia (un token/jeton electronic) și un cod care este memorat (un PIN – Personal Identification Number). Unele soluții avansate au început să utilizeze mecanisme de identificare biometrice, cum ar fi amprentele digitale, vocale sau ale retinei. Cu toate acestea ele se află încă în partea de testare.

Pentru evaluarea unei soluții VPN, este importantă considerarea unei soluții care prezintă atât mecanisme de autentificare a datelor, cât și de autentificare a utilizatorilor. Furnizorii de soluții VPN care suportă doar unul din cele doua tipuri de mecanisme de autentificare se referă la autentificare în mod generic, fără a detalia tipul. O soluție VPN completă trebuie să suporte atât autentificarea datelor (procesul de semnătură digitală sau de integritate a datelor), cât și autentificarea utilizatorilor (procesul de verificare a identității ulilizatorilor VPN).

Controlul accesului

Odată ce a fost verificată identitatea persoanei, profilul de utilizator va determina exact care resurse și servicii pot sau nu să fie accesate in retea, fără a compromite securitatea rețelei.

Arhitectura pentru controlul accesului

Această arhitectură va afecta suportul existent și viitor al serviciilor, aplicațiilor și protocoalelor disponibile într-o soluție VPN.

Unele soluții de arhitectură, cum sunt cele bazate pe sistemele proxy, nu oferă o largă disponibilitate pentru aplicații și servicii, deoarece fiecare aplicație pretinde existența unui proxy dedicat. O soluție VPN completă va avea o arhitectură care suportă toate serviciile principale de pe Internet, încluzând browsere securizate și setul tradițional de aplicații Internet (e-mail, FTP, Telnet, etc.), întreaga familie TCP, protocoale neorientate pe conexiune (RPC), aplicațiile bazate pe UDP, ca și protocoalele definite de utilizator. În plus, arhitectura VPN ar trebui să suporte atât sisteme API (Application Program Interfaces) cunoscute, cât și standarde deschise, astfel terții producători de aplicații să poată să-și integreze produsele într-o soluție VPN.

3.8 VPN și NAT

Un translator de adresă de rețea (NAT – Network Address Translator) este un dispozitiv care se folosește de obicei pentru a furniza acces simultan rețelelor private la rețeaua publică, cum ar fi Internetul. Pentru că NAT nu lucrează cu protocoale care folosesc criptare, o soluție VPN care include un NAT poate să adauge un nivel suplimentar de complexitate unei desfășurări VPN.

NAT cu conexiune PPTP

Dacă un client VPN care folosește PPTP este în spatele unui NAT, NAT trebuie să includă un editor NAT care să poată să traducă traficul PPTP. De editorul NAT este nevoie pentru că datele tunelate PPTP au mai degrabă un header GRE decât unul TCP sau UDP. Editorul NAT folosește câmpul Call ID din antetul GRE pentru a identifica fluxul de date PPTP și a traduce adresele IP si Call ID-urile pentru pachetele PPTP transmise între o rețea privată și Internet.

Editorul NAT PPTP

Componenta de protocol de rutare NAT/Basic Firewall a serviciului de Rutare și Acces de la Distanță și funcția de divizare a conexiunii Internet din conexiunile de rețea, includ un editor NAT pentru traficul PPTP.

NAT cu conexiuni L2TP

Pentru a folosi conexiuni VPN bazate pe L2TP în spatele unui NAT, trebuie implementat IPSec NAT Traversal (NAT-T) la ambele capete a conexiunii VPN.

IPSec NAT-T

IPSec NAT-T abordează dificultatea utilizării VPN bazate pe IPSec printr-un NAT. Windows Server 2003 permite trecerea unei conexiuni L2TP/IPSec printr-un NAT. Această capacitate se bazează pe ultimele standarde IETF.

IPSec NAT-T permite punctelor IPSec să negocieze și să comunice când sunt în spatele unui NAT. Pentru a folosi IPSec NAT-T, atât clientul VPN cu acces de la distanță, cât și serverul VPN cu acces de la distanță, trebuie să suporte IPSec NAT-T. IPSec NAT-T este suportat de clientul VPN Windows Server 2003 Microsoft L2TP/IPSec și de actualizarea L2TP/IPSec NAT-T pentru Windows XP și 2000. În timpul procesului de negociere, punctele capabile L2TP/IPSec NAT-T determină automat dacă atât punctul inițiator IPSec (tipic un calculator-client) cât și punctul IPSec care răspunde, pot efectua L2TP/IPSec NAT-T. Suplimentar, punctele capabile L2TP/IPSec NAT-T determină dacă în calea lor sunt NAT-uri. Dacă sunt satisfăcute ambele condiții, punctele folosesc automat L2TP/IPSec NAT-T pentru a trimite trafic protejat IPSec.

4. Software-ul Hamachi pentru VPN

Hamachi este o soluție VPN (Virtual Private Network) la îndemâna oricui. De obicei, setarea unei rețele VPN este destul de complicată, trebuie setat routerul, firewallul și softwareul ce beneficiază de rețea. Dar cu ajutorul lui Hamachi, dezvoltat de Applied Networking Inc, oricine își poate seta o rețea “locală” privată pe internet.

Pentru a depăși obstacolele ce apar în setarea unei conexiune VPN perfectă, Hamachi folosește tehnologie peer-to-peer asemănătoare cu cea folosită pentru mesagerie instant (IM): există un server extern care creează un director cu toți clienții Hamachi. Acest server autentifică utilizatorii prin intermediul unor “chei”, chiar dacă clienții sunt localizați în spatele routerelor sau firewallurilor și creează o conexiune securizată între clienți.

Applied Networking precizează că odată ce serverul a stabilit conexiunea între clienții Hamachi, conexiunea securizată este numai între utilizatorii conectați, fără a exista trafic care să treacă prin serverele Hamachi. Totuși, serverele trimit semnale pentru a verifica dacă clienții mai sunt conectați sau nu.

Interfața lui Hamachi (figura 4.a)este foarte simplă, totodată ușor de folosit. Primă oară când se rulează programul se prezintă un scurt tutorial, dar care este cam inutil pentru că există doar trei butoane: butonul Power, cel care activează interfața Hamachi, butonul Network, folosit pentru crearea sau conectarea la rețele și butonul pentru setări, acestea din urmă fiind doar câteva.eg

Figura 4.a Interfața Hamachi

Atunci când instalăm Hamachi, acesta adaugă o interfață de rețea virtuală ce permite setarea parametrilor conexiunii separat de obișnuitele interfețe de rețea – cu fir sau fără fir. Această interfață instalată devine activă doar atunci când pornești Hamachi.

Când se dorește crearea unei rețele(figura 4.b), sau conectarea la o rețea deja existentă, se dă click pe butonul de rețea și se va cere numele rețelei și parola pentru aceasta. În momentul când conexiunea este stabilită, interfeței Hamachi îi este alocat un IP separat față de cele pe care deja le folosește clientul. De exemplu, rețeaua locală poate folosi IP-uri de genul 192.168.1.X, dar în rețeaua Hamachi se alocă un IP de forma 5.38.140.Y. Acest IP este accesibil doar în rețeaua Hamachi.3),

nouFig lansată.MPV

Figura 4.b Creare rețea

Conectarea altor computere la rețea este foarte ușoară. Tot ce trebuie făcut este să comunici utilizatorilor numele rețelei și parola pe care ai asociat-o.
Datorită faptului că majoritatea programelor firewall vor recunoaște adaptorul Hamachi ca și o rețea separată și vor bloca traficul, s-ar putea să fie nevoie să configurezi firewallul să permită traficul prin interfață Hamachi.PN wwwdffeWEW eregdftwew

În fereastra Hamachi ne vor apărea toți utilizatorii ce sunt membrii ai rețelei. Cei care sunt offline vor avea numele gri. Dacă dăm click dreapta pe membrii ai rețelei vom putea da ping, trimite mesaje, să vedem shareurile sau, dacă suntem “inițiatorul” rețelei, să deconectăm utilizatori și să le blocăm accesul. (Opew vedem shareurile sau, daca suntem “initiatorul” rețelei, sa deconectam utilizatori si sa le blocam accesul. (Opewetelei si parola pe care ai as

Figura 4.c Opțiuni Hamachi M

Figura 4.d Chat Hamachi stație care inițiază Figura 4.e Chat Hamachi stație apelată

Ragula Systems D Figura 4.f Browse stație 5.46.33.127 evelopment Company. Căutați Trademark Applications and

Open VPN

Generalitati

OpenVPN este un program VPN gratuit și open source, pentru crearea tunelelor criptate punct-cu-punct, între calculatoare-gazdă. A fost scris de James Zonan și publicat sub licența publică generală GNU (GPL – General Public License).

OpenVPN permite punctelor să se autentifice folosind chei secrete cunoscute anticipat, sau nume utilizator/parolă. Folosește extensiv librăria de criptare OpenSSL cât și protocolul SSLv3/TLSv1. Este disponibil pe Solaris, Linux, OpenBSD, FreeBSD, NetBSD, Mac OS X și Windows 2000/XP/Vista. Conține multe soluții de securitate și control. Nu este un VPN bazat pe Internet și nu este compatibil cu IPsec sau orice alt pachet VPN.

Tot pachetul constă într-un binar pentru conexiunile client și server, un fișier de conexiune opțional și unul sau mai multe fișiere-cheie în funcție de metoda de autentificare folosită.

OpenVPN folosește biblioteca OpenSSL pentru a furniza criptarea canalelor de date și control. Lasă OpenSSL-ului criptarea și autentificarea, permițând OpenVPN-ului să folosească toate cifrele disponibile în pachetul OpenSSL. De asemenea, poate folosi funcția de autentificare a pachetului HMAC, pentru a adăuga un nivel suplimentar de securitate conexiunii. Poate folosi și accelerarea hardware pentru îmbunătățirea performanțelor criptării.

OpenVPN are mai multe căi pentru autentificarea punctelor. Oferă autentificare cu chei secrete cunoscute apriori, bazată pe certificate și nume utilizator/parolă. Prima variantă este cea mai ușoară, cea bazată pe certificate fiind cea mai robustă și bogată în funcții. Nume utilizator/parolă este o funcție nouă (versiune 2.0) care poate fi folosit cu sau fără certificare de client (serverul are nevoie de certificat).

OpenVPN poate rula peste UDP (preferat și prestabilit) sau TCP. Multiplexează toate comunicațiile printr-un singur port TCP/UDP. Are capacitatea de a lucra prin majoritatea serverelor proxy (inclusiv HTTP) și este adecvat lucrului prin NAT și ieșirea prin firewall. Configurația de server are abilitatea de a “pasa” clientului anumite opțiuni de configurare de rețea. Acestea includ adrese IP, comenzi de rutare și câteva opțiuni de conectare. OpenVPN oferă prin driverul Universal TUN/TAP două tipuri de interfețe pentru rețelistică. Poate crea un tunel IP bazat pe nivelul 3 (TUN) sau un Ethernet TAP bazat pe nivelul 2 care poate purta orice tip de trafic Ethernet. Opțional, OpenVPN poate folosi biblioteca de compresie LZO pentru a comprima fluxul de trafic. Portul 1194 este portul oficial IANA pentru OpenVPN. Noile versiuni a programului au acest port prestabilit. O funcție în versiunea 2.0 permite unui proces să administreze mai multe tuneluri simultan, față de restricția originală a versiunii 1.x de “un tunel per proces”.

Folosirea protocoalelor de rețea comune (TCP și UDP) de către OpenVPN, o transformă într-o alternativă dorită IPsec-ului, în situațiile în care un ISP poate bloca anumite protocoale VPN pentru a forța utilizatorii să se aboneze la servicii cu prețuri mai ridicate, de “gradul business”.

OpenVPN oferă mai multe funcții interne de securitate. Are abilitatea de a renunța la privilegii de bază și de a preveni copierea datelor sensibile pe disc.

OpenVPN oferă support pentru smart card-uri prin tokenul criptografic bazat pe PKCS#11.

Rutare vs Punte de rețea

OpenVPN suportă 2 moduri diferite de interconectare a rețelelor: rutare și poartă

Rutare se referă la interconectarea de subrețele separate și independente. La recepția unui pachet un router din rețea examinează adresa ip destinație pentru a determina care din rețele interconectate ar trebui să primească pachetul, după care pachetul este livrat spre rețeaua destinație.

Poarta, în comparație cu rutare este mult mai simplu. Un bridge este o conexiune electrică între rețele separate fizic, care au aceeași clasă de IP-uri Exemple de echipamente care joacă rolul de bridge sunt hub-urile și switch-urile. Într-un hub pachetele care sosesc pe un port sunt comutate și trimise pe toate celelalte porturile. Un switch este mai inteligent, deoarece el poate să învețe adresele MAC atașate la porturile sale.

Alegerea modului de interconectare pentru OpenVpn

Cu toate că modul rutare este cel mai cunoscut și cel mai simplu de configurat, suferă de anumite limitări operaționale. Conexiunile bazate pe poartă sunt mai greu de configurat și nu sunt disponibile pe toate sistemele de operare, prin urmare nu sunt tipuri de conexiuni default. Însă când modul poartă este setat corect poate face orice,nu are limitări.

Modul Rutare în OpenVpn

Când placa de rețea este configurată pentru “Rutare”, acesteia i se atribuie o adresă IP în afară clasei de IP locale și se crează o subrețea virtuală separată pentru conectarea la calculatoarele legate prin VPN la distanță. Aceste calculatoare aflate la distanță primesc adrese Ip din aceeași clasă cu subreteaua nou creată,

Această subrețea virtuală trebuie să primească clasa diferită de IP-uri, față de cele din rețeaua locală, astfel încât computerele care rulează OpenVpn să știe când să direcționeze pachetele în rețeaua locală său spre subreteaua virtuală, prin gateway.

Fig 5.3a OpenVpn Rutare

OpenVPN în modul rutare crează o rețea privată, în care calculatoarele care fac parte din ea comunică prin tuneluri VPN. Aceasta este o soluție excelentă dacă utilizatorii la distanță doresc să comunice doar cu calculatoarele pe care rulează OpenVpn. , problema apare dacă doresc să acceseze computere din rețeaua locală pe care nu rulează OpenVpn.

Problema apare deoarece nici un computer din rețeaua locală nu știe despre această subrețea virtuală care a fost creată de OpenVpn. Practic OpenVpn este “gateway” pentru rețeaua virtuală, dar toate calculatoarele din rețeaua locală au definit deja un gateway pentru pachete cu destinație în altă rețea. Astfel dacă un utilizator trimite un pachet la un utilizator OpenVpn la distanță, mașina la distanță va observa că pachetul vine dintr-o rețea externă și va direcționa pachetele către gateway LAN decât la mașină OpenVpn [http://www.grc.com/vpn/routing.htm].

Tehnologia rețelelor a evoluat , astfel încât rețeaua locală să fie informată de subrețeaua virtuală creată de OpenVpn, astfele încât pachetele să se direcționeze la mașina OpenVpn și nu la gateway-ul rețelei locale. Acest proces este cunoscut ca “rute statice” care se vor implementa pe fiecare mașina locală, în mod manual. Însă majoritatea dispozitivelor nu au această tehincă de rutare avansată.

Configurațiile OpenVpn sunt folositoare dacă mașină care rulează server-ul OpenVpn este aceeași cu gateway-ul rețelei locale. Atunci toate calculatoarele din LAN vor trimit pachetele la gateway, iar Open Vpn le va trimite la utilizatorii la distanță

5.4 Modul Poartă în OpenVPN

O soluție superioară la “routing” este să setezi placă de rețea în configurație “bridging”. Cum se observă în figura de mai jos această configurație are ca efect plasarea utilizatorilor la distanță direct în rețeaua fizică locală.

Fig 5.4a OpenVpn Poartă

Utilizatorii la distanță primesc o adresă de IP care este în aceeași clasă cu adresele din rețeaua locală. Computerul care rulează serverul OpenVpn răspunde nu doar la adresa sa de IP dar și la celelalte calculatoare conectate la utilizatorii VPN. Utilizatorii la distanță practic pot să acceseze orice resursă din LAN-ul respectiv[http://www.grc.com/vpn/routing.htm].

Un alt beneficiu important este ca în Ethernet bridging se face broadcasting ,lăsând să treacă tot traficul, în schimb în routing se direcționează doar traficul adresat direct, nu se face broadcast. Routerul împarte o rețea în domenii de broadcast. În Windows "Network Neighborhood" depinde de broadcast pentru a permite calculatoarelor locale să se găsească în rețeaua locală. Acest lucru este important și funcționează perfect cu bridging, însă nu e disponibil pentru conexiuni routing. Problema în bridging este că nu e suportat de toate sistemele de operare. Windows XP este primul sistem de operare care suportă bridging .

)

Certificate de autentificare

Primul pas în stabilirea modalității de autentificare intru-un VPN este stabilirea infrastructurii de chei publice și private PKI(Public Key Infrastructure).

PKI conține:

Perechea (cheie publică, cheie privată) pentru server

Perechea (cheie publică, cheie privată) pentru fiecare client

Un certificat master (CA – Certificate Authority) folosit pentru a semna fiecare certificat al clientiilor

Se folosește certificare bidirecțională înainte stabilirii conexiunii și anume Clientul/Serverul verifică dacă certificatul celeilalte entități a fost semnat de certificatul master (CA).

Folosire certificatelor este o soluție simplă și eficientă din următoarele motive:

Serverul menține doar propriul certificat

Sunt acceptate conexiuni care furnizează certificate semnate cu un certificat master

Verificarea semnăturii se face numai cu cheia publică a CA deci cheia privată poate să fie păstrată pe alt host

Serverul poate restricționa accesul pe baza unor câmpuri din certificat.

Generarea certificatului master (CA) se face prin folosirea unor utilitare distribuite împreună cu OpenVPN – easy_rsa directory [Packt. Publishing. OpenVPN. Building.And. Integrating. Virtual. Private. Networks pagina 109]

Se introduc datele de identificare (fișierul vars): locația (țară, localitate), organizația și departamentul, adresă de mail și se apelează utilitarului build_ca.

Pentru generarea certificatului pentru server se folosește utilitarul: build-key-server

build-key-server <name_server>

Pentru generarea certificatului pentru client folosește utilitarul: build-key / build-key-pass

build-key / build-key-pass <name_client>

Este necesară introducerea unui câmp “Common Name” care este folosit pentru eventualele restricționări și trebuie să identifice în mod unic utilizatorul certificatului

După generarea certificatelor se generează parametrii Diffie-Hellman pentru schimbarea cheilor între cele două părți.

6. Aplicatie

Tunel între două calculatoare cu Win XP (OpenVPN client-server)

Dacă dorim să realizăm un tunel între două calculatoare pe care este instalat Microsot Windows XP situate în locații diferite și ambele au acces la internet putem să folosim OpenVPN ( http://www.openvpn.net ).

Unul dintre sisteme va fi configurat cu rol de server, celălalt cu rol de client. Primul lucru pe care trebuie să îl facem este să descărcăm OpenVPN-Windows Installer de la adresa http://openvpn.net/release/openvpn-2.0.9-install.exe și să îl instalăm pe cele două sisteme în directorul C:\Program Files\OpenVPN. Pentru server am folosit un calculator cu ip public 81.181.101.55, iar tunelul vpn are drept capăt de conexiune pe server ip-ul 10.8.0.1. Clientul este configurat pe un laptop și are drept capăt de conexiune pentru tunel vpn cu ip-ul 10.8.0.2.

Configurare server

Pe sistemul server mergem în Start -> Run , scriem CMD și dăm enter. În fereastra care se deschide tastăm:

cd C:\Program Files\OpenVPN\easy-rsa

copy vars.bat.sample vars.bat

Edităm apoi vars.bat cu comanda edit vars.bat și modificăm parametrii după nevoile noastre.
Să presupunem că avem în vars.bat următoarele:

@echo off
set HOME=%ProgramFiles%\OpenVPN\easy-rsa
set KEY_CONFIG=openssl.cnf
set KEY_DIR=keys
set KEY_SIZE=1024
set KEY_COUNTRY=RO
set KEY_PROVINCE=RO
set KEY_CITY=Timișoara

set KEY_ORG=Jurca Mihaela
set KEY_EMAIL=[anonimizat]

Copiem fișierul openssl.cnf.sample în openssl.cnf cu comanda:

copy openssl.cnf.sample openssl.cnf

Rulăm următoarele comenzi:
vars
clean-all
build-ca

Urmează generarea certificatului și a unei chei private pentru server:
build-key-server server

Generăm cartificatele și cheia pentru client:
build-key client

Este important ca Common Name pentru client să fie diferit de Common Name pentru server.

Generăm parametrii Diffie Hellman :
build-dh

În directorul C:\Program Files\OpenVPN\config facem un fișier server.ovpn în care scriem:

mode server
port 1194
proto udp
dev tun
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\server.crt"
key "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\server.key"
dh "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\dh1024.pem"
tls-server
ifconfig 10.8.0.1 10.8.0.2
ifconfig-pool 10.8.0.3 10.8.0.5 # IP range clients
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
mute 20

Putem să pornim OpenVPN cu această configurație dacă dăm click dreaptă din explorer pe fișierul server.ovpn și alegem opțiunea Start OpenVPN on this config file sau îl putem porni ca și serviciu din Start -> Control Panel -> Administrativ Tools -> Serices -> OpenVPN Service unde dăm start sau putem seta pe Automatic la Startup Type pentru a fi pornit o dată cu sistemul de operare.

Configurare client

Pe sistemul client trebuie să mergem în directorul C:\Program Files\OpenVPN\easy-rsa și să creăm directorul keys în care copiem de pe server fișierele:

ca.crt
client.crt
client.key

În directorul C:\Program Files\OpenVPN\config facem un fișier client.ovpn în care scriem:
client
dev tun
proto udp
remote 81.181.101.55 1194 # ip server
resolv-retry infinite
nobind
persist-key
persist-tun

ca "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\client.crt"
key "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\client.key"
comp-lzo .
verb 3

Putem să pornim OpenVPN cu această configurație dacă dăm click dreaptă din explorer pe fișierul client.ovpn și alegem opțiunea Start OpenVPN on this config file sau îl putem porni ca și serviciu din Start -> Control Panel -> Administrativ Tools -> Serices -> OpenVPN Service unde dăm start sau putem seta pe Automatic la Startup Type pentru a fi pornit o dată cu sistemul de operare

Testare conexiune

După ce am pornit atât serverul cât și clientul ( fără a avea un mesaj de eroare ) putem să verificăm funcționalitatea tunelului creat. Astfel, pe server mergem în Start – Run și tastăm CMD. În fereastră deschisă introducem comanda:

Ipconfig

Vom obține mai multe informații printre care vom regăsi și cele din figura 6a

Figura 6a Ipconfig pe server

Pe sistemul configurat ca și client la comanda ipconfig obținem informațiile din figura 6b

Figura 6b Ipconfig client

Conexiunea între cele două sisteme o putem verifica cu utilitarul ping.

De pe sistemul configurat ca și server, care are ip-ul 10.8.0.1 vom da ping in 10.8.0.2 (client)( figura 6c)

Figura 6c la client

De pe sistemul configurat ca și client, care are ip-ul 10.8.0.2 vom da ping in 10.8.0.1 (server)(figura 6d)

Figura 6d Ping la server

Pentru testarea conexiunii am partajat pe server câteva documente pe care o să le accesăm din client, cu ajutorul programului total commander(figura 6e si figura 6f).

Figura 6e Browse la server

Figura 6f Browse la server

7. Concluzii

VPN poate oferi câteva avantaje mari față de accesul de la distanță tradițional și liniile dedicate. Cu dinamismul organizațiilor din zilele noastre, utilizatorii de la distanță și birourile se pot schimba foarte rapid informații. În loc să investească în porturi RAS (Remote Access Services) și linii dedicate (de ex. ISDN sau circuite frame relay) scumpe, o companie poate să-și crească lățimea de bandă a conexiunii corporative la Internet și să suporte în mod dinamic servere și clienți VPN în funcție de nevoie. Deși nu este soluția ideală în fiecare caz, VPN permite firmelor să stabilească mai rapid și mai fluid un acces de la distanță când apare o nouă nevoie. Permite, de asemenea, folosirea mai bună a resurselor, din moment ce utilizatori au conexiuni diferite se pot conecta la momente diferite, împărțind mai degrabă aceași infrastructură, în loc să necesite infrastructuri separate. Și toate astea conduc la economisiri serioase de bani.

Cea mai importantă parte a unei soluții VPN este securitatea. Faptul că prin natura lor, prin VPN-uri se transmit date private prin rețele publice, ridică dubii cu privire la securitatea acestor date si impactul pierderii datelor. Atributele sunt: autentificare, criptare – confidențialitate, integritatea datelor), non-repudiere – acest serviciu ar oferi dovezi de nefalsificare, justifică faptul că o anumită acțiune a avut loc. Non repudierea originii înseamnă că datele au fost trimise si non repudierea primirii dovedeste că datele au fost recepționate.

Beneficiile serviciilor oferite prin VPN sunt:

-Convergența serviciilor voce, video, date se realizează cu costuri mici;

-Accesarea securizată de la distanță a resurselor companiei;

-Costuri predictibile și ușor de bugetat, independente de trafic;

-Posibilitatea de transfer any-to-any pentru aplicații de date-voce-video;

-Suport fiabil pentru integrarea LAN-urilor;

-Securitatea transmisiei datelor;

-Rată de transfer constantă, garantată tehnologic;

Pe lângă aceste beneficii, mai pot adăuga câteva din experiență proprie și anume de obicei furnizorii de internet filtrează porturile dedicate pentru file-sharing pe Windows ( 135, 139, 445) pentru a preveni propagarea de viermi. Deci nu se vor putea accesa fișierele de pe un anumit server din afara rețelei providerului, sau dintr-un alt oraș. Ca soluție se realizează vpn și astfel se asigură conexiunea directă cu serverul și controlul traficului permis.

Limitarile unui VPN

În ciuda popularității, VPN-urile nu sunt perfecte și există limitări, cum se întâmplă în cazul fiecărei tehnologii. Organizațiile trebuie să ia în considerare următoarele, la desfășurarea și folosirea unei rețele virtuale private, în operațuinile lor:

1. VPN necesită înțelegerea detaliată a problemelor de securitate de rețea și instalarea/configurarea atentă, pentru a asigura protecție suficientă într-o rețea publică cum este Internetul.

2. Fiabilitatea și performanța unui VPN bazat pe Internet nu este sub controlul direct al unei organizații. În schimb, soluția se bizuie pe un ISP și pe calitatea serviciilor lui.

3. De-a lungul timpului, produsele și soluțiile VPN ale diferiților furnizori nu au fost întotdeauna compatibile, datorită problemelor legate de standardele tehnologiilor VPN. Încercarea de a amesteca și potrivi echipamentele, ar putea cauza probleme tehnice, iar utilizarea echipamentelor unui singur furnizor ar putea să nu ofere o economisire mare de bani.

Specificațiile pentru rețeaua VPN au la bază principiul flexibilității maxime si realizarea cât mai rapidă. În acest scop se au în vedere implementarea a două soluții:

• soluție bazată pe circuite virtuale PPTP, ușor de pus în funcțiune și de utilizat, dar limitată la SO Windows si cu securitate mai redusă, dar acceptabilă,

• evoluția, în măsura posibilităților, către o soluție mult mai performantă bazată pe o „rețea virtuală OpenVPN”.

OpenVPN este o rețea privată virtuală (VPN) conformă protocolului de criptografie Secure Sockets Layer (SSL) care asigură comunicații sigure pe Internet, permite metode de autentificare flexibile ale clienților bazate pe certificate și permite politici de control a accesului utilizatorilor folosind reguli de firewall aplicate interfeței VPN virtuale. OpenVPN 2.0 extinde posibilitățile OpenVPN 1.0 oferind un mod scalabil client/server care permite mai multor clienți să se conecteze la un singur proces server OpenVPN printr-un singur port TCP sau UDP.

Consider că folosirea programului OpenVpn este foarte utilă și avantajoasă pentru construirea unei rețele virtuale private deoarece în primul rând este free și open source, nu e necesară folosirea unui dispozitiv Cisco care realizează aceeași funcție sau cumpărarea unui soft foarte scump. În plus se bazează pe protocolul de criptografie Secure Sockets Layer (SSL) care asigură securitate ridicată. Din punctul meu de vedere open source are un singur dezavantaj, într-un mediu bussiness trebuie să existe un administrator competent care să aibă cunoștiințe de configurare solide. În schimb la vpn-ul nativ din windows(server) sau alte dispozitive de bussines ( cisco) există suport tehnic, dar în schimb costă mult. Consider că o companie large bussiness nu va merge pe open source pentru că vrea suport asigurat.

Softul Hamachi, pe care l-am studiat în proiectul meu de diplomă este după părerea mea, un program util doar pentru începătorii care nu știu să își configureze și să își administreze singuri un VPN. Interfață lui Hamachi este foarte simplă, totodată ușor de folosit. Primă oară când se rulează programul se prezintă un scurt tutorial, dar care este cam inutil pentru că există doar trei butoane: butonul Power, cel care activează interfață Hamachi, butonul Network, folosit pentru crearea sau conectarea la rețele și butonul pentru setări, acestea din urmă fiind doar câteva. O rețea virtuală creată cu "Hamachi" este de dorit pentru fanii unor jocuri online, care sunt despărțiți de distanțe mari. Acest program îi ajută să creeze rețele LAN virtuale prin internet. Aceștia se pot bucura de multe facilități incluse în această nouă versiune oferită complet gratuit de autorul cu același nume. Acest soft prezintă și unele dezavantaje cum ar fi limitarea numărului de utilizatori într-o rețea la 16 si de asemena limitări legate de viteza server-ului.

VPN este o tehnologie emergentă care a străbătut un drum lung. De la începutul nesigur al rețelelor de telefonie publică, la un ajutor puternic de afaceri, care folosește Internetul ca poartă de ieșire. Tehnologia VPN încă se dezvoltă și asta este un mare avantaj pentru afaceri care au nevoie de tehnologie care să evolueze odată cu ele. Cu VPN, firmele pot să ofere angajaților beneficii alternative: angajații pot lucra de acasă, pot avea grijă de copii în timp ce sunt în continuare productivi și au acces oricând la informații legate de afacere. VPN va ajută ca posibilitatea extinderii serviciilor unei afaceri la distanțe lungi și chiar global, să devină o realitate.

Bibliografie

Charlie Scott, Paul Wolfe, Mike Erwin, Virtual Private Networks, Second Edition, January 1999

Eric Greenberg, Network Application Frameworks, Virtual Private Networks (VPNs), 1999

NETGEAR – VPN Concepts, Tips, and Techniques – TechNote, 2003

Andrew S. Tanenbaum ,Tanenbaum – Rețele de Calculatoare, 4th Ed. , Romanian, 2004

Markus Feilner, OpenVpn, April 2006

Juniper Networks, Inc. – VPN Decision Guide – White Paper, 2007

VPN Tutorial http://compnetworking.about.com/od/vpn/a/vpn_tutorial.htm

Hamachi http://en.wikipedia.org/wiki/Hamachi

Windows XP VPN Server Setup http://www.aeonity.com/frost/howto-windows-xp-vpn-server-setup

OpenVpn download http://openvpn.se/download.html

OpenVpn configurare http://www.informit.com/articles/article.aspx?p=605499&seqNum=2

OpenVpn configurare http://techgurulive.com/2008/08/19/how-to-install-openvpn/

"Routing" –versus– "Bridging" http://www.grc.com/vpn/routing.htm

Rețele virtuale private http://www.chip.ro/revista/iulie_2000/47/rețele_virtuale_private_-_ii/8247

VPN http://www.networkworld.ro/?page=node&id=15227

VPN pe Wikipedia http://en.wikipedia.org/wiki/Virtual_private_network

VPN la Universitatea Emory, Atlanta, GA – http://www.emory.edu/BUSINESS/et/P98/vpn/

Implement a free VPN with OpenVPN http://articles.techrepublic.com.com/5100-22_11 5687400.html

Anexa1-Abrevieri

Bibliografie

Charlie Scott, Paul Wolfe, Mike Erwin, Virtual Private Networks, Second Edition, January 1999

Eric Greenberg, Network Application Frameworks, Virtual Private Networks (VPNs), 1999

NETGEAR – VPN Concepts, Tips, and Techniques – TechNote, 2003

Andrew S. Tanenbaum ,Tanenbaum – Rețele de Calculatoare, 4th Ed. , Romanian, 2004

Markus Feilner, OpenVpn, April 2006

Juniper Networks, Inc. – VPN Decision Guide – White Paper, 2007

VPN Tutorial http://compnetworking.about.com/od/vpn/a/vpn_tutorial.htm

Hamachi http://en.wikipedia.org/wiki/Hamachi

Windows XP VPN Server Setup http://www.aeonity.com/frost/howto-windows-xp-vpn-server-setup

OpenVpn download http://openvpn.se/download.html

OpenVpn configurare http://www.informit.com/articles/article.aspx?p=605499&seqNum=2

OpenVpn configurare http://techgurulive.com/2008/08/19/how-to-install-openvpn/

"Routing" –versus– "Bridging" http://www.grc.com/vpn/routing.htm

Rețele virtuale private http://www.chip.ro/revista/iulie_2000/47/rețele_virtuale_private_-_ii/8247

VPN http://www.networkworld.ro/?page=node&id=15227

VPN pe Wikipedia http://en.wikipedia.org/wiki/Virtual_private_network

VPN la Universitatea Emory, Atlanta, GA – http://www.emory.edu/BUSINESS/et/P98/vpn/

Implement a free VPN with OpenVPN http://articles.techrepublic.com.com/5100-22_11 5687400.html

Anexa1-Abrevieri

Similar Posts