Avvio rapido: Creare un endpoint privato usando l'interfaccia della riga di comando di Azure
Introduzione al collegamento privato di Azure, che consente di connettersi in modo sicuro a un'app Web di Azure creando e usando un endpoint privato.
In questa guida di avvio rapido, creare un endpoint privato per un'app Web di Servizi app di Azure, quindi creare e distribuire una macchina virtuale per testare la connessione privata.
È possibile creare endpoint privati per vari servizi di Azure, ad esempio Azure SQL e Archiviazione di Azure.
Prerequisiti
Un account Azure con una sottoscrizione attiva. Se non si ha già un account Azure, è possibile crearne uno gratuitamente.
Un'app Web di Azure con un piano di servizio app PremiumV2 o superiore, distribuito nella sottoscrizione di Azure.
Per altre informazioni e per trovare un esempio, vedere Avvio rapido: Creare un'app Web ASP.NET Core in Azure.
L'app Web di esempio in questo articolo è denominata webapp-1. Sostituire l'esempio con il nome dell'app Web.
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Creare un gruppo di risorse
Un gruppo di risorse di Azure è un contenitore logico in cui vengono distribuite e gestite le risorse di Azure.
Creare prima di tutto un gruppo di risorse usando az group create:
az group create \
--name test-rg \
--location eastus2
Creare una rete virtuale e un host bastion
Per ospitare l'indirizzo IP privato per l'endpoint privato, è necessaria una rete virtuale e una subnet. Creare un host bastion per connettersi in modo sicuro alla macchina virtuale per testare l'endpoint privato. La macchina virtuale viene creata in una sezione successiva.
Nota
La tariffa oraria inizia dal momento in cui viene distribuito Bastion, a prescindere dall'utilizzo dei dati in uscita. Per altre informazioni, vedere Prezzi e SKU. Se si distribuisce Bastion nel corso di un'esercitazione o di un test, è consigliabile eliminare questa risorsa dopo averla usata.
Creare una rete virtuale con 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
Creare una subnet bastion con 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
Creare un indirizzo IP pubblico per l'host bastion con az network public-ip create.
az network public-ip create \
--resource-group test-rg \
--name public-ip \
--sku Standard \
--zone 1 2 3
Creare l'host bastion con 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
La distribuzione dell'host Azure Bastion può richiedere qualche minuto.
Creare un endpoint privato
Per configurare l'endpoint privato e la connessione alla rete virtuale, è necessario un servizio di Azure che supporta gli endpoint privati. Per gli esempi in questo articolo, usare l'app Web di Azure dai prerequisiti. Per altre informazioni sui servizi di Azure che supportano un endpoint privato, vedere collegamento privato di Azure disponibilità.
Un endpoint privato può avere un indirizzo IP statico o assegnato dinamicamente.
Importante
Per procedere con i passaggi descritti in questo articolo, è necessario disporre di un'app Web di servizi app Azure distribuita in precedenza. Per altre informazioni, consulta Prerequisiti.
Inserire l'ID risorsa dell'app Web creata in precedenza in una variabile della shell con az webapp list. Creare l'endpoint privato con 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
Configurare la zona DNS privato
Una zona DNS privata viene usata per risolvere il nome DNS dell'endpoint privato nella rete virtuale. Per questo esempio si usano le informazioni DNS per un'app Web di Azure. Per altre informazioni sulla configurazione DNS degli endpoint privati, vedere Configurazione DNS dell'endpoint privato di Azure.
Creare una nuova zona DNS di Azure privata con az network private-dns zone create.
az network private-dns zone create \
--resource-group test-rg \
--name "privatelink.azurewebsites.net"
Collegare la zona DNS alla rete virtuale creata in precedenza con az network private-dns link vnet create.
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
Creare un gruppo di zone DNS con az network private-endpoint dns-zone-group create.
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
Creare una macchina virtuale di test
Per verificare l'indirizzo IP statico e la funzionalità dell'endpoint privato, è necessaria una macchina virtuale di test connessa alla rete virtuale.
Creare la macchina virtuale con il comando 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
Nota
Le macchine virtuali in una rete virtuale con un host Bastion non necessitano di indirizzi IP pubblici. Bastion fornisce l'indirizzo IP pubblico e le macchine virtuali usano indirizzi IP privati per comunicare all'interno della rete. È possibile rimuovere gli indirizzi IP pubblici da qualsiasi macchina virtuale in reti virtuali ospitate da Bastion. Per altre informazioni, vedere Annullare l'associazione di un indirizzo IP pubblico da una macchina virtuale di Azure.
Nota
Azure fornisce un IP di accesso in uscita predefinito per le macchine virtuali a cui non è stato assegnato un indirizzo IP pubblico o che si trovano nel pool back-end di un servizio del bilanciamento del carico di base di Azure. Il meccanismo dell'IP di accesso in uscita predefinito fornisce un IP in uscita non configurabile.
L'IP di accesso in uscita predefinito è disabilitato quando si verifica uno degli eventi seguenti:
- Alla macchina virtuale viene assegnato un indirizzo IP pubblico.
- La macchina virtuale è posizionata nel pool back-end di un servizio di bilanciamento del carico standard, con o senza regole in uscita.
- Una risorsa del gateway NAT di Azure viene assegnata alla subnet della macchina virtuale.
Le macchine virtuali create usando set di scalabilità di macchine virtuali in modalità di orchestrazione flessibile non hanno l'accesso in uscita predefinito.
Per altre informazioni sulle connessioni in uscita in Azure, vedere Accesso in uscita predefinito in Azure e Uso di Source Network Address Translation (SNAT) per le connessioni in uscita.
Testare la connettività con l'endpoint privato
Usare la macchina virtuale creata in precedenza per connettersi all'app Web tramite l'endpoint privato.
Nella casella di ricerca, nella parte superiore del portale, immettere Macchina virtuale. Selezionare Macchine virtuali.
Selezionare vm-1.
Nella pagina di panoramica di vm-1 selezionare Connetti, quindi selezionare la scheda Bastion.
Selezionare Usa Bastion.
Immettere il nome utente e la password usati al momento della creazione della macchina virtuale.
Selezionare Connetti.
Dopo aver stabilito la connessione, aprire PowerShell nel server.
Immetti
nslookup webapp-1.azurewebsites.net
. Verrà visualizzato un messaggio simile all’esempio seguente: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
Viene restituito un indirizzo IP privato di 10.0.0.10 per il nome dell'app Web se è stato scelto l'indirizzo IP statico nei passaggi precedenti. Questo indirizzo si trova nella subnet della rete virtuale creata in precedenza.
Nella connessione bastion a vm-1, aprire il Web browser.
Immettere l'URL dell'app Web,
https://webapp-1.azurewebsites.net
.Se l'app Web non è stata distribuita, viene visualizzata la seguente pagina dell'app Web predefinita:
Chiudere la connessione a vm-1.
Pulire le risorse
Quando non è più necessario, usare il comando az group delete per rimuovere il gruppo di risorse, il servizio di collegamento privato, il servizio di bilanciamento del carico e tutte le risorse correlate.
az group delete \
--name test-rg
Passaggi successivi
Per altre informazioni sui servizi che supportano endpoint privati, vedere: