Oprogramowanie klienckie nawiązuje połączenie przez Internet do bramy IPSec VPN, po czym inicjuje procedurę wymiany kluczy IKE (Internet Key Exchange). Po pomyślnym uwierzytelnieniu zdalnej maszyny, jest zestawiany tunel VPN. Sieć VPN może pracować w dwóch trybach:
- transportowym, w którym w postaci zaszyfrowanej jest przesyłany fragment należący do warstwy transportowej;
- tunelowym, gdzie jest szyfrowany cały pakiet. IPSec niejako umieszcza oryginalny pakiet w swoim pakiecie. Pozwala to na przesyłanie przez Internet protokołów nierutowalnych, jak NetBeui czy SNA (Systems Network Architecture).
IPSec VPN używa powszechnie przyjętych algorytmów kryptograficznych: DES, 3DES, AES, RC4 oraz zapewniających integralność danych: MD5, SHA-1. Może również wykorzystywać mechanizm IKE z certyfikatami cyfrowymi (X.509). Po jednorazowym utworzeniu tunelu IPSec/L2TP pomiędzy odległymi maszynami, może być zestawiana dowolna liczba połączeń. IPSec funkcjonuje na warstwie sieci modelu OSI. Sporym utrudnieniem w stosowaniu IPSec jest brak pełnej mobilności użytkowników.
Po zestawieniu IPSec VPN sieć korporacyjna jest praktycznie bezbronna wobec intruzów. Ewentualne upowszechnienie się NAC (Networc Acces Control) może zwiększyć bezpieczeństwo. Sprawdzana jest wówczas obecność oprogramowania antywirusowego, uaktualnień systemu operacyjnego na zdalnej maszynie.
Spis treści |
Prawdą jest, że IPSec i SSL są różnymi technikami. Łączy je to, że obydwie służą temu samemu celowi: umożliwieniu i kontroli dostępu użytkowników zdalnych do sieci, jej zasobów i aplikacji.
IPSec oferuje bezpieczną, szyfrowaną komunikację na poziomie IP. Jest on niezależny od aplikacji. Każda aplikacja korzystająca z protokołu IP może komunikować się za pośrednictwem sieci IPSec VPN. Chronione są wszystkie pakiety wymieniane pomiędzy zdalnymi sieciami lub hostami, a brama IPSec jest zlokalizowana na brzegu sieci prywatnej.
SSL definiuje bezpieczny mechanizm wymiany zaszyfrowanych danych pomiędzy aplikacjami, na trasie od zdalnego użytkownika do bramy SSL. Jest niezależny od protokołów niższych warstw, takich jak IP. Jednak nie wszystkie aplikacje mogą być udostępniane za jego pośrednictwem. Odpowiednia usługa powinna mieć możliwość prezentacji danych, np… W przeglądarce internetowej, transmisji danych przez bramę SSL VPN, oraz pozwalać na interakcję pomiędzy klientem a serwerem aplikacji, zlokalizowanym wewnątrz sieci prywatnej.
Za pomocą IPSec VPN zdalny komputer uzyskuje dostęp do całej sieci prywatnej, podczas gdy w SSL VPN tylko do konkretnych usług i aplikacji zlokalizowanych wewnątrz tej sieci.
Konieczność wspierania instalacji i konfiguracji oprogramowania na zdalnych maszynach może podnosić koszty funkcjonowania zdalnego dostępu. Dlatego w ofercie niektórych producentów znajduje się sprzętowy klient IPSec VPN.
Niewątpliwą zaletą technologii SSL VPN jest możliwość współpracy ze standardowymi przeglądarkami internetowymi. Znika występujący w IPSec problem instalacji oprogramowania klienckiego na zdalnej maszynie. Brak dedykowanego klienta ogranicza jednak możliwość współpracy tylko do niektórych aplikacji. Ponadto praca w trybie „cienkiego” klienta, klient/serwer lub z aplikacjami niewspółpracującymi z przeglądarkami wymaga pobrania i uruchomienia agenta: apletu Java, kontrolki ActiveX itp… Rozszerzenia te mogą obniżać poziom bezpieczeństwa. Ograniczenia mogą sprawiać, że SSL VPN nie będzie spełniać wszystkich wymagań użytkowników przyzwyczajonych do pełnego dostępu do zasobów sieci i aplikacji.
Rozwiązania VPN powinny oferować centralny system zarządzania regułami bezpieczeństwa, nadzorujący dostęp do zasobów sieci, czas „życia” certyfikatów, algorytmy kryptograficzne, klucze. W SSL VPN funkcję tę pełni brama SSL lub SSL Proxy.
W momencie zestawienia połączenia IPSec VPN zdalny komputer staje się częścią sieci prywatnej. Z tego powodu wdrożenie rozwiązania IPSec jest większym wyzwaniem. Należy zapewnić sprawny przydział adresów (np… DHCP) i ruting, z uwzględnieniem zdalnych maszyn. W połączeniach IPSec są wykorzystywane dwa adresy IP: zewnętrzny - funkcjonujący w sieci operatora oraz wewnętrzny - funkcjonujący wewnątrz sieci prywatnej. Konieczne są: wyznaczenie uprawnień dla określonych grup zdalnych użytkowników oraz przyporządkowanie im dostępnych zasobów: katalogów, serwerów, portów.
Problem ten nie istnieje przy protokole SSL, gdyż funkcjonuje on powyżej warstwy IP. Pozwala to również uniknąć problemów przy przejściu przez występujące po drodze serwery NAT (Network Address Translation) i PAT (Port Address Translation).
Ze względu na to, że brama SSL VPN znajduje się zazwyczaj za zaporą sieciową, konieczne jest zapewnienie dodatkowej ochrony sieci prywatnej. Jeżeli pozwala na to budżet firmy, dobrym rozwiązaniem jest umieszczenie bram IPSec i SSL w strefie zdemilitaryzowanej DMZ (DeMilitarized Zone). Wiele rozwiązań sprzętowych łączy bramę VPN i zaporę ogniową.
IPSec posługuje się dwufazowym mechanizmem wymiany kluczy IKEv1 (Internet Key Exchange). Mogą być nimi certyfikaty cyfrowe X.509, RSA (SecurID) użytkowników i urządzeń, a także tajne klucze (Pre-shared Secrets), ustalane ręcznie. Mechanizm IKEv1 jest dosyć złożony, dlatego należy się spodziewać wdrożenia jego nowszej i prostszej wersji, zaproponowanej przez IETF - IKEv2. Alternatywną metodą jest uwierzytelnianie XAUTH (Extended Authentication), w której jest wymagana znajomość identyfikatora i hasła. W tym celu mogą być wykorzystane zewnętrzne systemy, np… RADIUS (Remote Access Dial-In User Service), LDAP (Lightweight Directory Access Protocol), TACAS+, MS Active Directory lub Smart Cards.
Serwery SSL są uwierzytelniane za pomocą certyfikatów cyfrowych. Klient może natomiast wykorzystywać dowolną metodę uwierzytelniania: certyfikaty, hasła oraz tokeny. Z tego powodu SSL jest zdecydowanie lepszym i bezpieczniejszym rozwiązaniem w przypadku klientów o ograniczonym zaufaniu lub tam, gdzie zainstalowanie certyfikatów może przysparzać trudności: w komputerach kooperantów, domowych PC, kawiarenkach internetowych itp… W przeciwieństwie do IPSec procedura wymiany kluczy podczas jednej sesji jest przeprowadzana wielokrotnie.
IPSec udostępnia dany fragment sieci całej grupie zaufanych użytkowników. Ze względu na to, że SSL VPN funkcjonuje w warstwie aplikacji, możliwa jest kontrola dostępu nie tylko w przypadku konkretnych użytkowników, lecz także poszczególnych aplikacji, wewnętrznych adresów URL, dostępnych komend oraz filtrowania treści. Oczywiście, konfiguracja i modyfikacja zasad dostępu są wtedy bardziej pracochłonne.
Połączenia IPSec/SSL VPN mogą być zestawiane pomiędzy użytkownikami z wykorzystaniem dedykowanych urządzeń (appliances), serwerów, ruterów, zapór z wbudowaną obsługą VPN lub komputerów osobistych.
Projektując sieć, należy zdecydować, kiedy korzystać z IPSec, a kiedy z SSL. IPSec VPN jest obecnie standardem de facto przy tworzeniu sieci zdalnego dostępu. Stanowi on dobre rozwiązanie dla połączeń pomiędzy oddziałami (site-to-site) lub użytkowników potrzebujących pełnego dostępu do usług zdalnej sieci (np… Administratorów). Jednak w przypadku mało wymagających użytkowników, a także w celu zapewnienia wysokiego poziomu bezpieczeństwa, bardziej zasadne wydaje się stosowanie SSL VPN. Wszystkie powyższe wymagania jest w stanie pogodzić hybrydowa sieć IPSec/SSL VPN.
Produkt VPN powinien zapewniać:
W obydwu typach sieci VPN jest możliwe zastosowanie algorytmów szyfrujących DES i 3DES. Niektóre rozwiązania wspomagają już najnowszy standard AES (Advanced Encryption Standard), pozwalający na szyfrowanie przy użyciu klucza 256-bitowego. W produktach SSL VPN są spotykane algorytmy szyfrowania RSA, RC-4. Chcąc zapewnić poufność transmisji, należy stosować klucze o odpowiedniej długości. Im klucze są dłuższe, tym trudniej odszyfrować wiadomość. Aby zapewnić wysoki stopień poufności (silne szyfrowanie), należy stosować:
- dla algorytmów asymetrycznych - klucze co najmniej 1024-bitowe,
- dla algorytmów symetrycznych - klucze powyżej 124 bitów.
W przypadku sieci SSL VPN wskazane jest stosowanie protokołu TLSv1 (Transport Layer Security), który oferuje większe bezpieczeństwo niż starszy SSLv3.
Ataki określane mianem Man-in-the-Middle są możliwe, gdy atakujący uzyska dostęp do przesyłanych pakietów. IPSec zapobiega wszelkim modyfikacjom pakietów. Często jednak występują konflikty w trakcie przesyłania pakietów przez serwer translacji adresów NAT (Network Address Translation), który modyfikuje pakiety, zamieniając adresy publiczne na prywatne. Tylko niektóre produkty IPSec zawierają odpowiednie modyfikacje, radząc sobie z tą wadą (IPSec NAT Traversal). Problem ten nie dotyczy SSL, gdyż rozwiązanie to opiera się na pakietach TCP. Numer sekwencji zawarty w zaszyfrowanym pakiecie zapobiega wszelkim wtrąceniom obcych danych, a uwierzytelnianie stosowane przez TLS - zmianom treści.
Atak typu DoS ('Denial-of-Service) ma na celu zablokowanie bądź utrudnienie dostępu do określonej usługi lub aplikacji, np… Poprzez zalanie pakietami (packet floods). W tym przypadku IPSec radzi sobie lepiej, gdyż operuje datagramami, które można łatwiej przetworzyć niż pakiety TCP SYN. SSL jest bardziej podatne na ataki (np… TCP SYN Flooding) ze względu na to, że korzysta z sesji TCP, których zestawienie wymaga więcej czasu i zasobów. Niektóre produkty VPN sprzętowo przyspieszają obsługę sesji i dzięki temu są mniej podatne na ataki DoS.
IPSec jest również bardziej odporny na podsyłanie powtórzonych pakietów (Message Replay), gdyż ramki poza kolejnością są wykrywane i odrzucane na niższym poziomie stosu protokołów. W SSL są one wykrywane przez mechanizm sesji TCP lub SSL Proxy.
Komputery zdalnych klientów mogą stanowić dwojakiego rodzaju zagrożenie, tzn. być zarówno celem, jak i źródłem ataku. Należy wymagać od użytkowników przestrzegania ogólnych zasad bezpieczeństwa: używania zapór ogniowych, systemów antywirusowych, uwierzytelniania, kontroli dostępu itp… Część oprogramowania klienckiego IPSec zawiera wbudowane mechanizmy kontroli bezpieczeństwa maszyn użytkownika. Ze względu na to, że połączenia SSL VPN mogą być nawiązywane z miejsc publicznych, wymagają szczególnej ochrony, którą można zapewnić poprzez stosowanie m.in… Takich metod, jak:
Zdecydowana większość (70-95%) użytkowników firmowych systemów zdalnego dostępu korzysta wyłączne z dostępu do poczty, plików, zarządzania informacją osobistą (PIM - Personal Information Management), intranetu oraz aplikacji biurowych, zlokalizowanych na zakładowym serwerze.
Do realizacji tych usług wystarczą rozwiązania oparte na SSL VPN. To technologia tańsza i w założeniu bardziej niezawodna od innych. Tradycyjne usługi RAS oraz IPSec VPN mogą być w dużym stopniu zastąpione wdrożeniem SSL VPN i usług terminalowych.
Optymalnym rozwiązaniem jest udostępnienie wszystkim pracownikom dostępu SSL VPN, a tylko wyznaczonym - IPSec VPN.