Distribuire manualmente Windows Admin Center in Azure per la gestione di più server

Questo articolo descrive come distribuire manualmente Windows Admin Center in una macchina virtuale di Azure da usare per la gestione di più macchine virtuali di Azure. Per gestire una singola macchina virtuale, usare invece la funzionalità di Windows Admin Center incorporata nel portale di Azure, come descritto in Usare Windows Admin Center nel portale di Azure.

Eseguire la distribuzione con script

È possibile scaricare Deploy-WACAzVM.ps1 che verrà eseguito da Azure Cloud Shell per configurare un gateway di Windows Admin Center in Azure. Questo script può creare l'intero ambiente, incluso il gruppo di risorse.

Passare alla procedura di distribuzione manuale

Prerequisiti

  • Configurare l'account in Azure Cloud Shell. Se è la prima volta che si usa Cloud Shell, verrà chiesto di associare o creare un account di archiviazione di Azure con Cloud Shell.
  • In una PowerShell per Cloud Shell passare alla home directory: PS Azure:\> cd ~
  • Per caricare il file Deploy-WACAzVM.ps1, trascinarlo dal computer locale in qualsiasi punto della finestra di Cloud Shell.

Se si specifica il proprio certificato:

  • Caricare il certificato in Azure Key Vault. Creare prima di tutto un insieme di credenziali delle chiavi nel portale di Azure, quindi caricare il certificato nell'insieme di credenziali delle chiavi. In alternativa, è possibile usare il portale di Azure per generare automaticamente un certificato.

Parametri di script

  • ResourceGroupName- [String] Specifica il nome del gruppo di risorse in cui verrà creata la macchina virtuale.

  • Name - [String] Specifica il nome della macchina virtuale.

  • Credential - [PSCredential] Specifica le credenziali per la macchina virtuale.

  • MsiPath - [String] Specifica il percorso locale dell'identità del servizio gestito di Windows Admin Center durante la distribuzione di Windows Admin Center in una macchina virtuale esistente. L'impostazione predefinita è la versione da https://aka.ms/WACDownload, se omessa.

  • VaultName - [String] Specifica il nome dell'insieme di credenziali delle chiavi che contiene il certificato.

  • CertName - [String] Specifica il nome del certificato da usare per l'installazione dell'identità del servizio gestita.

  • GenerateSslCert - [Switch] True se l'identità del servizio gestita deve generare un certificato SSL autofirmato.

  • PortNumber - [int] Specifica il numero di porta SSL per il servizio Windows Admin Center. Il valore predefinito è 443, se omesso.

  • OpenPorts - [int[]] Specifica le porte aperte per la macchina virtuale.

  • Location - [String] Specifica il percorso della macchina virtuale.

  • Size - [String] Specifica le dimensioni della macchina virtuale. Il valore predefinito è "Standard_DS1_v2", se omesso.

  • Image - [String] Specifica l'immagine della macchina virtuale. Il valore predefinito è "Win2016Datacenter", se omesso.

  • VirtualNetworkName - [String] Specifica il nome della rete virtuale per la macchina virtuale.

  • SubnetName - [String] Specifica il nome della subnet per la macchina virtuale.

  • SecurityGroupName - [String] Specifica il nome del gruppo di sicurezza per la macchina virtuale.

  • PublicIpAddressName - [String] Specifica il nome dell'indirizzo IP pubblico per la macchina virtuale.

  • InstallWACOnly - [Switch] Impostare su True se Windows Admin Center deve essere installato in una macchina virtuale di Azure preesistente.

Sono disponibili 2 diverse opzioni per l'identità del servizio gestita da distribuire e il certificato usato per l'installazione dell'identità del servizio gestita. L'identità del servizio gestita può essere scaricata da aka.ms/WACDownload o, se si esegue la distribuzione in una macchina virtuale esistente, è possibile specificare il percorso file di un'identità del servizio gestita in locale nella macchina virtuale. Il certificato è disponibile in Azure Key Vault oppure un certificato autofirmato verrà generato dall'identità del servizio gestita.

Esempi di script

Definire prima di tutto le variabili comuni necessarie per i parametri dello script.

$ResourceGroupName = "wac-rg1"
$VirtualNetworkName = "wac-vnet"
$SecurityGroupName = "wac-nsg"
$SubnetName = "wac-subnet"
$VaultName = "wac-key-vault"
$CertName = "wac-cert"
$Location = "westus"
$PublicIpAddressName = "wac-public-ip"
$Size = "Standard_D4s_v3"
$Image = "Win2016Datacenter"
$Credential = Get-Credential

Esempio 1: usare lo script per distribuire il gateway di Windows Admin Center in una nuova macchina virtuale in una nuova rete virtuale e in un nuovo gruppo di risorse. Usare l'identità del servizio gestita da aka.ms/WACDownload e un certificato autofirmato dall'identità del servizio gestita.

$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm1"
    Credential = $Credential
    VirtualNetworkName = $VirtualNetworkName
    SubnetName = $SubnetName
    GenerateSslCert = $true
}
./Deploy-WACAzVM.ps1 @scriptParams

Esempio 2: uguale all'esempio 1, ma usando un certificato di Azure Key Vault.

$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm2"
    Credential = $Credential
    VirtualNetworkName = $VirtualNetworkName
    SubnetName = $SubnetName
    VaultName = $VaultName
    CertName = $CertName
}
./Deploy-WACAzVM.ps1 @scriptParams

Esempio 3: uso di un'identità del servizio gestita locale in una macchina virtuale esistente per distribuire Windows Admin Center.

$MsiPath = "C:\Users\<username>\Downloads\WindowsAdminCenter<version>.msi"
$scriptParams = @{
    ResourceGroupName = $ResourceGroupName
    Name = "wac-vm3"
    Credential = $Credential
    MsiPath = $MsiPath
    InstallWACOnly = $true
    GenerateSslCert = $true
}
./Deploy-WACAzVM.ps1 @scriptParams

Requisiti per la macchina virtuale che esegue il gateway di Windows Admin Center

La porta 443 (HTTPS) deve essere aperta. Usando le stesse variabili definite per lo script, è possibile usare il codice seguente in Azure Cloud Shell per aggiornare il gruppo di sicurezza di rete:

$nsg = Get-AzNetworkSecurityGroup -Name $SecurityGroupName -ResourceGroupName $ResourceGroupName
$newNSG = Add-AzNetworkSecurityRuleConfig -NetworkSecurityGroup $nsg -Name ssl-rule -Description "Allow SSL" -Access Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 443
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $newNSG

Requisiti per le macchine virtuali di Azure gestite

La porta 5985 (WinRM su HTTP) deve essere aperta e avere un listener attivo. È possibile usare il codice seguente in Azure Cloud Shell per aggiornare i nodi gestiti. $ResourceGroupName e $Name usano le stesse variabili dello script di distribuzione, ma sarà necessario usare il valore di $Credential specifico per la macchina virtuale gestita.

Enable-AzVMPSRemoting -ResourceGroupName $ResourceGroupName -Name $Name
Invoke-AzVMCommand -ResourceGroupName $ResourceGroupName -Name $Name -ScriptBlock {Set-NetFirewallRule -Name WINRM-HTTP-In-TCP-PUBLIC -RemoteAddress Any} -Credential $Credential
Invoke-AzVMCommand -ResourceGroupName $ResourceGroupName -Name $Name -ScriptBlock {winrm create winrm/config/Listener?Address=*+Transport=HTTP} -Credential $Credential

Distribuire manualmente in una macchina virtuale di Azure esistente

Prima di installare Windows Admin Center nella macchina virtuale gateway desiderata, installare un certificato SSL da usare per la comunicazione HTTPS oppure scegliere di usare un certificato autofirmato generato da Windows Admin Center. Se si sceglie l'ultima opzione, si riceverà tuttavia un avviso quando si prova a connettersi da un browser. È possibile ignorare questo avviso in Microsoft Edge facendo clic su Dettagli > Vai alla pagina Web o, in Chrome, selezionando Avanzate > Vai a [pagina Web]. È consigliabile usare i certificati autofirmato solo per gli ambienti di test.

Nota

Queste istruzioni sono relative all'installazione in Windows Server con Esperienza desktop, non in un'installazione Server Core.

  1. Scaricare Windows Admin Center nel computer locale.

  2. Stabilire una connessione Desktop remoto alla macchina virtuale, quindi copiare l'identità del servizio gestita dal computer locale e incollarla nella macchina virtuale.

  3. Fare doppio clic sull'identità del servizio gestita per avviare l'installazione e seguire le istruzioni della procedura guidata. Tenere presente quanto segue:

    • Per impostazione predefinita, il programma di installazione usa la porta 443 (HTTPS) consigliata. Se si vuole selezionare una porta diversa, tenere presente che è necessario aprire anche tale porta nel firewall.

    • Se è già stato installato un certificato SSL nella macchina virtuale, assicurarsi di selezionare l'opzione e immettere l'identificazione personale.

  4. Avviare il servizio Windows Admin Center (eseguire C:/Programmi/Windows Admin Center/sme.exe)

Altre informazioni sulla distribuzione di Windows Admin Center.

Configurare la macchina virtuale del gateway per abilitare l'accesso alle porte HTTPS:

  1. Passare alla macchina virtuale nel portale di Azure e selezionare Rete.

  2. Selezionare Aggiungi regola porta in ingresso e selezionare HTTPS in Servizio.

Nota

Se si sceglie una porta diversa da quella predefinita 443, scegliere Personalizzato in Servizio e immettere la porta scelta nel passaggio 3 in Intervalli di porte.

Accesso a un gateway di Windows Admin Center installato in una macchina virtuale di Azure

A questo punto dovrebbe essere possibile accedere a Windows Admin Center da un browser moderno (Microsoft Edge o Chrome) nel computer locale passando al nome DNS della macchina virtuale del gateway.

Nota

Se è stata selezionata una porta diversa da 443, è possibile accedere a Windows Admin Center passando a https://<nome DNS della macchina virtuale>:<porta personalizzata>

Quando si prova ad accedere a Windows Admin Center, il browser richiederà le credenziali per accedere alla macchina virtuale in cui è installato Windows Admin Center. Qui è necessario immettere le credenziali presenti nel gruppo Utenti locali o Amministratori locali della macchina virtuale.

Per aggiungere altre macchine virtuali nella rete virtuale, assicurarsi che WinRM sia in esecuzione nelle macchine virtuali di destinazione eseguendo quanto segue in PowerShell o nel prompt dei comandi nella macchina virtuale di destinazione: winrm quickconfig

Se la macchina virtuale di Azure non è stata aggiunta a un dominio, la macchina virtuale si comporta come un server nel gruppo di lavoro, quindi è necessario assicurarsi di tenere conto dell'uso di Windows Admin Center in un gruppo di lavoro.