Rychlý start: Vytvoření privátního koncového bodu pomocí Azure PowerShellu
Začněte se službou Azure Private Link vytvořením a použitím privátního koncového bodu pro zabezpečené připojení k webové aplikaci Aplikace Azure Services.
V tomto rychlém startu vytvořte privátní koncový bod pro webovou aplikaci Aplikace Azure Services a pak vytvořte a nasaďte virtuální počítač k otestování privátního připojení.
Můžete vytvořit privátní koncové body pro různé služby Azure, jako je Azure SQL a Azure Storage.
Požadavky
Účet Azure s aktivním předplatným. Pokud ještě účet Azure nemáte, vytvořte si ho zdarma.
Webová aplikace Azure s plánem služby App Service úrovně PremiumV2 nebo vyšší, nasazenou ve vašem předplatném Azure.
Další informace a příklad najdete v tématu Rychlý start: Vytvoření webové aplikace ASP.NET Core v Azure.
Ukázková webová aplikace v tomto článku má název webapp-1. Nahraďte příklad názvem vaší webové aplikace.
Azure Cloud Shell nebo Azure PowerShell.
Kroky v tomto rychlém startu spouští rutiny Azure PowerShellu interaktivně v Azure Cloud Shellu. Pokud chcete příkazy spustit v Cloud Shellu, vyberte Otevřít CloudShell v pravém horním rohu bloku kódu. Výběrem možnosti Kopírovat zkopírujte kód a vložte ho do Cloud Shellu a spusťte ho. Cloud Shell můžete spustit také z webu Azure Portal.
Ke spuštění rutin můžete také nainstalovat Azure PowerShell místně . Kroky v tomto článku vyžadují modul Azure PowerShell verze 5.4.1 nebo novější. Spuštěním
Get-Module -ListAvailable Az
vyhledejte nainstalovanou verzi. Pokud potřebujete upgradovat, přečtěte si téma Aktualizace modulu Azure PowerShellu.Pokud powershell spouštíte místně, spusťte
Connect-AzAccount
připojení k Azure.
Vytvoření skupiny zdrojů
Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.
Vytvořte skupinu prostředků pomocí rutiny New-AzResourceGroup:
$rg = @{
Name = 'test-rg'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Vytvoření virtuální sítě
Pomocí rutiny New-AzVirtualNetwork vytvořte virtuální síť s názvem vnet-1 s předponou IP adresy 10.0.0.0/16 ve skupině prostředků test-rg a umístění eastus2 .
$vnet = @{ Name = 'vnet-1' ResourceGroupName = 'test-rg' Location = 'eastus2' AddressPrefix = '10.0.0.0/16' } $virtualNetwork = New-AzVirtualNetwork @vnet
Azure nasadí prostředky do podsítě v rámci virtuální sítě. Pomocí rutiny Add-AzVirtualNetworkSubnetConfig vytvořte konfiguraci podsítě s názvem subnet-1 s předponou adresy 10.0.0.0/24.
$subnet = @{ Name = 'subnet-1' VirtualNetwork = $virtualNetwork AddressPrefix = '10.0.0.0/24' } $subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
Potom přidružte konfiguraci podsítě k virtuální síti s rutinou Set-AzVirtualNetwork.
$virtualNetwork | Set-AzVirtualNetwork
Nasazení služby Azure Bastion
Azure Bastion používá váš prohlížeč k připojení k virtuálním počítačům ve virtuální síti přes secure shell (SSH) nebo protokol RDP (Remote Desktop Protocol) pomocí jejich privátních IP adres. Virtuální počítače nepotřebují veřejné IP adresy, klientský software ani speciální konfiguraci. Další informace o službě Azure Bastion najdete v tématu Azure Bastion.
Poznámka:
Hodinová cena začíná od okamžiku nasazení Bastionu bez ohledu na využití odchozích dat. Další informace najdete v tématu Ceny a skladové položky. Pokud bastion nasazujete jako součást kurzu nebo testu, doporučujeme tento prostředek po dokončení jeho použití odstranit.
Nakonfigurujte podsíť Služby Azure Bastion pro vaši virtuální síť. Tato podsíť je vyhrazená výhradně pro prostředky služby Azure Bastion a musí mít název AzureBastionSubnet.
$subnet = @{ Name = 'AzureBastionSubnet' VirtualNetwork = $virtualNetwork AddressPrefix = '10.0.1.0/26' } $subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
Nastavte konfiguraci.
$virtualNetwork | Set-AzVirtualNetwork
Vytvořte veřejnou IP adresu pro Azure Bastion. Hostitel bastionu používá veřejnou IP adresu pro přístup k zabezpečenému prostředí (SSH) a protokolu RDP (Remote Desktop Protocol) přes port 443.
$ip = @{ ResourceGroupName = 'test-rg' Name = 'public-ip' Location = 'eastus2' AllocationMethod = 'Static' Sku = 'Standard' Zone = 1,2,3 } New-AzPublicIpAddress @ip
Pomocí příkazu New-AzBastion vytvořte nového hostitele Azure Bastion úrovně Standard v podsítě AzureBastionSubnet.
$bastion = @{ Name = 'bastion' ResourceGroupName = 'test-rg' PublicIpAddressRgName = 'test-rg' PublicIpAddressName = 'public-ip' VirtualNetworkRgName = 'test-rg' VirtualNetworkName = 'vnet-1' Sku = 'Basic' } New-AzBastion @bastion
Nasazení prostředků Bastionu trvá několik minut.
Vytvoření privátního koncového bodu
K nastavení privátního koncového bodu a připojení k virtuální síti se vyžaduje služba Azure, která podporuje privátní koncové body. V příkladech v tomto článku používáme webovou aplikaci Aplikace Azure Services z požadavků. Další informace o službách Azure, které podporují privátní koncový bod, najdete v tématu Dostupnost služby Azure Private Link.
Privátní koncový bod může mít statickou nebo dynamicky přiřazenou IP adresu.
Důležité
Abyste mohli pokračovat kroky v tomto článku, musíte mít dříve nasazenou webovou aplikaci Aplikace Azure Services. Další informace najdete v části Předpoklady.
V této části:
Vytvořte připojení služby private link pomocí rutiny New-AzPrivateLinkServiceConnection.
Vytvořte privátní koncový bod pomocí New-AzPrivateEndpoint.
Volitelně vytvořte statickou konfiguraci statické IP adresy privátního koncového bodu pomocí Rutiny New-AzPrivateEndpointIpConfiguration.
## Place the previously created webapp into a variable. ##
$webapp = Get-AzWebApp -ResourceGroupName test-rg -Name webapp-1
## Create the private endpoint connection. ##
$pec = @{
Name = 'connection-1'
PrivateLinkServiceId = $webapp.ID
GroupID = 'sites'
}
$privateEndpointConnection = New-AzPrivateLinkServiceConnection @pec
## Place the virtual network you created previously into a variable. ##
$vnet = Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1'
## Create the private endpoint. ##
$pe = @{
ResourceGroupName = 'test-rg'
Name = 'private-endpoint'
Location = 'eastus2'
Subnet = $vnet.Subnets[0]
PrivateLinkServiceConnection = $privateEndpointConnection
}
New-AzPrivateEndpoint @pe
Konfigurace privátní zóny DNS
Privátní zóna DNS se používá k překladu názvu DNS privátního koncového bodu ve virtuální síti. V tomto příkladu používáme informace DNS pro webovou aplikaci Aplikace Azure Services, další informace o konfiguraci DNS privátních koncových bodů najdete v tématu Konfigurace DNS privátního koncového bodu Azure.
V této části:
Vytvoření nové privátní zóny Azure DNS pomocí New-AzPrivateDnsZone
Propojení zóny DNS s virtuální sítí, kterou jste vytvořili dříve, pomocí rutiny New-AzPrivateDnsVirtualNetworkLink
Vytvoření konfigurace zóny DNS pomocí rutiny New-AzPrivateDnsZoneConfig
Vytvoření skupiny zón DNS pomocí new-AzPrivateDnsZoneGroup
## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1'
## Create the private DNS zone. ##
$zn = @{
ResourceGroupName = 'test-rg'
Name = 'privatelink.azurewebsites.net'
}
$zone = New-AzPrivateDnsZone @zn
## Create a DNS network link. ##
$lk = @{
ResourceGroupName = 'test-rg'
ZoneName = 'privatelink.azurewebsites.net'
Name = 'dns-link'
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 = 'test-rg'
PrivateEndpointName = 'private-endpoint'
Name = 'zone-group'
PrivateDnsZoneConfig = $config
}
New-AzPrivateDnsZoneGroup @zg
Vytvoření testovacího virtuálního počítače
K ověření statické IP adresy a funkčnosti privátního koncového bodu se vyžaduje testovací virtuální počítač připojený k vaší virtuální síti.
V této části:
Vytvoření přihlašovacích údajů pro virtuální počítač pomocí Get-Credential
Vytvoření síťového rozhraní pro virtuální počítač pomocí New-AzNetworkInterface
Vytvoření konfigurace virtuálního počítače pomocí Rutiny New-AzVMConfig, Set-AzVMOperatingSystem, Set-AzVMSourceImage a Add-AzVMNetworkInterface
Vytvoření virtuálního počítače pomocí New-AzVM
## 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 vnet-1 -ResourceGroupName test-rg
## Create a network interface for the virtual machine. ##
$nic = @{
Name = 'nic-1'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
Subnet = $vnet.Subnets[0]
}
$nicVM = New-AzNetworkInterface @nic
## Create the configuration for the virtual machine. ##
$vm1 = @{
VMName = 'vm-1'
VMSize = 'Standard_DS1_v2'
}
$vm2 = @{
ComputerName = 'vm-1'
Credential = $cred
}
$vm3 = @{
PublisherName = 'MicrosoftWindowsServer'
Offer = 'WindowsServer'
Skus = '2022-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 'test-rg' -Location 'eastus2' -VM $vmConfig
Poznámka:
Virtuální počítače ve virtuální síti s hostitelem bastionu nepotřebují veřejné IP adresy. Bastion poskytuje veřejnou IP adresu a virtuální počítače používají privátní IP adresy ke komunikaci v síti. Veřejné IP adresy můžete odebrat z libovolného virtuálního počítače v hostovaných virtuálních sítích bastionu. Další informace najdete v tématu Zrušení přidružení veřejné IP adresy z virtuálního počítače Azure.
Poznámka:
Azure poskytuje výchozí odchozí IP adresu pro virtuální počítače, které nemají přiřazenou veřejnou IP adresu nebo jsou v back-endovém fondu interního základního nástroje pro vyrovnávání zatížení Azure. Výchozí mechanismus odchozích IP adres poskytuje odchozí IP adresu, která není konfigurovatelná.
Výchozí ip adresa odchozího přístupu je zakázaná, když dojde k jedné z následujících událostí:
- Virtuálnímu počítači se přiřadí veřejná IP adresa.
- Virtuální počítač se umístí do back-endového fondu standardního nástroje pro vyrovnávání zatížení s odchozími pravidly nebo bez něj.
- Prostředek Azure NAT Gateway je přiřazen k podsíti virtuálního počítače.
Virtuální počítače, které vytvoříte pomocí škálovacích sad virtuálních počítačů v flexibilním režimu orchestrace, nemají výchozí odchozí přístup.
Další informace o odchozích připojeních v Azure najdete v tématu Výchozí odchozí přístup v Azure a použití překladu zdrojových síťových adres (SNAT) pro odchozí připojení.
Testování připojení k privátnímu koncovému bodu
Pomocí virtuálního počítače, který jste vytvořili dříve, se připojte k webové aplikaci přes privátní koncový bod.
Do vyhledávacího pole v horní části portálu zadejte virtuální počítač. Vyberte Virtuální počítače.
Vyberte vm-1.
Na stránce přehledu pro vm-1 vyberte Připojit a pak vyberte kartu Bastion .
Vyberte Použít Bastion.
Zadejte uživatelské jméno a heslo, které jste použili při vytváření virtuálního počítače.
Vyberte Připojit.
Po připojení otevřete PowerShell na serveru.
Zadejte
nslookup webapp-1.azurewebsites.net
. Zobrazí se zpráva podobná následujícímu příkladu:Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: webapp-1.privatelink.azurewebsites.net Address: 10.0.0.10 Aliases: webapp-1.azurewebsites.net
Pokud jste v předchozích krocích zvolili statickou IP adresu 10.0.0.10, vrátí se pro název webové aplikace privátní IP adresa 10.0.10 . Tato adresa je v podsíti virtuální sítě, kterou jste vytvořili dříve.
V připojení bastionu k virtuálnímu počítači vm-1 otevřete webový prohlížeč.
Zadejte adresu URL webové aplikace
https://webapp-1.azurewebsites.net
.Pokud se vaše webová aplikace nenasadila, zobrazí se následující výchozí stránka webové aplikace:
Vyčištění prostředků
Pokud už je nepotřebujete, můžete pomocí příkazu Remove-AzResourceGroup odebrat skupinu prostředků, virtuální síť a zbývající prostředky.
Remove-AzResourceGroup -Name 'test-rg'
Další kroky
Další informace o službách, které podporují privátní koncové body, najdete tady: