I tak naprawdę definicja ta w sposób dokładny opisuje mechanizm i sens wdrożenia tej technologii. Lecz nie wspomniano w niej o jeszcze jednej kwestii szczególnie ważnej z punktu działania firm.
Zdalny dostęp do sieci firmowej i jej zasobów stał się elementem kluczowym dla wielu firm bez którego wielu pracowników nie mogłoby realizować swoich podstawowych zadań. Odeszliśmy już od modelu w którym pracownik by uzyskać np. dostęp do swoich plików musiał znajdować się fizycznie w oddziale firmy teraz za pośrednictwem odpowiednio skonfigurowanej infrastruktury sieciowej może tego dokonać z dowolnego miejsca na świecie pod warunkiem, że ma się dostęp do Internetu. Tak więc z punktu widzenia firmy, pracowników i wykonywanych obowiązków największą zaletą tworzenia połączeń VPN jest możliwość zdalnej pracy tak jak by się znajdowało przy własnym biurku.
A dodatkowo dzięki zastosowaniu szyfrowania uzyskujemy bezpieczne połączenie z Internetem korzystając z niezabezpieczonej sieci bezprzewodowej w miejscach użyteczności publicznej.
Dla niektórych osób argumentem, który ma niebanalne znaczenie jest możliwość uzyskania adresu IP zgodnego z wybraną lokalizacją geograficzną. Oznacza to możliwość uzyskania adresu IP przynależnego np. USA. Takie podejście do sprawy sprawi, że otrzymamy dostęp do usług przynależnych danemu regionowi. Przykład proszę bardzo – od niedawna Polacy otrzymali dostęp do usługi VOD Netflix (dla niewtajemniczonych wypożyczalnia filmów online) a jeszcze do niedawna było to niemożliwe gdyż Netflix oficjalnie na naszym terenie usług tego typu nie prowadził. Oznaczało to brak możliwości rejestracji w serwisie dla osób nie będących obywatelami USA. Część użytkowników by ominąć te ograniczenie za pośrednictwem łącza VPN łączyło się z serwerem amerykańskim, dzięki temu komputer otrzymywał adres IP zgodny z lokalizacją geograficzną a otrzymanie takiego adresu IP gwarantowało dostęp do usług serwisu video (serwery Netflixa odnotowywały rejestrację z obszaru USA).
Aby rozwiać jeszcze wątpliwości co do sposobu działania mechanizmu VPN przeanalizujmy przykład, który został zaprezentowany na rysunku poniżej.
Z połączenia z Internetem korzysta dwóch użytkowników: Beata i Jan.
Beata dostęp do sieci realizuje w sposób tradycyjny tj. ma wykupione łącze u lokalnego dostawcy ISP (dostawca usług internetowych) i dzięki połączeniu z nim może przeglądać zasoby sieci. Nie wykorzystuje mechanizmu VPN. Oznacz to, że cały ruch sieciowy dla dostawcy jest przezroczysty tak więc indeks odwiedzanych miejsc, pobranych plików znajduje swoje odzwierciedlenie w logach ISP. Dodatkowo informacja ta jest odnotowana na serwerach docelowych z którymi użytkownik Beata nawiązała połączenie.
Drugi użytkownik Jan pomimo wykupienia łącza u swojego provaidera dodatkowo zdecydował się na realizację połączenia z siecią za pośrednictwem bramy VPN. Dzięki wykorzystaniu tunelu VPN, ISP Jana wie jedynie, że Jan uzyskał połączenie z bramą VPN lecz nie widzi jaki konkretnie ruch sieciowy jest prowadzony. Komunikacja pomiędzy Janem a serwerem VPN jest zaszyfrowana.
Dodatkowo serwery docelowe odnotowują aktywność w postaci przeglądanych stron i pobranych plików lecz administrator serwera nie jest w stanie określić iż to właśnie Robert dane treści przegląda, gdyż wszystkie działania w imieniu Roberta podejmuje serwer VPN i to informacje o jego adresie IP znajdą się w logach serwerów końcowych.
Tak więc myślę, że ten praktyczny przykład w sposób dość obrazowy ilustruje mechanizm działania połączeń VPN oraz sens ich stosowania.
Rozróżniamy dwa podstawowe rodzaje sieci VPN:
Site - to - Site - połączenie VPN jest tworzone pomiędzy dwiema odległymi sieciami LAN. Urządzeniami realizującymi połączenie może być router z obsługą połączeń VPN bądź firmowy serwer. Przykładem połączenia Site - to - Site jest połączenie oddziałów firmy z centralą.
Client - Site - tunel VPN zestawiany jest np. pomiędzy komputerem zdalnego użytkownika a siecią LAN. Przykładem takiego połączenia jest sytuacja w której pracownik firmy będąc poza jej siedzibą musi mieć dostęp do zasobów znajdujących się w sieci firmowej (pliki, oprogramowanie, bazy danych itp.).
W artykule w głównej mierze będziemy zajmować się połączeniami typu Client - Site lecz na samym końcu pokarzę przykład połączenia Site - to - Site.
Przy konfiguracji połączenia VPN będziemy mieli do czynienia z różnymi protokołami odpowiedzialnymi za zestawienie łącza więc poniżej krótka ich charakterystyka.
Protokół SSTP (ang. Secure Socket Tunneling Protocol) Protokół SSTP został wprowadzony wraz z systemem Windows Vista SP1 oraz Windows Server 2008 umożliwiając przekazywanie ruchu poprzez zapory blokujące ruch PPTP i L2TP/IPsec. Protokół ten umieszcza ramki protokołu PPP w ramkach protokołu HTTP umożliwiając realizowanie połączeń VPN w sytuacjach gdy klient znajduje się poza firewallem, urządzeniem z obsługą translacji adresów sieciowych (NAT) lub serwerem proxy. Użycie protokołu umożliwia obsługę metod silnego uwierzytelniania, takich jak EAP-TLS. Korzystanie z HTTPS oznacza, że ruch przekazywany jest przez port 443 protokołu TCP, czyli powszechnie używany port dostępu do sieci Web. Protokół SSL (Secure Sockets Layer) zapewnia bezpieczeństwo na poziomie transportu wraz z rozszerzonymi metodami negocjacji klucza, szyfrowania i sprawdzania integralności.
Zalety:
- bardzo bezpieczny,
- pełna integracja z środowiskiem Windows (Windows Vista z dodatkiem SP1, Windows 7, Windows 8, Windows 10),
- ruch sieciowy protokołów odpowiedzialnych za działanie kanału VPN nie jest blokowany przez zapory sieciowe.
Wady:
- brak wsparcia dla innych systemów.
OpenVPN jest pakietem oprogramowania, które umożliwia nam utworzenie połączeń VPN. Biblioteki odpowiedzialne za działanie programu umożliwiają utworzenie zaszyfrowanych połączeń z wykorzystaniem protokołów SSLv3/TLSv1. Co ważne oprogramowania tego możemy użyć w trybie serwera umożliwiając klientom podłączenie się i korzystanie z tunelu VPN bądź trybie klienta. Jak to fajnie opisano (źródło: http://sekurak.pl/praktyczna-implementacja-sieci-vpn-na-przykladzie-openvpn/) „OpenVPN zapewnia nam komplet mechanizmów, który pozwala nam zbudować bezpieczną sieć VPN – autoryzuje, uwierzytelnia, szyfruje i zapewnia integralność przesłanych danych. Ponadto chroni serwer (koncentrator) przed atakami DoS oraz sieć wirtualną przed wstrzykiwaniem obcych danych. Wszystkie te rzeczy powodują, że OpenVPN jest doskonałym wyborem do większości zastosowań.”
Oprogramowanie OpenVPN to tak naprawdę temat sam w sobie i zasługuje na osobny wpis (jest w planach) co warto zaznaczyć, że warto korzystać z tego rozwiązania gdy tylko mamy taką możliwość. W wpisie tym o technologię tą ocierać się będziemy często lecz wykorzystamy tylko jedną funkcjonalność oprogramowania a mianowicie tworzenie połączenia VPN od strony klienta (serwerowymi aspektami w tym artykule zajmować się nie będziemy).
Zalety:
- wysoka elastyczność konfiguracji,
- bardzo bezpieczny,
- brak problemów z konfiguracją reguł firewalla,
- szeroki wybór algorytmów szyfrowania,
- Open Source - łatwość weryfikacji kodu i działania narzędzia,
- oprogramowanie jest dostępne dla systemów mobilnych co do nie dawna stanowiło problem.
Wady:
- Do poprawnego działania wymagana jest instalacja oprogramowania firm trzecich, brak wsparcia od strony systemów,
Protokół L2TP (ang. Layer Two Tunneling Protocol) Protokół ten jest powszechnym standardem pozwalającym na ustanowienie kanału VPN. Protokół L2TP jest połączeniem protokołów PPTP oraz L2F (ang. Layer 2 Forwarding), powstał w wyniku współpracy firm Cisco i Microsoft. Z protokołem L2TP bardzo często skojarzany jest protokół IPSec, taki połączenie znane jest jako L2TP over IPSec. Połączenie protokołów przyniosło same zalety gdyż sam protokół L2PT zyskał możliwość uwierzytelnienia zaś protokół IPSec rozszerzył swoją funkcjonalność o obsługę nie tylko pakietów IP. Protokół L2TP/IPsec został opisany w dokumencie RFC 2661.
Zalety:
- bezpieczniejszy niż PPTP,
- łatwa konfiguracja,
- klient dostępny na wszystkich nowoczesnych platformach,
- szybszy niż OpenVPN.
Wady:
- może być zagrożony przez NSA (niesprawdzone).
Protokół PPTP (ang. Point-to-Point Tunneling Protocol) jest jednym z najstarszych sposobów pozwalających nam na tworzenie wirtualnych sieci prywatnych. Protokół został opracowany przez firmę Microsoft.
Zalety:
- klient obecny na wszystkich platformach systemowych,
- bardzo łatwa konfiguracja połączenia,
- szybkość działania.
Wady:
- nie gwarantuje odpowiedniego stopnia zabezpieczeń.
I jeszcze jako podsumowanie wstępu, krótkie zebranie najważniejszych cech protokołów (źródło: http://vpnonline.pl/protokoly-vpn-porownanie oraz http://b1s.eu/pl/bez-kategorii/945-porownanie-protokolow-vpn.html).
STANDARD VPN PPTP |
STANDARD VPN IPsec |
STANDARD VPN L2TP |
SECURE VPN OpenVPN |
SECURE VPN SSTP |
|
Poziom szyfrowania | 128 BIT | 128 BIT | 128 BIT | 256 BIT | 256 BIT |
Wspierany system |
WindowsLinux iOS Android Windows Phone Mac OS X |
Windows Linux iOS Android Windows Phone Mac OS X |
Windows Linux iOS Android Windows Phone Mac OS X |
Windows Linux iOS Android Mac OS X |
Windows Linux BSD |
Kompatybilność | Komputery, smartfony, tablety | Komputery, smartfony, tablety | Komputery, smartfony, tablety | Komputery, smartfony, tablety | Komputery |
Bezpieczeństwo | Podstawowe szyfrowanie do 128bit. | Mocne szyfrowanie. Dodatkowo opakowuje dane przez protokół IPsec do 128bit. | Mocne szyfrowanie. Dodatkowo opakowuje dane przez protokół IPsec do 128bit. | Bardzo mocne szyfrowanie za pomocą certyfikatów do 256bit | Bardzo mocne szyfrowanie za pomocą certyfikatów do 256bit |
Szybkość | Bardzo szybki ze względu na podstawowe szyfrowanie | Wymaga więcej procesora do szyfrowania danych | Wymaga więcej procesora do szyfrowania danych | Najlepsza wydajność. Bardzo szybki nawet na połączeniach z dużym opóźnieniem | Najlepsza wydajność. Bardzo szybki nawet na połączeniach z dużym opóźnieniem |
Konfiguracja | Bardzo prosta. Nie wymaga dodatkowego oprogramowania. | Prosta, wymaga dodatkowych ustawień. Nie wymaga dodatkowego oprogramowania | Prosta, wymaga dodatkowych ustawień. Nie wymaga dodatkowego oprogramowania | Wymagane dodatkowe oprogramowanie. Wymagana instalacja certyfikatów | Protokół wbudowany w Windows Vista, Windows 7. Wymagana instalacja certyfikatów |
Używane porty |
TCP 1723 - inicjalizacja GRE |
UDP 1701 UDP 500 - kanał wymiany klucza UDP 4500 ESP (protokół numer 50) dokument RFC 2406 |
UDP 1701 UDP 500 - kanał wymiany klucza UDP 4500 ESP (protokół numer 50) dokument RFC 2406 |
TCP 993 TCP 443 |
TCP 443 |
Podsumowanie | PPTP - Point to Point Tunneling Protocol. Najbardziej rozpowszechniony protokół najbardziej podatny na błędy. PPTP jest szybki i bardzo prosty w konfiguracji. Jest to dobry wybór jeżeli twoje urządzenie nie wspiera OpenVPN lub SSTP VPN. Rekomendowany dla urządzeń mobilnych. | IPsec IP Security. Istotną cechą tego protokołu jest jednokierunkowość. Pełna łączność wykorzystuje dwa kanały jeden od A do B drugi od B do A. L2TP/IPsec jest to dobry wybór jeżeli twoje urządzenie nie wspiera OpenVPN lub SSTP VPN i zależy ci na dużym bezpieczeństwie. Rekomendowany dla urządzeń mobilnych. | IPsec IP Security. Istotną cechą tego protokołu jest jednokierunkowość. Pełna łączność wykorzystuje dwa kanały jeden od A do B drugi od B do A. L2TP/IPsec jest to dobry wybór jeżeli twoje urządzenie nie wspiera OpenVPN lub SSTP VPN i zależy ci na dużym bezpieczeństwie. Rekomendowany dla urządzeń mobilnych. | OpenVPN jest bardzo szybkim, bezpieczny, bardzo stabilnym i rekomendowanym protokołem dla systemów Windows , Linux i Android. Zapewnia najwyższa wydajność, bezpieczeństwo i niezawodność. Używanie OpenVPN przez UDP jest szybsze niż przez TCP. | SSTP (Secure Socket Tunneling Protocol) VPN jest rekomendowanym protokołem dla systemów Windows. Najwyższa wydajność, bezpieczeństwo i niezawodność. Korzysta z protokołu SSL na porcie TCP 443 pozwala SSTP przejść przez praktycznie wszystkie firewalle i serwery proxy. PPTP nie wymaga użycia infrastruktury klucza publicznego (PKI). |
Wprowadzenie uważam za zakończone przejdźmy zatem dalej i już na konkretnych przykładach omówmy sposób konfiguracji i zestawiania połączenia VPN. Rozpoczniemy od systemu Windows 10 by w kolejnych krokach omówić i opisać systemy: Windows Phone, IOS oraz Android. System Linux został przeze mnie celowo pominięty gdyż chciałbym temat opisać w osobnym wpisie i skupić się na OpenVPN z naciskiem na funkcję bramy (komputer realizuje połączenia w imieniu klienta).
Przedstawione w tym wpisie przykłady konfiguracji połączeń VPN opierać się będą o usługi oferowane przez Private Internet Access (nie jest to żadna reklama lecz akurat z usług tej firm korzystam).
System Windows 10
Aby w systemie Windows 10 skonfigurować połączenie VPN należy kliknąć na ikonę Centrum Akcji i z dostępnych ikon wybrać VPN.
Opcjonalnie do opcji odpowiedzialnych za zestawienie kanału VPN możemy dostać się po wybraniu ikony Sieć i Internet dostępnej w oknie Ustawienia (skrót Win+I)
Po otwarciu nowego okna z dostępnych zakładek odszukujemy kartę VPN i z dostępnych opcji wybieramy Dodaj połączenie VPN.
Dodatkowo na karcie tej możemy zdefiniować opcje użycia połączenia VPN:
Zezwalaj na połączenia VPN w sieciach taryfowych – dostęp do Internetu może być świadczony przez ISP, który nalicza opłaty za ilość wykorzystanych danych (tj. za ilość danych wysłanych i odebranych). Takie połączenie jest wówczas traktowane jako połączenie taryfowe (najczęściej tego typu połączenie jest realizowane dzięki wykorzystaniu sieci komórkowych). Łącza tego typu po przekroczeniu ustalonego limitu bardzo często są ograniczane tj. nadal można cieszyć się z połączenia z Internetem lecz już nie z pełną prędkością bądź zostanie nam naliczona dodatkowa opłata za ilość danych wykorzystanych poza ustalonym limitem. Opcja ta pozwala nam ustawić czy połączenie VPN może być zestawione w przypadku wykrycia korzystania z tego typu sieci.
Zezwalaj na połączenia VPN podczas korzystania z roamingu – wyłączenie opcji spowoduje zabronienie ustanowienie połączenia VPN w sieciach komórkowych innych niż sieć macierzysta.
Po wyborze opcji dodania połączenia VPN w nowym oknie Dodawanie połączenia sieci VPN przechodzimy do konfiguracji parametrów połączenia.
Co należy zaznaczyć opcje definiowane w tym oknie zależne są od naszego operatora. Dokładny sposób konfiguracji znajdziemy na stronach usługodawcy. W przypadku PIA konfiguracja sprowadza się do wybrania w polu Dostawca sieci VPN opcji Windows (wbudowane) Kolejny krokiem jest ustalenie nazwy połączenia. By móc zestawić działające połączenie niezbędne opcje jakie musimy zdefiniować to Nazwa lub adres IP serwera oraz Typ sieci VPN. PIA umożliwia między innymi utworzenie łącza VPN z wykorzystaniem protokołów L2TP/IPsec z kluczem wstępnym, dlatego też opcje takowe zostały wybrane.
Nazwę użytkownika oraz hasło uzyskamy od operatora (jeśli jest taka potrzeba).
Po zdefiniowaniu wszystkich opcji wybieramy Zapisz. Połączenie pojawi się na liście dostępnych. Aby ustanowić połączenie wybieramy Połącz.
Jeśli wszystkie opcje zostały poprawnie zdefiniowane połączenie powinno zostać zestawione. Jak widać poniżej połączenie zostało ustanowione - status połączenia: Połączono
Status połączenia VPN można również sprawdzić klikając w tray-u na ikonę połączenia sieciowego.
Na rysunku poniżej zaprezentowano wpływ wykorzystania skonfigurowanego i działającego połączenia VPN na przyznany adres IP (widoczność hosta od strony Internetu). Po lewej połączenie tradycyjne jak można zauważyć lokalizacja adresu IP wskazuje na Kraków. Po prawej zaś adres IP po ustanowieniu połączenia z serwerem VPN, tym razem lokalizacja została ustalona na Frankfurt.
Przyjrzyjmy się jeszcze jak wygląda przechwycony ruch sieciowy bez połączenia VPN i przy aktywnym połączeniu z serwerem VPN.
Na rysunku poniżej przedstawiono zrzut z okna programu Wireshark, którego zadaniem jest przechwytywanie ruch sieciowego tj. danych wysyłanych i odbieranych przez kartę sieciową. Na rysunku poniżej możemy wyodrębnić szereg odrębnych transmisji prowadzonych równolegle z różnymi hostami - np. 185.42.204.114 czy 62.179.1 62 Ruch ten w żaden sposób nie jest chroniony tj. możemy ustalić cel i źródło wysłanej/odebranej informacji oraz najczęściej określić jej zawartość (najczęściej choć nie zawsze gdyż szyfrowanie może być prowadzone na warstwach wyższych). Przechwycony ruch sieciowy obrazuje normalne działanie karty sieciowej.
Zaś ilustracja poniżej przedstawia ten sam ruch sieciowy lecz przy aktywnym połączeniu VPN. W tym przypadku nie możemy już wyodrębnić pojedynczych transmisji/sesji, cały ruch sieciowy odbywa się pomiędzy komputerem na którym zainicjowano połączenie VPN (adres IP 192.168.1.10) a bramą VPN (adres IP 178.162.199.91) Całość ruchu jest zaszyfrowana z wykorzystaniem protokołu ESP.
Tak więc myślę, że teraz jak na dłoni widać w jaki sposób dzięki połączeniu VPN jest chroniona nasza komunikacja.
Definicję połączenia VPN możemy również przeprowadzić za pomocą opcji dostępnych w oknie Centrum sieci i udostępniania Po wywołaniu okna (możesz skorzystać z pola Szukaj dostępnego w Panelu Sterowania) klikamy na Skonfiguruj nowe połączenie lub nową sieć. Przedstawiona konfiguracja jest analogiczna z tą którą należy przeprowadzić w systemie Windows 7.
W nowo otwartym oknie z typów dostępnych połączeń wybieramy Połącz z miejscem pracy.
W kolejnym kroku należy wybrać typ połączenia. Do dyspozycji mamy opcję pozwalającą na wykorzystaniu połączenia internetowego (połączenie przewodowe, sieć WiFi) bądź metody opartej na bezpośrednim wybraniu numeru (tzw. wdzwanianie) - do ustanowienia połączenia niezbędny jest modem. Decydujemy się na pierwszą opcję: Użyj mojego połączenia internetowego
Po wybraniu sposobu łączenia należy określić adres serwera za pomocą, którego będzie realizowane połączenie VPN oraz należy określić nazwę profilu. Tym razem decydujemy się na serwer VPN umiejscowiony w Rumuni – adres: ro.privateinternetaccess.com. Jeśli chcesz zezwolić innym użytkownikom komputera na korzystanie z tego połączenia zaznacz: Zezwalaj innym osobom na korzystanie z tego połączenia.
Po określeniu wszystkich opcji wybieramy Utwórz.
Dostęp do połączenia będzie możliwy poprzez okno: Połączenia sieciowe
Utworzone połączenie można spróbować użyć lecz po wydaniu opcji Połącz łączność z serwerem nie zostanie ustanowiona gdyż nie wszystkie opcje zostały jeszcze zdefiniowane.
Aby przejść do edycji ustawień połączenia VPN należy z menu kontekstowego połączenia wybrać Właściwości.
Aby połączenie doszło do skutku należy na karcie Zaawansowane w sekcji Typ wirtualnej sieci prywatnej (VPN) wybrać: Protokół L2TP/IPSec oraz w sekcji Uwierzytelnienie po zaznaczeniu Zezwalaj na użycie tych protokołów wybrać Microsoft CHAP wersja 2 (MS-CHAP v2)
Serwery PIA wymagają zdefiniowania klucza wstępnego tak więc by określić klucz należy po wybraniu protokołu L2TP/IPSec kliknąć na Ustawienia zaawansowane
W nowo otwartym oknie po wybraniu opcji: Użyj klucza wstępnego do uwierzytelnienia zdefiniować klucz – wartość klucza: mysafety.
Wprowadzone ustawienia należy zatwierdzić przyciskiem OK.
Podczas wykonania pierwszego połączenia zostaniemy poproszeni o podanie danych umożliwiających przeprowadzenie procesu logowania.
Po weryfikacji danych (login i hasło) połączenie VPN zostaje ustanowione.
Sprawdzenie adresu IP przekonuje nas o poprawności wykonania czynności konfiguracyjnych – uzyskany adres IP wskazuje, że łączymy się z obszaru Rumuni.
Połączenie VPN wykorzystujące zestaw protokołów L2PT/IPsec jak już wież Czytelniku nie jest jedynym sposobem na ustalenie bezpiecznego kanału komunikacyjnego. Do zestawienia połączenia VPN może zostać wykorzystany pakiet oprogramowania OpenVPN. OpenVPN jest projektem zapoczątkowanym przez Jamesa Yonana a obecnie rozwijanym przez grupę ludzi z całego świata. Oprogramowanie to jest multiplatformowe, co oznacza dostępność narzędzia w systemach takich jak Solaris, Linux, OpenBSD, FreeBSD, NetBSD, QNX, Mac OS X, Android czy Windows XP/Vista/7/8/10. Pakiet jest publikowany na licencji GNU GPL. Dzięki tak dużej popularności oprogramowania wiele firm oferujących usługi połączeń VPN umożliwia zestawienie połączenia właśnie przy wykorzystaniu OpenVPN.
Oprogramowanie pobierzemy ze strony projektu: https://openvpn.net/index.php/open-source/downloads.html
Po pobraniu pakietu zależnego od wersji posiadanego systemu przystępujemy do jego instalacji.
Na pierwszym ekranie tradycyjnie należy zaakceptować licencję. Klikamy I Agree.
Drugi krok to wybór komponentów. Możemy pozostawić te zaproponowane domyślnie. Klikamy Next.
Następuje instalacja oprogramowania. Aby OpenVPN mógł poprawnie działać należy wyrazić zgodę na instalację sterowników dodatkowego interfejsu TAP-Win32 Adapter V9 Wybieramy: Zainstaluj
Po poprawnej instalacji by móc korzystać z aplikacji należy pobrać pliki konfiguracyjne przygotowane przez usługodawcę - każda z firm, która wspiera te rozwiązanie ma przygotowane potrzebne pliki. Informacji szukaj na stronach operatora.
Po pobraniu paczki konfiguracyjnej pliki należy wypakować do katalogu C:\Program Files\OpenVPN\config bądź C:\Program Files (x86)\OpenVPN\config (w zależności od wersji posiadanego systemu).
Po wykonaniu wszystkich czynności instalacyjnych na Pulpicie zostanie utworzony nowy skrót OpenVPN GUI. Uruchamiamy narzędzie (domyślnie warto, ustawić uruchamianie narzędzia z uprawnieniami administratora). Dla niewtajemniczonych zmianę uprawnień dokonamy po wyborze z menu kontekstowego opcji Właściwości i zaznaczeniu na karcie Zgodność opcji Uruchom ten program jako administrator
Po uruchomieniu narzędzia w prawym dolnym rogu obok zegarka (patrz tray) powinniśmy zobaczyć ikonkę programu. Aby uzyskać połączenie klikamy na ikonę PPM i z rozwijanej listy wybieramy interesujący nas serwer VPN. Aby zestawić połączenie z serwerem wybieramy przycisk Połącz
W trakcie ustanawiania połączenia z serwerem VPN, zostaniemy poproszeni o wpisanie loginu i hasła. Wprowadzone dane zatwierdzamy OK
Po podaniu danych uwierzytelniających połączenie powinno zostać ustalone.
Dodatkowo po nawiązaniu połączenia został przechwycony ruch sieciowy. Jak widać cała komunikacja przebiega pomiędzy hostem lokalnym (IP - 192.168.1.155) a bramą VPN (IP - 185.3.135.34), przesyłane informacje są zaszyfrowane
W dzisiejszym świecie komputer już dawno przestał być jedynym urządzeniem przez, które realizujemy dostęp do sieci Internet. Zasoby sieci bardzo często przeglądamy na smartfonach czy tabletach i również na tych urządzeniach możemy zestawić połączenie z serwerem VPN.
Windows Phone 8 oraz 10
Konfigurację połączenia VPN rozpoczniemy od systemu Windows Phone. Środowisko te oferuje nam możliwość skonfigurowania połączenia VPN m.in. z wykorzystaniem protokołów L2TP/IPSec
Rozpoczynamy od wybrania Ustawienia by następnie przejść do sekcji VPN (w systemie Windows Phone 8 - rysunek z lewej) w przypadku systemu Windows Phone 10 opcję VPN odnajdziemy po wybraniu Sieć i połączenia bezprzewodowe.
W przypadku gdy usługa jest nieaktywna należy ją włączyć. W kolejnym kroku poprzez wybranie przycisku Opcje możemy określić zasady ustalania połączenia z serwerem VPN (Windows Phone 8).
Do dyspozycji mamy dwie opcje:
Zezwalaj na VPN przez sieć komórkową - połączenie z serwerem VPN zostanie ustanowione za pośrednictwem sieci komórkowej,
Zezwalaj na VPN w roamingu przez sieć komórkową - roaming czyli zmiana operatora sieci komórkowej najczęściej realizowana w przypadku gdy abonent znajduje się poza zasięgiem sieci operatora lub dostawcy Internetu, z którym podpisał umowę o świadczenie usług telekomunikacyjnych. Zaznaczenie tej opcji spowoduje zestawienie połączenia VPN w sieciach nie będących naszą siecią macierzystą czyli np. gdy przebywamy za granicą.
W przypadku Windows Phone 10 opcje te są dostępne od razu po otwarciu okna VPN.
Aby dodać profil VPN klikamy na znak plusa. W nowym oknie musimy określić następujące opcje:
1 - nazwa lub adres IP serwera VPN,
2 - typ połączenia VPN - wybieramy protokół L2TP/IPSec,
3 - określamy typ uwierzytelnienia - login + hasło + klucz wstępny,
4 - definiujemy nazwę użytkownika,
5 - wpisujemy hasło,
6 - określamy klucz wstępny,
7 - opcjonalnie zezwalamy na automatyczne tworzenie tunelu VPN,
8 - opcjonalnie określamy włączenie przesyłania całego ruchu,
9 - określamy nazwę profilu.
Włączenie opcji Wysyłaj cały ruch spowoduje, że cała komunikacja opierająca się o transmisję danych będzie przekazywana poprzez serwer VPN. Po wyłączeniu opcji będziemy mogli zdecydować kiedy tunel VPN ma być stosowany a kiedy nie. Sposób kształtowaniu ruchu definiujemy poprzez określenie adresów IP bądź domen. Ruch sieciowy z tymi adresami będzie przesyłany przez bramę VPN.
Po wyborze przycisku zaawansowane uzyskujemy dostęp do dodatkowych ustawień. Ustawienia te dotyczą serwera proxy a także wyłączenia sieci VPN dla sieci firmowej i domowej czyli tych sieci co do których mamy pewność, że są bezpieczne.
W przypadku systemu Windows Phone 10 ustawienia zaawansowane odnajdziemy po kliknięciu na Właściwości utworzonego profilu.
Po zdefiniowaniu wszystkich opcji nie pozostaje nam nic innego jak próba nawiązania połączenia. Jak widać poniżej próba ta kończy się sukcesem. O fakcie ustanowienia poprawnego połączenia VPN dodatkowo jesteśmy informowani ikoną kłódki – ikona ta pojawia się przy ikonie mocy nawiązanego połączenia.
Tak więc po przeprowadzonej konfiguracji możemy na swoim smartfonie z zasobów Internetu korzystać w sposób całkowicie bezpieczy.
Apple - iOS
W środowisku urządzeń Apple czyli tych pracujących pod kontrolą systemu iOS ustanowienie połączenia VPN możemy zrealizować m.in. za pomocą protokołu L2TP oraz oprogramowania OpenVPN i na wykorzystaniu tych protokołów skupimy naszą uwagę.
Zacznijmy od skonfigurowania łącza wykorzystując do tego protokół L2TP. Opis konfiguracji został przedstawiony na urządzeniu IPAD.
Konfigurację rozpoczynamy od przejścia do Ustawień po czym odszukujemy opcję VPN.
Po przejściu do ustawień karty VPN wybieramy Dodaj konfigurację VPN
Po otwarciu okna Typ wybieramy L2PT
Aby skonfigurować połączenie VPN musimy określić następujące opcje:
1 - Opis – nazwa połączenia,
2 - Serwer – nazwa serwera VPN,
3 - Konto - login VPN,
4 - Hasło - hasło VPN,
5 - Hasło wspólne - klucz współdzielony,
6 - Opcja Wysyłaj wszystko – cały ruch sieciowy jest przesyłany przez bramę VPN.
Zapisanie zdefiniowanych ustawień odbywa się klikając na Gotowe
Po skonfigurowaniu wszystkich opcji połączenie jest gotowe do użycia. W przypadku zdefiniowania większej ilości połączeń VPN przed połączeniem wybieramy te z którego chcemy skorzystać. Nawiązanie połączenia odbywa się za pomocą przełącznika Status. Jak widać poniżej udało się zestawić działający kanał VPN.
Łącze VPN zostało utworzone.
System iOS domyślnie nie ma zainstalowanego klienta sieci OpenVPN ale nic nie stoi na przeszkodzie aby stosowane oprogramowanie samemu zainstalować.
Instalacja odbywa się poprzez sklep AppStore. Po uruchomieniu sklepu odszukujemy aplikację OpenVPN Connect i instalujemy ją. Warto przy okazji nadmienić, że wiele firm oferujących usługę połączeń VPN dostarcza dedykowane aplikacje do łączności z swoją infrastrukturą. Tak więc gdy chcemy skorzystać z takiej aplikacji należy się upewnić czy nasz usługodawca przewidział taką możliwość.
Aby dokonać konfiguracji połączenia z wykorzystaniem aplikacji OpenVPN Connect, w pierwszej kolejności musisz zaimportować profil czyli plik z rozszerzeniem .ovpn. Import pliku można dokonać ręcznie podłączając iPhone lub iPad do komputera i za pośrednictwem iTunes w sekcji Aplikacje, będzie można skopiować plik .ovpn wraz z ewentualnymi certyfikatami. Pliki .ovpn należy pobrać ze strony usługodawcy. Pliki te stanowią profil w którym są zapisane informacje pozwalające nam skorzystać z danego serwera VPN (najczęściej nazwa pliku określa umiejscowienie geograficzne serwera).
Alternatywnym sposobem jest skopiowanie pliku .ovpn za pośrednictwem strony internetowej przygotowanej przez usługodawcę.
Po wyborze interesującej nas lokalizacji pobrany plik otwieramy za pomocą programu OpenVPN Connect (po instalacji oprogramowania pliki z rozszerzeniem .ovpn będą skojarzone z aplikacją).
Po otwarciu aplikacji powinniśmy ujrzeć zaimportowany profil.
Aby można było skorzystać z profilu jego dane należy uzupełnić o dane uwierzytelniające. Dane te uzupełnimy klikając na ikonę plusa.
Po wprowadzeniu danych, celem ich zapisania przesuwamy przełącznik Save i dokonujemy próby połączenia z bramą VPN. Jeśli wszystko skonfigurowaliśmy poprawnie status połączenia powinien przełączyć się do stanu Connected
Po uzyskaniu połączenia dodatkowo będziemy mogli przeglądać statystyki zestawionego połączenia.
Otwarcie okna przeglądarki i sprawdzenie przypisanego adresu IP informuje nas, że połączenie jest wykonywane z terenu Niemiec.
Android
Omówiliśmy już Windowsa, IOSa tak więc przyszła pora na Androida. I tu tak samo jak w przypadku pozostałych systemów bardzo często zdarza się że nasz usługodawca umożliwia nam połączenie się ze swoją infrastrukturą z wykorzystaniem specjalnie do tego celu przygotowanej aplikacji (dostępność sprawdź na strona usługodawcy). My jednak zdecydujemy się na samodzielne skonfigurowanie połączenia VPN. Połączenie skonfigurujemy z wykorzystaniem protokołu L2PT/IPSec który jest wspierany przez system Android oraz z wykorzystaniem narzędzia OpenVPN.
Aby rozpocząć konfigurację połączenia VPN w systemie Android przechodzimy do sekcji Połączenia a następnie z dostępnych opcji wybieramy Więcej sieci i dalej VPN.
Połączenie VPN uda nam się skonfigurować tylko w przypadku ustawienia blokady ekranu na poświadczenie typu kod PIN bądź hasło. Jak widać poniżej opcje odpowiedzialne za konfigurację połączenia VPN są nie aktywne gdyż blokada ekranu jest realizowana za pomocą symbolu.
Po kliknięciu na OK zostaniemy przekierowani do ekranu opcji Ustawienia odblokowania ekranu. Na ekranie tym ustalamy jeden ze sposobów ochrony urządzenia.
Decydujemy się na ustawienie kodu PIN.
Po ustaleniu PINu bądź hasła dostęp do opcji tworzenia kanału VPN będzie możliwy.
Konfiguracja połączenia VPN sprowadza się do określenia:
1 – nazwy połączenia,
2 – typu użytych protokołów,
3 – adresu bramy VPN,
4 – klucza współdzielonego.
Po zdefiniowaniu wszystkich opcji wybieramy Zapisz.
Na uwadze należy mieć fakt, że u różnych dostawców konfiguracja połączenia może się nieznacznie różnić od tej przedstawionej. Wszystkie niezbędne informacje znajdziemy na pewno na stronach usługodawcy.
Po zapisaniu konfiguracji tunelu VPN możemy wykonać próbę połączenia. Po wybraniu połączenia określamy nazwę użytkownika oraz hasło.
Jeśli wszystko wykonaliśmy poprawnie powinno nam udać się ustanowić połączenie VPN. O stanie połączenia zostaniemy poinformowani osobnym powiadomieniem, na belce opcji powinna pojawić się ikona klucza.
W systemie Android możemy również skorzystać z połączeń typu OpenVPN. Aby wykorzystać ten typ połączenia musimy zainstalować aplikację OpenVPN Connect, którą znajdziemy w sklepie. Po odnalezieniu aplikacji wybieramy Zainstaluj.
Po instalacji oprogramowania należy tak jak w przypadku systemu IOS zaimportować odpowiedni profil połączenia. Przechodzimy na stronę udostępnioną przez operatora i wybieramy serwer przez który chcemy realizować połączenie. Po pobraniu pliku wybieramy Otwórz.
Akceptujemy ustawienia profilu wybierając Accept.
Po zaimportowaniu profilu aby ukończyć konfigurację tunelu VPN zostaniemy poproszeni o podanie nazwy użytkownika i hasła. Po poprawnym zdefiniowaniu danych wybieramy Connect.
Przed utworzeniem połączenia z serwerem VPN zostaniemy ostrzeżeni o przechwyceniu wszystkich aktywnych połączeń sieciowych przez aplikację OpenVPN Connect aby sfinalizować połączenie należy zaznaczyć Ufam tej aplikacji i całą operację potwierdzić klawiszem OK
Po wykonaniu tych wszystkich operacji powinno Nam udać się zestawić połączenie VPN. Aktywne połączenie VPN jest sygnalizowane ikoną klucza na belce zadań.
Trochę wcześniej obiecałem zaprezentować połączenie VPN typu site - to - site a więc aby nie rzucać słów na wiatr, jeszcze kilka słów na ten temat. Do tej pory zajmowaliśmy się konfigurowaniem połączeń VPN na każdym z urządzeń z osobna. Do problemu można podejść trochę z innej strony. A mianowicie w domu bądź firmie wszystkie urządzenia tworzące sieć lokalną aby uzyskać dostęp do Internetu muszą mieć łączność z bramą czyli routerem. Tak więc można zlecić routerowi utworzenie połączenia VPN w ten sposób naszą sieć lokalną połączymy z siecią usługodawcy VPN. W ten o to prosty sposób każde urządzenie pracujące w naszej sieci uzyska bezpieczny dostęp do Internetu poprzez bramę VPN. Niestety routerów, które mają wbudowaną obsługę protokołów VPN na rynku tak wiele nie znajdziemy. Prym w tym temacie wiedzie firma Asus, która np. w routerach Asus RT-N16, Asus RT-N18U, Asus RT-N66U, Asus RT-AC66U, Asus RT-AC68U, Asus RT-AC87U, Asus RT-AC3200 czy Asus RT-AC5300 zaimplementowała obsługę protokołu OpenVPN (w niektórych routerach opcja utworzenia kanału VPN będzie dostępna po wgraniu najnowszego softu). Poniżej przykład dostępnych opcji odpowiedzialnych za zestawienie połączenia VPN na routerze Asus RT-AC5300.
Jeśli domyślny firmware routera nie ma opcji zaimplementowania połączeń VPN można zdecydować się na zainstalowanie oprogramowania typu DD-WRT czy Tomato będącego alternatywą dla oryginalnego oprogramowania. Lecz tu na stronach projektów musimy sprawdzić kompatybilność oprogramowania z posiadanym sprzętem. Poniżej na zrzucie panel opcji VPN dostępnych po instalacji DD-WRT.
Szczegółowy przebieg konfiguracji nie został przeze mnie przedstawiony gdyż konfiguracja różni się w zależności od dostawcy (tu odsyłam do stron internetowych już konkretnych usług). Bardziej zależało mi na wskazaniu „drogi” niż przedstawieniu opisu dla tego konkretnego dostawcy.
Jeśli nie czujemy się na siłach w przeprowadzeniu flashowania routera i całej konfiguracji możemy zdecydować się na zakup już wstępnie przygotowanego routera - niektórzy dostawcy VPN w swojej ofercie mają przygotowaną taką opcję.
I dobrnęliśmy do końca mam nadzieję Czytelniku, że utworzenie połączenia VPN po lekturze tego wpisu nie będzie stanowić żadnego problemu.
BIBLIOGRAFIA:
https://msdn.microsoft.com/en-us/library/cc247338.aspx
https://www.bestvpn.com/blog/4147/pptp-vs-l2tp-vs-openvpn-vs-sstp-vs-ikev2/
Komentarze
Poproszę o pomoc. Mam skonfigurowane połączenie VPN. Status połączono. Serwer VPN zestawiony na rt-n18u. Adresacja 192.1681.1 i dalej. Połączenie zestawione na komórce działa. W pracy na kop. stacjonarnym nie mogę się połączyć przez przeglądarkę z żadnym urządzeniem. Jakieś pomysły??
Dzięuje i pozdrawiam Dawid