快速入門:使用 Azure PowerShell 建立私人端點
使用私人端點來安全地連線到 Azure 證明,以開始使用 Azure Private Link。
在本快速入門中,您將建立 Azure 證明的私人端點,並部署虛擬機器來測試私人連線。
注意
目前的實作只包含自動核准選項。 訂用帳戶必須新增至允許清單,才能繼續建立私人端點。 請連絡服務小組,或在 Azure 支援頁面上提交 Azure 支援要求,再繼續進行下列步驟。
必要條件
建立資源群組
Azure 資源群組是在其中部署與管理 Azure 資源的邏輯容器。
使用 New-AzResourceGroup 建立資源群組:
## Create to your Azure account subscription and create a resource group in a desired location. ##
Connect-AzAccount
Set-AzSubscription "mySubscription"
$rg = "CreateAttestationPrivateLinkTutorial-rg"
$loc= "eastus"
New-AzResourceGroup -Name $rg -Location $loc
建立虛擬網路和堡壘主機
在本節中,您會建立虛擬網路、子網路和堡壘主機。
堡壘主機將用來安全地連線到虛擬機器,以測試私人端點。
使用下列 Cmdlet 建立虛擬網路和堡壘主機:
## Create backend subnet config. ##
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name myBackendSubnet -AddressPrefix 10.0.0.0/24
## Create Azure Bastion subnet. ##
$bastsubnetConfig = New-AzVirtualNetworkSubnetConfig -Name AzureBastionSubnet -AddressPrefix 10.0.1.0/24
## Create the virtual network. ##
$vnet = New-AzVirtualNetwork -Name "myAttestationTutorialVNet" -ResourceGroupName $rg -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnetConfig, $bastsubnetConfig
## Create public IP address for bastion host. ##
$publicip = New-AzPublicIpAddress -Name "myBastionIP" -ResourceGroupName $rg -Location $loc -Sku "Standard" -AllocationMethod "Static"
## Create bastion host ##
New-AzBastion -ResourceGroupName $rg -Name "myBastion" -PublicIpAddress $publicip -VirtualNetwork $vnet
部署 Azure Bastion 主機需要幾分鐘的時間。
建立測試虛擬機器
在本節中,您將建立將用來測試私人端點的虛擬機器。
使用下列 Cmdlet 建立虛擬機器:
- Get-Credential
- New-AzNetworkInterface
- New-AzVM
- New-AzVMConfig
- Set-AzVMOperatingSystem
- Set-AzVMSourceImage
- Add-AzVMNetworkInterface
## Set credentials for server admin and password. ##
$cred = Get-Credential
## Command to create network interface for VM ##
$nicVM = New-AzNetworkInterface -Name "myNicVM" -ResourceGroupName $rg -Location $loc -Subnet $vnet.Subnets[0]
## Create a virtual machine configuration.##
$vmConfig = New-AzVMConfig -VMName "myVM" -VMSize "Standard_DS1_v2" | Set-AzVMOperatingSystem -Windows -ComputerName "myVM" -Credential $cred | Set-AzVMSourceImage -PublisherName "MicrosoftWindowsServer" -Offer "WindowsServer" -Skus "2019-Datacenter" -Version "latest" | Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine ##
New-AzVM -ResourceGroupName $rg -Location $loc -VM $vmConfig
建立證明提供者
## Create an attestation provider ##
$attestationProviderName = "myattestationprovider"
$attestationProvider = New-AzAttestation -Name $attestationProviderName -ResourceGroupName $rg -Location $loc
$attestationProviderId = $attestationProvider.Id
從本機電腦存取證明提供者
輸入 nslookup <provider-name>.attest.azure.net
。 將 <provider-name> 取代為您在先前步驟中建立的證明提供者執行個體。
## Access the attestation provider from local machine ##
nslookup myattestationprovider.eus.attest.azure.net
<# You'll receive a message similar to what is displayed below:
Server: cdns01.comcast.net
Address: 2001:558:feed::1
Non-authoritative answer:
Name: eus.service.attest.azure.net
Address: 20.62.219.160
Aliases: myattestationprovider.eus.attest.azure.net
attesteusatm.trafficmanager.net
#>
建立私人端點
在本節中,您會使用下列方式建立私人端點和連線:
## Create private endpoint connection. ##
$privateEndpointConnection = New-AzPrivateLinkServiceConnection -Name "myConnection" -PrivateLinkServiceId $attestationProviderId -GroupID "Standard"
## Disable private endpoint network policy ##
$vnet.Subnets[0].PrivateEndpointNetworkPolicies = "Disabled"
$vnet | Set-AzVirtualNetwork
## Create private endpoint
New-AzPrivateEndpoint -ResourceGroupName $rg -Name "myPrivateEndpoint" -Location $loc -Subnet $vnet.Subnets[0] -PrivateLinkServiceConnection $privateEndpointConnection
設定私人 DNS 區域
在此節中,您將使用下列 Cmdlet 建立並設定私人 DNS 區域:
- New-AzPrivateDnsZone
- New-AzPrivateDnsVirtualNetworkLink
- New-AzPrivateDnsZoneConfig
- New-AzPrivateDnsZoneGroup
## Create private dns zone. ##
$zone = New-AzPrivateDnsZone -ResourceGroupName $rg -Name "privatelink.attest.azure.net"
## Create dns network link. ##
$link = New-AzPrivateDnsVirtualNetworkLink -ResourceGroupName $rg -ZoneName "privatelink.attest.azure.net" -Name "myLink" -VirtualNetworkId $vnet.Id
## Create DNS configuration ##
$config = New-AzPrivateDnsZoneConfig -Name "privatelink.attest.azure.net" -PrivateDnsZoneId $zone.ResourceId
## Create DNS zone group. ##
New-AzPrivateDnsZoneGroup -ResourceGroupName $rg -PrivateEndpointName "myPrivateEndpoint" -Name "myZoneGroup" -PrivateDnsZoneConfig $config
測試對私人端點的連線能力
在本節中,您將使用您在上一個步驟中建立的虛擬機器,連線到私人端點上的 SQL 伺服器。
登入 Azure 入口網站。
在左側瀏覽窗格中,選取 [資源群組]。
選取 [CreateAttestationPrivateLinkTutorial-rg]。
選取 [myVM]。
在 [myVM] 的 [概觀] 頁面上,選取 [連線],然後選取 [堡壘]。
選取藍色的 [使用堡壘] 按鈕。
輸入您在虛擬機器建立期間輸入的使用者名稱與密碼。
連線之後,在伺服器上開啟 Windows PowerShell。
輸入
nslookup <provider-name>.attest.azure.net
。 將 <provider-name> 取代為您在先前步驟中建立的證明提供者執行個體:## Access the attestation provider from local machine ## nslookup myattestationprovider.eus.attest.azure.net <# You'll receive a message similar to what is displayed below: Server: cdns01.comcast.net Address: 2001:558:feed::1 cdns01.comcast.net can't find myattestationprovider.eus.attest.azure.net: Non-existent domain #> ## Access the attestation provider from the VM created in the same virtual network as the private endpoint. ## nslookup myattestationprovider.eus.attest.azure.net <# You'll receive a message similar to what is displayed below: Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: myattestationprovider.eastus.test.attest.azure.net #>