共用方式為


快速入門 - 使用 Azure CLI 建立私人端點

藉由建立並使用私人端點來安全地連線到 Azure Web 應用程式,以開始使用 Azure Private Link。

在本快速入門中,建立 Azure App Service Web 應用程式的私人端點,然後建立並部署虛擬機器 (VM) 來測試私人連線。

您可以為各種 Azure 服務建立私人端點,例如 Azure SQL 和 Azure 儲存體。

私人端點快速入門中建立的資源圖表。

必要條件

建立資源群組

Azure 資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。

首先,使用 az group create 建立資源群組:

az group create \
    --name test-rg \
    --location eastus2

建立虛擬網路和堡壘主機

需要虛擬網路和子網路,才能裝載私人端點的私人 IP 位址。 您會建立堡壘主機,以安全地連線到虛擬機器,來測試私人端點。 您會在稍後的小節中建立虛擬機器。

注意

無論輸出資料使用量為何,每小時價格都是從部署 Bastion 的那一刻開始計費。 如需詳細資訊,請參閱價格SKU。 如果您要在教學課程或測試期間部署 Bastion,建議您在使用完畢後刪除此資源。

使用 az network vnet create 建立虛擬網路。

az network vnet create \
    --resource-group test-rg \
    --location eastus2 \
    --name vnet-1 \
    --address-prefixes 10.0.0.0/16 \
    --subnet-name subnet-1 \
    --subnet-prefixes 10.0.0.0/24

使用 az network vnet subnet create 建立堡壘子網路。

az network vnet subnet create \
    --resource-group test-rg \
    --name AzureBastionSubnet \
    --vnet-name vnet-1 \
    --address-prefixes 10.0.1.0/26

使用 az network public-ip create 建立堡壘主機的公用 IP 位址。

az network public-ip create \
    --resource-group test-rg \
    --name public-ip \
    --sku Standard \
    --zone 1 2 3

使用 az network bastion create 建立堡壘主機。

az network bastion create \
    --resource-group test-rg \
    --name bastion \
    --public-ip-address public-ip \
    --vnet-name vnet-1 \
    --location eastus2

部署 Azure Bastion 主機需要幾分鐘的時間。

建立私人端點

需要支援私人端點的 Azure 服務,才能設定私人端點和虛擬網路的連線。 針對本文中的範例,請使用來自必要條件的 Azure WebApp。 如需支援私人端點的 Azure 服務的詳細資訊,請參閱 Azure Private Link 可用性

私人端點可以有靜態或動態指派的 IP 位址。

重要

您必須擁有先前部署的 Azure App Service WebApp,才能繼續進行本文中的步驟。 如需詳細資訊,請參閱必要條件

使用 az webapp list,將您稍早所建立的 Web 應用程式資源識別碼放入殼層變數。 使用 az network private-endpoint create 建立私人端點。

id=$(az webapp list \
    --resource-group test-rg \
    --query '[].[id]' \
    --output tsv)

az network private-endpoint create \
    --connection-name connection-1 \
    --name private-endpoint \
    --private-connection-resource-id $id \
    --resource-group test-rg \
    --subnet subnet-1 \
    --group-id sites \
    --vnet-name vnet-1    

設定私人 DNS 區域

私人 DNS 區域可用來解析虛擬網路中私人端點的 DNS 名稱。 在此範例中,我們會使用 Azure WebApp 的 DNS 資訊,如需私人端點的 DNS 組態的詳細資訊,請參閱 Azure 私人端點 DNS 組態

使用 az network private-dns zone create 建立新的私人 Azure DNS 區域。

az network private-dns zone create \
    --resource-group test-rg \
    --name "privatelink.azurewebsites.net"

使用 az network private-dns link vnet create 將 DNS 區域連結至您先前建立的虛擬網路。

az network private-dns link vnet create \
    --resource-group test-rg \
    --zone-name "privatelink.azurewebsites.net" \
    --name dns-link \
    --virtual-network vnet-1 \
    --registration-enabled false

使用 az network private-endpoint dns-zone-group create 建立 DNS 區域群組。

az network private-endpoint dns-zone-group create \
    --resource-group test-rg \
    --endpoint-name private-endpoint \
    --name zone-group \
    --private-dns-zone "privatelink.azurewebsites.net" \
    --zone-name webapp

建立測試虛擬機器

若要驗證靜態 IP 位址和私人端點的功能,需要連線到您虛擬網路的測試虛擬機器。

使用 az vm create 建立虛擬機器。

az vm create \
    --resource-group test-rg \
    --name vm-1 \
    --image Win2022Datacenter \
    --public-ip-address "" \
    --vnet-name vnet-1 \
    --subnet subnet-1 \
    --admin-username azureuser

注意

虛擬網路中的虛擬機器 (具有 Bastion 主機) 不需要公用 IP 位址。 Bastion 會提供公用 IP,而 VM 會使用私人 IP 在網路內通訊。 您可以從裝載了 Bastion 的虛擬網路中,移除任何 VM 的公用 IP。 如需詳細資訊,請參閱中斷公用 IP 位址與 Azure VM 的關聯

注意

無論是未獲指派公用 IP 位址的 VM,或位於內部基本 Azure 負載平衡器後端集區的 VM,Azure 都會為其提供預設輸出存取 IP。 預設輸出存取 IP 機制能提供無法自行設定的輸出 IP 位址。

發生下列其中一個事件時,會停用預設輸出存取 IP:

  • 公用 IP 位址會指派給 VM。
  • 無論有沒有輸出規則,都會將 VM 放在標準負載平衡器的後端集區中。
  • Azure NAT 閘道資源會指派給 VM 的子網。

您在彈性協調流程模式中使用虛擬機器擴展集建立的 VM 沒有預設輸出存取。

如需 Azure 中輸出連線的詳細資訊,請參閱 Azure 中的預設輸出存取針對輸出連線,使用來源網路位址轉譯 (SNAT)

測試對私人端點的連線能力

使用您稍早建立的虛擬機器,跨私人端點連線到 Web 應用程式。

  1. 在入口網站頂端的搜尋方塊中,輸入虛擬機器。 選取 [虛擬機器]

  2. 選取 [vm-1]

  3. vm-1 的概觀頁面上,選取 [連線],再選取 [Bastion] 索引標籤。

  4. 選取 [使用 Bastion]

  5. 輸入您在建立 VM 時所使用的使用者名稱和密碼。

  6. 選取 Connect

  7. 連線之後,請在伺服器上開啟 PowerShell。

  8. 輸入 nslookup webapp-1.azurewebsites.net。 您會收到類似以下範例的訊息:

    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
    

    針對 Web 應用程式名稱,會傳回 10.0.0.10 的私人 IP 位址 (如果您在先前的步驟中選擇靜態 IP 位址的話)。 此位址位於您先前所建立虛擬網路的子網路中。

  9. 在與 vm-1 的堡壘連線中,開啟網頁瀏覽器。

  10. 輸入 Web 應用程式的 URL:https://webapp-1.azurewebsites.net

    如果尚未部署 Web 應用程式,您會收到下列預設 Web 應用程式頁面:

    瀏覽器上預設 Web 應用程式頁面的螢幕快照。

  11. 關閉與 vm-1 的連線。

清除資源

若不再需要,使用 az group delete 命令來移除資源群組、私人連結服務、負載平衡器和所有相關資源。

  az group delete \
    --name test-rg

下一步

如需支援私人端點的服務詳細資訊,請參閱: