VPN serwer L2TP/IPSec na Ubiquity Unifi

VPN oparty na L2TP z IPSec to kompromis pomiędzy bezpieczeństwem, a prostą konfiguracją. Protokół ten jest bardzo rozpowszechniony – jest zaimplementowany na routerach, desktopach, smartfonach i tabletach. Poniżej przedstawiam konfigurację opartą na urządzaniach Ubiquity z serii Unifi.

Warunki wstępne

Urządzenia

W lokalizacji lokalnej mamy sieć na urządzeniach Ubiquity z serii Unifi:

  • kontroler Ubuquity Unifi (w tym przypadku na Cloud Key),
  • router Ubiquity UniFi® Security Gateway Pro 4.

Router z serii Unifi USG jest konieczny, ponieważ nie ma możliwości zestawienia VPN w parciu o Unifi wykorzystując sam kontroler lub punkty dostępowe. W rozpatrywanym przypadku zakładamy, że w lokalizacji zdalnej chcemy się łączyć z komputera z systemem Windows 10 za pomocą wbudowanego klienta VPN.

Adresacja IP

Bardzo ważnym aspektem przy realizacji połączeń VPN (nie tylko na Unifi) jest różna adresacja IP w sieci lokalnej i zdalnej. To istotne, aby zapobiegać konfliktowi adresów IP nie zalecam stosowania w sieci lokalnej popularnych puli adresowych jak:

  • 192.168.0.0/24
  • 192.168.1.0/24
  • 10.0.0.0/24

Zdecydowanie lepiej zastosować jakieś bardziej unikalne adresy:

  • 192.168.60.0/24
  • 10.60.0.0/24
  • itp

Serwer RADIUS

Tunel VPN L2TP wymaga autoryzowania użytkownika, my wykorzystamy tu logowanie nazwą użytkownika i hasłem, ale może być to też na przykład certyfikat. Do realizacji autoryzacji wykorzystać można zewnętrzny serwer RADUS zawierający bazę użytkowników lub lokalny serwer na routerze Unifi USG. Można również wykorzystać usługę Network Policy Server (NPS) powiązaną z katalogiem Active Directory – jeśli potrzebujesz wsparcia w takiej konfiguracji zapraszam do kontaktu.

Konfiguracja serwera

Konfiguracja sprowadza się do kilku kroków.

  1. Uruchomienie usługi RADIUS.
  2. Konfiguracja konta użytkownika.
  3. Konfiguracja profilu RADIUS.
  4. Konfiguracja sieci VPN.

Uruchomienie usługi RADIUS

Konfigurację rozpoczynamy od uruchomienia usługi RADIUS. Należy w tym celu wejść do ustawień i wybrać z menu Services ->RADIUS -> Server, a następnie włączyć usługę (Enable RADIUS Server), podać frazę zabezpieczająca połączenie do serwera RADIUS (tak zwane Secret). Pozostałe ustawienia mogą (a nawet powinny) zostać ustawione domyślnie.

Unifi Controller – Enable RADIUS Server

Konfiguracja konta użytkownika

W następnym kroku tworzymy pierwszego użytkownika. To dane dostępowe, którymi będzie się posługiwał użytkownik w celu realizacji bezpiecznego połączenia VPN do naszej lokalnej sieci.

W tym celu wybieramy w menu Service -> RADIUS -> Create new user. Należy tu podać nazwę użytkownika (name), hasło (password) oraz wybieramy typ tunelu i medium na jakim nasz tunel realizujemy. W naszym przypadku będzie to typ 2 – Layer Two Forwarding (L2F), a medium to sieć TCP IPv4.

Unifi Controller – creating RADIUS user

Konfiguracja profilu dostępowego do serwera RADIUS

Gdy nasza usługa RADIUS już działa i mamy w niej utworzone konto użytkownika to możemy utworzyć profil dostępowy. Profil dostępowy to parametry które określają w jaki sposób lokalny serwer L2TP ma się komunikować z lokalnym serwerem RADIUS celem autoryzowania użytkownika.

Profil ustawia się w sekcji Profiles -> RADIUS. Tam należy wybrać tworzenie nowego profilu.

Unifi Controller – Creating new RADIUS profile

W tym miejscu należy zdefiniować nazwę profilu (Profile name), adres IP który w naszym przypadku jest zgodny z adresem routera Unifi USG (nie jest to adres kontrolera!), oraz frazę Secret która definiowaliśmy gdy uruchamialiśmy usługę RADIUS.

Konfiguracja sieci VPN

Teraz ostatni etap, w którym tworzymy sieć VPN, czyli uruchamiamy faktyczną usługę serwera L2TP/IPSec. W menu wybieramy Networks i dodajemy nową sieć.

Unifi Controller – Add new network

Tutaj definiujemy kilka ważnych parametrów, które będą odpowiedzialne za bezpieczeństwo naszego połączenia VPN:

  • Name – to nasza porządkowa nazwa sieci, możemy ją zdefiniować dowolnie jednak warto uwzględnić, że to sieć VPN rodzaju L2TP
  • VPN Type – rodzaj tunelu VPN, my konfigurujemy L2TP więc wybór jest oczywisty. PPTP jest prostym, ale również mniej bezpiecznym tunelem.
  • Pre Shared Key – klucz jakim będzie realizowana część szyfrowania IPSec zabezpieczająca nasz tunel L2TP. Powinna to być skomplikowana fraza zawierająca możliwie duże i małe litery, cyfry i znaki specjalne, tą frazę będziemy potrzebować podczas konfigurowania klienta VPN po stronie użytkownika.
  • Gateway/Subnet – pula adresowa wykorzystywana do komunikacji między użytkownikiem, a nasza siecią. Musi być różna od puli adresowych naszej lokalnej sieci oraz od sieci lokalnej klienta, dlatego warto aby była dość unikalna (jak zwracałem już uwagę powyżej.
  • RADIUS Profile – wybieramy wcześniej utworzony profil określający do jakiego serwera RADIUS powinien się łączyć serwer celem autoryzacji użytkownika.
  • MS-CHAPv2 – należy wybrać celem zwiększenia bezpieczeństwa w fazie logowania, MS-CHAPv2 jest już standardem więc powinno go już obsługiwać większość urządzeń.

Po zapisaniu ustawień mamy gotowy serwer VPN, można przejść do konfiguracji po stronie klienta.

Unifi Controller – Networks

Konfiguracja klienta wbudowanego w system Windows 10 jest opisana w osobnym artykule.

2 komentarze do “VPN serwer L2TP/IPSec na Ubiquity Unifi”

  1. Działa sprawnie ale mam dziwny problem bo co kilka godzin VPN przestaje działać wystarczy cokolwiek na nim kliknąć i połączenie znów odżywa. Macie pomysł co jest tego przyczyną ?

    Odpowiedz

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.