Sdílet prostřednictvím


Konfigurace sítě VPN strongSwan pro připojení IKEv2 pro ověřování certifikátů P2S – Linux

Tento článek vám pomůže připojit se k virtuální síti Azure pomocí sítě VPN Gateway point-to-site (P2S) VPN a ověřování certifikátů z klienta Ubuntu Linux pomocí strongSwanu.

Než začnete

Než začnete, ověřte, že jste ve správném článku. Následující tabulka uvádí články o konfiguraci, které jsou k dispozici pro klienty VPN typu P2S služby Azure VPN Gateway. Postup se liší v závislosti na typu ověřování, typu tunelu a klientském operačním systému.

Ověřování Typ tunelového propojení Operační systém klienta Klient VPN
Certifikát
IKEv2, SSTP Windows Nativní klient VPN
IKEv2 macOS Nativní klient VPN
IKEv2 Linux strongSwan
OpenVPN Windows Klient Azure VPN
Klient OpenVPN verze 2.x
Klient OpenVPN verze 3.x
OpenVPN macOS Klient OpenVPN
OpenVPN iOS Klient OpenVPN
OpenVPN Linux Klient Azure VPN
Klient OpenVPN
Microsoft Entra ID
OpenVPN Windows Klient Azure VPN
OpenVPN macOS Klient Azure VPN
OpenVPN Linux Klient Azure VPN

Požadavky

Tento článek předpokládá, že jste už provedli následující požadavky:

Požadavky na připojení

Pokud se chcete připojit k Azure pomocí klienta strongSwan a ověřování certifikátů pomocí typu tunelu IKEv2, každý připojující klient vyžaduje následující položky:

  • Každý klient musí být nakonfigurovaný tak, aby používal strongSwan.
  • Klient musí mít nainstalované správné certifikáty místně.

Workflow

Pracovní postup pro tento článek:

  1. Nainstalujte strongSwan.
  2. Zobrazte konfigurační soubory profilu klienta VPN obsažené v konfiguračním balíčku profilu klienta VPN, který jste vygenerovali.
  3. Vyhledejte všechny potřebné klientské certifikáty.
  4. Konfigurace strongSwanu
  5. Připojte se k Azure.

Informace o certifikátech

Pro ověřování certifikátů musí být klientský certifikát nainstalovaný na každém klientském počítači. Klientský certifikát, který chcete použít, musí být exportován s privátním klíčem a musí obsahovat všechny certifikáty v cestě k certifikaci. V některých konfiguracích budete také muset nainstalovat informace o kořenovém certifikátu.

Další informace o certifikátech pro Linux najdete v následujících článcích:

Instalace strongSwanu

Při zadávání příkazů se použila následující konfigurace:

  • Počítač: Ubuntu Server 18.04
  • Závislosti: strongSwan

K instalaci požadované konfigurace strongSwan použijte následující příkazy:

sudo apt-get update
sudo apt-get upgrade
sudo apt install strongswan
sudo apt install strongswan-pki
sudo apt install libstrongswan-extra-plugins
sudo apt install libtss2-tcti-tabrmd0

Zobrazení konfiguračních souborů profilu klienta VPN

Při generování konfiguračního balíčku profilu klienta VPN jsou všechna potřebná nastavení konfigurace pro klienty VPN obsažena v konfiguračním souboru ZIP profilu klienta VPN. Konfigurační soubory profilu klienta VPN jsou specifické pro konfiguraci brány VPN typu P2S pro virtuální síť. Pokud se po vygenerování souborů, například změn typu protokolu VPN nebo typu ověřování, změníte konfiguraci P2S VPN, musíte vygenerovat nové konfigurační soubory profilu klienta VPN a použít novou konfiguraci pro všechny klienty VPN, které chcete připojit.

Vyhledejte a rozbalte konfigurační balíček profilu klienta VPN, který jste vygenerovali a stáhli. Všechny informace, které potřebujete pro konfiguraci, najdete ve složce Generic . Azure pro tuto konfiguraci neposkytuje soubor mobileconfig .

Pokud obecnou složku nevidíte, zkontrolujte následující položky a pak znovu vygenerujte soubor ZIP.

  • Zkontrolujte typ tunelu pro vaši konfiguraci. Je pravděpodobné, že IKEv2 nebyl vybrán jako typ tunelu.
  • Na bráně VPN ověřte, že skladová položka není základní. Skladová položka služby VPN Gateway Basic nepodporuje IKEv2. Pak vyberte IKEv2 a znovu vygenerujte soubor ZIP pro načtení obecné složky.

Složka Generic obsahuje následující soubory:

  • VpnSettings.xml, která obsahuje důležitá nastavení, jako je adresa serveru a typ tunelu.
  • VpnServerRoot.cer, který obsahuje kořenový certifikát potřebný k ověření brány Azure VPN během instalace připojení P2S.

Konfigurace klienta VPN

Po zobrazení souborů profilu klienta VPN pokračujte kroky, které chcete použít:

Kroky grafického uživatelského rozhraní

Tato část vás provede konfigurací pomocí grafického uživatelského rozhraní strongSwan. Následující pokyny byly vytvořeny na Ubuntu 18.0.4. Ubuntu 16.0.10 nepodporuje grafické uživatelské rozhraní strongSwan. Pokud chcete použít Ubuntu 16.0.10, budete muset použít příkazový řádek. Následující příklady nemusí odpovídat zobrazeným obrazovkám v závislosti na vaší verzi Linuxu a strongSwanu.

  1. Spuštěním příkazu v příkladu otevřete terminál a nainstalujte strongSwan a jeho Správce sítě.

    sudo apt install network-manager-strongswan
    
  2. Vyberte Nastavení a pak vyberte Síť. + Výběrem tlačítka vytvořte nové připojení.

    Snímek obrazovky se stránkou připojení k síti

  3. V nabídce vyberte protokol IPsec/IKEv2 (strongSwan) a poklikejte na to.

    Snímek obrazovky se stránkou Přidat síť VPN

  4. Na stránce Přidat síť VPN přidejte název připojení VPN.

    Snímek obrazovky s výběrem typu připojení

  5. Otevřete soubor VpnSettings.xml ze složky Obecné obsažené ve stažených konfiguračních souborech profilu klienta VPN. Najděte značku s názvem VpnServer a zkopírujte název začínající na azuregateway a končící na .cloudapp.net.

    Snímek obrazovky znázorňující kopírování dat

  6. Do pole Adresa nového připojení VPN vložte název v části Brána. Dále vyberte ikonu složky na konci pole Certifikát, přejděte do obecné složky a vyberte soubor VpnServerRoot.

  7. V části Klient připojení vyberte pro ověřování certifikát nebo privátní klíč. U certifikátu a privátního klíče zvolte certifikát a privátní klíč, které byly vytvořeny dříve. V možnostech vyberte Požadavek na vnitřní IP adresu. Pak vyberte Přidat.

    Snímek obrazovky znázorňující požadavek na vnitřní IP adresu

  8. Zapněte připojení.

    Snímek obrazovky ukazuje kopii.

Kroky rozhraní příkazového řádku

Tato část vás provede konfigurací pomocí rozhraní příkazového řádku strongSwan.

  1. V konfiguračních souborech konfiguračních souborů klienta VPN zkopírujte nebo přesuňte VpnServerRoot.cer do složky /etc/ipsec.d/cacerts.

  2. Zkopírujte nebo přesuňte soubory, které jste vygenerovali do /etc/ipsec.d/certs a /etc/ipsec.d/private/ . Tyto soubory jsou klientský certifikát a privátní klíč, musí být umístěny v příslušných adresářích. Použijte následující příkazy:

    sudo cp ${USERNAME}Cert.pem /etc/ipsec.d/certs/
    sudo cp ${USERNAME}Key.pem /etc/ipsec.d/private/
    sudo chmod -R go-rwx /etc/ipsec.d/private /etc/ipsec.d/certs
    
  3. Spuštěním následujícího příkazu si poznamenejte název hostitele. Tuto hodnotu použijete v dalším kroku.

    hostnamectl --static
    
  4. Otevřete soubor VpnSettings.xml a zkopírujte <VpnServer> hodnotu. Tuto hodnotu použijete v dalším kroku.

  5. Upravte hodnoty v následujícím příkladu a pak přidejte příklad do konfigurace /etc/ipsec.conf .

    conn azure
          keyexchange=ikev2
          type=tunnel
          leftfirewall=yes
          left=%any
          # Replace ${USERNAME}Cert.pem with the key filename inside /etc/ipsec.d/certs  directory. 
          leftcert=${USERNAME}Cert.pem
          leftauth=pubkey
          leftid=%client # use the hostname of your machine with % character prepended. Example: %client
          right= #Azure VPN gateway address. Example: azuregateway-xxx-xxx.vpn.azure.com
          rightid=% #Azure VPN gateway FQDN with % character prepended. Example: %azuregateway-xxx-xxx.vpn.azure.com
          rightsubnet=0.0.0.0/0
          leftsourceip=%config
          auto=add
          esp=aes256gcm16
    
  6. Přidejte hodnoty tajných kódů do /etc/ipsec.secrets.

    Název souboru PEM se musí shodovat s tím, co jste použili dříve jako soubor klíče klienta.

    : RSA ${USERNAME}Key.pem  # Replace ${USERNAME}Key.pem with the key filename inside /etc/ipsec.d/private directory. 
    
  7. Spusťte následující příkazy:

    sudo ipsec restart
    sudo ipsec up azure
    

Další kroky

Další kroky najdete v článku o portálu P2S na webu Azure Portal .