Konfigurace sítě VPN typu point-to-site (P2S) ve Windows pro použití se službou Azure Files
Připojení VPN typu point-to-site (P2S) můžete použít k připojení sdílených složek Azure přes protokol SMB mimo Azure bez otevření portu 445. Připojení VPN typu point-to-site je připojení VPN mezi Azure a individuálním klientem. Pokud chcete použít připojení P2S VPN se službou Azure Files, musíte nakonfigurovat připojení VPN pro každého klienta, který se chce připojit. Pokud máte mnoho klientů, kteří se potřebují připojit ke sdíleným složkám Azure z místní sítě, můžete pro každého klienta použít připojení VPN typu site-to-site (S2S). Další informace najdete v tématu Konfigurace sítě VPN typu site-to-site pro použití se službou Azure Files.
Důrazně doporučujeme přečíst si důležité informace o sítích pro přímý přístup ke sdílené složce Azure, než budete pokračovat v tomto článku s postupy, abyste si mohli přečíst kompletní diskuzi o možnostech sítí dostupných pro Azure Files.
Tento článek podrobně popisuje postup konfigurace sítě VPN typu point-to-site ve Windows (klient Windows a Windows Server) pro připojení sdílených složek Azure přímo místně. Pokud chcete směrovat Synchronizace souborů Azure provoz přes síť VPN, přečtěte si informace o konfiguraci Synchronizace souborů Azure nastavení proxy serveru a brány firewall.
Platí pro
Typ sdílené složky | SMB | NFS |
---|---|---|
Sdílené složky úrovně Standard (GPv2), LRS/ZRS | ||
Sdílené složky úrovně Standard (GPv2), GRS/GZRS | ||
Sdílené složky úrovně Premium (FileStorage), LRS/ZRS |
Požadavky
Nejnovější verze modulu Azure PowerShell. Viz Instalace modulu Azure PowerShellu.
Sdílená složka Azure, kterou chcete připojit místně. Sdílené složky Azure se nasazují v účtech úložiště, což jsou konstrukce správy, které představují sdílený fond úložiště, ve kterém můžete nasadit více sdílených složek a další prostředky úložiště. Přečtěte si další informace o nasazení sdílených složek Azure a účtů úložiště v části Vytvoření sdílené složky Azure.
Virtuální síť s privátním koncovým bodem pro účet úložiště, který obsahuje sdílenou složku Azure, kterou chcete připojit místně. Informace o vytvoření privátního koncového bodu najdete v tématu Konfigurace koncových bodů sítě služby Azure Files.
Ve virtuální síti musíte vytvořit podsíť brány. Pokud chcete vytvořit podsíť brány, přihlaste se k webu Azure Portal, přejděte do virtuální sítě, vyberte Podsítě nastavení > a pak vyberte + Podsíť brány. Při vytváření podsítě brány zadáte počet IP adres, které podsíť obsahuje. Potřebný počet IP adres závisí na konfiguraci brány VPN, kterou chcete vytvořit. Nejlepší je zadat /27 nebo větší (/26, /25 atd.), aby bylo možné povolit dostatek IP adres pro budoucí změny, například přidání brány ExpressRoute.
Shromažďování informací o prostředí
Před nastavením sítě VPN typu point-to-site musíte shromáždit některé informace o vašem prostředí.
Pokud chcete nastavit síť VPN typu point-to-site pomocí webu Azure Portal, budete muset znát název skupiny prostředků, název virtuální sítě, název podsítě brány a název účtu úložiště.
Vytvoření kořenového certifikátu pro ověřování VPN
Aby se připojení VPN z místních počítačů s Windows ověřila pro přístup k vaší virtuální síti, musíte vytvořit dva certifikáty:
- Kořenový certifikát, který se poskytne bráně virtuálního počítače
- Klientský certifikát, který bude podepsaný kořenovým certifikátem
Můžete použít buď kořenový certifikát vygenerovaný pomocí podnikového řešení, nebo můžete vygenerovat certifikát podepsaný svým držitelem. Pokud používáte podnikové řešení, získejte .cer soubor kořenového certifikátu od vaší ORGANIZACE IT.
Pokud nepoužíváte podnikové certifikační řešení, vytvořte pomocí tohoto skriptu PowerShellu kořenový certifikát podepsaný svým držitelem. Po nasazení brány virtuální sítě vytvoříte klientský certifikát. Pokud je to možné, nechejte relaci PowerShellu otevřenou, abyste nemuseli při vytváření klientského certifikátu později v tomto článku předefinovat proměnné.
Důležité
Tento skript PowerShellu spusťte jako správce z místního počítače s Windows 10 nebo Windows Serverem 2016 nebo novějším. Nespousívejte skript z Cloud Shellu nebo virtuálního počítače v Azure.
$rootcertname = 'CN=P2SRootCert'
$certLocation = 'Cert:\CurrentUser\My'
$vpnTemp = 'C:\vpn-temp'
$exportedencodedrootcertpath = "$vpnTemp\P2SRootCertencoded.cer"
$exportedrootcertpath = "$vpnTemp\P2SRootCert.cer"
if (-Not (Test-Path -Path $vpnTemp -PathType Container)) {
New-Item -ItemType Directory -Force -Path $vpnTemp | Out-Null
}
if ($PSVersionTable.PSVersion.Major -ge 6) {
Import-Module -Name PKI -UseWindowsPowerShell
}
$selfSignedCertParams = @{
Type = 'Custom'
KeySpec = 'Signature'
Subject = $rootcertname
KeyExportPolicy = 'Exportable'
HashAlgorithm = 'sha256'
KeyLength = '2048'
CertStoreLocation = $certLocation
KeyUsageProperty = 'Sign'
KeyUsage = 'CertSign'
}
$rootcert = New-SelfSignedCertificate @selfSignedCertParams
Export-Certificate -Cert $rootcert -FilePath $exportedencodedrootcertpath -NoClobber | Out-Null
certutil -encode $exportedencodedrootcertpath $exportedrootcertpath | Out-Null
$rawRootCertificate = Get-Content -Path $exportedrootcertpath
$rootCertificate = ''
foreach ($line in $rawRootCertificate) {
if ($line -notlike '*Certificate*') {
$rootCertificate += $line
}
}
Nasazení brány virtuální sítě
Brána virtuální sítě Azure je služba, ke které se budou vaše místní počítače s Windows připojovat. Pokud jste to ještě neudělali, musíte vytvořit podsíť brány ve virtuální síti před nasazením brány virtuální sítě.
Nasazení brány virtuální sítě vyžaduje dvě základní komponenty:
- Veřejná IP adresa, která bude identifikovat bránu vašim klientům, ať jsou kdekoli na světě
- Kořenový certifikát, který jste vytvořili v předchozím kroku, který se použije k ověření klientů
Bránu virtuální sítě můžete nasadit pomocí webu Azure Portal nebo Azure PowerShellu. Dokončení nasazení může trvat až 45 minut.
Pokud chcete nasadit bránu virtuální sítě pomocí webu Azure Portal, postupujte podle těchto pokynů.
Přihlaste se k portálu Azure.
V části Hledat prostředky, služby a dokumenty zadejte brány virtuální sítě. Ve výsledcích hledání na Marketplace vyhledejte brány virtuální sítě a vyberte ji.
Vyberte + Vytvořit a vytvořte novou bránu virtuální sítě.
Na kartě Základy vyplňte hodnoty podrobností projektu a podrobnosti instance.
- Předplatné: V rozevíracím seznamu vyberte předplatné, které chcete použít.
- Skupina prostředků: Toto nastavení se automaticky vyplňuje, když vyberete virtuální síť na této stránce.
- Název: Zadejte pro bránu název. Pojmenování brány není stejné jako pojmenování podsítě brány. Jedná se o název objektu brány, který vytváříte.
- Oblast: Vyberte oblast, ve které chcete tento prostředek vytvořit. Oblast brány musí být stejná jako virtuální síť.
- Typ brány: Vyberte VPN. Brány VPN používají bránu virtuální sítě typu VPN.
- Skladová položka: V rozevíracím seznamu vyberte skladovou položku brány, která podporuje funkce, které chcete použít. Viz skladové položky brány. Nepoužívejte skladovou položku Basic, protože nepodporuje ověřování IKEv2.
- Generování: Vyberte generaci, kterou chcete použít. Doporučujeme použít skladovou položku Generation2. Další informace najdete v části Skladové jednotky (SKU) brány.
- Virtuální síť: V rozevíracím seznamu vyberte virtuální síť, do které chcete tuto bránu přidat. Pokud nevidíte virtuální síť, pro kterou chcete vytvořit bránu, ujistěte se, že jste vybrali správné předplatné a oblast.
- Podsíť: Toto pole by mělo být neaktivní a uveďte název podsítě brány, kterou jste vytvořili, spolu s rozsahem IP adres. Pokud se místo toho zobrazí pole rozsahu adres podsítě brány s textovým polem, ještě jste nenakonfigurovali podsíť brány (viz Požadavky).)
Zadejte hodnoty pro veřejnou IP adresu , která se přidružuje k bráně virtuální sítě. Při vytvoření brány virtuální sítě se k tomuto objektu přiřadí veřejná IP adresa. Jedinou dobou, kdy se primární veřejná IP adresa změní, je odstranění a opětovné vytvoření brány. Nemění se v rámci změny velikosti, resetování ani jiné interní údržby nebo upgradů.
- Veřejná IP adresa: Ponechte vybranou možnost Vytvořit novou .
- Název veřejné IP adresy: Do textového pole zadejte název vaší instance veřejné IP adresy.
- Skladová položka veřejné IP adresy: Nastavení je automaticky vybráno.
- Přiřazení: Přiřazení je obvykle automaticky vybráno a může být dynamické nebo statické.
- Povolit režim aktivní-aktivní: Vyberte Zakázáno. Toto nastavení povolte jenom v případě, že vytváříte konfiguraci brány aktivní-aktivní.
- Konfigurace protokolu BGP: Vyberte Zakázáno, pokud konfigurace výslovně nevyžaduje toto nastavení. Pokud toto nastavení vyžadujete, výchozí hodnota ASN je 65515, i když tuto hodnotu můžete změnit.
Pokud chcete spustit ověření, vyberte Zkontrolovat a vytvořit . Jakmile ověření projde, vyberte Vytvořit a nasaďte bránu virtuální sítě. Dokončení nasazení může trvat až 45 minut.
Po dokončení nasazení vyberte Přejít k prostředku.
V nabídce služby v části Nastavení vyberte Konfigurace typu Point-to-Site a pak vyberte Konfigurovat. Měla by se zobrazit stránka konfigurace typu Point-to-Site.
- Fond adres: Přidejte rozsah privátních IP adres, který chcete použít. Klienti VPN dynamicky obdrží IP adresu z rozsahu, který zadáte. Minimální maska podsítě je 29 bitů pro aktivní/pasivní a 28bitovou pro konfiguraci aktivní/aktivní.
- Typ tunelu: Zadejte typ tunelu, který chcete použít. Počítače připojující se přes nativního klienta VPN systému Windows nejprve vyzkouší protokol IKEv2. Pokud se to nepřipojí, vrátí se do protokolu SSTP (pokud v rozevíracím seznamu vyberete protokol IKEv2 i SSTP). Pokud vyberete typ tunelu OpenVPN, můžete se připojit pomocí klienta OpenVPN nebo Klient Azure VPN.
- Typ ověřování: Zadejte typ ověřování, který chcete použít (v tomto případě zvolte certifikát Azure).
- Název kořenového certifikátu: Název souboru kořenového certifikátu (.cer soubor).
- Data veřejného certifikátu: Otevřete kořenový certifikát v Poznámkovém bloku a zkopírujte nebo vložte data veřejného certifikátu do tohoto textového pole. Pokud jste k vygenerování kořenového certifikátu podepsaného svým držitelem použili skript PowerShellu v tomto článku, bude umístěn v
C:\vpn-temp
umístění . Nezapomeňte vložit jenom text, který je mezi certifikátem -----BEGIN----- a -----END CERTIFICATE-----. Nezahrnujte žádné další mezery ani znaky.
Poznámka:
Pokud nevidíte typ tunelu nebo typ ověřování, brána používá skladovou položku Basic. Skladová položka Basic nepodporuje ověřování IKEv2. Pokud chcete použít IKEv2, musíte bránu odstranit a znovu vytvořit pomocí jiné skladové položky brány.
Výběrem možnosti Uložit v horní části stránky uložte všechna nastavení konfigurace a nahrajte informace o veřejném klíči kořenového certifikátu do Azure.
Vytvoření klientského certifikátu
Každý klientský počítač, který se připojujete k virtuální síti s připojením typu point-to-site, musí mít nainstalovaný klientský certifikát. Klientský certifikát vygenerujete z kořenového certifikátu a nainstalujete ho do každého klientského počítače. Pokud nenainstalujete platný klientský certifikát, ověřování se nezdaří, když se klient pokusí připojit. Můžete buď vytvořit klientský certifikát z kořenového certifikátu vygenerovaného pomocí podnikového řešení, nebo můžete vytvořit klientský certifikát z kořenového certifikátu podepsaného svým držitelem.
Vytvoření klientského certifikátu pomocí podnikového řešení
Pokud používáte podnikové certifikační řešení, vygenerujte klientský certifikát s běžným formátem name@yourdomain.comhodnoty názvu . Místo názvu domény\uživatelského jména použijte tento formát. Ujistěte se, že je klientský certifikát založený na šabloně certifikátu uživatele, která má v seznamu uživatelů uvedené ověřování klientů jako první položku. Zkontrolujte certifikát poklikáním a zobrazením rozšířeného použití klíče na kartě Podrobnosti .
Vytvoření klientského certifikátu z kořenového certifikátu podepsaného svým držitelem
Pokud nepoužíváte podnikové certifikační řešení, můžete pomocí PowerShellu vytvořit klientský certifikát s identifikátorem URI brány virtuální sítě. Tento certifikát bude podepsaný kořenovým certifikátem, který jste vytvořili dříve. Když vygenerujete klientský certifikát z kořenového certifikátu podepsaného svým držitelem, automaticky se nainstaluje do počítače, který jste použili k jeho vygenerování.
Pokud chcete nainstalovat klientský certifikát do jiného klientského počítače, exportujte certifikát jako soubor .pfx spolu s celým řetězem certifikátů. Tím se vytvoří soubor .pfx, který obsahuje informace o kořenovém certifikátu vyžadované k ověření klienta. Pokud chcete exportovat kořenový certifikát podepsaný svým držitelem jako soubor .pfx, vyberte kořenový certifikát a použijte stejný postup, jak je popsáno v části Export klientského certifikátu.
Identifikace kořenového certifikátu podepsaného svým držitelem
Pokud používáte stejnou relaci PowerShellu, kterou jste použili k vytvoření kořenového certifikátu podepsaného svým držitelem, můžete přeskočit k vygenerování klientského certifikátu.
Pokud ne, pomocí následujícího postupu identifikujte kořenový certifikát podepsaný svým držitelem, který je nainstalovaný na vašem počítači.
Získejte seznam certifikátů nainstalovaných v počítači.
Get-ChildItem -Path 'Cert:\CurrentUser\My'
Vyhledejte název subjektu z vráceného seznamu a zkopírujte kryptografický otisk, který se nachází vedle něj, do textového souboru. V následujícím příkladu jsou dva certifikáty. Název CN je název kořenového certifikátu podepsaného svým držitelem, ze kterého chcete vygenerovat podřízený certifikát. V tomto případě se nazývá P2SRootCert.
Thumbprint Subject ---------- ------- AED812AD883826FF76B4D1D5A77B3C08EFA79F3F CN=P2SChildCert4 7181AA8C1B4D34EEDB2F3D3BEC5839F3FE52D655 CN=P2SRootCert
Deklarujte proměnnou kořenového certifikátu pomocí kryptografického otisku z předchozího kroku. Kryptografický otisk nahraďte kryptografickým otiskem kořenového certifikátu, ze kterého chcete vygenerovat klientský certifikát.
$rootcert = Get-ChildItem -Path 'Cert:\CurrentUser\My\<THUMBPRINT>'
Například použití kryptografického otisku pro P2SRootCert v předchozím kroku vypadá takto:
$rootcert = Get-ChildItem -Path 'Cert:\CurrentUser\My\7181AA8C1B4D34EEDB2F3D3BEC5839F3FE52D655'
Vygenerování klientského certifikátu
K vygenerování klientského certifikátu použijte rutinu New-AzVpnClientConfiguration
PowerShellu. Pokud nepoužíváte stejnou relaci PowerShellu, kterou jste použili k vytvoření kořenového certifikátu podepsaného svým držitelem, budete muset identifikovat kořenový certifikát podepsaný svým držitelem, jak je popsáno v předchozí části. Před spuštěním skriptu nahraďte <resource-group-name>
názvem vaší skupiny prostředků a <vpn-gateway-name>
názvem brány virtuální sítě, kterou jste právě nasadili.
Důležité
Spusťte tento skript PowerShellu jako správce z místního počítače s Windows, ke kterému se chcete připojit ke sdílené složce Azure. Na počítači musí běžet Windows 10 nebo Windows Server 2016 nebo novější. Nespousívejte skript z Cloud Shellu v Azure. Před spuštěním skriptuConnect-AzAccount
() se ujistěte, že se přihlásíte ke svému účtu Azure.
$clientcertpassword = '<enter-your-password>'
$resourceGroupName = '<resource-group-name>'
$vpnName = '<vpn-gateway-name>'
$vpnTemp = 'C:\vpn-temp'
$certLocation = 'Cert:\CurrentUser\My'
$vpnClientConfigParams = @{
ResourceGroupName = $resourceGroupName
Name = $vpnName
AuthenticationMethod = 'EAPTLS'
}
$vpnClientConfiguration = New-AzVpnClientConfiguration @vpnClientConfigParams
$webRequestParams = @{
Uri = $vpnClientConfiguration.VpnProfileSASUrl
OutFile = "$vpnTemp\vpnclientconfiguration.zip"
}
Invoke-WebRequest @webRequestParams
$expandArchiveParams = @{
Path = "$vpnTemp\vpnclientconfiguration.zip"
DestinationPath = "$vpnTemp\vpnclientconfiguration"
}
Expand-Archive @expandArchiveParams
$vpnGeneric = "$vpnTemp\vpnclientconfiguration\Generic"
$vpnProfile = ([xml](Get-Content -Path "$vpnGeneric\VpnSettings.xml")).VpnProfile
$exportedclientcertpath = "$vpnTemp\P2SClientCert.pfx"
$clientcertname = "CN=$($vpnProfile.VpnServer)"
$selfSignedCertParams = @{
Type = 'Custom'
DnsName = $vpnProfile.VpnServer
KeySpec = 'Signature'
Subject = $clientcertname
KeyExportPolicy = 'Exportable'
HashAlgorithm = 'sha256'
KeyLength = 2048
CertStoreLocation = $certLocation
Signer = $rootcert
TextExtension = @('2.5.29.37={text}1.3.6.1.5.5.7.3.2')
}
$clientcert = New-SelfSignedCertificate @selfSignedCertParams
$mypwd = ConvertTo-SecureString -String $clientcertpassword -Force -AsPlainText
Export-PfxCertificate -FilePath $exportedclientcertpath -Password $mypwd -Cert $clientcert |
Out-Null
Konfigurace klienta VPN
Brána virtuální sítě Azure vytvoří balíček ke stažení s konfiguračními soubory potřebnými k inicializaci připojení VPN na místním počítači s Windows. Konfigurační balíček obsahuje nastavení specifická pro bránu VPN, kterou jste vytvořili. Pokud v bráně provedete změny, jako je změna typu tunelu, certifikátu nebo typu ověřování, budete muset vygenerovat další konfigurační balíček profilu klienta VPN a nainstalovat ho do každého klienta. Jinak se klienti VPN možná nebudou moct připojit.
Připojení VPN nakonfigurujete pomocí funkce AlwaysOn VPN představené ve Windows 10 nebo Windows Serveru 2016. Tento balíček obsahuje také spustitelné soubory, které v případě potřeby nakonfigurují starší verzi klienta VPN systému Windows. Tato příručka místo staršího klienta VPN systému Windows používá síť VPN AlwaysOn, protože klient VPN AlwaysOn umožňuje připojit se k síti Azure VPN nebo odpojit se od této sítě bez oprávnění správce k počítači.
Instalace klientského certifikátu
Chcete-li nainstalovat klientský certifikát vyžadovaný pro ověření brány virtuální sítě, postupujte podle těchto kroků v klientském počítači.
- Po exportu klientského certifikátu vyhledejte a zkopírujte soubor .pfx do klientského počítače.
- Na klientském počítači spusťte instalaci dvojím kliknutím na soubor .pfx. Umístění úložiště ponechte jako aktuálního uživatele a pak vyberte Další.
- Na stránce Importovaný soubor neprovádějte žádné změny. Vyberte Další.
- Na stránce ochrana privátního klíče zadejte heslo pro certifikát nebo ověřte, že je objekt zabezpečení správný, a pak vyberte Další.
- Na stránce Úložiště certifikátů ponechte výchozí umístění a pak vyberte Další.
- Vyberte Dokončit. V upozornění zabezpečení pro instalaci certifikátu vyberte Ano. Pro toto upozornění zabezpečení můžete pohodlně vybrat ano, protože jste certifikát vygenerovali.
- Certifikát se teď úspěšně naimportoval.
Instalace klienta VPN
Tato část vám pomůže nakonfigurovat nativního klienta VPN, který je součástí operačního systému Windows pro připojení k virtuální síti (IKEv2 a SSTP). Tato konfigurace nevyžaduje další klientský software.
Zobrazení konfiguračních souborů
Na klientském počítači přejděte do C:\vpn-temp
složky vpnclientconfiguration a otevřete ji, abyste zobrazili následující podsložky:
- WindowsAmd64 a WindowsX86, které obsahují 64bitové a 32bitové instalační balíčky windows. Instalační balíček WindowsAmd64 je určený pro všechny podporované 64bitové klienty Windows, nejen Amd.
- Obecné informace, které obsahují obecné informace používané k vytvoření vlastní konfigurace klienta VPN. Pokud je v bráně nakonfigurovaná IKEv2 nebo SSTP+IKEv2, je k dispozici obecná složka. Pokud je nakonfigurované jenom SSTP, není k dispozici obecná složka.
Konfigurace profilu klienta VPN
Stejný konfigurační balíček klienta VPN můžete použít na každém klientském počítači s Windows, pokud verze odpovídá architektuře klienta.
Poznámka:
Abyste mohli spustit instalační balíček, musíte mít oprávnění správce na klientském počítači s Windows, ze kterého se chcete připojit.
Vyberte konfigurační soubory klienta VPN, které odpovídají architektuře počítače s Windows. Pro 64bitovou architekturu procesoru
VpnClientSetupAmd64
zvolte instalační balíček. Pro 32bitovou architekturu procesoruVpnClientSetupX86
zvolte instalační balíček.Dvakrát klikněte na balíček a nainstalujte ho. Pokud se zobrazí automaticky otevírané okno SmartScreen, vyberte Další informace a pak přesto spusťte.
Připojte se k síti VPN. Přejděte do nastavení sítě VPN a vyhledejte připojení VPN, které jste vytvořili. Je to stejný název jako vaše virtuální síť. Vyberte Připojit. Může se zobrazit automaticky otevíraná zpráva. Chcete-li používat zvýšená oprávnění, vyberte Pokračovat .
Na stránce Stav připojení vyberte Připojit a spusťte připojení. Pokud uvidíte obrazovku Výběr certifikátu, ujistěte se, že zobrazený klientský certifikát je ten, který chcete pro připojení použít. Pokud tomu tak není, vyberte pomocí šipky rozevíracího seznamu správný certifikát a pak vyberte OK.
Připojení sdílené složky Azure
Teď, když jste nastavili síť VPN typu point-to-site, můžete ji použít k připojení sdílené složky Azure k místnímu počítači.
Pokud chcete sdílenou složku připojit pomocí klíče účtu úložiště, otevřete příkazový řádek windows a spusťte následující příkaz. Nahraďte <YourStorageAccountName>
, <FileShareName>
a <YourStorageAccountKey>
svými vlastními hodnotami. Pokud se již používá jednotka Z:, nahraďte ji jiným dostupným písmenem. Klíč účtu úložiště najdete na webu Azure Portal tak, že přejdete na účet úložiště a vyberete Zabezpečení a síťové>přístupové klíče.
net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:localhost\<YourStorageAccountName> <YourStorageAccountKey>
Obměna kořenového certifikátu VPN
Pokud je potřeba kořenový certifikát otočit kvůli vypršení platnosti nebo novým požadavkům, můžete do stávající brány virtuální sítě přidat nový kořenový certifikát bez opětovného nasazení brány virtuální sítě. Po přidání kořenového certifikátu pomocí následujícího skriptu budete muset certifikát klienta VPN znovu vytvořit.
Nahraďte <resource-group-name>
a <desired-vpn-name-here>
<new-root-cert-name>
nahraďte vlastními hodnotami a spusťte skript.
#Creating the new Root Certificate
$ResourceGroupName = '<resource-group-name>'
$vpnName = '<desired-vpn-name-here>'
$NewRootCertName = '<new-root-cert-name>'
$rootcertname = "CN=$NewRootCertName"
$certLocation = 'Cert:\CurrentUser\My'
$date = Get-Date -Format 'MM_yyyy'
$vpnTemp = "C:\vpn-temp_$date"
$exportedencodedrootcertpath = "$vpnTemp\P2SRootCertencoded.cer"
$exportedrootcertpath = "$vpnTemp\P2SRootCert.cer"
if (-Not (Test-Path -Path $vpnTemp -PathType Container)) {
New-Item -ItemType Directory -Force -Path $vpnTemp | Out-Null
}
$selfSignedCertParams = @{
Type = 'Custom'
KeySpec = 'Signature'
Subject = $rootcertname
KeyExportPolicy = 'Exportable'
HashAlgorithm = 'sha256'
KeyLength = 2048
CertStoreLocation = $certLocation
KeyUsageProperty = 'Sign'
KeyUsage = 'CertSign'
}
$rootcert = New-SelfSignedCertificate @selfSignedCertParams
$exportCertParams = @{
Cert = $rootcert
FilePath = $exportedencodedrootcertpath
NoClobber = $true
}
Export-Certificate @exportCertParams | Out-Null
certutil -encode $exportedencodedrootcertpath $exportedrootcertpath | Out-Null
$rawRootCertificate = Get-Content -Path $exportedrootcertpath
$rootCertificate = ''
foreach($line in $rawRootCertificate) {
if ($line -notlike '*Certificate*') {
$rootCertificate += $line
}
}
#Fetching gateway details and adding the newly created Root Certificate.
$gateway = Get-AzVirtualNetworkGateway -Name $vpnName -ResourceGroupName $ResourceGroupName
$vpnClientRootCertParams = @{
PublicCertData = $rootCertificate
ResourceGroupName = $ResourceGroupName
VirtualNetworkGatewayName = $gateway
VpnClientRootCertificateName = $NewRootCertName
}
Add-AzVpnClientRootCertificate @vpnClientRootCertParams