We współczesnej praktyce korporacyjnej zapewnienie bezpieczeństwa informacji staje się zadaniem kluczowym. Szczególnie palącym problem jest zapewnienie właściwej ochrony informacji wewnątrz organizacyjnych transmitowanych poprzez Internet.
Z pomocą przychodzi technologia Wirtualnych Sieci Prywatnych.
Na przestrzeni lat termin Wirtualna Sieć Prywatna (VPN) nabrał bardzo szerokiego znaczenia.
W różnych publikacjach znaleźć można całą gamę rozmaitych definicji rozpatrujących VPN z punktu widzenia różnych kontekstów użytkowych a tym samym przyporządkowujących wielorakie definicje, zbliżone do siebie co do meritum natomiast różniące w kwestii szczegółów, konstrukcji, zastosowania jak i implementacji.
Najbardziej jednak, ogólnie podążając za VPNC „VPN Technology White Paper” VPN można zdefiniować jako sieć prywatną skonstruowaną w oparciu o ogólnie dostępną publiczną architekturę sieciową, zapewniającą prywatność poprzez wykorzystanie protokołów tunelujących oraz procedur bezpieczeństwa.
Do najczęściej wykorzystywanych implementacji VPN można zaliczyć tzw. Site-to-Site VPN.
Site-to-Site VPN w praktyce
Site-to-Site VPN występuje w sytuacji, kiedy sieć VPN realizowana jest aby połączyć ze sobą oddalone geograficznie lokalizacje np. oddziały firmy z siedzibą czy też siedzibę firmy z outsourcer-em centrum przetwarzania danych.
Aby umożliwić bezpieczną wymianę danych pomiędzy lokalizacjami tworzy się został między nimi tunel VPN, przez który następuje wymiana danych.
Należy zauważyć, iż w przypadku Site-to-Site VPN stosunek poszczególnych członków sieci VPN można uznać za równorzędny, ustanowiony na tych samych prawach.
Wyobraźmy sobie firmę, która posiada główną siedzibę w jednym mieście oraz dwie placówki innych miastach. Do tej pory placówki działały niezależnie a dane z nich były przekazywane do centrali w odstępach tygodniowych w formie papierowej. Firma wdrożyła zintegrowany system zarządzania klasy CRM/ERP. Infrastruktura obsługująca system została umieszczona w centrali firmy. Zdecydowano, iż system będzie obejmował zarówno siedzibę jak i placówki zewnętrzne.
Aby zrealizować powyższy projekt można zastosować dwa podejścia z czego jedno należy traktować jako czysto teoretyczne. Pierwsze rozwiązanie polegałoby na umożliwieniu bezpośredniego dostępu wybranym lokalizacjom do serwerów bazodanowych oraz serwerów aplikacji znajdujących się w siedzibie firmy z sieci Internet.
Użytkownicy systemu łączyliby się z wybranymi, dostępnymi dla nich zasobami poprzez globalny adres publiczny. Jedynym ograniczeniem byłby system firewall ograniczający dostęp do serwerów tylko z wybranych adresów IP. Dane transmitowane byłyby bez dodatkowych zabezpieczeń w postaci tekstu jawnego.
Alternatywnie można zastosować połączenie lokalizacji tunelami VPN. Lokalizacje wraz z siedzibą dzieliłyby, ten sam schemat adresacji IP, logicznie tworzyły wspólna sieć Lan. Dane transmitowane w tunelu byłyby szyfrowane a dostęp do niego mieliby tylko upoważnieni użytkownicy. Bezpieczeństwo danych jest jedną z kluczowych wartości dl każdej firmy niedopuszczalnym jest, aby serwer baz danych i aplikacji systemów ERP były dostępne bezpośrednio z sieci Internet. Zatem jedynym w miarę prostym wyjściem jest zastosowanie wspomnianego Site-to-Site VPN.
Zasadniczo w praktyce biznesowej do tworzenia ww. tuneli wykorzystuje się głównie protokół IPSec.
Internet Protocol Security
IPSec jest najpopularniejszym w dzisiejszych czasach rozwiązaniem służącym do łączenia rozproszonych geograficznie lokalizacji. Jego popularność wynika przede wszystkim z skalowalności oraz mnogości możliwości konfiguracji i dostosowywania do własnych potrzeb.
Ww. zalety są wynikiem jego szczególnej konstrukcji. IPSec nie jest bowiem monolitycznym protokołem obejmującym w przypadku sieci VPN zapewnienie takich funkcji jak integralność danych ich bezpieczeństwo oraz autentykację. Jest natomiast swojego rodzaju szkieletem dla wielu protokołów, za pomocą których można ww. funkcje realizować. Przy tworzeniu sieci VPN w oparciu o IPSec wdrażający wybiera z pośród możliwych opcji optymalny zestaw najlepiej spełniający jego oczekiwania.
Główne protokoły wchodzące w skład IPSec to:
- Internet Key Exchange (IKE)
- Encapsulation Security Payload (ESP)
- Authentication Header (AH)
IKE zajmuje się negocjowaniem i ustalaniem parametrów połączenia VPN tj. m.in. sposobu szyfrowania, wymianą kluczy kryptograficznych oraz przeprowadzaniem procesu autentykacji stron. Natomiast ESP i AH są to substytucyjne protokoły służące do zapewnienia szyfrowania, oraz integralności, przy czym starszy i obecnie nie rekomendowany AH zapewnię jedynie autentykacje i integralność.
Zarówno w AH jaki i ESP integralność danych może być zapewniona poprzez wykorzystanie MD5 lub SHA. Do szyfrowania natomiast wykorzystywane mogą być powszechnie znane algorytmy kryptograficzne tj. DES, 3DES, AES, DH. Dodatkowo, w związku z faktem, iż IPSec opiera się na otwartych standardach każdy z powyższych może zostać zastąpiony przez dowolny opracowany algorytm. Istotne tylko aby obie strony realizujące połączenie były wstanie wprowadzony algorytm obsłużyć. Ze względów bezpieczeństwa oraz dla uproszczenia implementacji i administracji takie rozwiązania są jednak w praktyce korporacyjnej wykorzystywane niezmiernie rzadko. Zdarza się natomiast, iż mają zastosowanie w dedykowanych projektach cechujących się wyjątkowo dużą skalą i istotnością danych tj. m.in. projekty związane z obronnością.
IPSec może działać w dwóch trybach tj. transportowym i tunelowym. W trybie transportowym adresy IP źródłowy oraz docelowy nie zostają schowane wewnątrz nagłówka IPSec. W przypadku natomiast trybu tunelowego oryginalne źródłowe i docelowe adresy IP zostają schowane i zaszyfrowane wewnątrz nagłówka IPSec natomiast poza nim dodawane są nowe adresy IP reprezentujące adresy zewnętrzne urządzeń, które terminują połączenie. W zdecydowanej większości przypadków wykorzystywany jest tryb tunelowy. Ukrycie adresów komunikujących się hostów i zamiana ich na zewnętrzne adresy bramek VPN jest bowiem niezbędne do zapewnienia transportu pakietów poprzez sieć publiczną. Tryb transportowy ma zastosowanie głównie w przypadku potrzeby zestawienia bezpiecznego szyfrowanego połączenia pomiędzy hostami znajdującymi się w sieci wewnętrznej. W ostatnim czasie ze względów bezpieczeństwa takie rozwiązanie jest coraz częściej stosowane, jednakże nadal jest to margines w stosunku do ilości rozwiązań wykorzystujących tryb tunelowy.
IKE jak już zostało wspomniane odpowiada za negocjacje parametrów połączenia. Zasadniczo składa się z dwóch faz po zakończeniu których następuje przejście do realizacji transmisji z wykorzystaniem AH lub ESP.
Podczas konfigurowania połączenia IPSec ustalane są polityki zawierające w sobie wybrane konfiguracje właściwych parametrów. Oznacza to, iż przykładowa polityka nazwijmy ją Polityka 1 może wyglądać następująco:
Polityka 1
- algorytm kryptograficzny – AES
- funkcja skrótu – SHA-1
- sposób dwustronnej autentykacji – współdzielony klucz
- algorytm wymiany kluczy – Diffie Hellman z 512 bitowym kluczem
- długość życia tunelu – 60 min
Zwykle istnieje możliwość stworzenia wielu polityk różniących się wybranymi parametrami. Podczas nawiązywania połączenia host inicjujący wysyła drugiej stronie wszystkie skonfigurowane polityki. Host odbierający sprawdza parametry zawarte w politykach i odsyła informacje, która z polityk jest przez niego akceptowana.
Istotnym jest fakt, iż hosty muszą zgodzić się co do całości polityki, nie ma więc możliwości nawiązania połączenia z wykorzystaniem części ustawień zawartych w jednej polityce a części w drugiej. Po zakończonej sukcesem negocjacji podstawowych parametrów rozpoczyna się faza dwustronnej autentykacji stron. Wykorzystywane są tu głównie współdzielony klucz lub certyfikaty. W przypadku wykorzystania klucza współdzielonego hosty wymieniają się skrótami ustalonego wcześniej klucza sporządzonymi funkcją skrótu wynegocjowaną wcześniej. Jeżeli otrzymany od drugiej strony skrót jest tożsamy z posiadanym autentykacja kończy się sukcesem. Po udanej autentykacji strony za pomocą ustalonej w polityce odmiany asymetrycznego algorytmu Diffie’go Hellmana wymieniają klucz dla ustalonego algorytmu symetrycznego, który wykorzystywany będzie do szyfrowania transmisji.
Jest to standardowe użycie kryptografii asymetrycznej znane m.in. z usług terminalowych tj. SSH czy z architektury PKI. W tym miejscu następuje zakończenie fazy I IKE. Ustalone w niej parametry i zestawione bezpieczne połączenie posłużą do wymiany i zestawienia w fazie II bezpiecznego połączenia do transmisji danych.
Faza II odbywa się już w trybie szyfrowanym, jej zadaniem jest ustalenie parametrów tunelu za pomocą których dokonywana będzie transmisja.
Faza II negocjuje następujące parametry:
- Protokół IPSec – ESP lub AH
- Symetryczny algorytm szyfrujący – DES, 3DES, AES
- Funkcje skrótu dla zapewnienia integralności – MD5 lub SHA-1
- Tryb IPSec – tunelowy lub transportowy
- Długość życia tunelu
Podobnie jak w fazie I parametry owe tworzą paczkę konfigurowana na obu stronach połączenia. Po ustaleniu ww. danych następuje wymiana kluczy szyfrujących i dalsza transmisja odbywa się już w oparciu o nie. Jak widać, powyższe parametry w części były już negocjowane w fazie I, jednakże służą one jedynie do bezpiecznej wymiany i ustalania końcowych parametrów służących do transmisji danych.
Po zakończeniu obu faz IKE rozpoczyna się docelowa realizacja wymiany danych. Dane jak już wspomniano enkapsulowane są za pomocą jednego z dwóch protokołów AH lub ESP. Protokół AH nie zapewnia szyfrowania danych a jedynie dba o zachowanie ich integralność.
W przypadku jego wykorzystania w drugiej fazie IKE klucze szyfrujące nie są negocjowane. W związku z tym w dzisiejszych zastosowaniach jest to protokół archaiczny i niewykorzystywany, jego miejsce zajął bardziej kompleksowy protokół jakim jest ESP. Dane transmitowane w tunelu IPSec enkapsulowane są w nagłówek ESP a następnie w zależności od trybu w docelowy lub zawierający dane hostów terminujących połączenie nagłówek IP.
Michał Kaźmierczyk
CTO w Grupie Enteo/ Certyfikowany instruktor w Arrow ESC/ Dziennikarz w IT Professional/ Autor projektu cloudpoint.pl
Praktyk, trener i pasjonat wysokiej klasy rozwiązań informatycznych związanych z szeroko rozumianym obszarem bezpieczeństwa sieci i infrastruktury IT, technologii wirtualizacji i przetwarzania w chmurze.
Jako lider techniczny nadzoruje, projektuje i bierze udział w procesie integracji projektów z różnych dziedzin, takich jak cyberbezpieczeństwo, chmura, wirtualizacja i sieci.
Jako certyfikowany instruktor Vmware prowadzi profesjonalne kursy Vmware z NSX i Data Center Virtualization Tracks.
To również może Cię zainteresować:
Współcześnie użytkownicy mają możliwość korzystania z zasobów wewnętrznych organizacji, w tym na
Z nadejściem października duży odsetek polskich firm w wielu branż m.in. produkcyjnej, energetycznej,
Obecny czas pandemiczny jak w soczewce ujawnia wiele z niedociągnięć i problemów,