VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

Część pierwsza. Wprowadzenie
Część druga. Konfiguracja zasad Firewall i NAT
Część trzecia. Konfiguracja DHCP
Część czwarta. Konfiguracja routingu
Część piąta. Konfiguracja równoważnika obciążenia

Dziś przyjrzymy się możliwościom konfiguracji VPN, które oferuje nam NSX Edge.

Ogólnie możemy podzielić technologie VPN na dwa kluczowe rodzaje:

  • VPN typu site-to-site. Najczęściej używa się IPSec do tworzenia zabezpieczonego tunelu, na przykład między siecią głównego biura a siecią w zdalnej lokalizacji lub w chmurze.
  • VPN typu Remote Access. Służy do łączenia pojedynczych użytkowników z prywatnymi sieciami organizacji za pomocą oprogramowania klienta VPN.

NSX Edge pozwala nam korzystać z obu opcji.
Konfigurację przeprowadzimy za pomocą testowego stanowiska z dwoma NSX Edge, serwerem Linux z zainstalowanym demonem racoon oraz laptopem z systemem Windows do testowania VPN typu Remote Access.

IPsec

  1. W interfejsie vCloud Director przechodzimy do sekcji Administracja i wybieramy vDC. Na zakładce Edge Gateways wybieramy odpowiedni Edge, klikamy prawym przyciskiem i wybieramy Usługi bramy Edge.
    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN
  2. W interfejsie NSX Edge przechodzimy do zakładki VPN-IPsec VPN, następnie do sekcji IPsec VPN Sites i naciskamy +, aby dodać nową lokalizację.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  3. Wypełniamy wymagane pola:
    • Enabled – aktywuje zdalną lokalizację.
    • PFS – zapewnia, że każdy nowy klucz kryptograficzny nie jest powiązany z żadnym wcześniejszym kluczem.
    • Local ID i Local Endpoint– zewnętrzny adres NSX Edge.
    • Local Subnets– lokalne sieci, które będą używać IPsec VPN.
    • Peer ID i Peer Endpoint – adres zdalnej lokalizacji.
    • Peer Subnets – sieci, które będą używać IPsec VPN po stronie zdalnej.
    • Algorytm szyfrowania – algorytm szyfrowania tunelu.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    • Uwierzytelnianie – jak będziemy uwierzytelniać pary. Można użyć Pre-Shared Key lub certyfikatu.
    • Pre-Shared Key – podajemy klucz, który będzie używany do uwierzytelnienia i musi być zgodny po obu stronach.
    • Diffie-Hellman Group – algorytm wymiany kluczy.

    Po wypełnieniu wymaganych pól klikamy Keep.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  4. Gotowe.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  5. Po dodaniu lokalizacji przechodzimy do zakładki Status aktywacji i aktywujemy usługę IPsec.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  6. Po zastosowaniu ustawień przechodzimy do zakładki Statystyki -> IPsec VPN i sprawdzamy status tunelu. Widzimy, że tunel został nawiązany.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  7. Sprawdzimy status tunelu z konsoli Edge Gateway:
    • show service ipsec – sprawdzenie stanu usługi.

      VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    • show service ipsec site – informacje o statusie witryny i uzgodnionych parametrach.

      VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    • show service ipsec sa – sprawdzenie statusu Security Association (SA).

      VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  8. Sprawdzanie łączności z zdalną lokalizacją:
    root@racoon:~# ifconfig eth0:1 | grep inet
            inet 10.255.255.1  netmask 255.255.255.0  broadcast 0.0.0.0
    
    root@racoon:~# ping -c1 -I 10.255.255.1 192.168.0.10 
    PING 192.168.0.10 (192.168.0.10) from 10.255.255.1 : 56(84) bytes of data.
    64 bytes from 192.168.0.10: icmp_seq=1 ttl=63 time=59.9 ms
    
    --- 192.168.0.10 ping statistics ---
    1 packets transmitted, 1 received, 0% packet loss, time 0ms
    rtt min/avg/max/mdev = 59.941/59.941/59.941/0.000 ms
    

    Pliki konfiguracyjne i dodatkowe komendy do diagnostyki zdalnego serwera Linux:

    root@racoon:~# cat /etc/racoon/racoon.conf 
    
    log debug;
    path pre_shared_key "/etc/racoon/psk.txt";
    path certificate "/etc/racoon/certs";
    
    listen {
      isakmp 80.211.43.73 [500];
       strict_address;
    }
    
    remote 185.148.83.16 {
            exchange_mode main,aggressive;
            proposal {
                     encryption_algorithm aes256;
                     hash_algorithm sha1;
                     authentication_method pre_shared_key;
                     dh_group modp1536;
             }
             generate_policy on;
    }
     
    sainfo address 10.255.255.0/24 any address 192.168.0.0/24 any {
             encryption_algorithm aes256;
             authentication_algorithm hmac_sha1;
             compression_algorithm deflate;
    }
    
    ===
    
    root@racoon:~# cat /etc/racoon/psk.txt
    185.148.83.16 testkey
    
    ===
    
    root@racoon:~# cat /etc/ipsec-tools.conf 
    #! /usr/sbin/setkey -f
    
    flush;
    spdflush;
    
    spdadd 192.168.0.0/24 10.255.255.0/24 any -P in ipsec
          esp/tunnel/185.148.83.16-80.211.43.73/require;
    
    spdadd 10.255.255.0/24 192.168.0.0/24 any -P out ipsec
          esp/tunnel/80.211.43.73-185.148.83.16/require;
    
    ===
    
    
    root@racoon:~# racoonctl show-sa isakmp
    Destination            Cookies                           Created
    185.148.83.16.500      2088977aceb1b512:a4c470cb8f9d57e9 2019-05-22 13:46:13 
    
    ===
    
    root@racoon:~# racoonctl show-sa esp
    80.211.43.73 185.148.83.16 
            esp mode=tunnel spi=1646662778(0x6226147a) reqid=0(0x00000000)
            E: aes-cbc  00064df4 454d14bc 9444b428 00e2296e c7bb1e03 06937597 1e522ce0 641e704d
            A: hmac-sha1  aa9e7cd7 51653621 67b3b2e9 64818de5 df848792
            seq=0x00000000 replay=4 flags=0x00000000 state=mature 
            created: May 22 13:46:13 2019   current: May 22 14:07:43 2019
            diff: 1290(s)   hard: 3600(s)   soft: 2880(s)
            last: May 22 13:46:13 2019      hard: 0(s)      soft: 0(s)
            current: 72240(bytes)   hard: 0(bytes)  soft: 0(bytes)
            allocated: 860  hard: 0 soft: 0
            sadb_seq=1 pid=7739 refcnt=0
    185.148.83.16 80.211.43.73 
            esp mode=tunnel spi=88535449(0x0546f199) reqid=0(0x00000000)
            E: aes-cbc  c812505a 9c30515e 9edc8c4a b3393125 ade4c320 9bde04f0 94e7ba9d 28e61044
            A: hmac-sha1  cd9d6f6e 06dbcd6d da4d14f8 6d1a6239 38589878
            seq=0x00000000 replay=4 flags=0x00000000 state=mature 
            created: May 22 13:46:13 2019   current: May 22 14:07:43 2019
            diff: 1290(s)   hard: 3600(s)   soft: 2880(s)
            last: May 22 13:46:13 2019      hard: 0(s)      soft: 0(s)
            current: 72240(bytes)   hard: 0(bytes)  soft: 0(bytes)
            allocated: 860  hard: 0 soft: 0
            sadb_seq=0 pid=7739 refcnt=0

  9. Wszystko gotowe, VPN IPsec typu site-to-site jest skonfigurowany i działa.

    W tym przykładzie użyliśmy klucza PSK do uwierzytelniania partnera, ale możliwe jest również uwierzytelnianie za pomocą certyfikatów. W tym celu należy przejść do zakładki Global Configuration, włączyć uwierzytelnianie oparte na certyfikatach i wybrać odpowiedni certyfikat.

    Dodatkowo w ustawieniach witryny należy zmienić metodę uwierzytelnienia.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    Zauważam, że liczba tuneli IPsec zależy od rozmiaru wdrożonego Edge Gateway (więcej na ten temat w naszej pierwszym artykule).

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

SSL VPN

SSL VPN-Plus to jedna z opcji Remote Access VPN. Umożliwia ona poszczególnym zdalnym użytkownikom bezpieczne łączenie się z sieciami prywatnymi, znajdującymi się za bramą NSX Edge. Szyfrowany tunel w przypadku SSL VPN-Plus jest ustanawiany między klientem (Windows, Linux, Mac) a NSX Edge.

  1. Zaczynamy konfigurację. W panelu sterowania usługami Edge Gateway przechodzimy do zakładki SSL VPN-Plus, a następnie do Ustawień serwera. Wybieramy adres i port, na którym serwer będzie nasłuchiwał przychodzące połączenia, włączamy logowanie i wybieramy wymagane algorytmy szyfrowania.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    Tutaj możemy również zmienić certyfikat, który będzie używany przez serwer.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  2. Po zakończeniu wszystkich przygotowań włączamy serwer i nie zapominamy zapisać ustawień.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  3. Następnie musimy skonfigurować pulę adresów, które będziemy przydzielać klientom podczas łączenia. Ta sieć jest oddzielona od wszelkich istniejących podsieci w Twoim środowisku NSX, nie trzeba jej konfigurować na innych urządzeniach w fizycznych sieciach, z wyjątkiem tras, które do niej wskazują.

    Przechodzimy do zakładki Puli IP i klikamy +.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  4. Wybieramy adresy, maskę podsieci i bramę. Tutaj możemy również zmienić ustawienia dla serwerów DNS i WINS.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  5. Uzyskana pula.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  6. Teraz dodamy sieci, do których będą mieli dostęp użytkownicy łączący się z VPN. Przechodzimy do zakładki Prywatne Sieci i klikamy +.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  7. Wypełniamy:
    • Sieć — lokalna sieć, do której będą mieli dostęp zdalni użytkownicy.
    • Wyślij ruch, są dwie opcje:
      — przez tunel – wysyłać ruch do sieci przez tunel,
      — omijaj tunel – wysyłać ruch do sieci bezpośrednio, omijając tunel.
    • Włącz optymalizację TCP – zaznaczamy, jeśli wybraliśmy opcję przez tunel. Gdy optymalizacja jest włączona, można określić numery portów, dla których należy zoptymalizować ruch. Ruch dla pozostałych portów tej konkretnej sieci nie będzie optymalizowany. Jeśli numery portów nie są podane, ruch dla wszystkich portów zostanie zoptymalizowany. Więcej na ten temat przeczytasz tutaj.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  8. Następnie przechodzimy do zakładki Uwierzytelnianie i klikamy +. Do uwierzytelniania będziemy używać lokalnego serwera na samym NSX Edge.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  9. Tutaj możemy wybrać polityki do generowania nowych haseł oraz skonfigurować opcje dotyczące blokowania kont użytkowników (na przykład liczba prób przy nieprawidłowym wprowadzeniu hasła).

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  10. Ponieważ używamy lokalnej autoryzacji, musimy utworzyć użytkowników.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  11. Oprócz podstawowych rzeczy, takich jak imię i hasło, można tutaj na przykład zabronić użytkownikowi zmiany hasła lub, przeciwnie, wymusić na nim wymianę hasła przy następnym logowaniu.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  12. Po dodaniu wszystkich niezbędnych użytkowników przechodzimy do zakładki Pakiety instalacyjne, klikamy + i tworzymy instalator, który pobierze na komputer zdalny.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  13. Klikamy +. Wybieramy adres i port serwera, do którego będzie łączyć się klient, oraz platformy, dla których należy wygenerować pakiet instalacyjny.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    Poniżej w tym oknie można określić parametry klienta dla systemu Windows. Wybieramy:

    • start client on logon – klient VPN zostanie dodany do autostartu na zdalnej maszynie;
    • create desktop icon – utworzy ikonę klienta VPN na pulpicie;
    • server security certificate validation – będzie weryfikować certyfikat serwera podczas łączenia.
      Konfiguracja serwera zakończona.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  14. Teraz pobierzemy utworzony przez nas w ostatnim kroku pakiet instalacyjny na zdalny komputer. Podczas konfiguracji serwera wskazaliśmy jego zewnętrzny adres (185.148.83.16) i port (445). Musimy przejść do tego adresu w przeglądarce internetowej. W moim przypadku jest to 185.148.83.16:445.

    W oknie logowania należy wprowadzić dane uwierzytelniające użytkownika, którego utworzyliśmy wcześniej.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  15. Po zalogowaniu pojawi się lista utworzonych pakietów instalacyjnych dostępnych do pobrania. Utworzyliśmy tylko jeden – ten pobierzemy.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  16. Klikamy link, rozpoczyna się pobieranie klienta.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  17. Rozpakowujemy pobrany archiwum i uruchamiamy instalator.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  18. Po zainstalowaniu uruchamiamy klienta, w oknie logowania klikamy Zaloguj.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  19. W oknie weryfikacji certyfikatu wybieramy Tak.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  20. Wprowadzamy dane uwierzytelniające dla wcześniej utworzonego użytkownika i widzimy, że połączenie zakończyło się powodzeniem.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  21. Sprawdzamy statystyki klienta VPN na lokalnym komputerze.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  22. W wierszu poleceń Windows (ipconfig /all) widzimy, że pojawił się dodatkowy wirtualny adapter i jest łączność z zdalną siecią, wszystko działa:

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  23. I na koniec – weryfikacja z konsoli Edge Gateway.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

L2 VPN

L2VPN będzie potrzebny w przypadku, gdy trzeba połączyć kilka geograficznie
rozproszonych sieci w jedną domenę rozgłoszeniową.

Może to być przydatne, na przykład podczas migracji maszyny wirtualnej: przenosząc VM na inną lokalizację geograficzną, maszyna zachowa ustawienia adresowania IP i nie straci łączności z innymi maszynami znajdującymi się w tej samej domenie L2.

W naszej środowisku testowym połączymy ze sobą dwa podmioty, nazwijmy je odpowiednio A i B. Mamy dwa NSX i dwie identycznie skonfigurowane sieci routowalne, przypisane do różnych Edge. Maszyna A ma adres 10.10.10.250/24, maszyna B – 10.10.10.2/24.

  1. W vCloud Director przechodzimy do zakładki Administracja, wchodzimy w odpowiedni VDC, przechodzimy do zakładki Sieci Org VDC i dodajemy dwie nowe sieci.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  2. Wybieramy typ sieci routowaną i przypisujemy tę sieć do naszego NSX. Zaznaczamy pole Create as subinterface.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  3. W efekcie powinny powstać dwie sieci. W naszym przykładzie nazywają się network-a i network-b z identycznymi ustawieniami bramy i taką samą maską.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  4. Teraz przejdziemy do ustawień pierwszego NSX. To będzie NSX, do którego przypisana jest sieć A. Będzie pełnić rolę serwera.

    Wracamy do interfejsu NSX Edge / Przechodzimy do zakładki VPN → L2VPN. Włączamy L2VPN, wybieramy tryb pracy Serwer, w ustawieniach Global Server podajemy zewnętrzny adres IP NSX, na którym będzie nasłuchiwać port dla tunelu. Domyślnie gniazdo otworzy się na porcie 443, ale można to zmienić. Nie zapominamy wybrać ustawienia szyfrowania dla przyszłego tunelu.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  5. Przechodzimy do zakładki Server Sites i dodajemy peer.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  6. Włączamy peer, nadajemy mu nazwę, opis, jeśli trzeba, oraz podajemy nazwisko użytkownika i hasło. Będą one potrzebne później przy konfiguracji strony klienta.

    W polu Egress Optimization Gateway Address podajemy adres bramy. Jest to potrzebne, aby uniknąć konfliktów adresów IP, ponieważ brama naszych sieci ma ten sam adres. Następnie naciskamy przycisk SELECT SUB-INTERFACES.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  7. Tutaj wybieramy odpowiedni subinterfejs. Zapisujemy ustawienia.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  8. Widzimy, że w ustawieniach pojawiła się właśnie stworzona strona klienta.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  9. Teraz przejdźmy do konfiguracji NSX po stronie klienta.

    Logujemy się do NSX po stronie B, przechodzimy do VPN → L2VPN, włączamy L2VPN, ustawiamy tryb L2VPN na tryb klienta. W zakładce Client Global podajemy adres i port NSX A, który wcześniej wskazaliśmy jako Listening IP i Port po stronie serwera. Należy również ustawić identyczne ustawienia szyfrowania, aby były zgodne podczas nawiązywania tunelu.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

    Przewiń w dół, wybierz subinterfejs, przez który zostanie zbudowany tunel dla L2VPN.
    W Egress Optimization Gateway Address wprowadź adres bramy. Ustaw user-id i hasło. Wybierz subinterfejs i nie zapomnij zapisać ustawień.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  10. To właściwie wszystko. Ustawienia po stronie klienta i serwera są praktycznie identyczne, z wyjątkiem kilku szczegółów.
  11. Teraz możemy sprawdzić, że nasz tunel działa, przechodząc do Statistics —> L2VPN na dowolnym NSX.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

  12. Jeśli teraz wejdziemy do konsoli dowolnego Edge Gateway, zobaczymy na każdym z nich w tabeli arp adresy obu VM.

    VMware NSX dla najmłodszych. Część 6. Konfiguracja VPN

Na tym kończymy temat VPN na NSX Edge. Pytaj, jeśli coś pozostało niejasne. To także ostatnia część z serii artykułów o NSX Edge. Mamy nadzieję, że były przydatne 🙂

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster