Retele Virtuale Private. Implementarea Unei Solutii Vpn Pentru O Firma de Transport
Memoriu justificativ
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.
Tehnologia rețelelor virtuale (Virtual Private Network) a apărut ca o soluție prin care se asigura confidentialitatea datelor vehiculate printr-un mediu public precum Internet-ul.
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ă.
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.
Tema acestei lucrări o constituie proiectarea unei aplicații VPN care să deservească o firmă de transpot cu un sediu central în București și trei filiale în țară(Pitești, Iași, Timișoara).Zilnic, filiale din țara trebuie să trimită date către sediul central.Pentru a putea face acest lucru, există două posibilități: fie se creează un Intranet cu toate locațiile pe baza unei conexiuni permanente (linii inchiriate) între sediul central și restul locațiilor, fie se optează pentru o soluție de tip VPN. Prima variantă implică costuri foarte mari(menținerea unei conexiuni permanente este foarte scumpă).Astfel se optează pentru o soluție VPN.
Soluția optimă pentru firma noastra de transport o reprezintă o aplicație VPN de tipul “Acces de la distanță-Remote Access”.
Va exista un server VPN la sediul central, iar clienții se vor conecta prin linie telefonică(dial-up) de câte ori este nevoie la un furnizor local de servicii Internet și astfel vor accesa rețeaua publică Internet. Pe baza acestei conexiuni, clientul VPN va iniția un “tunel” între el și serverul VPN, realizându-se astfel un transfer de date securizat.
CAPITOLUL 1-ELEMENTE FUNDAMENTALE DESPRE INTERCONECTAREA CALCULATOARELOR
1.1 Modelul de referință OSI
Modelul de referința OSI se bazează pe o propunere dezvoltată de către Organizația Internațională de Standardizare (International 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 – adică de sisteme deschise comunicării cu alte sisteme.
Modelul OSI cuprinde șapte niveluri. Principiile aplicate pentru a se ajunge la cele șapte niveluri sunt următoarele:
Un nivel trebuie creat atunci când este nevoie de un nivel de abstractizare diferit.
Fiecare nivel trebuie să îndeplinească un rol bine definit.
Funcția fiecărui nivel trebuie aleasă acordându-se atenție definirii, de protocoale standardizate pe plan internațional.
Delimitarea nivelurilor trebuie făcută astfel încât să se minimizeze fluxul de informații prin interfețe.
Numărul de niveluri trebuie să fie suficient de mare pentru a nu fi nevoie să se introducă în același nivel funcții diferite și suficient de mic pentru ca arhitectura să rămână funcțională.
Fig. 1.1 Modelul OSI
Modelul OSI nu reprezintă în șine o arhitectură de rețea, pentru că nu specifică serviciile și protocoalele utilizate la fiecare nivel. ISO a produs de asemenea, standarde pentru fiecare nivel, însă aceste standarde nu fac parte din modelul de referință propriu-zis. Fiecare din standardele respective a fost publicat ca un standard internațional separat.
Trei concepte sunt esențiale pentru modelul OSI:
Servicii
Interfețe
Protocoale
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 șituat deasupra sa. Definiția serviciului spune ce face nivelul, nu cum îl folosesc entitățile de deasupra sa 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). Nivelul poate de asemenea să schimbe protocoalele după cum vrea, fără ca acest lucru să afecteze programele din nivelurile superioare.
Modelul de referință OSI a fost conceput înainte să fi inventate protocoalele. Ordinea respectivă semnifică faptul că modelul nu a fost orientat către un set specific de protocoale, fiind prin urmare destul de general. Reversul este că proiectanții nu au avut multă experiență în ceea ce privește acest subiect și nu au avut o idee coerentă despre împărțirea funcțiilor pe niveluri.
De exemplu, nivelul legătură de date se ocupa inițial numai cu rețelele punct-la-punct. Atunci când au apărut rețelele cu difuzare a trebuit să fie introdus în model un subnivel nou. Când au început să se construiască rețele reale utilizând modelul OSI și protocoalele existente, s-a descoperit că acestea nu se potriveau cu specificațiile serviciului cerut astfel că a trebuit introdusă în model convergența subnivelurilor, ca să existe un loc pentru a glosa pe marginea diferențelor. Comitetul se aștepta inițial ca fiecare țară să aibă câte o rețea care să fie în custodia guvernului și să folosească protocoalele OSI, așa că nu s-a dat nici o atenție interconectării.
1.2 Prezentarea nivelelor
Nivelul fizic
Nivelul fizic se ocupă de transmiterea biților printr-un canal de comunicație. Proiectarea trebuie să garanteze că atunci când unul din capete transmite un bit 1, acesta este receptat în cealaltă parte ca un bit l, nu ca un bit 0. Problemele tipice se referă la câți volți trebuie utilizați pentru a reprezenta un 1 și câți pentru un 0, dacă transmisia poate avea loc șimultan în ambele sensuri, cum este stabilită conexiunea inițială și cum este întreruptă când au terminat de comunicat ambele părți, câți pini are conectorul de rețea și la ce folosește fiecare pin. Aceste aspecte de proiectare au o legătură strânsă cu interfețele mecanice, electrice, funcționale și procedurale, ca și cu mediul de transmisie șituat sub nivelul fizic.
Nivelul legătură de date
Sarcina principală a nivelului legătură de date este de a transforma un mijloc oarecare de transmisie într-o linie care să fie disponibilă nivelului rețea fără erori de transmisie nedetectate. Nivelul legătură de date realizează această sarcină obligând emițătorul să descompună datele de intrare în cadre de date (în mod tipic câteva sute sau câteva mii de octeți), să transmită cadrele secvențial și să prelucreze cadrele de confirmare trimise înapoi de receptor.
Deoarece nivelul fizic nu face decât să accepte și să transmită un flux de biți, fără să se preocupe de semnificația; sau de structura lor, responsabilitatea pentru marcarea și recunoașterea delimitatorilor între cadre îi revine nivelului legătură de date. Aceasta se poate realiza prin atașarea unor șabloane speciale de biți la începutul și la sfârșitul cadrului. În cazul în care șabloanele speciale de biți pot apărea accidental în datele propriu-zise, trebuie luate măsuri speciale de precauție pentru ca aceste șabloane să nu fie incorect interpretate ca delimitatori de cadre.
Un zgomot apărut pe linie poate distruge un cadru în întregime. În acest caz, programele nivelului legătură de date de pe mașina sursă pot să retransmită cadrul. Transmiterile multiple ale aceluiași cadru introduc posibilitatea cadrelor duplicate. Un cadru duplicat poate apărea la transmisie în șituația în care s-au pierdut cadrele de confirmare trimise de către receptor înapoi către emițător. Rezolvarea problemelor datorate cadrelor deteriorate, pierdute sau duplicate cade în sarcina nivelului legătură de date. Acesta poate oferi nivelului rețea câteva clase de servicii diferite, fiecare de o calitate și un preț diferit.
O altă problemă care apare la nivelul legătură de date (și, de asemenea la majoritatea nivelurilor superioare) este evitarea inundării unui receptor lent cu date provenite de la un emițător rapid. În acest scop sunt necesare mecanisme de reglare a traficului care să permită emițătorului să afle cât spațiu tampon deține receptorul la momentul curent. Controlul traficului și tratarea erorilor sunt deseori integrate.
Dacă linia poate fi folosită pentru a transmite date în ambele sensuri, atunci apare o nouă complicație care trebuie rezolvată de către programele de la nivelul legătură de date: Problema se referă la. concurența care există pentru utilizarea liniei între cadrele de confirmate pentru traficul de la A la B și cadrele de date din traficul de la B la A. Pentru rezolvarea ei a fost concepută o soluție inteligentă – atașarea.
Rețelele cu difuzare determină în nivelul legătură de date o problemă. suplimentară: cum să fie controlat accesul la canalul partajat. De această problemă se ocupă un subnivel special al nivelului legătură de date, și anume subnivelul de acces la mediu.
Nivelul rețea
Nivelul rețea se ocupă de controlul funcționării subrețelei. O problemă cheie în proiectare este determinarea modului în care pachetele sunt dirijate de la sursă la destinație. Dirijarea se poate baza pe tabele statistice care sunt "cablate" intern în rețea și care sunt schimbate rar.
Traseele pot fi de asemenea stabilite la începutul fiecărei conversații, de exemplu la începutul unei seșiuni la terminal.
Dirijarea poate fi foarte dinamică, traseele determinându-se pentru fiecare pachet în concordanță. cu traficul curent din rețea.
Dacă în subrețea există prea multe pachete șimultan, ele vor intra unul pe traseul celuilalt și astfel se vor produce gâtuiri. Controlul unor astfel de congestii îi revine tot nivelului rețea.
În nivelul rețea există de obicei înglobată o funcție de taxare a traficului pentru ca operatorii subrețelei să-și acopere costurile.
Pentru a calcula suma datorată de clienții rețelei, programul trebuie cel puțin să numere câte pachete, sau câte caractere, sau câți biți a trimis fiecare client. Calculul se complică atunci când un pachet traversează frontiera dintre două zone cu sisteme de prețuri diferite.
Multe probleme pot apărea când un pachet trebuie să călătorească dîntr-o rețea în alta ca să ajungă la destinație. Modul de adresare folosit de a doua rețea poate să difere de cel din prima. A doua rețea poate chiar să nu accepte deloc pachetul pentru că este prea mare. De asemenea, protocoalele pot fi diferite în vederea interconectării rețelelor eterogene este sarcina nivelului de rețea.
In rețelele cu difuzare problema dirijării este șimplă, astfel că nivelul rețea este deseori subțire sau chiar nu există de loc.
Nivelul transport
Rolul principal al nivelului transport este să accepte date de la nivelul sesiune, să le descompună, dacă este cazul, în unități mai mici, să transfere aceste unități nivelului de rețea și să se asigure că toate fragmentele sosesc corect la celălalt capăt. În plus, toate acestea trebuie făcute eficient și într-un mod care izolează nivelurile de mai sus de inevitabilele modificări în tehnologia echipamentelor.
În condiții normale, nivelul transport creează o conexiune de rețea distinctă pentru fiecare conexiune de transport cerută de nivelul se accidental în datele propriu-zise, trebuie luate măsuri speciale de precauție pentru ca aceste șabloane să nu fie incorect interpretate ca delimitatori de cadre.
Un zgomot apărut pe linie poate distruge un cadru în întregime. În acest caz, programele nivelului legătură de date de pe mașina sursă pot să retransmită cadrul. Transmiterile multiple ale aceluiași cadru introduc posibilitatea cadrelor duplicate. Un cadru duplicat poate apărea la transmisie în șituația în care s-au pierdut cadrele de confirmare trimise de către receptor înapoi către emițător. Rezolvarea problemelor datorate cadrelor deteriorate, pierdute sau duplicate cade în sarcina nivelului legătură de date. Acesta poate oferi nivelului rețea câteva clase de servicii diferite, fiecare de o calitate și un preț diferit.
O altă problemă care apare la nivelul legătură de date (și, de asemenea la majoritatea nivelurilor superioare) este evitarea inundării unui receptor lent cu date provenite de la un emițător rapid. În acest scop sunt necesare mecanisme de reglare a traficului care să permită emițătorului să afle cât spațiu tampon deține receptorul la momentul curent. Controlul traficului și tratarea erorilor sunt deseori integrate.
Dacă linia poate fi folosită pentru a transmite date în ambele sensuri, atunci apare o nouă complicație care trebuie rezolvată de către programele de la nivelul legătură de date: Problema se referă la. concurența care există pentru utilizarea liniei între cadrele de confirmate pentru traficul de la A la B și cadrele de date din traficul de la B la A. Pentru rezolvarea ei a fost concepută o soluție inteligentă – atașarea.
Rețelele cu difuzare determină în nivelul legătură de date o problemă. suplimentară: cum să fie controlat accesul la canalul partajat. De această problemă se ocupă un subnivel special al nivelului legătură de date, și anume subnivelul de acces la mediu.
Nivelul rețea
Nivelul rețea se ocupă de controlul funcționării subrețelei. O problemă cheie în proiectare este determinarea modului în care pachetele sunt dirijate de la sursă la destinație. Dirijarea se poate baza pe tabele statistice care sunt "cablate" intern în rețea și care sunt schimbate rar.
Traseele pot fi de asemenea stabilite la începutul fiecărei conversații, de exemplu la începutul unei seșiuni la terminal.
Dirijarea poate fi foarte dinamică, traseele determinându-se pentru fiecare pachet în concordanță. cu traficul curent din rețea.
Dacă în subrețea există prea multe pachete șimultan, ele vor intra unul pe traseul celuilalt și astfel se vor produce gâtuiri. Controlul unor astfel de congestii îi revine tot nivelului rețea.
În nivelul rețea există de obicei înglobată o funcție de taxare a traficului pentru ca operatorii subrețelei să-și acopere costurile.
Pentru a calcula suma datorată de clienții rețelei, programul trebuie cel puțin să numere câte pachete, sau câte caractere, sau câți biți a trimis fiecare client. Calculul se complică atunci când un pachet traversează frontiera dintre două zone cu sisteme de prețuri diferite.
Multe probleme pot apărea când un pachet trebuie să călătorească dîntr-o rețea în alta ca să ajungă la destinație. Modul de adresare folosit de a doua rețea poate să difere de cel din prima. A doua rețea poate chiar să nu accepte deloc pachetul pentru că este prea mare. De asemenea, protocoalele pot fi diferite în vederea interconectării rețelelor eterogene este sarcina nivelului de rețea.
In rețelele cu difuzare problema dirijării este șimplă, astfel că nivelul rețea este deseori subțire sau chiar nu există de loc.
Nivelul transport
Rolul principal al nivelului transport este să accepte date de la nivelul sesiune, să le descompună, dacă este cazul, în unități mai mici, să transfere aceste unități nivelului de rețea și să se asigure că toate fragmentele sosesc corect la celălalt capăt. În plus, toate acestea trebuie făcute eficient și într-un mod care izolează nivelurile de mai sus de inevitabilele modificări în tehnologia echipamentelor.
În condiții normale, nivelul transport creează o conexiune de rețea distinctă pentru fiecare conexiune de transport cerută de nivelul sesiune. În cazul în care conexiunea de transport neceșită o productivitate mare, nivelul transport poate totuși să creeze conexiuni de rețea multiple și să dividă datele prin conexiunile de rețea astfel încât productivitatea să crească. Pe de altă parte, dacă crearea și întreținerea unei conexiuni de rețea este costișitoare, nivelul transport ar putea reduce costul prin multiplexarea câtorva conexiuni de transport pe aceeași conexiune de rețea. În oricare dintre cazuri, nivelului transport i se cere să facă multiplexarea transparentă pentru nivelul sesiune.
Nivelul transport determină, de asemenea, ce tip de serviciu să furnizeze nivelul sesiune și, în final, utilizatorii rețelei. Cel mai obișnuit tip de conexiune transport este un canal punct-la-punct fără erori care furnizează mesajele sau octeții în ordinea în care au fost trimiși. Alte tipuri pOSIbile de servicii de transport sunt transportul mesajelor individuale (fără nici o garanție în privința ordinii de livrare) și difuzarea mesajelor către destinații multiple. Tipul serviciului se determină când se stabilește conexiunea.
Nivelul transport este un adevărat capăt-la-capăt, de la sursă destinație. Cu alte cuvinte, un program de pe mașina sursă poartă o conversație cu un program șimilar de pe mașina destinație, folosind în acest scop antenele mesajelor și mesaje de control. În nivelurile inferioare protocoalele au loc între fiecare mașină și vecinii săi imediați, și nu direct între mașinile sursă și destinație, care pot fi separate de numeroase rutere.
Numeroasele gazde sunt multiprogramate, ceea ce implică existența unor conexiuni multiple care intră și ies din fiecare gazdă. Trebuie să existe o modalitate prin care să se poată spune care mesaje aparțin cărei conexiuni. Unul din locurile unde poate fi pusă această informație este antetul de transport.
În plus față de multiplexarea mai multor fluxuri de mesaje pe un singur canal, nivelul transport mai trebuie să se ocupe de stabilirea și anularea conexiunilor în rețea. Pentru acest lucru este necesar un mecanism de atribuire a numelor, astfel ca un proces de pe o anumită mașină să poată descrie cu cine vrea să converseze. Trebuie, de asemenea, să existe un mecanism pentru reglarea fluxului de informații, astfel încât o gazdă rapidă să nu suprasolicite o gazdă lentă. Un astfel de mecanism se numește controlul fluxului și joacă un rol cheie în nivelul de transport (ca și în alte niveluri). Controlul fluxului între gazde este diferit față de controlul fluxului între rutere.
Nivelul sesiune
Nivelul sesiune permite utilizatorilor de pe mașini diferite să stabilească între ei sesiuni. Ca și nivelul transport, o sesiune permite transportul obișnuit de date, dar furnizează totodată și servicii îmbunătățite; utile în anumite aplicații. 0 sesiune poate fi utilizată pentru a permite unui utilizator să se conecteze la distanță pe un sistem cu divizarea timpului sau să transfere un fișier între două mașini.
Unul dintre serviciile nivelului sesiune se referă la controlul dialogului. Seșiunile pot permite să se realizeze trafic în ambele sensuri șimultan; sau numai într-un sens odată. Dacă este permis traficul într-un singur sens odată, nivelul sesiune poate ajuta să se țină evidența emițătorilor cărora le vine rândul să transmită.
Un serviciu înrudit este gestionarea jetonului, în unele protocoale este esențial ca cele două părți să nu încerce să realizeze aceeași operație în același timp. Pentru a trata aceste șituații, nivelul sesiune dispune de jetoane care pot circula între mașini. Numai partea care deține jetonul are voie să realizeze operația critică.
Un alt serviciu sesiune este șincronizarea. Când se încearcă transferuri între două mașini în condițiile în care transferul durează mai mult decât intervalul mediu de cădere al legăturii vor apărea probleme. După fiecare eșec, tot transferul va trebui inițiat din nou și probabil că nu va reuși nici încercarea următoare. Pentru a elimina problema respectivă, nivelul sesiune prevede o modalitate de a introduce în fluxul de date puncte de control, astfel încât după un eșec trebuie să se reia numai transferul datelor de după ultimul punct de control.
Nivelul prezentare
Nivelul prezentare îndeplinește câteva funcții care sunt solicitate suficient de des pentru că, în loc să fie lăsat fiecare utilizator să rezolve problemele, să se justifice gășirea unei soluții generale, în particular, spre deosebire de toate nivelurile inferioare, care se ocupă numai de transferul sigur al biților dintr-un loc în altul, nivelul prezentare se ocupă de șintaxa și semantica informațiilor transmise.
Un exemplu tipic de serviciu prezentare este codificarea datelor într-un mod standard, prestabilit. Majoritatea programelor folosite de utilizatori nu fac schimb de șiruri aleatoare de biți. Ele fac schimb de nume de persoane, adrese, date, sume de bani, anunțuri. Aceste informații sunt reprezentate prin șiruri de caractere, prin întregi, prin numere reale și prin structuri de date compuse dintr-un număr de date mai șimple.
Diferite calculatoare au diferite coduri pentru reprezentarea șirurilor de caractere (de exemplu ASCII și Unicode), întregilor (de exemplu complementul față de 1 și complementul față de 2), și așa mai departe. Pentru a face posibilă comunicarea între calculatoare cu reprezentări diferite, structurile de date pot fi definite într-un mod abstract, alături de o codificare standardizată ce va fi utilizată "pe cablu". Nivelul prezentare gestionează aceste structuri de date abstracte și le convertește din reprezentarea internă folosită în calculator în reprezentarea standardizată din rețea, și invers.
Nivelul aplicație
Nivelul aplicație conține o varietate de protocoale frecvent utilizate. De exemplu, în lume există sute de tipuri de terminale incompatibile.
O modalitate de a rezolva problema este să se definească un terminal virtual de rețea abstract și să se descrie editoare și alte programe care știu să lucreze cu acesta. Pentru a putea lucra cu orice tip de terminal, este necesar un program care să pună în corespondență funcțiile terminalului virtual de rețea și terminalul real.
De exemplu, atunci când editorul mută cursorul din terminalul virtual în colțul stânga sus al ecranului, programul trebuie să aplice secvența potrivită de comenzi pentru terminalul real, astfel încât să se mute și cursorul acestuia. Toate programele terminalului virtual se află pe nivelul aplicație.
Un alt rol al nivelului aplicație este transferul fișierelor. Sistemele de fișiere diferite au convenții de nume diferite, moduri diferite de a reprezenta liniile de text, și așa mai departe. Transferul unui fișier între două sisteme de fișiere diferite presupune rezolvarea acestor incompatibilități și a altora de același gen. Și acest lucru cade tot în seama nivelului aplicație, la fel ca și poșta electronică, introducerea lucrărilor de la distanță; examinarea cataloagelor și diverse alte facilități cu scop general sau particular.
1.3 Transmiterea datelor în modelul OSI
Figura 1.2 prezintă un exemplu de transmiterea datelor folosind modelul OSI. Procesul emițător vrea să trimită niște date procesului receptor. Emițătorul furnizează datele nivelului aplicație, acesta le atașează în față antetul aplicației, AH (care poate fi vid) și le furnizează obiectul rezultat nivelului de prezentare.
Nivelul prezentare poate să modifice acest obiect în diferite moduri și poate eventual să-i adauge în față un antet, furnizând rezultatul către nivelul sesiune. Este important de știut că nivelul prezentare nu cunoaște care porțiune din datele primite de la nivelul aplicație reprezintă AH, în cazul în care acesta există, și care porțiune reprezintă datele propriu-zise ale utilizatorului.
Acest proces se repetă până când datele ajung la nivelul fizic, unde ele vor fi trimise efectiv către mașina receptoare. Pe respectiva mașină, diversele anteturi sunt eliminate succeșiv pe măsură ce mesajul se propagă prin niveluri în sus, până când ajunge în final la procesul destinație.
Fig. 1.2 Transmiterea datelor în modelul OSI
Ideea de bază este că, deși în figură transmiterea datelor este verticală, fiecare nivel este programat ca și cum transmiterea ar fi orizontală: De exemplu, atunci când nivelul transport emițător primește un mesaj de la nivelul sesiune, el îi atașează un antet de transport și îl expediază nivelului transport destinație. Din punctul său de vedere, faptul că în realitate trebuie să paseze mesajul nivelului rețea de pe mașina proprie este un detaliu tehnologic de mică importanță.
1.4 Modelul TCP/IP
TCP/IP 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, după cum se vede din figura 1.3.
Fig. 1.3 Comparație OSI – 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 diverșifică 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 fizica utilizată pentru comunicații și de tipul legăturii de date.
Protocoalele din familia TCP/IP tratează toate rețelele la fel. De aici rezultă un concept fundamental pentru rețelele TCP/IP, și anume acela că, din punct de vedere al unei rețele globale, orice sistem de comunicații capabil să transfere date contează ca o singura rețea, indiferent de caracteristicile sale.
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ă larga de servicii, prin intermediul programelor de aplicații. La acest nivel sunt utilizate multe protocoale, datorita multitudinii de aplicații existente, și care sunt în continua creștere.
Prezentarea nivelelor
Nivelul gazda la rețea
La acest nivel evoluția protocoalelor este impulșionată de evoluția extrem de rapidă a tehnologiilor de comunicație, care introduc tipuri de legături cu viteze din ce în ce mai mari. Astfel, vom întâlni linii telefonice închiriate, lucrând la viteze de 57,5 Kbs, ca și fibre optice de 1,544 Mbs. În momentul de față majoritatea calculatoarelor care utilizează TCP/IP în rețele locale folosesc conexiuni Ethernet cu viteze de pană la 10 Mbs. Apariția rețelelor Fast – Ethernet au făcut pOSIbil ca vitezele să. Crească la 100 Mbs.
La acest nivel sunt utilizate doua protocoale, utilizate pentru conectarea la Internet și Web prin intermediul modemului:
SLIP (Serial Line Internet Protocol)
Este un protocol Internet pe linie serială, permite legături seriale așincrone și este cel mai vechi protocol. Dintre caracteristicile mai importante:
– nu face nici un fel de detecție sau corecție a erorilor;
– suporta doar IP;
– fiecare,calculator trebuie să cunoască dînainte adresa IP a celuilalt
calculator;
– nu este un standard aprobat.
Ceea ce trebuie reținut, din punct de vedere al unui utilizator al Internetului, este faptul că acest tip de legătură neceșită o adresă fixă Internet pentru calculator, care este atribuită de furnizorul de servicii Internet.
PPP (Point to Point Protocol)
Protocol punct la punct, este un protocol mai robust decât SLIP, care rezolva toate deficiențele protocolului SLIP și reprezintă un standard Internet. Este utilizat din ce în ce mai mult, datorită, faptului că permite legarea atât pe legături seriale așincrone, cat și pe legături seriale șincrone. PPP face detecția erorilor, suportă mai multe protocoale, permite ca adresele IP sa fie negociate în momentul conectării, permite autentificarea, etc. În cazul utilizării acestui tip de legătura, acordarea unei adrese se realizează automat, în momentul stabilirii legăturii la Internet.
Nivelul Internet
Acest nivel, în modelul OSI nivelul rețea, asigură transmiterea pachetelor prin intermediul unor adrese unice, specifice fiecărui nod, numite adrese Internet.
Protocolul principal de la acest nivel este IP (Internet Protocol), și caracteristica esențiala este că fiecare pachet este tratat ca o entitate independentă (numită pachet sau datagramă), fără legături cu alte pachete. Acest nivel este nivelul responsabil cu rutarea pachetelor în Internet. Protocolul IP rutează pachetele prin rețelele interconectate îndeplinind și funcții de segmentare (la emițător) și de reasamblare (la destinatar) a pachetelor.
Acest protocol nu garantează livrarea pachetelor către destinatar, dar prin intermediul nivelului imediat superior, prin intermediul protocolului TCP, se asigura fiabilitatea corespunzătoare.
În operația de rutare protocolul IP utilizează adresa IP (numita și adresă de rețea).
Alte protocoale care pot funcționa la acest nivel, în vederea unei bune funcționări a transmisiei, sunt:
ICMP (Internet Control Message Protocol)
Protocolul IP furnizează un serviciu fără conexiune, care nu garantează livrarea fiecărui pachet la destinație. Pentru a înlătura acest dezavantaj se utilizează un mecanism prin care ruterele și sistemele din rețea comunică informații privind șituațiile de funcționare anormală destinație inacceșibilă, suprasolicitarea unui ruter, etc.). El poate fi utilizat de un sistem pentru a testa daca un alt sistem este acceșibil.
ARP (Address Resolution Protocol)
Transmiterea unui pachet se poate efectua și între două sisteme aflate în aceeași rețea fizică. Faptul că sistemul destinatar este: conectat la aceeași rețea fizică este constatat de către sistemul sursă, prin intermediul adresei IP de destinație, pe care o compara cu propria adresa IP, prin intermediul protocolului ARP. Deci putem spune că acest protocol permite unui calculator să determine adresa fizică unică (MAC) a unui alt calculator din aceeași rețea fizica cunoscând adresa IP (de nivel rețea) a acestuia.
Aceste tabele de translatare ARP nu sunt direct disponibile utilizatorilor sau aplicațiilor. ARP afișează lista corespondențelor între adresele IP și adresele fizice, determinate corect. De reținut că acest protocol este utilizat atunci când cele doua calculatoare (sursa și destinație) fac parte din aceeași rețea fizică, deci nu este necesară utilizarea ruter-elor.
RARP (Reverse Address Resolution Protocol)
Permite unui calculator sa-și obțină, atunci când nu o cunoaște, adresa IP proprie, deci face operația inversă (cunoscând adresa fizica se determină adresa IP a stației) protocolului ARP.
Nivelul transport
Este proiectat astfel încât să permită conversații între entitățile pereche din gazdele sursă și, respectiv, destinație. Orice program de aplicație utilizează. unul din cele doua protocoale de transport, alegerea unuia sau altuia depinzând de neceșitățile impuse de aplicația respectivă. Cele doua protocoale sunt:
UDP (User Datagram Protocol)
Este un protocol nesigur, dar cu viteză mare de transmisie, care utilizează datagrame pentru livrarea datelor. Când se utilizează acest protocol, comunicația este efectuată prin serviciu fără conexiune (nu se stabilește un circuit între cele două calculatoare care vor sa comunice), folosind IP pentru transferul mesajelor. Acest protocol nu garantează livrarea mesajului la recepție fără erori, fără pierderi, fără duplicate, în ordinea în care au fost emise. Acest protocol permite identificarea sistemelor sursă și destinație, precum și a programelor de aplicație între care are loc transferul de informație.
TCP (Transmisșion Control Protocol)
Este un protocol sigur, care asigură transferul fiabil al informațiilor între aplicațiile de pe cele două calculatoare aflate în comunicație. Acest protocol se ocupă cu depistarea și corectarea erorilor ce apar la transmisie. TCP-ul de pe dispozitivul emițător va realiza o legătură cu cel de pe dispozitivul receptor, acestea negociind cantitatea de date ce va fi transmisă, ansamblul fiind cunoscut sub denumirea de circuit virtual. Acest tip de comunicație se numește comunicație orientată pe conexiune.
TCP este o conexiune full-duplex, foarte stabilă și precisă, cu numărare de jetoane la recepție și corecție de erori. El preia blocuri de informație, pe care le împarte în segmente, aceste segmente fiind ulterior numerotate. La destinație, protocolul TCP existent acolo va fi astfel capabil să reasambleze informația primită de la emițător. După trimiterea fiecărei secvențe (segment numerotat), protocolul TCP emițător va aștepta confirmarea de primire de la receptor, iar daca nu o primește recurge la retrimiterea segmentului.
Oricum, este important de cunoscut faptul că folosirea TCP-ului nu este neapărat necesară decât atunci când fiabilitatea este foarte stricta, acest protocol întârziind semnificativ transmisia de date.
Nivelul aplicație
Nivelurile de sub nivelul aplicație servesc la asigurarea unui transport sigur, dar nu îndeplinesc nici o funcție concretă pentru utilizatori. De-abia la nivelul aplicație pot fi gășite toate aplicațiile interesante pentru utilizatori, dar chiar și la acest nivel apare neceșitatea unor protocoale care să permită funcționarea aplicațiilor.
1.5 Adrese IP
Pentru a putea fi identificate în cadrul rețelei, calculatoarele conectate la Internet, numite host-uri, noduri, sisteme sau servere trebuie să poată fi identificate prîntr-o adresă. În scurta istorie a Internet-ului s-au folosit mai multe sisteme de adresare și mai multe modalități de specificare a acestora.
Specificarea unei adrese se poate face în doua moduri:
– specificare numeric, prin șiruri de numere, utilizate pentru adrese IP;
– specificare de domenii, prin nume sau succeșiuni de nume, utilizate pentru adrese Internet.
Fiecare gazdă și ruter din Internet are o adresa IP, care codifică adresa sa de rețea și de gazdă. Combinația este unică: nu există două mașini cu aceeași adresa IP. Toate adresele IP sunt de 32 de biți lungime și sunt folosite în câmpurile Adresa sursa și Adresa destinație ale pachetelor IP.
Formatele folosite pentru adrese IP sunt ilustrate în figura 1.4. Acele mașini care sunt conectate la mai multe rețele au adrese diferite în fiecare rețea.
Fig.1.4 Clase de adrese IP
Clasa A: de la 1.0.0.0 până la 127.255.255.255
Clasa B: de la 128.0.0.0 până la 191.255.255.255
Clasa C: de la 192.0.0.0 până la 223.255.255.255
Clasa D: de la 224.0.0.0 până la 239.255.255.255
Clasa E: de la 240.0.0.0 până la 247.255.255.255
Formatele de clasă A, B, C și D permit până la 126 de rețele cu 16 milioane de gazde fiecare, 16.382 rețele cu pană la 64K gazde, 2 milioane de rețele (de exemplu, LAN-uri) cu pană la 254 gazde fiecare și multicast (trimitere multiplă), în care fiecare datagramă este direcționată mai multor gazde. Adresele care încep cu 11110 sunt rezervate pentru o folosire ulterioară. Zeci de mii de rețele sunt conectate acum la Internet și numărul se dublează în fiecare an.
Numerele de rețea sunt atribuite de NIC (Network Information Center – Centrul de Informații de Rețea) pentru a evita conflictele.
Adresele de rețea care sunt numere de 32 de biți, sunt scrise în mod uzual în notația zecimala cu punct, în acest format, fiecare dintre cei patru octeți este scris în zecimal, de la 0 la 255. De exemplu, adresa hexazecimală C0290614 este scrisă ca 192.41.6.20. Cea mai mică adresa IP este 0.0.0.0 și cea mai mare este 255.255.255.255.
Fig. 1.5 Adrese IP speciale
Adresa IP 0.0.0.0 este folosită de gazde atunci când sunt pornite, dar nu mai este folosită ulterior. Adresele IP cu 0 ca număr de rețea se referă la rețeaua curentă. Aceste adrese permit ca mașinile să refere propria rețea fără a cunoaște numărul de rețea (dar ele trebuie să cunoască clasa adresei pentru a ști câte zerouri să includă.
Adresele care constau numai din 1-uri permit difuzarea în rețeaua curentă, în mod uzual un LAN. Adresele cu un număr exact de rețea și numai din 1-uri în câmpul gazdă permit mașinilor să trimită pachete de difuzare în LAN-uri la distanță, aflate oriunde în Internet, în final, toate adresele de forma 127.xx.yy.zz sunt rezervate pentru testări în bucla locală (loopback). Pachetele trimise către aceasta adrese nu sunt trimise prin cablu. Ele sunt prelucrate local și tratate ca pachete sOSIte. Aceasta permite pachetelor să fie trimise către rețeaua locală fără ca emițătorul să cunoască numărul său. Aceasta facilitate este folosită de asemenea pentru depânărea programelor de rețea.
1.6 Tipuri de rețele
Rețelele de calculatoare se clașifică, după dimenșiunile ariei geografice pe care sunt răspândiți utilizatorii , dar și după soluțiile tehnice de implementare ce rezultă din acest fapt în:
rețele de arie largă (WAN ) – destinate conectării unor calculatoare aflate la distanțe geografice conșiderabile, deci din cadrul unor orașe, țări sau continente. Acestea folosesc pentru interconectare legături ce oferă o viteză de transmisie și o fiabilitate mare, închiriate de la companiile de telecomunicații publice și având o ierarhizare detaliată a comunicațiilor din rețea. Rețeaua Internet este cea mai mare rețea WAN și este compusă din mii de rețele răspândite în întreaga lume;
rețele locale ( LAN ) – destinate conectării unor calculatoare (precum și a altor dispozitive programabile) șituate la distanțe relativ mici (de la câțiva metri până la 5 [km], deci amplasate într-o aceeași clădire sau într-un grup de clădiri învecinate), folosind legături dedicate (proprietate a utilizatorilor) de viteze mari de transmisie și cu o fiabilitate adecvată. LAN-urile sunt necomutate (adică nu au rutere); WAN-urile sunt comutate.
rețele metropolitane (MAN) – reprezintă o extenșie a rețelelor LAN și utilizează în mod normal tehnologii șimilare cu acestea. Aceste rețele pot fi atât private cât și publice. O rețea MAN conține numai un cablu sau două, fără să conțină elemente de comutare care dirijează pachetele pe una dintre cele câteva pOSIbile linii de ieșire. Un aspect important al acestui tip de rețea este prezența unui mediu de difuzare la care sunt atașate toate calculatoarele. Aceste rețele funcționează, în general, la nivel de oraș.
Topologii
Pentru aranjarea în rețea a calculatoarelor se folosesc diferite metode numite topologii. Fiecare topologie are avantaje și dezavantaje dar totuși fiecare se potrivește cel mai bine în anumite șituații.
Rețele de tip magistrală: În cadrul acestui tip de rețele toate calculatoarele sunt interconectate la cablul principal al rețelei.
Calculatoarele conectate în acest tip de rețea au acces în mod egal la toate resursele rețelei. Pentru utilizarea cablului nivelul logic trebuie să aștepte până se eliberează cablul pentru a evita coliziunile de date. Acest tip de rețea are însă un defect și anume: dacă rețeaua este întreruptă într-un loc fie accidental fie prin adăugarea unui alt nod de rețea atunci întreaga rețea este scoasă din funcțiune. Este totuși unul din cele mai ieftine moduri de a pune la cale o rețea.
Rețele de tip stea: Acest tip de rețea face legatura între calculatoare prin intermediul unui concentrator. Avantajul esențial al acetui tip de rețea este că celelalte cabluri sunt protejate în șituția în care un calculator este avariat sau un cablu este distrus, deci din puct de vedere al siguranței transmisiei de date este cea mai sigură soluție în alegerea configurării unei rețele mari căci pentru o rețea mică există un dezavataj de ordin finaciar constituit de concentrator care are un preț destul de ridicat.
Rețele de tip ring: Tipul de rețea circular face legătura între calculatoare prin intermediul unui port de intrare (In Port) și a unui port de ieșire (Out Port). În această configurație fiecare calculator transmite date către următorul calculator din rețea prin portul de ieșire al calculatorului nostru către portul de intrare al calculatorului adresat. În cadrul acestei topologii instalarea cablurilor este destul de dificila și atunci se recurge la un compromis între acest tip de rețea și cel de tip magistrala folosindu-se o unitate centrală care să închidă cercul, numită Media Acces Unit (MAU – unitate de acces a mediilor).
Rețele de tip magistrală în stea: La fel ca o rețea hibridă stea-cerc rețeaua de tip magistrală în stea face apel la o unitate centrala (MAU) prin care se realizează legăturile între calculatoare.
1.7 Metode de interconectare
În lume există multe rețele cu echipamente și programe diverse. Rețelele nu pot fi extinse prin șimpla adăugare a unor calculatoare și cabluri. Fiecare topologie și arhitectură de rețea are propriile sale limite. Totodată fiecare rețea folosesșe propriile protocoale, deci existența rețelelor de tipuri diferite înseamnă a avea protocoale diferite. Indiferent de evoluția care va avea loc în lumea IT (tehnologia informației), mereu vor exista o varietate de rețele, care pentru a putea comunica unele cu altele vor trebui să se interconecteze. Tipurile de conexiuni care pot să apară sunt:
LAN-LAN: utilizatorul copiază un fișier de pe un alt sistem din alt workgroup;
LAN-WAN: utilizatorul trimite un e-mail altui utilizator aflat la distanță;
WAN-WAN: doi utilizatori fac schimb de date;
LAN-WAN-LAN: utilizatori din universități diferite comunică între ei.
Pentru a interconecta între ele aceste rețele sunt necesare atât echipamente speciale pentru a realiza conexiunile fizice, cât și software de interconectare.
Pentru a conecta fizic două rețele este necesară plasarea unei "cutii negre", la joncțiunea dintre cele două rețele care se doresc a fi legate (conectate), pentru a rezolva conversiile necesare atunci când datele se mișcă de la o rețea la alta. Aceste "cutii negre" au nume diferite și în general depind de nivelul la care lucrează, fiecare din ele fiind adecvate pentru o anumită formă de interconectare.
În continuare vor fi descrise principalele categorii de echipamente de interconectare.
Repetorul
Repetorul are rolul de a copia biți individuali între segmente de cablu diferite, deci permite transportarea semnalului pe o distanță mai mare; el nu interprețează cadrele pe care le receptionează și reprezintă cea mai șimplă și ieftină metodă de extindere a unei rețele locale. Pe măsură ce semnalul traversează cablul, el se degradează și este distorșionat. Acest proces poartă numele de atenuare.
Repetorul permite transportarea semnalului pe o distanță mai mare, regenerând semnalele din rețea și retransmițându-le mai departe pe alte segmente.
În corespondență cu modelul OSI repetorul funcționează la nivelul fizic, regenerând semnalul recepționat de pe un segment de cablu și transmițându-l pe alt segment (figura 1.6).
Repetoarele sunt utilizate în general pentru a extinde lungimea cablului acolo unde este nevoie. Pentru a putea fi utilizate, pachetele de date și protocoalele LLC (Logical Link Control – controlul legăturii logice) trebuie să fie identice pe ambele segmente (nu se pot conecta rețele LAN 802.3 – Ethernet – cu rețele LAN 802.5 – Token Ring); de asemenea ele trebuie să folosească aceeași metodă de acces (CSMA/CD). Repetorul este folosit pentru a face legătura dintre medii de transmisie diferite (cablu coaxial – fibră optică, cablu coaxial gros – cablu coaxial subțire).
Figura 1.6 Repetorul în raport cu modelul OSI
Un dezavantaj al repetorului este acela că el copiază semnalul electronic, inclusiv zgomotul, de la un segment de rețea la altul.
Puntea
Puntea (se mai întâlnește și sub denumirea de: pod, bridge), lucrează la subnivelul MAC (Media Access Control) și funcționează pe principiul că fiecare nod de rețea are propria adresă fizică. Puntea permite interconectarea rețelelor LAN de același tip sau de tipuri diferite. Puntea utilizează o tabelă de rutare pentru a memora informațiile despre adresele calculatoarelor unde se transferă datele. Inițial, tabela de rutare este goală, și pe parcurs ea este completată cu adresele sursă ale calculatoarelor. Adresele sursă, care de fapt sunt adresele MAC ale fiecărui nod, sunt adresele dispozitivelor care au inițiat transmisia.
Punțile sunt utile în situațiile următoare:
-extinderea fizică a unei rețele LAN;
-interconectarea rețelelor locale ce utilizează tehnici de control al accesului la mediu diferite.
Punțile la rândul lor sunt de mai multe tipuri:
punți transparente: în acest caz puntea examinează adresele MAC din pachetele care circulă în rețelele la care este conectată și pe baza unor tabele de adrese decide pentru fiecare pachet rețeaua pe care trebuie transmis;
punți cu rutare prin adresă, sau punți Token Ring, în acest caz punțile utilizează informația de rutare inclusă de sistemul sursă în câmpul din cadrul MAC. Aceste punți sunt specifice pentru interconectarea rețelelor Token Ring.
Dacă într-o firmă există mai multe rețele cu topologii diferite, atunci administrarea fluxurilor de date poate fi făcută de un calculator echipat cu mai multe interfețe de rețea, care va juca rolul de punte între aceste rețele, ea asociind rețelele fizice diferite într-o aceeași rețea logică. Toate calculatoarele din această rețea logică au aceeași adresă logică de subrețea.
Figura 1.7 Puntea în raport cu modelul OSI
În corespondență cu modelul OSI puntea lucrează la nivelul legăturii de date (mai precis la subnivelul MAC) și în consecință operează cu adresele fizice ale calculatoarelor. Spre deosebire de repetor, puntea este capabilă să decodeze cadrul pe care-l primește pentru a face prelucrările necesare transmiterii pe rețeaua vecină.
Puntea mută entități de transfer, numite cache și controlează validitatea conținutului transferat.
Ruter
Ruter-ul funcționează la nivelul rețea al modelului ISO / OSI și este utilizat pentru interconectarea mai multor rețele locale de tipuri diferite, dar care utilizează același protocol de nivel fizic. Utilizarea lor asigură o mai mare flexibilitate a rețelei în ceea ce priveste topologia acesteia.
La fel ca și la punte, informațiile sunt memorate în tabele de rutare, care conțin informatii de adresă. Tabela de rutare a unui ruter conține adrese (numere) de rețea.
Figura 1.8 Ruter-ul în raport cu modelul OSI
Diferența între o punte și un ruter este că în timp ce puntea operează cu adresele fizice ale calculatoarelor (luate din cadrul MAC) ruter-ele utilizează adresele logice (de rețea) ale calculatorului. În timp ce o punte asociază rețele fizice diferite într-o singură rețea logică, un ruter interconectează rețele logice diferite. Aceste adrese logice sunt administrate de nivelul rețea și nu depind de tipul rețelei locale. O caracteristică este aceea că ruter-ele nu pot comunica direct cu calculatoarele aflate la distanță, din această cauză ele nu cercetează adresa sistemului destinație, ci doar adresa rețelei de destinație.
Ruter-ul permite rutarea mesajelor de la sursă la destinație atunci când există mai multe posibilități de comunicare între cele două sisteme (ia decizii privitoare la traseul pe care urmează să-l parcurgă pachetul pentru a ajunge la destinație).
Datorită capacității de a determina cel mai bun traseu, prîntr-o serie de legături de date, de la o rețea locală în care se află sistemul sursă la rețeaua locală în care se află sistemul destinație, un sistem de ruter-e poate asigura mai multe trasee active între cele două rețele, făcând posibilă transmiterea mesajelor de la sistemul sursă la sistemul destinație pe căi diferite.
În general un ruter utilizează un singur tip de protocol de nivel rețea, și din acest motiv el nu va putea interconecta decât rețele la care sistemele folosesc același tip de protocol. De exemplu dacă există două rețele, una utilizând protocolul TCP / IP și alta protocolul IPX, nu vom putea utiliza un ruter care utilizează TCP / IP. Acest ruter se mai numeste ruter dependent de protocol. Există însă și rutere care au implementate mai multe protocoale, făcând astfel posibilă rutarea între două rețele care utilizează protocoale diferite, și care se numesc rutere multiprotocol.
Porți de acces
Porțile de acces, numite și gateway fac posibilă comunicația între sisteme de diferite arhitecturi și medii incompatibile. O poartă conectează două sisteme care nu folosesc același:
protocol de comunicație;
structuri de formate;
limbaje;
arhitecturi.
În general aceste echipamente permit conectarea la un mainframe a rețelelor locale. Termenul de poartă se utilizează pentru a desemna orice dispozitiv care conectează două sau mai multe rețele de tipuri diferite.
Porțile reprezintă de obicei servere dedicate într-o rețea, care convertesc mesajele primite într-un limbaj de e-mail care poate fi înțeles de propriul sistem. Ele realizează o conversie de protocol pentru toate cele șapte niveluri OSI , și operează la nivelul transport al modelului ISO / OSI. Sarcina unei porți este de a face conversia de la un set de protocoale de comunicație la un alt set de protocoale de comunicație.
Din cele prezentate putem face următoarea legătura între nivelurile modelului OSI la care operează echipamentele și numele acestora:
nivelul fizic -> repetoare, copiază biți individuali între segmente diferite de cablu;
nivelul legătură de date ->punți, interconectează rețele LAN de același tip sau de tipuri diferite;
nivelul rețea ->rutere, interconectează mai multe rețele locale de tipuri diferite, dar care utilizează același protocol de nivel fizic
nivelul transport -> porți de acces, fac posibilă comunicația între sisteme de diferite arhitecturi și medii incompatibile.
de la nivelul 4 în sus -> porți de aplicații, permit cooperarea de la nivelul 4.
Capitolul 2-REȚELE VIRTUALE PRIVATE.CONCEPTE GENERALE
2.1 Generalități
Simplu definit, o rețea virtuală privată (VPN) 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ă.
Tehnologiile VPN oferă o cale de a folosi infrastructurile rețelelor publice cum ar fi Internetul pentru a asigura acces securizat și privat la aplicații și resurse ale companiei pentru angajații din birourile aflate la distanță sau cei care lucrează de acasă, pentru partenerii de afaceri și chiar pentru clienți.
Un VPN poate fi realizat pe diverse rețele de transport deja existente: Internetul public, rețeaua furnizorului de servicii IP, rețele Frame Relay și ATM. Astăzi, tot mai multe VPN-uri sunt bazate pe rețele IP.
Tehnologia VPN folosește o combinație de tunneling, criptare, autentificare și mecanisme și servicii de control al accesului, folosite pentru a transporta traficul pe Internet, o rețea IP administrată, sau rețeaua unui furnizor de servicii.
Cum funcționează VPN ?
Pentru a utiliza Internetul ca o rețea privată virtuală, de tip Wide Area Network (WAN), 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, sa 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. Veți înțelege mai bine acest concept dacă luăm un exemplu. Presupunem că rulați NetWare pe o rețea, iar un client al acelei rețele dorește să se conecteze la un server aflat la distanță, care rulează tot NetWare. Protocolul principal pe care îl utilizează NetWare este IPX. Astfel că pachetele IPX trimise la distanță trec mai întâi printr-un dispozitiv de inițiere a „tunelului" de comunicație – fie acesta un router sau chiar un PC desktop, în cazul conexiunilor client-server. Acesta pregătește datele pentru transmisie prin Internet. Creatorul de tunel al rețelei sursă comunică cu un terminator VPN aflat în rețeaua destinație. Cele două ajung la un „consens" privind schema de codificare a datelor, după care inițiatorul codifică pachetele pentru securitate. întregul pachetul de date criptat este transformat într-unul de tip IP. Acum, indiferent de protocolul în care au fost transmise, datele pot călători prin Internet. La destinație, terminatorul de tunel primește pachetul, înlătură informația de IP și decriptează datele în concordanță cu schema stabilită inițial. Astfel decriptate, datele sunt transmise la server sau router, cel care le plasează în rețeaua locală.
VPN-ul în plus oferă o multitudine de posibilități de conectare :
-Conectarea utilizatorilor mobili .
-Realizarea de intranet între diferite locații aflate la distanță.
-Realizarea unor legături extranet cu partenerii de afaceri.
2.2 Soluții VPN
La ora actulă există trei posibilități de realiza un VPN :
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.
Intranet VPN – permite conectarea diferitelor sedii ale unei firme folosind legături dedicate. Diferența fată de Access VPN constă în faptul că se folosesc legături dedicate cu rata de transfer garantată, fapt care permite asigurarea unei foarte bune calitați a transmisiei pe lângă securitate și bandă mai largă.
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ă.
Remote Access VPN(Acces de la distanță)
Există doua tipuri de conexini VPN de acest fel:
Conexiune inițiata 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. Următoarea imagine schematizează acest tip de Access VPN :
Figura 2.1 Acces de la distanță inițiat de client
Access VPN inițiat de serverul de acces
Este ceva mai simplă pentru că nu implică folosirea unui client de VPN. Tunelul cripatat 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 ).
2.2 Acces de la distanță inițiat de server-ul de acces
Intranet VPN
Permite realizarea unei rețele interne complet sigură pentru o firmă. Permite realizarea unor medii client-server foarte performante prin utilizarea conexiunilor dedicate care pot să atingă rate de transfer foarte bune ( E1) limita fiind determinată de suma pe care firma respectivă este dispusă să o investească în infrastructura sa informațională .
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 arată cam așa :
Figura 2.3 Intranet VPN
Extranet VPN
Acest tip de VPN seamănă cu precedentul cu deosebirea că extinde limitele intranetului permițând legarea 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.
Figura 2.4 Extranet VPN
2.3 Metode de transmisie prin VPN
Dacă ați citit rândurile de mai sus, probabil ați înțeles că o rețea privată virtuală (VPN) este inițiată în jurul unui protocol de securizare, cel care criptează sau decriptează datele la sursa și la destinație pentru transmisia prin IP. In prezent există o mare varietate de astfel de protocoale – de exemplu L2TP, IPSec, SOCKS5, FPSecure. Unele se suprapun în funcționalitate, altele oferă funcții similare dar complementare. Fiecare dintre protocoalele existente necesită o investigație mai atentă, atunci când sunteți în fază de achiziție și implementare a unei rețele virtuale. Să identificăm pe scurt cele mai importante caracteristici ale acestor protocoale.
Layer-2 Tunneling Protocol, sau L2TP, este o combinație dintre un protocol al firmei Cisco Systems (L2F) și cel al firmei Microsoft denumit Point-to-Point Tunneling Protocol (PPTP). Fiind conceput pentru a suporta orice alt protocol de rutare, incluzând IP, IPX și AppleTalk, acest L2TP poate fi rulat pe orice tip de rețea WAN, inclusiv ATM, X.25 sau SONET. Cea mai importantă trăsătură a L2TP este folosirea protocolului Point-to-Point, inclus de Microsoft ca o componentă a sistemelor de operare Windows 95, Windows 98 și Windows NT. Astfel că orice client PC care rulează Windows este echipat implicit cu o funcție de tunneling, iar Microsoft furnizează și o schemă de criptare denumită Point-to-Point Encryption. În afara capacității de creare a unei VPN, protocolul L2TP poate realiza mai multe tunele simultan, pornind de la același client, de exemplu spre o bază de date a firmei și spre intranetul aceleiași firme.
Internet Protocol Security sau IPSec, este o suită de protocoale care asigură securitatea unei rețele virtuale private prin Internet. IPSec este o funcție de layer 3 și de aceea nu poate interacționa cu alte protocoale de layer 3, cum ar fi IPX și SNA. Insă IPSec este poate cel mai autorizat protocol pentru păstrarea confidențialității și autenticității pachetelor trimise prin IP. Protocolul funcționează cu o largă varietate de scheme de criptare standard și negocieri ale proceselor, ca și pentru diverse sisteme de securitate, incluzând semnături digitale, certificate digitale, chei publice („public keys") sau autorizații. Încapsulând pachetul original de date într-un pachet de tip IP, protocolul IP-Sec scrie în header toată informația cerută de terminalul de destinație. Deoarece nu există modalități de autentificare sau criptare licențiate, IPSec se detașează de celelalte protocoale prin interoperabilitate. El va lucra cu majoritatea sistemelor și standardelor, chiar și în paralel cu alte protocoale VPN. De exemplu, IPSec poate realiza negocierea și autentificarea criptării în timp ce o rețea virtuală de tip L2TP primește un pachet, inițiază tunelul și trimite pachetul încapsulat către celălalt terminal VPN.
SOCKS 5 constituie o alta abordare a rețelelor virtuale private. Inițial produs de Aventail, SOCKS 5 este puțin mai diferit de L2TP sau IPSec: el seamănă cu un server proxy și lucrează la nivelul de socket TCP. Pentru a utiliza SOCKS 5, sistemele trebuie încărcate cu un software client dedicat. În plus, firma trebuie să ruleze un server de tip SOCK.S 5. Partea pozitivă a lui SOCKS 5 este aceea că permite administratorilor de rețea să aplice diverse limitări și controale traficului prin proxy. Deoarece lucrează la nivel TCP, SOCKS 5 vă permite să specificați care aplicații pot traversa prin firewall către Internet și care sunt restricționate.
2.4 Securitate și VPN
Rețelele private virtuale sunt un produs derivat al clasei de elemente de securitate ale unei rețele.
Clientul accesează Internetul prin dial-up către un ISP, după care stabilește un tunel autentificat și criptat între el și firewall-ul din intranetul accesat.
Astăzi securitatea rețelei este în principal asigurată de firewall-uri, produse care pun o bariera software între resursele companiei și Internet.
Figura 2.5 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. IPSec vă protejează datele în trei moduri, folosind tehnici criptografice:
– Autentificare: Procesul prin care este verificată identitatea unui host sau 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
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ă componenta 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, ca ș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 domenniul 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 intergră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 menționate. In continuare vom prezenta mai pe larg diversele soluții tehnologice care determină construirea componentei de securitate în rețele VPN.
2.5 Criptarea datelor
Cum se asigură confidențialitatea datelor? 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). Soluția este dată de cifrarea sau criptarea datelor, astfel încât forma de transmisie a lor devine neinteligibilă. 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ă.
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 fixată.
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 cripatate, 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. Prîntr-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 șimetric, trebuie administrate 4950 de chei. In acest scenariu, componenta de setare și distribuție a cheilor pe perechi de parteneri de comunicații, luând în conșiderare și înlocuirea lor periodică, devine extraordinar de dificilă și consumatoare de timp.
Criptosisteme cu cheie publică (așimetrice)
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).
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. In acest sistem, combinația dintre cheia privată a Anei și cheia publică a lui Bogdan va genera același rezultat ca și combinația dintre cheia privată a lui Bogdan și cheia publică a Anei. 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 Ana a cheii publice a lui Bogdan și obținerea de către Bogdan a cheii publice a Anei. In continuare Ana și Bogdan calculează cheia secretului comun. In fine, ei pot utiliza secretul comun pentru criptarea și decriptarea tuturor transmișiilor 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, Ana și Bogdan, îș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 (Emil) să supravegheze tocmai această sesiune de comunicații. Emil poate să intercepteze cererea lui Bogdan de a primii cheia publică a Anei și să-și trimită propria cheie publică către ambii corespondenți. Dacă se întâmplă acest lucru, Ana și Bogdan vor avea un secret comun cu Emil, 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.
Rivest Shamir Adlemcn (RSA)
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ă Ana îș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 atigerea unor scopuri diferite, inclusiv transportul cheilor sau a materialului criptat.
2.6 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, cunuscut 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 sorginte 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. In 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.
Autentificarea utilizatorilor și controlul accesului
Până acum, discuția s-a derulat în jurul componentelor de securitate legate de confidențialitatea datelor, autentificarea datelor și integritatea datelor. O importanță de nivel asemănător o are autentificarea utilizatorilor (prin care se determină dacă utilizatorul este aceeași persoană cu cea care accesează rețeaua) și controlul accesului (controlul resurselor de rețea pe care le poate accesa acest utilizator). Transmisia de date criptate este numai o parte a fluxului de date dîntr-o sesiune de comunicație. Utilizatorul trebuie să fie mai întâi autentificat, asfel încât să fie asociat unui anume profil de acces la domeniul de servicii, aplicații și resurse din rețea.
Autentificarea utilizatorilor
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 suporla doar unui din cele doua tipuri de mecanisme de autentificare se refera la autentificare in mod generic, fara a detalia tipul. O soluție VPN completa trebuie sa suporte atat autentificarea dalelor (procesul de semnatura digitala sau de integritate a datelor), cat și autentificarea utilizatorilor (procesul de verificare a identitatii ulilizatorilor VPN).
Controlul accesului
Odata ce a fost verificata identitatea persoanci, prolilul de utilizator va determina exact care resurse și servicii pot sau nu sa fie accesate in rctea, fara a compromite securitatea rețelei.
Arhitectura pentru controlul accesului
Aceasta arhitectura 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.
2.7 Tehnici de realizare a rețelelor VPN
Așa cum am văzut, pentru a asigura confidențialitatea datelor într-o transmisie pe canale de comunicații nesigure, cum este Internetul, pot fi folosite diverse tehnici criptografice. Modul de transmisie utilizat în cazul unei soluții VPN va determina care părți ale unui mesaj sunt criptate. Unele soluții criptează întregul mesaj (antetul IP și datele din mesaj), în timp ce altele criptează doar datele. Cele patru moduri de transmisie întâlnite în soluțiile VPN sunt:
• In Place Transmisșion Mode (Modul de Transmisie In-place) – este de obicei o soluție specifică unui anumit producător, în care doar datele sunt criptate. Dimensiunea pachetelor nu este afectată, prin urmare mecanismele de transport nu sunt afectate.
• Transport Mode (modul transport) – doar segmentul de date este criptat, deci mărimea pachetului va crește. Acest mod oferă o confidențialitate adecvată a datelor pentru rețele VPN de tip nod-la-nod.
• Encrypted Tunnel Mode (modul tunel criptal) – informația din antetul IP și datele sunt criptate, anexându-se o nouă adresă IP, mapată pe punctele terminale ale VPN. Se asigură o confidențialitate globală a datelor.
• Non-encrypted Tunnel Mode (modul tunel necriptat) – nici o componentă nu este criptată, toate datele sunt transportate în text clar. Nu se oferă nici un mijloc de asigurare a confidențialității datelor.
Structura fiecăruia dintre aceste moduri de transmisie este arătată mai jos. Deși poate părea ciudat, există și soluții VPN care nu realizează nici un mod de criptare. în schimb, pentru a oferi un grad de confidențialitate a datelor, ele se bazează pe tehnici de încapsulare a datelor, cum ar fi protocoalele de tunelare sau forwarding.
Nu toate protocoalele de tunelare și forwarding folosesc un sistem criptografic pentru cofidențialitatea datelor, ceea ce înseamnă că toate datele vor fi transmise în clar, punând sub semnul întrebării cum poate o astfel de soluție să asigure protecția împotriva interceptării datelor – cerință critică în cazul rețelelor VPN. Din nefericire, terminologia utilizată în industria de profil poate să contribuie la apariția de astfel de confuzii. Pentru clarificarea acestor confuzii, trebuie ca utilizatorul să identifice care mod de transmisie este folosit. Ca și în cazul autentificării datelor și a utilizatorilor, modurile de transmisie trebuie să fie analizate dacă sunt criptate sau necriptate. Dacă o soluție VPN nu furnizează nici o formă de criptare în scopul confidențialității datelor, atunci această soluție poate fi denumită mult mai corect Virtual Network (VN – rețea virtuală), din moment ce nimic nu este privat în această rețea Internet, între sursă și destinație.
2.8 Standardizarea rețelelor VPN- Standardul IPSec
Este cunoscut faptul că numai standardele susținute de industrie vor asigura interoperabilitatea aplicațiilor. Administratorii care implementează o soluție VPN sunt puși în fața unor anumite probleme, din cauza absenței standardelor. Internet Engineering Task Force (IETF) a stabilit un grup de lucru numit IP Security (IPSec), dedicat definirii standardelor și protocoalelor legate de securitatea Internetului. Unul dintre cele mai importante scopuri ale acestui grup de lucru este finalizarea standardului IPSec, care definește structura pachetelor IP și considerentele legate de securitatea în cazul soluțiilor VPN.
IPSec a apărut în cadrul efortului de standardizare pentru IPv6 și reprezintă singura soluție deschisă pentru securizarea conexiunilor pe Internet. IPSec poate fi configurat pentru două moduri distincte: modul tunel și modul transport. În modul tunel, IPSec încapsulează pachetele [Pv4 în cadre IP securizate, pentru transferul informației între două sisteme firewall, de exemplu. In modul transport, informația este încapsulată într-un altfel de mod, încît ea poate fi securizată între punctele terminale ale conexiunii, deci "ambalajul" nu ascunde informația de rutare cap-la-cap. Modul tunel este cea mai sigură metodă de securizare, însă crește gradul de încărcare a sesiunii de comunicație, prin mărirea dimensiunilor pachetelor.
Există deja două idei majore în IPSec: Authentification Header (AH) și Encapsulated Security Payload (ESP), definite după cum urmează:
– Authentification Header (AH) este folosit pentru a furniza integritatea și autentificarea originii pentru orice datagramă IP, fără ca aceste atribute să fie orientate pe conexiune. Această proprietate este denumită generic "autentificare".
– Encapsulated Security Payload (ESP) furnizează autentificarea și criptarea datagramelor IP folosind algoritmul de criptare stabilit de către utilizator. În autentificarea ESP, sumarul de mesaj este inserat la sfîrșitul pachetului (în timp ce în AH, sumarul se află în interiorul cîmpului de autentificare).
Pe lângă autentificarea sursei, AH asigură numai integritatea datelor, în timp ce ESP, care asigura până acum doar criptarea, acum asigură atât criptarea, cât și integritatea datelor. Diferența dintre integritatea datelor prin AH și cea dată de ESP stă în scopul datelor care sunt autentificate. AH autetifică întregul pachet, în timp ce ESP nu autentifică antetul IP exterior. în autentificarea ESP, sumarul de mesaj se află în finalul pachetului, în timp ce în AH, sumarul se găsește înăuntrul antetului de autentificare.
Standardul IPSec stabilește că înainte de orice transfer de date trebuie negociată o asociere de securitate (Security Association – SA) între cele două noduri VPN (de tip gateway sau client), să conține toate informațiile necesare pentru execuția diferitelor servicii de securitate pe rețea, cum sunt serviciile corespunzătoare nivelului IP (autentificarea antetului și încapsularea datelor), serviciile nivelurilor de transport sau aplicație, precum și autoprotecția traficului de date din negociere.
Aceste formate furnizează un cadru consistent pentru transferul cheilor și a datelor de autentificare, care este independent de tehnica de generare a cheilor, de algoritmul de criptare sau mecanismul de autentificare.
IPSec poate fi privit ca un nivel intermediar sub stivă TCP/IP. Acest nivel este controlat de o politică de securitate pe fiecare mașină și de o asociere de securitate negociată între emițător și receptor. Politica constă într-un set de filtre și un set de profile de securitate asociate. Dacă un pachet are o adresă, protocolul și numărul de port corespunzătoare unui filtru, atunci pachetul este tratat conform profilului de securitate asociat.
Unul dintre avantajele majore ale elaborării unui standard IPSec este că structura standardizată a pachetului și asocierea de securitate vor facilita interoperarea diferitelor soluții VPN la nivelul transmisiei de date. Cu toate acestea, standardul nu oferă un mecanism automat de schimb pentru cheile de cripatare și autentificare a datelor, necesare pentru stabilirea unei sesiuni criptate, aspect care introduce al doilea avantaj major al standardului: PKI sau infrastructura de administrare a cheilor. Același grup de lucru IPSec se ocupă și cu stabilirea unui meanism standardizat de administrare a cheilor care să permită o negociere, distribuție și stocare a cheilor de criptare și autentificare în condiții de completă corectitudine și siguranță. O standardizare în structura de pachete și în mecanismul de administrare a cheilor va duce la completa interoperabilitate a diferitelor soluții VPN.
IPSec va avea un succes major în mediile LAN-LAN, însă în cazul considerațiilor client/server va fi de o utilitate limitată la câțiva ani. Cauzele acestei disfuncții stau în penetrarea relativ limitată a PKI și în problemele de scalabilitate. Implementarea sa pretinde cunoașterea domeniului de adrese IP pentru a stabili indentitatea utilizatorilor, cerință care face acest protocol impracticabil în mediile cu alocare dinamică a adreselor, cum este cazul ISP.
IPSec nu suportă alte protocoale de rețea în afară de TCP/IP și nu specifică o metodologie de control al accesului în afară de filtrarea pachetelor. Din moment ce folosește adreasarea TP ca parte al algoritmului de autentificare, se pare că este mai puțin sigur de cât alte protocoale de nivel înalt la capitolul identificarea utilizatorilor.
Poate cel mai important dezavantaj al IPSec îl constituie absența unui sprijin ferm din partea Microsoft. Compania din Redmond nu a pomenit nimic despre suportul IPSec în sistemele sale de operare client. Se poate spune că IPSec se află în competiție cu PPTP și L2TP în ceea ce privește construirea de conexiuni tunel, de aceea nu este clar dacă Microsoft va face schimbări radicale în stiva IPv4 pentru a suporta IPSec la niveluri superioare. Inlocuirea stivelor IP existente și distribuția unor noi drivere de echipament se dovedesc a necesita atât un plus de effort, cât și ceva mai mulți bani.
IPSec PKI și administrarea cheilor
O parte a standardului IETF IPSec constă în definirea unei scheme de administrare automată a cheilor, care include conceptul de PKI (Public Key Infrastructure). Aceasta este o comunitate deschisă de CA (Certificate Authorițies – Autorități de certificare) care, în cele mai multe cazuri, utilizezază un model ierarhic pentru a construi asocieri de încredere acolo unde nu au existat. Existența PKI este importantă la stabilirea unei rețele VPN între o rețea de corporație și o rețea a unui partener sau furnizor, deoarece necesită un schimb securizat de chei între ele, prin intermediul unei a treia părți (CA), în care ambele noduri VPN au încredere. Schema obligatorie de administare automată a cheilor, definită de IETF IPSec pentru IPv6 este ISAKMP/Oakley (Internet Security Association and Key Management Protocol) cu opțiunea SKIP (Simple Key management for IP). Spre deosebire de soluțiile VPN care nu oferă nici o formă de administrare automată a cheilor, o soluție VPN care suportă această caracteristică prin utilizarea uneia dintre tehnologiile de instalare VPN permite administratorilor de securitate să creeze, să distribuie și să revoce cheile de criptare VPN în mod simplu și sigur, prin intermediul sistemului PICI.
2.9 Alternative la IPSec
Alte soluții VPN care sunt deja propuse sau imlementate ca alternative la standardul IPSec nu au nici o legătură cu aceasta. În schimb, ele furnizează protocoale de încapsulare a datelor, care "tunelează" protocoalele de nivel înalt în protococale de nivel legătură de date (L2). Iată câteva exemple în continuare:
Point to point tunneling protocol (PPTP)
Reprezintă o extensie a Point-to-Point Protocol (PPP), care încapsulează datele, IPX sau NetBEUT în pachetele IP. Acest protocol este folosit în mod fundamental de echipamentele ISP, deoarece duce la un numitor comun participanții la sesiuni de comunicații.
Este cea mai cunoscută dintre opțiunile pentru securitatea transferului de date în rețeaua VPN. Dezvoltat de Microsoft și inclus în Windows NT v 4.0 pentru a fi folosit cu serviciul de rutare și acces de la distanță (Routing & Remote Access Service). Este plasat la nivelul 2 OSI.
Layer 2 forwarding (L2F)
Un protocol de tip forwarding, folosit pentru tunelarea protocoalelor de nivel înalt într-un protocol de nivel 2 (legătură de date – Data Link). De exemplu, se folosesc ca protocoale L2: HDLC, HDLC asincron sau cadre SLIP. Deși această soluție facilitează conectivitatea pe linii de acces în rețele cu comutație de circuite, informația din fluxul L2F NU ESTE CRTPTATĂ. Acest protocol a fost creat de Cisco. Combinat cu PPTP, constituie componentă a L2TP.
Layer 2 Tunneling Protocol (L2TP)
Un protocol care tunelează traficul PPP printr-o diversitate de rețele (IP, SONET, ATM), fiind folosit pentru furnizarea unor servicii de acces dial-up multiprolocol de către ISP, în anumite puncte de prezență (POP – Point of Presence). Este definit IETF și suportă și protocoale non-lP, cum ar fi Apple Talk și IPX.
Acest protocol suportă mai multe conexiuni simultane de tip tunel pentru același client și este dedicat operatorilor de telecomunicații și ISP. Utilizatorul accesează punctul de prezență al unui ISP, fără criptare, iar ISP-ul acționează ca agent pentru utilizator, inițiind un tunel criptat către destinația cerută. Reprezintă cea mai ieftină soluție de asigurare a securității în rețelele VPN pentru mediile Microsoft.
Socks v5
Un protocol IETF care definește cum sunt tratate aplicațiile client/server TCP și UDP printr-un server proxy. Soluțiile VPN bazate pe o asftel de tehnologie sunt de fapt implementări VPN bazate pe proxy, care nu sunt cu mult diferite față de orice altă soluție VPN-proxy. Realitatea este că Socks v5 este un protocol IETF care nu oferă nici un avantaj de interoperabilitate pe care l-am aștepta de la o implementare VPN bazată pe standarde, cum se întâmplă în cazul IPSec.
Socks v5 a fost dezvoltat de David Koblas și promovat în IETF de către NEC Systems Laboratory. In prezent este singurul standard aprobat de IETF pentru utilizare în rețele VPN. Deși nu este cunoscut ca alte protocoale, a câștigat un suport pe seră largă din partea unor producători de marcă, cum sunt Microsoft, Netscape și IBM.
Socks v5 controlează fluxul de date la nivelul 5 OSI. Datorită acestui nivel, protocolul oferă un control al accesului mult mai detaliat decât alte protocoale care operează la niveluri inferioare, aspect care determină permiterea sau rejectarea pachetelor doar în funcție de adresele IP sursă sau destinație. Socks v5 stabilește un circuit virtual între un client și o gazdă la nivelul fiecărei sesiuni de comunicație, monitorizând și controlând accesul la baza autentificării utilizatorilor, fără a fi necesară reconfigurarea fiecărei aplicații. Datorită faptului că Socks v5 și SSL operează la nivelul de sesiune, ele prezintă abilitatea unică de a interopera peste Ipv4, IPSec, PPTP, L2TP sau orice alt protocol de nivel inferior. In plus aceste două protocoale posedă mai multă informație referitoare la aplicațiile care rulează deasupra acestora, față de protocoalele de nivel inferior, astfel încât pot oferi metode mult mai sofisticate de asigurare a securității traficului.
Principalele dezavantaje rezidă în faptul că Socks v5 adaugă un nivel de securitate prin rutarea traficului printr-un sistem proxy, ceea ce duce la performanțe în general inferioare față de protocoalele de nivel inferior. In plus el prezintă o dependență față de modul de implementare a rețelelor VPN. Deși gradul de securitate este mai ridicat în comparație cu soluțiile plasate la nivelul OSI rețea sau transport, acest supliment de securitate pretinde o administrare mult mai sofisticată a politicilor. Mai mult, pentru construirea de conexiuni printr-un sistem firewall sunt necesare aplicații client, astfel încât toate datele TCP/IP să fie transmise prin serverul proxy.
2.10 Metode de realizare a soluțiilor 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 autoritaț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 privata. Ele, deasemenea, dispun de capacități de tunelare și criptare a datelor înainte de a fi transmise în rețeaua publică. In general, o poartă de securitate se încadrează în una din urmatoarele categorii: routere, firewall, dispozitive dedicate VPN harware și software.
Router
Pentru că router-ele trebuie să examineze și să proceseze fiecare pachet care parasește rețeaua, pare normal ca în componența acestora să fie inclusă și funcția de criptare a pachetelor. Comerciantii de routere dedicate VPN, 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 situatiile î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.
Exemple:
Cisco 3660 Series Cisco 1710 Series Cisco 3620 Series
Figura 2.6 Routere folosite la VPN
Figura 2.7 Soluție VPN bazată pe routere
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
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 in 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ă).
Figura 2.8 Firewall cu VPN integrat
Această soluție, firewall cu VPN integrat prezintă avantajul unei securitați sporite (poarta de securitate a VPN-ului fiind protejata de filtrele aplicate de firewall) și, de asemenea este mult mai ușor de întreținut, facându-se practic management pentru amândouă componentele simultan
Echipamente harware dedicate
O altă soluție VPN o reprezintă utilizarea de hardware special proiectat să îndeplinească sarcinile de tunelare, criptare și autentificarea utilizatorilor. Aceste echipamente opereză de obicei ca niște punți de criptare care sunt amplasate între router-ele rețelei și legatura WAN( legatura 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.
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 diverse echipamente de rețea diferite. O simpla pornire a a unui astfel de echipament este mult mai simpla decât instalarea unui software pe un firewall, configurarea unui router și instalarea unui server RADIUS.
Chiar dacă multe din aceste echipamente hardware par ca 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 functiile unui VPN. Unele produse- cele mai scumpe- includ surse duble de alimentare și au caracteristici deosebite care asigură fiabilitatea funcționarii.
Este greu de depășit performanta 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.
Exemple:
Cisco VPN 3002 Hardware Client
Figura 2.9 Client harware VPN
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 poarta 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 ulimele sisteme de operare lansate soluții software de acest gen. Asfel, sistemul de operare Windows 2003 Server are incorporat un server VPN iar, din punct de vedere al clienților, sistemele de operare Windows 2000 Pro, respectiv Windows XP au incorporat 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 necesara 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 baza de date cu certificate digitale pe un server propriu, iar in cazul companiilor mici intervine o “terță“ parte reprezentată de o autoritate de încredere.
2.11 Principalele avantaje ale rețelelor virtuale private
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). Nu trebuie să vă temeți că datele traficate prin VPN pot fi compromise.
Oportunități, comert electronic
Veți putea 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 si distribuitorii.
Capitolul 3-REȚELE VIRTUALE PRIVATE IN WINDOWS SERVER 2003
3.1 Windows Server 2003- prezentare generală
Familia serverelor Windows Server 2003, reprezintă fundația construită pentru firmele aflate pe o piață mereu în schimbare. Windows Server 2003 promite să ofere o fundație fără precedent pentru utilizarea calculatoarelor, pentru firmele de toate mărimile.
Construit pe Windows 2000, Serverul Windows Server 2003 include toate funcționalitățile pe care un client le-ar aștepta de la un sistem de operare Windows Server și anume siguranță, securitate și scalabilitate. În plus, Microsoft a îmbunătățit și extins familia produselor Windows Server pentru a da posibilitatea firmelor să experimenteze total funcționalitatea .NET.
Familia de servere Windows include patru produse:
• Windows Web Server 2003
Un produs nou din familia de servere Windows, serverul Windows Web Server 2003 este optimizat atât pentru găzduirea pe Web cât și pentru deservirea sa.
-usor de administrat
-furnizează o platformă pentru dezvoltarea rapidă și desfășurarea
serviciilor pe Web precum și a aplicațiilor care utilizează tehnologia
Microsoft ASP.NET, o parte cheie a cadrului de lucru .NET.
-se poate gestiona cu o interfață bazată pe browser de la o stație de
lucru la distanță.
• Windows Standard Server 2003
Windows Standard Server 2003 este un sistem de operare în rețea
sigur care oferă rapid și ușor soluții pentru firme. Acest server flexibil
este alegerea ideală pentru nevoile zilnice ale firmelor de toate
mărimile.
-acceptă partajarea fișierelor și imprimantelor.
-oferă conectivitate sigură la Internet.
-permite desfășurarea centralizată a aplicațiilor din spațiul de lucru.
-oferă posibilitatea unei bogate colaborări între angajați, parteneri și
clienți.
-acceptă multiprocesarea șimetrică cu două căi și până la 4 gigaocteți
(GO) de memorie.
• Windows Enterprise Server 2003
Construit atât pentru firmele medii cât și pentru cele mari, Windows Enterprise Server 2003 oferă funcționalitatea necesară pentru infrastructura firmei, aplicațiile de tip linie de afaceri și tranzacțiile comerciale electronice.
-este un sistem de operare cu funcționare completă care acceptă până la opt procesoare.
-oferă caracteristici din clasa pentru firme cum ar fi clustering cu patru
noduri și până la 32 GB de memorie.
-este disponibil pentru computere bazate pe Intel® Itanium™.
• Windows Datacenter Server 2003
Server 2003 Construit pentru a oferi soluții critice pentru firmele care neceșită cele mai scalabile baze de date și o prelucrare a tranzacțiilor în volum mare, Windows Datacenter Server 2003 este o platformă ideală pentru consolidarea serverului.
-este cel mai puternic și cel mai funcțional sistem de operare pentru servere pe care l-a oferit vreodată Microsoft.
-acceptă o multiprocesare șimetrică cu până la 64 de căi.
Avantajele familiei Windows Server 2003
Windows Server 2003 oferă patru avantaje primare care vă dau posibilitatea să:
Vă derulați afacerea pe cel mai sigur server Windows
Server 2003 este construit pe Windows 2000 cu îmbunătățiri suplimentare și caracteristici care vă pregătesc firma pentru .NET. Este arhitectura de calcul cea mai cuprinzătoare, puternică și flexibilă oferită de Microsoft.
Serverul Windows Server 2003 asigură fundația solidă necesară pentru construirea unui mediu de calcul cuprinzător, integrat și flexibil care dă clienților cel mai mare răspuns la investițiile lor IT de astăzi și de mâine.
Construiți aplicații inovatoare pe o platformă revoluționară de dezvoltare
Windows Server 2003 este construit pe standardele industriale care permit clienților să-și extindă aplicațiile existente și să-și dezvolte rapid unele noi.
Dezvoltatorii pot să construiască direct pe serverul de aplicație utilizând serviciile Web precum și codul administrat și apoi vor rula aceste aplicații pe orice platformă de aplicații Web.
Acest nivel de dezvoltare facilă a aplicației încurajează înnoirea procesului afacerii și sporește posibilitățile afacerii atât intern cât și extern.
Îmbunătățiți comunicarea și colaborarea angajaților din firmă
Familia de servere Windows Server 2003 ajută angajații să comunice mai bine și să lucreze mult mai ușor împreună utilizând instrumentele promovate de colaborare în echipă și comunicațiile sigure în timp real. De asemenea, permite datelor mobile sigure precum și fluxurilor de media să fie livrate unui mare număr de echipamente conectate.
Deoarece serverul este disponibil în mod continuu, angajații pot să acceseze informațiile din orice loc, în orice moment și pe orice echipament existent în firmă care îmbunătățește productivitatea.
Vă conectați sigur cu clienții
Serverul Windows Server 2003 ajută firmele să ajungă în mod sigur la clienții lor și să îmbunătățească calitatea fiecărei legături. Prin utilizarea instrumentelor ce se pot particulariza și a metodelor flexibile de comunicare cum ar fi fluxurile de media, firmele au posibilitatea să-și adapteze serviciile și comunicațiile în vederea îndeplinirii dorințelor clienților.
Windows Server 2003 interacționeză complet cu serverele bazate pe Windows 2000. Dacă utilizați deja un server Windows 2000, aveți posibilitatea să faceți ușor un upgrade și să beneficiați de multiplele extenșii din serverul Windows Server 2003
Serviciile oferite de oricare din aceste produse sunt:
Servicii Web și de aplicații:
• Internet Information Services 5.0 (IIS)
• Mediul de programare Active Server Pages (ASP)
• Interpretor XML
• Windows DNA 2000
• Platformă multimedia
• Aplicații cu suport Active Directory
• Web Folders
• Motor de telefonie Web
• Tipărirea pe Internet
• Suport pentru sisteme cu 8 GB de memorie
• Performanță ASP îmbunătățită
• Protecția fișierelor Windows
• Certificare de driver
• Protecția aplicațiilor IIS
• Certificarea aplicației și protecția DLL-urilor
Servicii de securitate:
• Suport pentru cele mai recente standarde de securitate
• Autentificare Kerberos
• Infrastructură cu cheie publică – Public Key Infrastructure (PKI)
• Suport pentru carduri inteligente
• Criptarea sistemului de fișiere
• Set de instrumente pentru configurarea securității – Security Configuration
Toolset (SCTS)
• Gestionarea politicii de grup PKI
Comunicații și rețele:
• Comunicații securizate în rețea
• Serviciu de rutare și acces de la distanță
• Virtual private networking (VPN)
• DNS dinamic
• Partajarea conexiunii Internet
• Rețele
Integrare multi-platforme:
• Interoperabilitate ridicată cu calculatoarele client
• Interoperabilitatea aplicațiilor și directoarelor
• Interoperabilitatea cu servere și mainframe-uri
Servicii de terminal:
• Servicii de terminal
Servicii de fișiere și de tipărire:
• Distributed File System (DFS)
• Cote de disc
• Gestionarea ierarhică a stocării
• Gestionare dinamică a volumelor
• Backup și recuperare
3.2 VPN-Tehnologii.Protocoale.Metode de autentificare
În cadrul sistemului de operare Windows Server 2003 există 2 tipuri de tehnologii VPN pentru acces la distanță:
1. Point-to-Point Tunneling Protocol (PPTP)
-folosește ca metodă de autentificare protocolul Point-to-Point(PPP) iar pentru criptarea datelor folosește metoda Microsoft Point-to-Point Encryption (MPPE)
2. Layer Two Tunneling Protocol cu IPSec(L2TP/IPSec)
– folosește ca metodă de autentificare protocolul Point-to-Point(PPP) la nivel de utilizator, iar la nivel de calculator folosește metode de autentificare bazate pe certificate digitale, autenticitatea datelor, intergritatea datelor.
Pentru că, atât PPTP cât și L2TP depind foarte mult de caracteristicile specificate original pentru PPP(Point-to-Point Protocol), trebuie examinat cu atenție acest protocol.
PPP a fost proiectat pentru transferul de date prin intermediul conexiunilor dial-up și conexiunile dedicate punct-la-punct. PPP încapsuleaza pachetele IP în interiorul cadrelor PPP, și apoi le transmite pe o legătură punct-la-punct. Inițial a fost definit ca un protocol care se folosește între un client dial-up și un server de acces. Există patru faze distincte în negocierea unei conexiuni PPP. Fiecare dintre aceste patru faze trebuie să se incheie cu succes înainte ca datele să fie transferate.
Faza 1 – stabilirea legăturii
PPP folosește protocolul Link Control Protocol (LCP) pentru a stabili, întreține și încheia o conexiune logică punct-la-punct. În timpul fazei 1, sunt selectate opțiuni pentru comunicația de bază. De exemplu sunt selectate protocoalele de autentificare, dar ele nu sunt implementate până la faza 2, faza de autentificare a conexiunii. De asemenea, în timpul fazei 1 se ia decizia în legătură cu folosirea sau nu a compresiei și/sau criptării datelor . Alegerea efectivă a algoritmilor de compresie și criptare precum și a altor detalii are loc în timpul fazei 4.
Faza 2 –autentificarea utilizatorilor
În faza 2 , clientul trimite datele de autentificare către serverul de acces de la distanță. O schemă securizată de autentificare asigură protectia impotriva atacurilor de tip”răspuns înapoi” sau “impersonalizarea clientului”. Un atac de tip “răspuns înapoi” are loc atunci când o terță parte monitorizează conexiunea realizată cu succes și folosește pachetele capturate pentru a simula răspunsul clientului, obtinând astfel o conexiune autentificată .
Un atac de tipul“impersonalizarea clientului” are loc atunci când o terță parte preia controlul unei conexiuni autentificate. Intrusul asteaptă până ce conexiunea a fost autentificată, păcălește parametrii de comunicație, deconectează utilizatorul autentificat și preia controlul asupra conexiunii autentificate.
Windows Server 2003 și Windows XP suportă următoarele protocoale PPP de autentificare:
Pentru conexiuni PPTP, se pot folosi doar MS-CHAP, MS-CHAP v2, or EAP-TLS.Doar aceste trei protocoale beneficiază de un mecanism pentru a genera aceeași cheie criptografică atât pentru clientul VPN cât și pentru server. MS-CHAP și MS-CHAP v2 sunt protocoale de autentificare bazate pe parole. În cazul în care nu se folosesc certificate individuale sau smart-card-uri, protocolul MS-CHAP v2 este recomandat, fiind un protocol de autentificare mai puternic decât MS-CHAP, el furnizând autentificare reciprocă( client catre server și server catre client)
Protocolul EAP-TLS este folosit în relație cu infrastructura de certificare și folosește fie certificate, fie smart-card-uri. Cu acest protocol, clientul VPN iși trimite certificatul individual pentru autentificare, și serverul trimite certificatul pentru calculator pentru autentificare. Aceasta este cea mai puternică metodă de autentificare, fiindcă nu se bazează pe parole.
Se poate folosi și o “terță” parte, ca autoritate de certificare.Totul depinde de puterea financiară a companiei.
Pentru conexiunile L2TP/IPSec se poate folosi orice protocol de autentificare, deoarece autentificarea se produce după ce clientul și serverul au stabilit un canal de comunicație cunoscut ca “o asociere de securitate IPSec”.
Pe parcusul fazei 2 a configurării legăturii PPP, serverul de acces la rețea colectează datele de autentificare pe care la validează în baza proprie de date sau la baza de date a unui server central de autentificare, cum ar fi un controler de domeniu sau un server RADIUS
Faza 3 : PPP Callback Control
Implementarea Microsoft a PPP include și o faza optională de control prin “sunat inapoi”
Această fază folosește protocolul Callback Control (CBCP), imediat după faza de autentificare. Dacă este configurat pentru “sunat inapoi”, atât clientul cât și serverul de acces la rețea se deconectează după autentificare. Apoi serverul de acces sună clientul înapoi la numărul specificat. Acest lucru asigură un nivel suplimentar de securitate pentru conexiunile dial-up. Serverul de acces, practic permite conexiuni doar de la clienții care fizic, folosesc un numar de telefon specific. Această metodă este folosită doar pentru conexiunile dial-up, nu și pentru conexiunile VPN.
Faza 4 –invocarea protocoalelor nivelului de rețea
Odata ce faza 3 s-a terminat, PPP invocă diverse protocoale de rețea de control, care au fost selectate în timpul fazei 1 ( stabilirea legăturii ) pentru a configura protocolaele folosite de clientul de la distanță.
În momentul în care cele patru faze ale negocierii au fost îndeplinite, PPP începe să transfere date între cele două capete. Fiecare pachet de date transmis este împachetat într-un PPP header, care este îndepărtat de sistemul care receptionează. Dacă comprimarea datelor a fost selectată în faza 1 și negociată in faza 4, datele sunt comprimate înaintea transmisiei. Daca criptarea datelor a fost selectată și negociată, datele sunt criptate înaintea transmisiei. Daca atât criptarea, cât și comprimarea sunt negociate, datele sunt înainte comprimate și apoi criptate.
3.3 Protocolul de tunelare Punct-la-Punct (PPTP)
Introdus in Windows NT 4.0, PPTP folosește protocolul Point-to-Point(PPP) pentru autentificare la nivel de utilizator și metoda de criptare Microsoft Point-to-Point Encryption (MPPE) pentru criptarea traficului IP. Odata cu utilizarea verșiunii 2 protocolului de autentificare bazat pe parolă Microsoft Challenge Handshake Authentication Protocol (MS-CHAP v2), PPTP a devenit o tehnologie VPN extrem de sigură.Pentru o autentificare care nu se bazează pe parolă se poate folosi Extensible Authentication Protocol-Transport Level Security (EAP-TLS), care asigură suport pentru smart-card-uri.Acest protocol are avantajul că nu are nevoie de o infrastructura de certificare, dar prezintă dezavantaje legate de faptul că nu asigură decât confidențialitatea datelor, nu și integritatea lor sau autenticitatea originii sursei.
Este folosit pe scara larga, având și avantajul unei configurări usoare.
PPTP încapsulează cadrele PPP într-un format IP pentru transmisia printr-o rețea IP, cum ar fi Internetul. PPTP poate fi folosit pentru conexiuni VPN de tipul acces de la distanță sau router-to-router. Acest protocol de tunelare folosește o conexiune TCP pentru întreținerea unui tunel și o versiune modificată a metodei de iîcapsulare Generic Routing Encapsulation (GRE), pentru încapsularea cadrelor ce urmează a fi transmise prin tunel.
Figura 3.1 Structura unui pachet PPTP
3.4 Protocolul de tunelare Layer Two Tunneling Protocol (L2TP)
Protocolul L2TP folosește protocolul Point-to-Point(PPP) pentru autentificarea la nivel de utilizator, iar ca metodă de criptare folosește IPSec pentru criptarea traficului IP. Acest protocol asigură integritatea datelor și autenticitatea originii datelor pentru fiecare pachet. L2TP/IPSec are nevoie de o infrastructură de certificare pentru a aloca certificate calculatoarelor.
L2TP reprezintă o combinatie a protocoalelor PPTP și L2F, o tehnologie propusă de Cisco Systems, Inc. Acest protocol preia cele mai bune caracteristici de la PPTP și L2F.
Pentru transmiterea informatiei prin intermediul rețelelor IP, folosește protocolul UDP și o serie de mesaje pentru întreținerea tunelului.Folosește, de asemenea protocolul UDP și pentru încapsularea cadrelor PPP.
Figura 3.1 Structura unui pachet L2TP
Pentru criptarea traficului, în cadrul implementării L2TP, Microsoft folosește metoda IPSec. Combinația dintre L2TP(protocol de tunelare) și IPSec( metoda de criptare) este cunoscută sub numele de L2TP/IPSec
Figura 3.3 Criptarea cu IPSec
3.5 Comparatie PPTP cu L2TP
Atât PPTP, cât și L2TP folosesc PPP pentru forma pachetelor de date, adaugând apoi headere pentru transportul prin Internet. Oricum, există urmatoarele diferențe: cu PPTP, criptarea datelor începe după ce conectarea PPP a fost făcută; cu L2TP criptarea datelor începe înainte de stabilirea conexiunii PPP prin negocierea unei asocieri de securitate IPSec.
Conexiunile PPTP folosesc pentru criptare metoda MPPE, metodă care se bazează pe algoritmul de criptare Rivest-Shamir-Aldeman. Acest algoritm folosește chei de criptare de 40, 50, sau 128 de biti. Conexiunile L2TP folosesc o metodă de criptarre bazată pe algoritmul Data Encryption Standard (DES). Acest algortim folosește fie o cheie de 56 biti(DES) fie trei chei de 56 biti(3-DES).
Conexiunile PPTP au nevoie doar de autentificare la nivel de utilizator. Coenxiunile L2TP/IPSec au nevoie de aceeași autentificare la nivel de utilizator, și în plus de o autentificare la nivel de calculator folosind certificate de calculator.
Avantaje L2TP/IPSec fata de PPTP:
-IPSec asigură autenticitatea originii datelor pentru fiecare pachet( dovada ca datele au fost trimise de utilizatorul autentificat).
-integritatea datelor (dovada ca datele nu au fost modificate în tranzit).
-confidențialitatea datelor ( altfel spus, criptarea datelor, prevenind interceptarea pachetelor).
-conexiunile L2TP/IPSec asigură o autentificare puternică având nevoie atât de autentificare la nivel de utilizator, cât și de autentificare la nivel de calculator.
-schimbul de pachete PPP în timpul fazei de autentificare nu are loc niciodată sub o formă necriptată, pentru că conexiunea PPP se realizează dupa ce se stabilește asocierea de securitate. Daca nu ar fi criptate, aceste pachete ar putea fi interceptate, și astfel s-ar putea determina parola utilizatorului.
Avantaje PPTP fata de L2TP/IPSec
-PPTP nu are nevoie de o infrastructură de certificare, pe cand L2TP/IPSec are nevoie de acest lucru pentru a elibera certificate pentru serverul VPN și clienții VPN
-Clienții PPTP pot fi așezați în spatele unui translator de adrese de rețea(NAT- network address translator).
Cu ajutorul sistemului de operare Windows Server 2003 și serviciului de rutare și acces de la distanță se poate realiza orice aplicatie VPN, indiferent de soluția pe care o alegem: acces de la distanță, intranet VPN sau extranet VPN
3.6 VPN- acces de la distanță in Windows Server 2003
Un client(un calculator) stabilește o conexiune VPN la distanță cu o rețea privată. Serverul VPN asigură accesul către întreaga rețea la care este conectat.
Clientul VPN se autentifică la serverul VPN, și reciproc, serverul se autentifică la client.
Calculatoarele pe care rulează următoarele sisteme de operare, Windows Server 2003, Windows XP, Windows 2000, Windows NT verșion 4.0, Windows Millennium Edition, și Windows 98 pot iniția conexiuni VPN de la distanță catre un server VPN care ruleaza pe un sistem de operare Window Server 2003.
Figura 3.4 VPN – acces de la distanță
Componentele principale ale unei structuri VPN-acces de la distanță sunt:
-Clienții VPN
-Infrastructura Internet
-Serverul VPN
-Infrastructura Intranet
-Infrastrucura pentru autentificare și autorizare
-Infrastructura pentru certificare
Figura 3.5 Infrastructura unei soluții VPN-acces de la distanță
3.6.1 Clienții VPN
Un client VPN poate fi orice calculator capabil sa creeze o conexiune PPTP folosind MPPE sau o conexiune L2TP folosind criptarea IPSec .
Clienții VPN sunt , de obicei, utilizatori care operează pe laptopuri și doresc să se conecteze la intranetul local, pentru a-și accesa mail-ul sau alte resurse din rețea.
Tot prin VPN, se poate conecta și un administrator de la distanță pentru a face anumite configurații.
Un client VPN se poate configura manual sau folosind aplicația Connection Manager, disponibilă in Windows Server 2003. Pentru a configura manual, se folosește New Connection Wizard din folder-ul Network Connections pentru a crea o conexiune VPN către adresa IP sau numele DNS al server-ului VPN.
Daca clienții VPN vor sa inițieze conexiuni de tip L2TP sau sa folosească certificate pentru autentificare la nivel de utilizator, aceste certificate trebuiesc instalate pe calculatoarele respective . Aceste certificate se cer de la o autoritate de certificare din intranetul respectiv.
3.6.2 Infrastructura Internet
Pentru a creea o conexiune VPN prin intermediul Internetului, trebuiesc îndeplinite anumite condiții, și anume:
-numele serverului VPN trebuie să fie solvabil(să se poată accesa serverul și după numele său, nu doar după adresa IP)
-serverul trebuie să fie accesibil (conexiune la Internet)
-traficul VPN trebuie să fie permis către și dinspre server
Pentru a ne asigura că putem accesa serverul dupa numele său(VPN1.firma.ro), trebuie să ne asigurăm caă acestui nume îi corespunde adresa IP exactă a serverului VPN. Altfel spus, serviciul DNS trebuie configurat corect.
Pentru a fi accesibil, serverului VPN îi trebuie alocată o adresă IP publică, către care pachetele vor fi înaintate de infrastructura de rutare a Internetului.
În cazul în care se folosește un firewall pentru protecție, există două situații:
1.Serverul VPN este conectat direct la Internet și firewall-ul este între serverul VPN și intranet.
În acest caz, serverul VPN trebuie configurat să facă filtrarea pachetelor pentru traficul permis de VPN să treacă, iar firewall-ul poate fi configurat să permită anumite tipuri de trafic(acces de la distanță).
2.Firewall-ul este conectat direct la Internet, iar serverul VPN este între firewall și intranet.
În acest caz, atât firewall-ul cât și serverul VPN sunt conectate la un segment de rețea cunoscut ca”perimetru de rețea” sau “zona demilitarizata”.
Atât firewall-ul cât și serverul VPN trebuiesc configurate să facă filtrarea pachetelor pentru traficul permis de VPN.
3.6.3 Serverul VPN
Un server VPN reprezintă un calculator pe care rulează sistemul de operare Windows Server 2003 și este activat serviciul de rutare și acces de la distanță (“Routing and Remote Access service.”)
Pentru a putea vorbi despre VPN în Windows Server 2003, trebuie să spunem câteva cuvinte despre rutare și despre serverul de rutare furnizat de acest sistem de operare. Întreg conceptul de VPN se bazează pe rutare și acces de la distanță. Aceste funcții sunt oferite în Windows Server 2003 de serviciul Routing And Remote Access. Acest serviciu este instalat implicit, dar în mod dezactivat. El reprezintă practic un software de rutare care poate fi configurat să conecteze 2 segmente de rețea separate.
Rutarea reprezintă procesul de transfer al datelor între rețele , practic transferul datelor de la o rețea locală la alta rețea locală. Precum o punte (bridge) conectează segmente de rețea și partajează traficul în funcție de adresele hardware ( adresele MAC) așa și un ruter primește și înaintează traficul spre căile potrivite, în funcție de adresarea software (adresele IP).Punțile operează la nivelul 2 OSI(nivelul legătură de date).Ruterele operează la nivelul trei, nivelul de rețea, ele fiind denumite echipamente de nivelul trei. În rețelele IP, rutarea este făcută conform tabelelor de rutare. Toate gazdele folosesc tabele de rutare pentru a înainta traficul IP. Ruterele IP se deosebesc de gazde prin faptul că ele folosesc aceste tabele de rutare pentru a înainta traficul care provine de la alt ruter sau altă gazdă
3.6.4 Serviciul Rutare și acces de la distanță( Routing And Remote Access)
Serviciul “Rutare și acces de la distanță” în Windows Server 2003 reprezintă practic un software de rutare multiprotocol care poate fi integrat cu usurinta cu caracteristicile Windows, precum conturile de securitate și politicile de grup. Acest serviciu poate fi configurat pentru rutare între:
-doua rețele locale (LAN-to-LAN)
-o rețea locală și o rețea globală (LAN-to-WAN)
De asemenea poate face rutare pentru rețele virtuale private sau servere de traducere a adreselor (Network Address Translation (NAT)).
Suplimentar, acest serviciu prezintă multe caracteristici pentru utilizarea serviciilor DHCP sau filtrarea pachetelor. Are suport incorporat pentru protocolae dinamice de rutare precum Routing Information Protocol (RIP) și Open Shortest Path First (OSPF).
Ruterele hardware includ multe porturi incorporate, fiecare dintre ele fiind conectat la un segment de rețea distinct. Astfel se poate face rutare de la un port către alt port. Pentru serviciul de rutare și acces de la distanță, numărul segmentelor de rețea între care se poate face rutare este limitat de numărul interfetelor de rețea instalate în calculatorul pe care rulează Windows Server 2003
Configurarea serviciului de rutare și acces la distanță se face foarte usor folosindu-ne de interfața grafică pusă la dispoziție de sistemul de operare.
Funcțiile unui server VPN sunt următoarele:
– verifică dacă sunt încercări de conectare pentru conexiuni PPTP sau dacă sunt încercări pentru relizarea unor “asocieri de securitate” pentru conexiuni L2TP.
-se comportă ca un ruter pentru clienții VPN și resursele din intranet, permițând traficul n ambele direcții.
-se comportă ca un capăt de tunel VPN față de clientul care folosește tunelul( de obicei clientul VPN)
– se comportă ca un capăt de conexiune VPN fată de clientul VPN
Serverul VPN are de obicei două sau mai multe interfețe de rețea( una conectată la Internet și una sau mai multe conectata la intranet (sau diferite segmente de rețea). Cu Windows Server 2003 se pot creea până la 1000 de conexiuni VPN folosind protocolul PPTP și tot atâtea conexiuni folosind protocolul L2TP. Daca se ajunge la numărul maxim de clienți VPN admiși simultan, următoarele conexiuni VPN sunt refuzate, până cand numărul de clienți scade sub limita maximă.
La configurarea serviciului de rutare și acces de la distanță, suntem întrebați ce rol dorim sp îdeplinească calculatorul respectiv.
Pentru un server VPN trebuie aleasă opțiunea de configurare “Remote access (dial-up or VPN)”
Când configurăm un server VPN, trebuie să avem în vedere următoarele:
-care interfață de rețea se va conecta la Internet și care la rețeaua locală
-modul de configurare a adreselor IP pentru interfețele serverului ( este indicat ca adresa interfeței conectată la Internet să fie introdusă manul și nu alocată automat de un server DHCP) precum și modul în care vor fi alocate adresele IP pentru clienții VPN( se pot aloca adrese automat de către un server DHCP sau alocarea adreselor o va face chiar serverul VPN împărțind adrese dintr-o “plaja” pre-definita )
-modalitatea de autentificare( autentificarea se poate face, fie folosind politicile Windows, fie folosind un server RADIUS, dedicat)
3.6.5 Infrastructura Intranet
Reprezintă, practic rețeaua locală unde se află resursele pe care un client VPN dorește să le acceseze de la distanță. Trebuie ținut cont de felul în care se face alocarea adreselor, astfel ca un client VPN să poată accesa aceste resurse din exterior.
Infrastructura pentru autentificare
Rolul unei infrastructuri pentru autentificare este:
-autentifică clienții prin diferite metode
-autorizează conexiunile VPN
-înregistrează când și cine a stabilit o conexiune sau a încheiat o conexiune (pentru ținerea unor evidențe)
O astfel de infrastructură este alcătuită din:
-server VPN
-server RADIUS de autentificare
-controler de domeniu
În Windows Server 2003, un server VPN poate fi configurat fie pentru autentificare folosind politicile Windows, fie folosind un server RADIUS
Dacă se configurează o autentificare Windows, serverul VPN relizează autentificarea conexiunii comunicând cu un controler de domeniu printr-un canal securizat. Controlerul de domeniu verifică în politicile sale de securitate și autorizează sau nu conexinea.
Daca se configurează autentificare pe baza unui server RADIUS, serverul VPN se bazează în totalitate pe serverul RADIUS, acesta făcând atât autentificarea, cât și autorizarea conexiunii.
Un aspect important al metodelor de autentificare cât și al securitații îl reprezintă ”politicile de acces de la distanță”( Remote Access Policies )
Acestea reprezintă un set de reguli care definesc modul în care conexiunile sunt fie acceptate, fie refuzate. Pentru conexiunile acceptate se pot defini anumite restricții. Pentru fiecare regulă există una, sau mai multe condiții, un pachet cu setări ale profilului, și o setare pentru permiterea accesului de la distanță. Incercările de conectare sunt evaluate în funcție de aceste politici, încercând să se determine dacă sunt îndeplinite toate condițiile ale fiecărei reguli. Dacă nu sunt îndeplinite, conexiunea este respinsă.
Daca conexiunea îndeplinește toate condițiile și îi este permis accesul, acesteia i se aplică un set de restricții.
Politicile de acces de la distanță sunt alcătuite din:
-condiții
-permisiunea de acces
-setări ale profilului
Condiții:
Reprezintă unul sau mai multe atribute care sunt comparate cu atributele conexiunii. Dacă sunt mai multe condiții, atunci toate aceste condiții trebuiesc îndeplinite.
Pentru conexiunile VPN, cele mai folosite condiții sunt:
NAS-Port-Type (felul portului)-punând condiția ca felul portului să fie VPN, se specifică astfel toate conexiunile VPN
Tunnel-Type (felul tunelului)-se pot specifica politici diferite pentru conexiunile PPTP sau L2TP
Windows-Groups (grupuri de Windows)-se poate permite sau nu accesul pe baza apartenenței la anumite grupuri
Permisiunea de acces:
Aceasta setare se folosește pentru a permite sau a nu permite accesul unei conexiuni, dacă permisiunea accesului de la distanță pentru contul utilizatorului repspectiv este potrivită pe opțiunea “Control access through Remote Access Policy”.
Setări ale profilului:
Reprezintă un set de proprietăți care sunt aplicate unei conexiuni când este autorizată.
3.6.6 Infrastructura pentru certificare
La conexiunile L2TP, pentru a putea utiliza o metodă de autentificare bazată pe certificate sau smart-carduri, trebuie să existe o infrastructură de certificare, numită “infrastructura de chei publice”(PKI). Practic, trebuie să existe o autoritate de cetificare (certification authority –CA) care să emită certificate atât pentru server cât și pentru client. Aceste certificate se instaleaza pe calculatorul client și pe server, urmând ca la conexiunile ulterioare să fie validate de autoritatea de certificare.
La conexiunile PPTP nu este necesară o asemenea infrastructură pentru certificare.
Capitolul 4-Implementarea unei soluții VPN pentru o firmă de transport
4.1 Factori si cerințe de proiectare
Tema acestei lucrări o constituie proiectarea unei aplicații VPN care să deservească o firmă de transporturi cu un sediu central în București și trei filiale în țară(Pitești, Iași, Timișoara).Zilnic, filiale din țara trebuie să trimită date către sediul central.Pentru a putea face acest lucru, există două posibilități: fie se creează un Intranet cu toate locațiile pe baza unei conexiuni permanente (linii inchiriate) între sediul central și restul locațiilor, fie se optează pentru o soluție de tip VPN. Prima variantă implică costuri foarte mari(menținerea unei conexiuni permanente este foarte scumpă).Astfel s-a optat pentru o soluție VPN.
În proiectarea unei aplicații VPN trebuie ținut cont de urmatorii factori:
-cați utilizatori sunt în fiecare locație?
-ce fel de legătură la Internet este necesară? Va fi o legătură permanentă sau o legătură la cerere?
-traficul generat de fiecare locație
-dacă va fi o conexiune la cerere,cât de des se va stabili conexiunea la Internet?Gradul de fiabilitate dorit al conexiunii?
-dacă va fi o conexiune permanentă, care este timpul minim de funcționare tolerat(uptime)?este necesară o a doua conexiune pe post de back-up?
De asemenea, o soluție VPN trebuie să furnizeze obligatoriu următoarele servicii:
Autentificarea utilizatorilor- trebuie să verifice identitatea utilizatorului și să permită accesul VPN numai utilizatorilor autorizați. Trebuie, de asemenea să furnizeze înregistrari despre cine și când a accesat informația.
Management-ul adreselor IP- trebuie să aloce adrese IP clienților din rețeaua privată și să se asigure că aceste adrese rămân private.
Criptarea datelor- informația transportată prin rețeaua publică trebuie să nu poată fi citită de clienții neautorizați din rețea.
Management-ul cheilor de criptare- trebuie să genereze și să reînoiască cheile de criptare pentru clienți și pentru server
Suport pentru diverse protocoale- trebuie să poată lucra cu protocoalele obișnuite folosite in rețeaua publică(IP, IPX, etc)
O soluție VPN bazată pe protocolul “ Point-to-Point Tunneling”(PPTP) sau “Layer 2 Tunneling”(L2TP) îndeplinește toate aceste cerințe.
Pe baza celor spuse mai sus, soluția optimă pentru firma noastra de transport o reprezintă o aplicație VPN de tipul “Acces de la distanță-Remote Access”.
Va exista un server VPN la sediul central, iar clienții se vor conecta prin linie telefonică(dial-up) de câte ori este nevoie la un furnizor local de servicii Internet și astfel vor accesa rețeaua publică Internet. Pe baza acestei conexiuni, clientul VPN va iniția un “tunel” între el și serverul VPN, realizându-se astfel un transfer de date securizat.
Aceasta reprezintă soluția optimă în cazul nostru, ținând cont că există un singur client în fiecare locație, volumul de date transferat este mic(5-10 MB) și nu este necesară o conexiune permanentă, fiind suficientă o conexiune de maxim 3 ore.
Implementarea se va realiza în două etape:
-implementarea la sediul central
-implementarea la filiale(clienți)
4.2 Implementarea la sediul central-București(Server VPN)
La sediul central avem:
-un calculator server(Windows Server 2003)
-5 calculatoare stații de lucru(Windows XP)
-o imprimantă de rețea
De asemenea avem și o legătură permanentă la Internet.
Calculatorul server va avea funcția de server pentru rețeaua locală formată din cele cinci calculatoare și funcția de server VPN pentru clienții din țară.
Configurare server:
Server-ul va avea două interfețe de rețea:
-o interfață care va fi conectată la Internet;aceasta va fi configurată manual cu adresa IP furnizată de ISP(193.200.150.17)
-o interfață care va fi conectată la rețeaua locală;aceasta va fi configurată manual cu adresa privată 192.168.0.1
Pentru ca, un utilizator să se poată conecta de la distanță, este obligatoriu ca el să aibă un cont de utilizator în cadrul domeniului sau grupului de lucru gestionat de server.
În cazul nostru există un grup de lucru(NumeFirma), în cadrul caruia creem un grup de utilizatori ”FILIALE”. Mai departe, în cadrul grupului de utilizatori creem utilizatorii care se vor conecta de la distanță, practic clienții VPN.Astfel vom avea urmatorii utilizatori, cu nume generice: “Pitești”, “ Timișoara ” , “Iași”. La creearea utilizatorilor, se vor crea practic conturi de acces în rețea. Aceste conturi se vor conforma politicilor de securitate stabilite în Windows Server 2003. Este o autentificare bazată pe nume de utilizator și parolă.
Pentru fiecare utilizator trebuiesc setate anumite proprietați, pentru a putea avea acces de la distanță. Asfel, la fiecare cont de utilizator se va merge la “Proprietați” și apoi la butonul “Dial-in”.
Figura 4.1 Setarea proprietăților de “dial-in”
Aici putem stabili dacă utilizatorul respectiv are sau nu drept să se conecteze la distanță. Ca o măsură suplimentară de securitate, se poate seta opțiunea “Verify Caller ID”, adică să se permită accesul, numai daca se conectează de la un număr de telefon predefinit.
În cazul nostru, vom seta ca la toți utilizatorii să fie permis accesul pe baza politicii de securitate a serverului de acces la distanță(“Control access through Remote Access Policy”).Aceasta va fi configurată ulterior.
Acum urmează să configurăm serverul de rutare și acces în rețea (“Routing and Remote Access”).
În stare initială, serverul de rutare și acces în rețea este instalat, dar nu este activat.Pentru configurare există un “vrajitor”(wizard) care ne îndrumă pas cu pas și ne arată diverse opțiuni, din care noi le vom alege pe cele care se potrivesc cu implementarea noastră.
Prima dată suntem întrebați care sunt funcțiile pe care serverul nostru le va îndeplini:
Figura 4.2 Alegerea funcțiilor care vor fi îndeplinite
Alegem a treia opțiune, adică serverul să accepte conexiuni securizate VPN de la clienții de la distanță iar clienții locali să se poată conecta la Internet prin intermediul acestui server.Ei vor folosi pentru a accesa Internet-ul o singură adresă publică(adresa furnizată de ISP).
Următorul pas este alegerea interfeței care se conectează la Internet:
Figura 4.3 Alegerea interefeței conectate la Internet
Selectăm interfața care se conectează la Internet( aceasta este interfața configurată cu adresa IP de la ISP). Tot aici avem ocazia de a activa și un firewall (în cazul în care nu avem o soluție special pentru acest lucru).
Ca în orice proiect de implementare a unei soluții bazate pe rețelistică, și în cadrul soluției VPN se pune problema alocării adreselor IP.
Figura 4.4 Modalitatea de alocare a adreselor
Avem două opțiuni:
– alocarea să se facă automat, iar atunci adresele vor fi alocate de un server DHCP, în cazul în care există un astfel de server în rețea. Daca nu există, chiar acest server va genera aleator și va aloca aceste adrese.
-alocarea adreselor să se facă dintr-o plajă de adrese specificată de utilizator.
Vom alege ultima variantă, în primul rand pentru că nu avem un server DHCP în rețeaua noastră, iar in al doilea rând, cred că este mai bine ca cel care configurează serverul VPN sa știe ce fel de adrese au clienții VPN.
Vom seta ca adresele alocate pentru clienții VPN să fie de la 192.168.0.10 pană la 192.168.0.20.
Figura 4.5 Plaja de adrese
Aici există 2 aspecte importante:
-adresele specificate trebuie să fie din aceeași clasă de IP-uri cu adresele clienților locali, pentru că, altfel, clienții de la distanță nu vor putea accesa resursele clienților locali și invers;practic, ei nu se vor “vedea” între ei
-am definit plaja de adrese să poată cuprinde 11 adrese, chiar dacă există doar 3 clienți ; am făcut acest lucru pentru că, în eventualitatea extinderii firmei, se pot deschide mai multe filiale, moment în care server-ul va putea să aloce adrese pentru noii clienți; de asemenea, oamenii din conducere poate doresc să acceseze resursele companiei de acasă, de pe calculatoarele personale, sau de pe laptopuri, în momentul cand sunt plecați în țară la anumite negocieri.Acest lucru se poate face prin VPN, iar serverul trebuie sa fie pregătit să aloce adresele necesare.
Odată problema adreselor IP rezolvată, suntem întrebați cine dorim să facă autentificarea utilizatorilor:
Figura 4.6 Autentificarea
Dupa cum am mai spus, autentificarea poate fi făcută chiar de server-ul de acces, sau de către un server RADIUS dedicat, proiectat special să facă acest lucru.La companiile mari, cu mai multe servere de acces este recomandată soluția cu server RADIUS.
În cazul nostru, vom opta pentru prima variantă, și anume că autentificarea va fi făcută de către server-ul de acces. Ulterior vom stabili și niște politici de securitate, pentru a fi siguri că nu se vor conecta utilizatori neautorizați.
La sfârșit, ne este prezentat un rezumat al tuturor opțiunilor alese:
Figura 4.7 Rezumatul opțiunilor alese
În momentul acesta serverul nostru este configurat pentru a accepta conexiuni securizate VPN din Internet de la clienții din țară și permite accesul la Internet pentru utilizatorii locali.
Ca implicit, serverul de rutare și acces de la distanță permite 128 conexiuni PPTP și 128 conexiunii L2TP. În funcție de nevoi, se mai pot adăuga sau se mai pot scoate porturi.
Toate configurațiile care au fost făcute, se pot modifica oricând, Windows Server 2003 oferind o interfață grafică foarte ușor de utilizat:
Figura 4.8 Interfața server de rutare și acces la distanță
Acum, avem conturi de utilizatori, avem și serverul de rutare și acces de la distanță configurat. Mai trebuie să stabilim niște politici de securitate pentru accesul de la distanță, pentru că, de fapt, asta este scopul unei soluții VPN:securitatea.
Pentru creearea politicilor de securitate, avem câmpul “Remote access polices”. Aici, putem defini noi politici de securitate. Și pentru acest lucru există un “vrajitor”, care ne îndrumă printre opțiunile posibile.
Politicile se pot aplica pe grupuri de utilizatori sau pe utilizatori individuali.
Există o mulțime de variante pentru a restricționa sau a permite accesul de la distanță.Se pot face astfel de politici, ținând cont de tipul conexiunii(VPN, Dial-up, Wireless), metoda de autentificare (MS-CHAPv2, EAP), puterea de criptare(IPSec 56-bit DES, MPPE 56-bit,etc), tipul tunelui(PPTP,L2tP), număr de telefon de la care a sunat și multe altele. Combinând opțiunile de la fiecare variantă(tip conexiune, putere criptare, autentificare) se pot face restricții destul de riguroase.
Dar partea de securitate nu se oprește aici. După ce îndeplinește toate condițiile puse de politicile de securitate(absolut toate, fiindcă dacă una nu este îndeplinită, conexiunea este respinsă), conexiunii autentificate i se aplică un profil pentru alte restricții. La definirea profilului, se poate stabili cât timp poate conexiunea să rămână deschisă, perioada din zi și din saptămână când (ora și ziua) are acces, se pot defini filtre pentru traficul din cadrul conexiunii, și încă multe alte opțiuni.
Pe baza acestor politici de securitate și a profilelor se poate realiza o securitate foarte puternică
Vom creea și noi o politică de securitate folosind câteva din opțiunile puse la dispoziție de sistem. Astfel vom creea o nouă politică de securitate care va permite întreg accesul de tip VPN pentru toți utilizatorii din grupul “FILIALE”, care inițiază conexiuni PPTP, de luni până vineri.
Figura 4.9 Politici de securitate
Cele cinci calculatoare și imprimanta de rețea vor forma o rețea locală și vor fi interconectate printr-un switch cu 16 porturi.
Adresele calculatoarelor vor fi:
Calculator 1: 192.168.0.2
Calculator 2: 192.168.0.3
Calculator 3: 192.168.0.4
Calculator 4: 192.168.0.5
Calculator 5: 192.168.0.6
Adresa imprimantei de rețea va fi: 192.168.0.7
În momentul acesta, serverul este configurat integral și este gata să primească conexiuni VPN de la utilizatorii autorizați.
4.3 Implementare filiale(clienți VPN)
Pitești
La filiale, avem:
-un calculator stație de lucru(Windows XP)
Acest calculator va fi clientul VPN. El se va conecta inițial printr-o conexiune dial-up la un ISP local pentru a accesa Internetul.Apoi, va iniția un “tunel” securizat între el și serverul VPN de la București.
Deci, în primul rând trebuie realizată conexiunea dial-up.Aceasta se realizează foarte usor, folosind “vrăjitorul” din Windows, “New Connection Wizard. În cazul nostru, vom creea o conexiune numită “Pitești” către un furnizor local numit “ISP”.Pe baza acestei conexiuni se poate naviga pe Internet.Odată ajunși în Internet, avem practic o legătură cu serverul VPN de la București.Această legătură o reprezintă efectiv, rețeaua publică. Totuși, nu putem trimite datele prin rețeaua publică fără să ne asigurăm că ele nu pot fi accesate de persoane neautorizate. Astfel, cu ajutorul clientului VPN incorporat în sistemul de operare Windows XP, vom iniția o legătură securizată între calculatorul de la Pitești și serverul VPN de la București.
Configurarea unei astfel de legături se face de asemenea ajutați de “vrajitorul” din Windows.
Prima dată suntem întrebați, ce fel de conexiune dorim să realizăm:
Figura 4.10 Alegerea tipului de conexiune
Vom alege a doua opțiune, adică spunem că dorim să realizăm o conexiune care să ne permită să ne conectăm la o rețea privată de la distanță.Este exact cazul nostru.
Apoi suntem întrebați despre modul în care dorim să ne conectăm de la distanță: prin conexiune dial-up sau prin VPN.Bineînțeles, vom alege VPN.
Figura 4.11 Modul în care se va realiza conexiunea
Ulterior, suntem întrebați ce conexiune se va stabili inițial, înainte de stabilirea conexiunii virtuale.
Aici selectăm conexiunea dial-up creată mai devreme. Dacă nu dorim să folosim aceea conexiune, putem folosi o alta(temporara).La un moment dat vom fi întebați ce conexiune vrem sa folosim și acolo vom introduce datele necesare stabilirii unei noi conexiuni(nume de utilizator, parola, număr de telefon al furnizorului de servicii)
La pasul următor ni se va cere adresa IP sau numele serverului VPN.
Figura 4.13 Adresa serverului VPN
Daca se introduce adresa IP, trebuie să se introducă adresa IP a interfeței care este conectată la Internet(adresa publică), și nu a interfeței conectată la rețeaua localț(adresa privată).
În momentul acesta avem și clientul de VPN configurat. La proprietațile conexiunii, putem seta ce tip de conexiune se va iniția(PPTP sau L2TP), nivelul de criptare pe care îl dorim, metoda de autentificare folosită(MS-CHAP.v2, EAP), modul de autentificare(smart-card, certificate digitale).
În funcție de politica de securitate pe care am stabilit-o pe server, vom seta conexiunea în felul următor:
-tip tunel:PPTP
-metoda de autentificare: MS-CHAP.v2
-puterea de criptare:Strong encryption 128-bit
Timișoara
-un calculator stație de lucru(Wndows XP)
Se va realiza conexiunea dial-up la ISP și apoi conexiunea VPN la serverul de la București
Iași
-un calculator stație de lucru(Wndows XP)
Se va realiza conexiunea dial-up la ISP și apoi conexiunea VPN la serverul de la București
În momentul în care se vor conecta la server, clienții vor primi adrese IP virtuale de forma 192.168.0.11, 192.168.0.12 …….192.168.0.20.
Autentificarea se va face pe baza conturilor stabilite în Windows Server 2003.
În momentul de față, filialele din țară pot să trimită date către sediul central și să acceseze resursele de pe calculatoarele din sediu. Cât timp sunt în rețeaua publică, datele sunt protejate de utilizatorii neautorizați atât prin criptare cât și prin “tunelare”.
BIBLIOGRAFIE
Andrew S. Tanenbaum – “Rețele de calculatoare” – Editura Computers Press Agora, 1997;
Mihai Ceapâru-”Comunicația prin intermediul rețelelor de calculatoare”- editura Tehnică, București 1996;
Dave Kosiur -”Building and Managing Virtual Private Networks “
MCSA/MCSE Trainning Kitt- “Implementing, Managing,
and Maintaining a Microsoft Windows Server 2003 Network Infrastructure”
Site-uri web:
– www.ebooks.com
– www.cisco.com
– www.microsft.com
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Retele Virtuale Private. Implementarea Unei Solutii Vpn Pentru O Firma de Transport (ID: 149179)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
