Snabbstart: Skapa en privat slutpunkt med hjälp av Azure PowerShell

Kom igång med Azure Private Link med hjälp av en privat slutpunkt för att ansluta säkert till en Azure-webbapp.

I den här snabbstarten skapar du en privat slutpunkt för en Azure-webbapp och skapar och distribuerar sedan en virtuell dator (VM) för att testa den privata anslutningen.

Du kan skapa privata slutpunkter för olika Azure-tjänster, till exempel Azure SQL och Azure Storage.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Om du inte redan har ett Azure-konto skapar du ett konto kostnadsfritt.

  • En Azure-webbapp med en PremiumV2-nivå eller en högre App Service-plan som distribueras i din Azure-prenumeration.

Om du väljer att installera och använda PowerShell lokalt kräver den här artikeln version 5.4.1 eller senare av Azure PowerShell-modulen. Kör Get-Module -ListAvailable Az för att hitta den installerade versionen. Om du behöver uppgradera kan du läsa Installera Azure PowerShell-modulen. Om du kör PowerShell lokalt måste du också köra Connect-AzAccount för att skapa en anslutning till Azure.

Skapa en resursgrupp

En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.

Skapa en resursgrupp med New-AzResourceGroup:

New-AzResourceGroup -Name 'CreatePrivateEndpointQS-rg' -Location 'eastus'

Skapa ett virtuellt nätverk och en skyddsvärd

Ett virtuellt nätverk och undernät krävs för att vara värd för den privata IP-adressen för den privata slutpunkten. Du skapar en skyddsvärd för att ansluta säkert till den virtuella datorn för att testa den privata slutpunkten. Du skapar den virtuella datorn i ett senare avsnitt.

I det här avsnittet ska du:

## Configure the back-end subnet. ##
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name myBackendSubnet -AddressPrefix 10.1.0.0/24

## Create the Azure Bastion subnet. ##
$bastsubnetConfig = New-AzVirtualNetworkSubnetConfig -Name AzureBastionSubnet -AddressPrefix 10.1.1.0/24

## Create the virtual network. ##
$net = @{
    Name = 'MyVNet'
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Location = 'eastus'
    AddressPrefix = '10.1.0.0/16'
    Subnet = $subnetConfig, $bastsubnetConfig
}
$vnet = New-AzVirtualNetwork @net

## Create the public IP address for the bastion host. ##
$ip = @{
    Name = 'myBastionIP'
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Location = 'eastus'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    Zone = 1,2,3
}
$publicip = New-AzPublicIpAddress @ip

## Create the bastion host. ##
$bastion = @{
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Name = 'myBastion'
    PublicIpAddress = $publicip
    VirtualNetwork = $vnet
}
New-AzBastion @bastion -AsJob

Skapa en privat slutpunkt

En Azure-tjänst som stöder privata slutpunkter krävs för att konfigurera den privata slutpunkten och anslutningen till det virtuella nätverket. För exemplen i den här artikeln använder vi en Azure WebApp från kraven. Mer information om De Azure-tjänster som stöder en privat slutpunkt finns i Azure Private Link tillgänglighet.

En privat slutpunkt kan ha en statisk eller dynamiskt tilldelad IP-adress.

Viktigt

Du måste ha en tidigare distribuerad Azure WebApp för att kunna fortsätta med stegen i den här artikeln. Mer information finns i Förutsättningar.

I det här avsnittet ska du:

## Place the previously created webapp into a variable. ##
$webapp = Get-AzWebApp -ResourceGroupName CreatePrivateEndpointQS-rg -Name myWebApp1979

## Create the private endpoint connection. ## 
$pec = @{
    Name = 'myConnection'
    PrivateLinkServiceId = $webapp.ID
    GroupID = 'sites'
}
$privateEndpointConnection = New-AzPrivateLinkServiceConnection @pec

## Place the virtual network you created previously into a variable. ##
$vnet = Get-AzVirtualNetwork -ResourceGroupName 'CreatePrivateEndpointQS-rg' -Name 'myVNet'

## Create the private endpoint. ##
$pe = @{
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Name = 'myPrivateEndpoint'
    Location = 'eastus'
    Subnet = $vnet.Subnets[0]
    PrivateLinkServiceConnection = $privateEndpointConnection
}
New-AzPrivateEndpoint @pe

Konfigurera den privata DNS-zonen

En privat DNS-zon används för att matcha DNS-namnet på den privata slutpunkten i det virtuella nätverket. I det här exemplet använder vi DNS-informationen för en Azure WebApp. Mer information om DNS-konfigurationen av privata slutpunkter finns i DNS-konfiguration för privata Slutpunkter i Azure.

I det här avsnittet ska du:

## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -ResourceGroupName 'CreatePrivateEndpointQS-rg' -Name 'myVNet'

## Create the private DNS zone. ##
$zn = @{
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Name = 'privatelink.azurewebsites.net'
}
$zone = New-AzPrivateDnsZone @zn

## Create a DNS network link. ##
$lk = @{
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    ZoneName = 'privatelink.azurewebsites.net'
    Name = 'myLink'
    VirtualNetworkId = $vnet.Id
}
$link = New-AzPrivateDnsVirtualNetworkLink @lk

## Configure the DNS zone. ##
$cg = @{
    Name = 'privatelink.azurewebsites.net'
    PrivateDnsZoneId = $zone.ResourceId
}
$config = New-AzPrivateDnsZoneConfig @cg

## Create the DNS zone group. ##
$zg = @{
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    PrivateEndpointName = 'myPrivateEndpoint'
    Name = 'myZoneGroup'
    PrivateDnsZoneConfig = $config
}
New-AzPrivateDnsZoneGroup @zg

Skapa en virtuell testdator

För att verifiera den statiska IP-adressen och funktionen för den privata slutpunkten krävs en virtuell testdator som är ansluten till ditt virtuella nätverk.

I det här avsnittet ska du:

## Create the credential for the virtual machine. Enter a username and password at the prompt. ##
$cred = Get-Credential

## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName CreatePrivateEndpointQS-rg

## Create a network interface for the virtual machine. ##
$nic = @{
    Name = 'myNicVM'
    ResourceGroupName = 'CreatePrivateEndpointQS-rg'
    Location = 'eastus'
    Subnet = $vnet.Subnets[0]
}
$nicVM = New-AzNetworkInterface @nic

## Create the configuration for the virtual machine. ##
$vm1 = @{
    VMName = 'myVM'
    VMSize = 'Standard_DS1_v2'
}
$vm2 = @{
    ComputerName = 'myVM'
    Credential = $cred
}
$vm3 = @{
    PublisherName = 'MicrosoftWindowsServer'
    Offer = 'WindowsServer'
    Skus = '2019-Datacenter'
    Version = 'latest'
}
$vmConfig = 
New-AzVMConfig @vm1 | Set-AzVMOperatingSystem -Windows @vm2 | Set-AzVMSourceImage @vm3 | Add-AzVMNetworkInterface -Id $nicVM.Id

## Create the virtual machine. ##
New-AzVM -ResourceGroupName 'CreatePrivateEndpointQS-rg' -Location 'eastus' -VM $vmConfig

Anteckning

Azure tillhandahåller en standard-IP för utgående åtkomst för virtuella datorer som antingen inte har tilldelats någon offentlig IP-adress eller som finns i serverdelspoolen i en intern grundläggande Azure-lastbalanserare. Ip-mekanismen för utgående åtkomst har en utgående IP-adress som inte kan konfigureras.

Standard-IP för utgående åtkomst inaktiveras när en offentlig IP-adress tilldelas till den virtuella datorn, den virtuella datorn placeras i serverdelspoolen för en standardlastbalanserare, med eller utan regler för utgående trafik, eller om en Azure-Virtual Network NAT-gatewayresurs tilldelas den virtuella datorns undernät.

Virtuella datorer som skapas av VM-skalningsuppsättningar i flexibelt orkestreringsläge har inte standardåtkomst till utgående trafik.

Mer information om utgående anslutningar i Azure finns i Standardutgående åtkomst i Azure och Använda SNAT (Source Network Address Translation) för utgående anslutningar.

Testa anslutningen till den privata slutpunkten

Använd den virtuella dator som du skapade i föregående steg för att ansluta till webbappen över den privata slutpunkten.

  1. Logga in på Azure-portalen.

  2. I sökrutan överst i portalen anger du Virtuell dator. Välj Virtuella datorer.

  3. Välj myVM.

  4. På översiktssidan för myVM väljer du Anslut och sedan Bastion.

  5. Ange det användarnamn och lösenord som du använde när du skapade den virtuella datorn. Välj Anslut.

  6. När du har anslutit öppnar du PowerShell på servern.

  7. Ange nslookup mywebapp1979.azurewebsites.net. Ersätt mywebapp1979 med namnet på den webbapp som du skapade tidigare. Du får ett meddelande som liknar följande exempel:

    Server:  UnKnown
    Address:  168.63.129.16
    
    Non-authoritative answer:
    Name:    mywebapp1979.privatelink.azurewebsites.net
    Address:  10.0.0.10
    Aliases:  mywebapp1979.azurewebsites.net
    
  8. Öppna webbläsaren i bastion-anslutningen till myVM.

  9. Ange URL:en för din webbapp, https://mywebapp1979.azurewebsites.net.

    Om webbappen inte har distribuerats visas följande standardwebbappsida:

    Skärmbild av standardwebbappsidan i en webbläsare.

  10. Stäng anslutningen till myVM.

Rensa resurser

När det inte längre behövs kan du använda kommandot Remove-AzResourceGroup för att ta bort resursgruppen, det virtuella nätverket och de återstående resurserna.

Remove-AzResourceGroup -Name 'CreatePrivateEndpointQS-rg'

Nästa steg

Mer information om de tjänster som stöder privata slutpunkter finns i: