Ćwiczenie — tworzenie bramy Azure VPN Gateway
Chcesz mieć pewność, że możesz połączyć klientów lub witryny w danym środowisku z platformą Azure za pomocą szyfrowanych tuneli w publicznym Internecie. W tej lekcji utworzysz bramę sieci VPN punkt-lokacja, a następnie połączysz się z nią z poziomu komputera klienckiego. Ze względów bezpieczeństwa użyjesz połączeń z natywnym uwierzytelnianiem certyfikatu platformy Azure.
Wykonasz następujący proces:
Utwórz bramę sieci VPN typu RouteBased.
Przekaż klucz publiczny dla certyfikatu głównego na potrzeby procesu uwierzytelniania.
Wygeneruj certyfikat klienta z certyfikatu głównego, a następnie zainstaluj ten certyfikat klienta na każdym komputerze klienckim, który będzie łączyć się z siecią wirtualną na potrzeby procesu uwierzytelniania.
Utwórz pliki konfiguracji klienta sieci VPN, które zawierają informacje niezbędne klientowi do połączenia się z siecią wirtualną.
Ustawienia
W celu ukończenia tego modułu użyj programu Azure PowerShell na komputerze lokalnym z systemem Windows 10.
Otwórz nową sesję programu PowerShell na lokalnym komputerze z systemem Windows 10, na którym zainstalowano moduł Azure PowerShell.
Zaloguj się na platformie Azure, uruchamiając polecenie cmdlet
Connect-AzAccount
programu PowerShell .Skonfiguruj zmienne, które będą używane do tworzenia sieci wirtualnej. Skopiuj i wklej następujące zmienne do programu PowerShell.
$VNetName = "VNetData"
$FESubName = "FrontEnd"
$BESubName = "Backend"
$GWSubName = "GatewaySubnet"
$VNetPrefix1 = "192.168.0.0/16"
$VNetPrefix2 = "10.254.0.0/16"
$FESubPrefix = "192.168.1.0/24"
$BESubPrefix = "10.254.1.0/24"
$GWSubPrefix = "192.168.200.0/26"
$VPNClientAddressPool = "172.16.201.0/24"
$ResourceGroup = "VpnGatewayDemo"
$Location = "East US"
$GWName = "VNetDataGW"
$GWIPName = "VNetDataGWPIP"
$GWIPconfName = "gwipconf"
Konfigurowanie sieci wirtualnej
Uruchom poniższe polecenie, aby utworzyć grupę zasobów.
New-AzResourceGroup -Name $ResourceGroup -Location $Location
Uruchom następujące polecenie, aby utworzyć konfiguracje podsieci dla sieci wirtualnej. Te konfiguracje mają nazwę FrontEnd, BackEnd i GatewaySubnet. Wszystkie te podsieci istnieją w ramach prefiksu sieci wirtualnej.
$fesub = New-AzVirtualNetworkSubnetConfig -Name $FESubName -AddressPrefix $FESubPrefix $besub = New-AzVirtualNetworkSubnetConfig -Name $BESubName -AddressPrefix $BESubPrefix $gwsub = New-AzVirtualNetworkSubnetConfig -Name $GWSubName -AddressPrefix $GWSubPrefix
Następnie uruchom poniższe polecenie, aby utworzyć sieć wirtualną przy użyciu wartości podsieci i statycznego serwera DNS.
New-AzVirtualNetwork -Name $VNetName -ResourceGroupName $ResourceGroup -Location $Location -AddressPrefix $VNetPrefix1,$VNetPrefix2 -Subnet $fesub, $besub, $gwsub -DnsServer 10.2.1.3
Teraz określ zmienne dla utworzonej sieci.
$vnet = Get-AzVirtualNetwork -Name $VNetName -ResourceGroupName $ResourceGroup $subnet = Get-AzVirtualNetworkSubnetConfig -Name $GWSubName -VirtualNetwork $vnet
Uruchom następujące polecenie, aby zażądać dynamicznie przydzielanego publicznego adresu IP.
$pip = New-AzPublicIpAddress -Name $GWIPName -ResourceGroupName $ResourceGroup -Location $Location -AllocationMethod Dynamic $ipconf = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName -Subnet $subnet -PublicIpAddress $pip
Tworzenie bramy sieci VPN
Podczas tworzenia tej bramy sieci VPN:
- Parametr GatewayType musi mieć wartość Vpn
- Parametr VpnType musi mieć wartość RouteBased
Wykonanie tej części ćwiczenia może potrwać do 45 minut.
Aby utworzyć bramę sieci VPN, uruchom następujące polecenie i naciśnij Enter.
New-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $ResourceGroup ` -Location $Location -IpConfigurations $ipconf -GatewayType Vpn ` -VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw1 -VpnClientProtocol "IKEv2"
Poczekaj, aż pojawi się wynik polecenia.
Dodawanie puli adresów klienta sieci VPN
Uruchom następujące polecenie, aby dodać pulę adresów klienta sieci VPN.
$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName $ResourceGroup -Name $GWName Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientAddressPool $VPNClientAddressPool
Poczekaj, aż pojawi się wynik polecenia.
Generowanie certyfikatu klienta
Za pomocą infrastruktury sieci utworzonej na platformie Azure należy utworzyć na komputerze lokalnym certyfikat klienta z podpisem własnym. Można to zrobić podobnie w większości systemów operacyjnych, ale omówimy sposób generowania certyfikatu klienta w systemie Windows 10 przy użyciu programu PowerShell z modułem Azure PowerShell i narzędziem Menedżera certyfikatów systemu Windows.
Pierwszym krokiem jest utworzenie certyfikatu głównego z podpisem własnym. Uruchom następujące polecenie.
$cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature ` -Subject "CN=P2SRootCert" -KeyExportPolicy Exportable ` -HashAlgorithm sha256 -KeyLength 2048 ` -CertStoreLocation "Cert:\CurrentUser\My" -KeyUsageProperty Sign -KeyUsage CertSign
Następnie wygeneruj certyfikat klienta podpisany przy użyciu nowego certyfikatu głównego.
New-SelfSignedCertificate -Type Custom -DnsName P2SChildCert -KeySpec Signature ` -Subject "CN=P2SChildCert" -KeyExportPolicy Exportable ` -HashAlgorithm sha256 -KeyLength 2048 ` -CertStoreLocation "Cert:\CurrentUser\My" ` -Signer $cert -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.2")
Eksportowanie klucza publicznego certyfikatu
Po wygenerowaniu certyfikatów należy wyeksportować klucz publiczny certyfikatu głównego.
Uruchom polecenie
certmgr
z poziomu programu PowerShell, aby otworzyć Menedżera certyfikatów.Przejdź do obszaru Osobiste>Certyfikaty.
Kliknij prawym przyciskiem myszy certyfikat P2SRootCert na liście, a następnie wybierz pozycję Wszystkie zadania>Eksportuj.
W Kreatorze eksportu certyfikatów wybierz przycisk Dalej.
Upewnij się, że wybrano opcję Nie, nie eksportuj klucza prywatnego, a następnie wybierz przycisk Dalej.
Na stronie Format pliku eksportu upewnij się, że kodowany algorytmem Base-64 X.509 (. Cer) jest zaznaczona, a następnie wybierz przycisk Dalej.
Na stronie Plik do eksportu w obszarze Nazwa pliku przejdź do lokalizacji, którą zapamiętasz, i zapisz plik jako P2SRootCert.cer, a następnie wybierz przycisk Dalej.
Na stronie Kończenie pracy Kreatora eksportu certyfikatów wybierz pozycję Zakończ.
W oknie komunikatu Kreator eksportu certyfikatów wybierz przycisk OK.
Przekazywanie informacji o kluczu publicznym certyfikatu głównego
W oknie programu PowerShell uruchom następujące polecenie, aby zadeklarować zmienną dla nazwy certyfikatu.
$P2SRootCertName = "P2SRootCert.cer"
<cert-path>
Zastąp symbol zastępczy lokalizacją eksportu certyfikatu głównego i uruchom następujące polecenie.$filePathForCert = "<cert-path>\P2SRootCert.cer" $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert) $CertBase64 = [system.convert]::ToBase64String($cert.RawData) $p2srootcert = New-AzVpnClientRootCertificate -Name $P2SRootCertName -PublicCertData $CertBase64
Po ustawieniu nazwy grupy przekaż certyfikat do platformy Azure za pomocą następującego polecenia.
Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname $GWName -ResourceGroupName $ResourceGroup -PublicCertData $CertBase64
Platforma Azure rozpozna teraz ten certyfikat jako zaufany certyfikat główny dla naszej sieci wirtualnej.
Konfigurowanie natywnego klienta sieci VPN
Uruchom następujące polecenie, aby utworzyć pliki konfiguracji klienta sieci VPN w formacie ZIP.
$profile = New-AzVpnClientConfiguration -ResourceGroupName $ResourceGroup -Name $GWName -AuthenticationMethod "EapTls" $profile.VPNProfileSASUrl
Skopiuj adres URL zwrócony w danych wyjściowych tego polecenia i wklej go w przeglądarce. Przeglądarka powinna rozpocząć pobieranie pliku ZIP. Wyodrębnij zawartość archiwum i umieść ją w odpowiedniej lokalizacji.
Niektóre przeglądarki początkowo będą blokować próby pobrania tego pliku ZIP, jako niebezpiecznego. Należy zastąpić to w przeglądarce, aby móc wyodrębnić zawartość archiwum.
W wyodrębnionym folderze przejdź do folderu WindowsAmd64 (komputery z 64-bitowymi wersjami systemu Windows) lub do folderu WindowsX86 (komputery z 32-bitowymi wersjami systemu Windows).
Aby skonfigurować sieć VPN na maszynie z systemem innym niż Windows, można użyć plików certyfikatu i ustawień z folderu Generic.
Kliknij dwukrotnie plik VpnClientSetup{architecture}.exe , odzwierciedlając
{architecture}
architekturę.Na ekranie Systemu Windows chronionym komputerem wybierz pozycję Więcej informacji, a następnie wybierz pozycję Uruchom mimo to.
W oknie dialogowym Kontrola konta użytkownika wybierz pozycję Tak.
W oknie dialogowym VNetData wybierz pozycję Tak.
Łączenie się z platformą Azure
Naciśnij systemu Windows, wprowadź ustawienia i naciśnij Enter.
W oknie Ustawienia wybierz pozycję Sieć i Internet.
W okienku po lewej stronie wybierz pozycję SIEĆ VPN.
W okienku po prawej stronie wybierz pozycję VNetData, a następnie wybierz pozycję Połącz.
W oknie VNetData wybierz pozycję Połącz.
W następnym oknie VNetData wybierz pozycję Kontynuuj.
W oknie komunikatu Kontrola konta użytkownika wybierz pozycję Tak.
Jeśli te kroki nie działają, może być konieczne ponowne uruchomienie komputera.
Weryfikowanie połączenia
W nowym wierszu polecenia systemu Windows uruchom polecenie
IPCONFIG /ALL
.Skopiuj adres IP karty PPP VNetData lub zapisz go.
Upewnij się, że adres IP mieści się w zakresie puli VPNClientAddressPool: 172.16.201.0/24.
Pomyślnie nawiązano połączenie z bramą sieci VPN platformy Azure.
Wystarczy skonfigurować bramę sieci VPN, umożliwiając utworzenie zaszyfrowanego połączenia klienta z siecią wirtualną na platformie Azure. Ta metoda doskonale sprawdza się w przypadku komputerów klienckich i mniejszych połączeń lokacja-lokacja.