Encyclopedia Intranetica

Intranetica (hemsida)
Sökning
edvina.net hemsida

">

Guiden till Internet och Intranet

Sommaren 2002

VPN - Virtuella Privata nätverk

Säkra förbindelser över IP-nätverk – Internet eller Intranet

VPN, Virtual Private Network, gör att man säkert kan kommunicera över ett nätverk som man betraktar som osäkert, till exempel Internet. Det kan också handla om att skapa en säker förbindelse för konfidentiella data över företagets eget interna nätverk.

VPN-teknik kan förbinda två kontor på olika ställen. Man kan också förbinda en distansarbetsplats med företagets nätverk. Det kan till exempel handla om en medarbetare som jobbar hemifrån eller en konsult som jobbar från sitt företags nätverk och vill upprätta en förbindelse med interna servrar på ditt kontor.

SESSION
TRANSPORT
NÄTVERK
LAN
SESSIONSSKIKT: webb, terminal, filöverföring, video, e-post etc
TRANSPORTSKIKT: TCP eller UDP
Nätverksskikt: IP - det är här vi upprättar VPN med IPsec
MAC-nivå: Ethernet, Token Ring, PPP (uppringd förbindelse)

I den här artikeln beskrivs VPN-teknik för TCP/IP. Möjlighet att skapa virtuella grupper av noder finns på flera olika nivåer i nätverket. Ett VLAN upprättas av switchar på LAN-nivå. Telecom har sina egna virtuella nätverk och SAN, Storage Area Networks, innehåller också lösningar för virtuella grupperingar av lagringsresurser som hårddiskar.

Brandväggen är spindeln i nätverket

Företagets brandvägg har som huvuduppgift att skapa möjligheter till säker koppling till Internet och stödja säkra förbindelser. En följd av detta är givetvis att den ska hindra alla försök till icke sanktionerad användning av det interna nätverket, men det kan inte sägas vara huvuduppgift.

Brandväggen ska göra det möjligt att använda nätet för viktiga sessioner, utan att man riskerar att data kommer i orätta händer.

Det är oftast brandväggen som administrerar VPN-sessioner. Om en session ska upprättas mellan en PC och ett nätverk på ett kontor, anslutet till Internet, kan det fungera så här:

1. Ansökan Programmet som vill upprätta en säker session anropar brandväggen och ansöker om en kanal till nätverket Det kan också skötas automatiskt av nätverksprogramvaran (TCP/IP stacken) när en programvara anropar en nod på andra sidan brandväggen, på det lokala nätverket.
2. Identifiering Brandväggen säkerställer identitet på noden som anropar. VPN handlar om att en nod, en dator, ska få en viss behörighet. Användare är i teorin ointressanta på den här nivån.
Den här kontrollen kan till exempel ske med nyckelpar och certifikat (PKI).
3. Autenticering När brandväggen är säker på nodens identitet kontrolleras behörighet i en databas, till exempel med LDAP. Är noden behörig att vara del av ett VPN, i så fall med vilken access till nätverket - hela eller bara vissa noder? Och med vilken typ av trafik, vilka protokoll?
4. Upprätta session Är noden behörig så upprättar brandväggen en session. En gemensam krypteringsnyckel upprättas och utbyts. Trafik kan därefter ske i en säker kanal mellan brandväggen och noden.

Skapa en "tunnel"

VPN-tekniken går ut på att man mellan två noder skapar en säker kanal, med hjälp av kryptering. All trafik mellan de två noderna slussas sedan in i den här kanalen för att släppas ut på andra sidan. Detta är vad man kallar att "tunnla" trafik mellan två noder. När tunneln är upprättad, så kan trafik flöda genom tunneln som om det nätverk tunneln upprättats över inte finns. Om två kontor förbinder sina nätverk med hjälp av en kryptotunnel över Internet så upplever man att nätverken är ihopkopplade.

Den programvara som upprättar tunneln måste i alla lägen vara säker på att den har förtroende för och kan identifiera den nod som finns i andra änden av tunneln. Den ena noden är oftast en brandvägg, den andra noden är en brandvägg eller en PC med en speciell programvara, en VPN-klient. Routrar och andra utrustningar börjar nu också allt oftare innehålla stöd för VPN-teknik. Det finns även TCP/IP-stackar som gör att du kan upprätta ett VPN mellan två eller flera Windows-PC.

Identifikation – att säkert fastställa en identitet

Identifikation kan utföras på många olika sätt. Digitala signaturer och certifikat, engångslösenord, aktiva kort och vanliga lösenord är några exempel. Vilken teknik du använder beror givetvis på hur viktigt det är att utföra en korrekt identifikation. Vanliga textbaserade lösenord är lätt att knäcka och kan ej rekommenderas. De större brandväggarna har stöd för många olika identifikationssystem, oftast i form av tredjepartsprodukter. Dosorna som används av många Internet-banker är ett exempel på identifikationssystem.

Generellt kan sägas att för VPN handlar identifikation i första hand om att identifiera en nod, en dator. För applikationer, som en Internetbank via HTTP, vill man identifiera en användare, en person. Det ena utesluter inte det andra, båda funktionerna är lika viktiga.

Kryptering och protokoll

Kryptering utförs med hjälp av en algoritm, en formel. Det behövs också stöd för kryptering i det protokoll som används. Det finns många olika krypteringsformler, något som vi hoppar över i den här artikeln. Viktigt är att man i båda ändar av en VPN-tunnel använder samma kryptering och samma protokoll. Många brandväggar har använt egna lösningar för VPN, vilket gör att brandväggar av olika märken inte har kunnat upprätta tunnlar med varandra.

VPN-lösningar blir alltmer standardiserade och de flesta leverantörer stödjer idag IP-sec, en standard framtagen av IETF, Internet Engineering Task Force. IP-sec ger utrymme för flera olika krypteringsformler. IP-sec i båda ändra är alltså inte en garanti för att en säker förbindelse kan upprättas.

IP-sec består av två delar, en standard för säker identifikation och en standard för kryptering av en session. Det har att göra med exportregler och att man oftast använder olika lösningar för identfikation och för konfidentialitet.

All kryptering tar tid att utföra och kräver mycket minne. Exakt hur kryptering påverkar ett system beror på den algoritm som används för krypteringen. För att förbättra prestanda finns speciell kryptohårdvara man kan installera i en dator eller i nätverket.

SSL – kryptering av en applikationssession

SSL, Secure Sockets Layer, är en standard för kryptering av en session på applikationsnivå. SSL används bland annat för säker web-trafik (https: ), men kan användas för en rad olika protokoll, däribland FTP, Telnet, POP och IMAP. SSL ger en säker förbindelse av viss trafik mellan två noder, men inte all trafik. VPN-teknik, till exempel med IPsec, krypterar all trafik mellan två noder. SSL ersätter inte VPN-teknik, utan kompletterar den.

Problem med globala förbindelser

VPN är en teknik man gärna använder för att upprätta förbindelser mellan olika kontor runt om i världen. Att hyra fasta ledningar kostar oerhört mycket, medan en Internetförbindelse är mer prisvärd. Med brandväggar och Internetförbindelser i varje land kan man upprätta ett eget VPN mellan alla kontor, vilket gör att trafik kan flyta obehindrat mellan kontorens nätverk.

Problemet är att det i varje land gäller olika regler för användning, import och export av programvara och utrustningar med stöd för kryptering. Innan du upprättar ett internationellt VPN så är det bäst att du kontrollerar gällande lagstiftning i varje land.

Stark kryptering, sådan som är svår att knäcka, är ofta belagd med exportförbud. Varken Sverige eller USA kan exportera sådan teknologi med gällande regler. Det gör att man inom landet kan använda starkare kryptering än mellan olika länder.

Krypteringsalgoritmer som används för identifikation, inte för att dölja information, kan dock oftast användas och exporteras.

Mer information

98-09-19/OJ