Condividi tramite


Configurare le impostazioni server del Gateway VPN da punto a sito - Autenticazione RADIUS

Questo articolo illustra come creare una connessione da punto a sito che usa l'autenticazione RADIUS. Questa configurazione può essere creata tramite il portale di Azure o PowerShell. Per eseguire l'autenticazione con un metodo diverso, vedere gli articoli seguenti:

Per altre informazioni sulle connessioni VPN da punto a sito, vedere Informazioni sulla VPN da punto a sito.

Questo tipo di connessione richiede:

  • Un gateway VPN RouteBased.
  • Un server RADIUS per gestire l'autenticazione utente. Il server RADIUS può essere distribuito in locale o nella rete virtuale di Azure. È anche possibile configurare due server RADIUS per la disponibilità elevata.
  • Il pacchetto di configurazione del profilo del client VPN. Il pacchetto di configurazione del profilo del client VPN è un pacchetto generato. Contiene le impostazioni necessarie per la connessione di un client VPN tramite una connessione da punto a sito.

Limitazioni :

  • Se si usa IKEv2 con RADIUS, è supportata solo l'autenticazione basata su EAP.
  • Non è possibile usare una connessione ExpressRoute per connettersi a un server RADIUS locale.

Informazioni sull'autenticazione di un dominio di Active Directory (AD) per le VPN P2S

L'autenticazione di un dominio di AD consente agli utenti di accedere ad Azure usando le credenziali di dominio dell'organizzazione. Richiede un server RADIUS che si integra con il server AD. Le organizzazioni possono anche sfruttare la distribuzione RADIUS esistente.

Il server RADIUS può trovarsi in locale o nella rete virtuale di Azure. Durante l'autenticazione, il gateway VPN funge da pass-through e inoltra i messaggi di autenticazione tra il server RADIUS e il dispositivo che si connette e viceversa. È importante per il gateway VPN poter raggiungere il server RADIUS. Se il server RADIUS si trova in locale, è necessaria una connessione VPN da sito a sito da Azure al sito locale.

Oltre che con Active Directory, un server RADIUS può anche integrarsi con altri sistemi di identità esterni, offrendo così molte opzioni di autenticazione per le VPN da punto a sito, incluse le opzioni MFA. Vedere la documentazione del fornitore del server RADIUS per ottenere l'elenco dei sistemi di identità con cui si integra.

Diagramma della connessione da punto a sito per l'autenticazione RADIUS.

Prima di iniziare

Verificare di possedere una sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, è possibile attivare i vantaggi per i sottoscrittori di MSDN oppure iscriversi per ottenere un account gratuito.

Uso di Azure PowerShell

Questo articolo usa i cmdlet di PowerShell. Per eseguire i cmdlet, è possibile usare Azure Cloud Shell. Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Per aprire Cloud Shell, basta selezionare Apri Cloud Shell nell'angolo superiore destro di un blocco di codice. È anche possibile aprire Cloud Shell in una scheda separata del browser andando su https://shell.azure.com/powershell. Selezionare Copia per copiare i blocchi di codice e incollarli in Cloud Shell, poi premere INVIO per eseguirli.

È anche possibile installare ed eseguire i cmdlet di Azure PowerShell in locale nel computer. I cmdlet di PowerShell vengono aggiornati di frequente. Se non è stata installata la versione più recente, i valori specificati nelle istruzioni potrebbero non avere successo. Per trovare le versioni di Azure PowerShell installate nel computer, usare il cmdlet Get-Module -ListAvailable Az. Per installare o aggiornare, vedere Installare il modulo Azure PowerShell.

Valori di esempio

È possibile usare i valori di esempio per creare un ambiente di test o fare riferimento a questi valori per comprendere meglio gli esempi di questo articolo. È possibile seguire la procedura dettagliata e usare i valori senza modificarle oppure modificarli in base all'ambiente.

  • Nome: VNet1
  • Spazio indirizzi: 10.1.0.0/16 e 10.254.0.0/16
    Per questo esempio, si usa più di uno spazio indirizzi per mostrare che la configurazione funziona con più spazi indirizzi, ma per questa configurazione non sono necessari più spazi indirizzi.
  • Nome subnet: FrontEnd
    • Intervallo di indirizzi subnet: 10.1.0.0/24
  • Nome subnet: BackEnd
    • Intervallo di indirizzi subnet: 10.254.1.0/24
  • Nome subnet: GatewaySubnet
    Il nome subnet GatewaySubnet è obbligatorio per il funzionamento del gateway VPN.
    • Intervallo di indirizzi GatewaySubnet: 10.1.255.0/27
  • Pool di indirizzi client VPN: 172.16.201.0/24
    I client VPN che si connettono alla rete virtuale con questa connessione da punto a sito ricevono un indirizzo IP dal pool di indirizzi client VPN.
  • Sottoscrizione: se si hanno più sottoscrizioni, verificare di usare quella corretta.
  • Gruppo di risorse: TestRG1
  • Località: Stati Uniti orientali
  • Server DNS: indirizzo IP del server DNS che si vuole usare per la risoluzione dei nomi per la rete virtuale. (facoltativo).
  • Nome del gateway: Vnet1GW
  • Nome dell'IP pubblico: VNet1GWPIP
  • VpnType: RouteBased

Creare il gruppo di risorse, la rete virtuale e l'indirizzo IP pubblico

I passaggi seguenti creano un gruppo di risorse e una rete virtuale nel gruppo di risorse con tre subnet. Quando si sostituiscono i valori, è importante che la subnet gateway venga denominata sempre esattamente GatewaySubnet. Se si assegnano altri nomi, la creazione del gateway ha esito negativo.

  1. Creare un gruppo di risorse usando New-AzResourceGroup.

    New-AzResourceGroup -Name "TestRG1" -Location "EastUS"
    
  2. Usare New-AzVirtualNetwork per creare la rete virtuale.

    $vnet = New-AzVirtualNetwork `
    -ResourceGroupName "TestRG1" `
    -Location "EastUS" `
    -Name "VNet1" `
    -AddressPrefix 10.1.0.0/16
    
  3. Creare le subnet usando New-AzVirtualNetworkSubnetConfig con i nomi seguenti: FrontEnd e GatewaySubnet (una subnet del gateway deve essere denominata GatewaySubnet).

    $subnetConfigFrontend = Add-AzVirtualNetworkSubnetConfig `
      -Name Frontend `
      -AddressPrefix 10.1.0.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigGW = Add-AzVirtualNetworkSubnetConfig `
      -Name GatewaySubnet `
      -AddressPrefix 10.1.255.0/27 `
      -VirtualNetwork $vnet
    
  4. Scrivere le configurazioni della subnet nella rete virtuale con Set-AzVirtualNetwork, che consente di creare le subnet nella rete virtuale:

    $vnet | Set-AzVirtualNetwork
    

Richiedere un indirizzo IP pubblico

Un gateway VPN deve avere un indirizzo IP pubblico. È necessario richiedere prima di tutto la risorsa dell'indirizzo IP e quindi farvi riferimento durante la creazione del gateway di rete virtuale. L'indirizzo IP viene assegnato in modo statico alla risorsa durante la creazione del gateway VPN. L'indirizzo IP pubblico viene modificato solo quando il gateway viene eliminato e ricreato. Non viene modificato in caso di ridimensionamento, reimpostazione o altre manutenzioni/aggiornamenti del gateway VPN.

  1. Richiedere un indirizzo IP pubblico per il gateway VPN usando New-AzPublicIpAddress.

    $gwpip = New-AzPublicIpAddress -Name "GatewayIP" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard
    
  2. Creare la configurazione dell'indirizzo IP del gateway usando New-AzVirtualNetworkGatewayIpConfig. Quando si crea il gateway VPN, viene fatto riferimento a questa configurazione.

    $vnet = Get-AzVirtualNetwork -Name "VNet1" -ResourceGroupName "TestRG1"
    $gwsubnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
    $gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $gwsubnet.Id -PublicIpAddressId $gwpip.Id
    

Configurare il server RADIUS

Prima di creare e configurare il gateway di rete virtuale, il server RADIUS deve essere configurato correttamente per l'autenticazione.

  1. Se necessario, distribuire un server RADIUS. Per la procedura di distribuzione, vedere la guida alla configurazione del fornitore RADIUS.  
  2. Configurare il gateway VPN come client RADIUS in RADIUS. Quando si aggiunge questo client RADIUS, specificare l'elemento GatewaySubnet di rete virtuale creato.
  3. Dopo avere configurato il server RADIUS, ottenere l'indirizzo IP del server RADIUS e il segreto condiviso che i client RADIUS devono usare per comunicare con il server RADIUS. Se il server RADIUS è nella rete virtuale di Azure, usare l'IP della CA della VM del server RADIUS.

L'articolo Server dei criteri di rete (NPS) fornisce indicazioni sulla configurazione di un server RADIUS Windows (NPS) per l'autenticazione di un dominio di AD.

Creare il gateway VPN

In questo passaggio viene configurato e creato il gateway di rete virtuale per la rete virtuale. Per altre informazioni sull'autenticazione e sul tipo di tunnel, vedere Specificare il tipo di tunnel e di autenticazione nella versione di questo articolo per il portale di Azure.

  • -GatewayType deve essere "Vpn" e -VpnType deve essere "RouteBased".
  • La creazione di un gateway VPN può richiedere 45 minuti o più, a seconda dello SKU del gateway selezionato.

In questo esempio viene usato lo SKU VpnGw2, di seconda generazione. Se vengono visualizzati errori di tipo ValidateSet relativi al valore di GatewaySKU e questi comandi sono eseguiti in locale, verificare di aver installato l'ultima versione dei cmdlet di PowerShell. L'ultima versione contiene i nuovi valori convalidati per gli SKU del gateway più recenti.

Creare il gateway di rete virtuale con il tipo di gateway "Vpn" usando New-AzVirtualNetworkGateway.

New-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1" `
-Location "EastUS" -IpConfigurations $gwipconfig -GatewayType Vpn `
-VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw2 -VpnGatewayGeneration "Generation2"

Aggiungere il server RADIUS

  • -RadiusServer può essere specificato con il nome o con l'indirizzo IP. Se si specifica il nome e il server si trova in locale, il gateway VPN potrebbe non riuscire a risolvere il nome. In tal caso è meglio specificare l'indirizzo IP del server.
  • -RadiusSecret deve corrispondere a quanto configurato nel server RADIUS.
  • -VpnClientAddressPool è l'intervallo da cui i client VPN che si connettono ricevono un indirizzo IP. Usare un intervallo di indirizzi IP privati che non si sovrapponga con la posizione locale da cui viene effettuata la connessione o con la rete virtuale a cui ci si vuole connettere. Assicurarsi di avere configurato un pool di indirizzi di dimensioni sufficienti.  
  1. Creare una stringa sicura per il segreto RADIUS.

    $Secure_Secret=Read-Host -AsSecureString -Prompt "RadiusSecret"
    
  2. Viene richiesto di immettere il segreto RADIUS. I caratteri immessi non verranno visualizzati e saranno sostituiti dal carattere "*".

    RadiusSecret:***
    

Aggiungere i valori del pool di indirizzi client e del server RADIUS

In questa sezione si aggiungono il pool di indirizzi client VPN e le informazioni sul server RADIUS. Esistono più configurazioni possibili. Selezionare l'esempio da configurare.

Configurazioni SSTP

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "SSTP" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Configurazioni OpenVPN®

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientRootCertificates @()
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "OpenVPN" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Configurazioni IKEv2

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol "IKEv2" `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

SSTP + IKEv2

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName "TestRG1" -Name "VNet1GW"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway `
-VpnClientAddressPool "172.16.201.0/24" -VpnClientProtocol @( "SSTP", "IkeV2" ) `
-RadiusServerAddress "10.51.0.15" -RadiusServerSecret $Secure_Secret

Specificare due server RADIUS

Per specificare due server RADIUS, usare la sintassi seguente. Modificare il valore -VpnClientProtocol in base alle proprie esigenze.

$radiusServer1 = New-AzRadiusServer -RadiusServerAddress 10.1.0.15 -RadiusServerSecret $radiuspd -RadiusServerScore 30
$radiusServer2 = New-AzRadiusServer -RadiusServerAddress 10.1.0.16 -RadiusServerSecret $radiuspd -RadiusServerScore 1

$radiusServers = @( $radiusServer1, $radiusServer2 )

Set-AzVirtualNetworkGateway -VirtualNetworkGateway $actual -VpnClientAddressPool 201.169.0.0/16 -VpnClientProtocol "IkeV2" -RadiusServerList $radiusServers

Configurare il client VPN e connettersi

I pacchetti di configurazione del profilo client VPN contengono le impostazioni che consentono di configurare i profili client VPN per una connessione alla rete virtuale di Azure.

Per generare un pacchetto di configurazione client VPN e configurare un client VPN, vedere uno degli articoli seguenti:

Dopo aver configurato il client VPN, connettersi ad Azure.

Per verificare la connessione

  1. Per verificare che la connessione VPN è attiva, aprire un prompt dei comandi con privilegi elevati ed eseguire ipconfig/all.

  2. Visualizzare i risultati. Si noti che l'indirizzo IP ricevuto è uno degli indirizzi compresi nel pool di indirizzi del client VPN da punto a sito specificato al momento della configurazione. I risultati sono simili a questo esempio:

    PPP adapter VNet1:
       Connection-specific DNS Suffix .:
       Description.....................: VNet1
       Physical Address................:
       DHCP Enabled....................: No
       Autoconfiguration Enabled.......: Yes
       IPv4 Address....................: 172.16.201.3(Preferred)
       Subnet Mask.....................: 255.255.255.255
       Default Gateway.................:
       NetBIOS over Tcpip..............: Enabled
    

Per informazioni sulla risoluzione dei problemi della connessione da punto a sito, vedere Risoluzione dei problemi di connessione da punto a sito di Azure.

Per connettersi a una macchina virtuale

È possibile connettersi a una macchina virtuale distribuita nella rete virtuale creando una connessione Desktop remoto alla macchina virtuale. Il modo migliore per verificare inizialmente che è possibile connettersi alla VM consiste nel connettersi usando il rispettivo indirizzo IP privato, invece del nome del computer. Ciò consente di verificare se è possibile connettersi, non se la risoluzione dei nomi è configurata correttamente.

  1. Individuare l'indirizzo IP privato. È possibile trovare l'indirizzo IP privato di una macchina virtuale esaminando le proprietà per la macchina virtuale nel portale di Azure oppure usando PowerShell.

    • Portale di Azure: individuare la macchina virtuale nel portale di Azure. Visualizzare le proprietà per la VM. Viene elencato l'indirizzo IP.

    • PowerShell: usare l'esempio per visualizzare un elenco di macchine virtuali e di indirizzi IP privati dai gruppi di risorse. Non è necessario modificare questo esempio prima di usarlo.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. Verificare di essere connessi alla rete virtuale.

  3. Aprire Connessione Desktop remoto digitando RDP o Connessione Desktop remoto nella casella di ricerca sulla barra delle applicazioni, quindi selezionare Connessione Desktop remoto. È anche possibile aprire Connessione Desktop remoto usando il comando mstsc in PowerShell.

  4. In Connessione Desktop remoto immettere l'indirizzo IP privato della macchina virtuale. Selezionare Mostra opzioni per modificare altre impostazioni e quindi connettersi.

Se si verificano problemi di connessione a una macchina virtuale tramite la connessione VPN, controllare quanto segue:

  • Verificare che la connessione VPN sia attiva.
  • Verificare che venga effettuata la connessione all'indirizzo IP privato per la macchina virtuale.
  • Se è possibile connettersi alla macchina virtuale usando l'indirizzo IP privato, ma non il nome computer, verificare di avere configurato correttamente il DNS. Per altre informazioni sul funzionamento della risoluzione dei nomi per le macchine virtuali, vedere Risoluzione dei nomi per le macchine virtuali.

Per altre informazioni sulle connessioni RDP, vedere Risolvere i problemi delle connessioni Desktop remoto a una macchina virtuale.

  • Verificare che il pacchetto di configurazione del client VPN sia stato generato dopo che sono stati specificati gli indirizzi IP del server DNS per la rete virtuale. Se gli indirizzi IP del server DNS sono stati aggiornati, generare e installare un nuovo pacchetto di configurazione del client VPN.

  • Usare 'ipconfig' per controllare l'indirizzo IPv4 assegnato alla scheda Ethernet nel computer da cui viene effettuata la connessione. Se l'indirizzo IP è compreso nell'intervallo di indirizzi della rete virtuale a cui ci si connette o nell'intervallo di indirizzi di VPNClientAddressPool, si verifica la cosiddetta sovrapposizione dello spazio indirizzi. Con questo tipo di sovrapposizione, il traffico di rete non raggiunge Azure e rimane nella rete locale.

Domande frequenti

Per le domande frequenti, vedere la sezione Da punto a sito - Autenticazione RADIUS delle domande frequenti.

Passaggi successivi

Dopo aver completato la connessione, è possibile aggiungere macchine virtuali alle reti virtuali. Per altre informazioni, vedere Macchine virtuali. Per altre informazioni sulla rete e sulle macchine virtuali, vedere Panoramica di rete delle macchine virtuali Linux e Azure.