Condividi tramite


Macchine virtuali schermate per i tenant: creazione di dati di schermatura per definire una VM schermata

Un file di dati di schermatura (chiamato anche file di dati di provisioning o file PDK) è un file crittografato creato dal tenant o dal proprietario di una macchina virtuale per proteggere le informazioni di configurazione importanti di una macchina virtuale, ad esempio la password dell'amministratore, RDP e altri certificati di identità, le credenziali di aggiunta al dominio e così via. Questo argomento fornisce informazioni su come creare un file di dati di schermatura. Prima di poter creare il file, è necessario ottenere un disco modello dal provider di servizi di hosting oppure creare un disco modello come descritto in Macchine virtuali schermate per i tenant: creazione di un disco modello (facoltativo).

Per un elenco e un diagramma del contenuto di un file di dati di schermatura, vedere Che cosa sono i dati di schermatura e perché sono necessari?.

Importante

I passaggi descritti in questa sezione devono essere completati in un computer separato e attendibile all'esterno dell'infrastruttura sorvegliata. In genere è il proprietario della macchina virtuale (tenant) a creare i dati di schermatura per le macchine virtuali e non gli amministratori dell'infrastruttura.

Per prepararsi ala creazione di un file di dati di schermatura, seguire questa procedura:

È quindi possibile creare il file di dati di schermatura:

(Facoltativo) Ottenere un certificato per Connessione Desktop remoto

Poiché i tenant sono in grado di connettersi alle macchine virtuali schermate solo usando Connessione Desktop remoto o altri strumenti di gestione remota, è importante assicurarsi che i tenant possano verificare di connettersi all'endpoint corretto, ovvero che non ci sia un intermediario malintenzionato (man in the middle) che intercetta la connessione.

Un modo per confermare che ci si sta connettendo al server desiderato consiste nell'installare e configurare un certificato per Servizi Desktop remoto da presentare quando si avvia una connessione. Il computer client che si connette al server verificherà se considera attendibile il certificato e visualizzerà un avviso in caso contrario. In genere, per assicurarsi che il client in connessione consideri attendibile il certificato, i certificati RDP vengono emessi dall'infrastruttura a chiave pubblica del tenant. Per altre informazioni, vedere Uso dei certificati in Servizi Desktop remoto.

Per stabilire se è necessario ottenere un certificato RDP personalizzato, considerare quanto segue:

  • Se si stanno semplicemente testando macchine virtuali schermate in un ambiente lab, non è necessario un certificato RDP personalizzato.
  • Se la VM è configurata per l'aggiunta a un dominio di Active Directory, in genere un certificato del computer verrà rilasciato automaticamente dall'autorità di certificazione dell'organizzazione e usato per identificare il computer durante le connessioni RDP. Non è necessario un certificato RDP personalizzato.
  • Se la VM non è aggiunta a un dominio, ma si vuole un modo per verificare di connettersi al computer corretto quando si usa Desktop remoto, è consigliabile valutare l'uso di certificati RDP personalizzati.

Suggerimento

Quando si seleziona un certificato RDP da includere nel file di dati di schermatura, assicurarsi di usare un certificato con caratteri jolly. Un unico file di dati di schermatura può essere usato per creare un numero illimitato di macchine virtuali. Poiché ogni macchina virtuale condividerà lo stesso certificato, un certificato con caratteri jolly garantisce che sarà valido indipendentemente dal nome host della macchina virtuale.

Creare un file di risposte

Poiché il disco modello firmato in VMM è generalizzato, i tenant devono fornire un file di risposte per specializzare le proprie macchine virtuali schermate durante il processo di provisioning. Il file di risposte (spesso denominato file di installazione automatica) può configurare la VM per il ruolo previsto, ovvero può installare funzionalità di Windows, registrare il certificato RDP creato nel passaggio precedente ed eseguire altre azioni personalizzate. Fornirà inoltre le informazioni necessarie per l'installazione di Windows, inclusi il codice Product Key e la password dell'amministratore predefinita.

Per informazioni su come ottenere e usare la funzione New-ShieldingDataAnswerFile per generare un file di risposte (file Unattend.xml) per la creazione di macchine virtuali schermate, vedere Generare un file di risposte usando la funzione New-ShieldingDataAnswerFile. Usando la funzione, è possibile generare più facilmente un file di risposte che rispecchi scelte come le seguenti:

  • La macchina virtuale deve essere aggiunta a un dominio al termine del processo di inizializzazione?
  • Si userà un contratto multilicenza o un codice Product Key specifico per ogni macchina virtuale?
  • Si usa DHCP o un IP statico?
  • Si userà un certificato RDP (Remote Desktop Protocol) personalizzato per dimostrare che la macchina virtuale appartiene all'organizzazione?
  • Si vuole eseguire uno script al termine dell'inizializzazione?

I file di risposte usati nei file di dati di schermatura verranno usati in ogni VM creata usando tale file di dati di schermatura. Pertanto, è necessario assicurarsi di non impostare come hardcoded informazioni specifiche della macchina virtuale nel file di risposte. VMM supporta alcune stringhe di sostituzione (vedere la tabella seguente) nel file di installazione automatica per gestire i valori di specializzazione che possono variare da una VM all'altra. Non è necessario usarle, ma se sono presenti VMM le utilizzerà.

Quando si crea un file unattend.xml per le macchine virtuali schermate, tenere presenti le restrizioni seguenti:

  • Se si usa VMM per gestire il data center, il file di installazione automatica deve prevedere la disabilitazione della macchina virtuale dopo la configurazione. Questo consente a VMM di sapere quando segnalare al tenant che la macchina virtuale ha completato il provisioning ed è pronta per l'uso. VMM attiverà automaticamente la macchina virtuale quando rileva che è stata disabilitata durante il provisioning.

  • Assicurarsi di abilitare RDP e la regola del firewall corrispondente in modo da poter accedere alla VM dopo la configurazione. Non è possibile usare la console VMM per accedere alle macchine virtuali schermate, quindi è necessario usare RDP per connettersi alla macchina virtuale. Se si preferisce gestire i sistemi con la comunicazione remota di Windows PowerShell, assicurarsi che sia abilitato anche WinRM.

  • Le uniche stringhe di sostituzione supportate nei file di installazione automatica delle VM schermate sono le seguenti:

    Elemento sostituibile Stringa di sostituzione
    ComputerName @ComputerName@
    TimeZone @TimeZone@
    ProductKey @ProductKey@
    IPAddr4-1 @IP4Addr-1@
    IPAddr6-1 @IP6Addr-1@
    MACAddr-1 @MACAddr-1@
    Prefix-1-1 @Prefix-1-1@
    NextHop-1-1 @NextHop-1-1@
    Prefix-1-2 @Prefix-1-2@
    NextHop-1-2 @NextHop-1-2@

    Se si hanno più schede di rete, è possibile aggiungere più stringhe di sostituzione per la configurazione IP incrementando la prima cifra. Ad esempio, per impostare l'indirizzo IPv4, la subnet e il gateway per 2 schede di rete, usare le stringhe di sostituzione seguenti:

    Stringa di sostituzione Esempio di sostituzione
    @IP4Addr-1@ 192.168.1.10/24
    @MACAddr-1@ Ethernet
    @Prefix-1-1@ 24
    @NextHop-1-1@ 192.168.1.254
    @IP4Addr-2@ 10.0.20.30/24
    @MACAddr-2@ Ethernet 2
    @Prefix-2-1@ 24
    @NextHop-2-1@ 10.0.20.1

Quando si usano stringhe di sostituzione, è importante assicurarsi che vengano popolate durante il processo di provisioning delle macchine virtuali. Se una stringa come @ProductKey@ non viene fornita in fase di distribuzione, lasciando vuoto il nodo >ProductKey< nel file di installazione automatica, il processo di specializzazione avrà esito negativo e non sarà possibile connettersi alla macchina virtuale.

Si noti inoltre che le stringhe di sostituzione correlate alla rete verso la fine della tabella vengono usate solo se si usano pool di indirizzi IP statici di VMM. Il provider di servizi di hosting deve essere in grado di indicare se queste stringhe di sostituzione sono necessarie. Per altre informazioni sugli indirizzi IP statici nei modelli VMM, vedere gli articoli seguenti nella documentazione di VMM:

Infine, è importante notare che il processo di distribuzione delle macchine virtuali schermate crittograferà solo l'unità del sistema operativo. Se si distribuisce una VM schermata con una o più unità dati, è fortemente consigliato aggiungere un comando Unattend o un'impostazione di Criteri di gruppo nel dominio tenant per crittografare automaticamente le unità dati.

Ottenere il file di catalogo delle firme dei volumi

I file di dati di schermatura contengono anche informazioni sui dischi modello considerati attendibili da un tenant. I tenant acquisiscono le firme dei dischi dai dischi modello attendibili sotto forma di un file catalogo delle firme dei volumi (VSC). Queste firme vengono quindi convalidate quando viene distribuita una nuova macchina virtuale. Se nessuna delle firme nel file di dati di schermatura corrisponde al disco modello che si sta provando a distribuire con la VM (ad esempio, è stato modificato o scambiato con un disco diverso, potenzialmente dannoso), il processo di provisioning avrà esito negativo.

Importante

Anche se il file VSC garantisce che un disco non sia stato manomesso, è comunque importante che il tenant consideri in primo luogo attendibile il disco. Se si è il tenant e il disco modello viene fornito dal provider di servizi di hosting, distribuire una VM di test usando tale disco modello ed eseguire i propri strumenti, ad esempio antivirus, rilevatori di vulnerabilità e così via, per verificare che il disco sia realmente in uno stato attendibile.

Esistono due modi per acquisire il file VSC di un disco modello:

  1. Il provider di servizi di hosting (o il tenant, se il tenant ha accesso a VMM) usa cmdlet di PowerShell di VMM per salvare il VSC e lo passa al tenant. L'operazione può essere eseguita in qualunque computer con la console VMM installata e configurato per gestire l'ambiente VMM dell'infrastruttura di hosting. I cmdlet di PowerShell per salvare il VSC sono:

    $disk = Get-SCVirtualHardDisk -Name "templateDisk.vhdx"
    
    $vsc = Get-SCVolumeSignatureCatalog -VirtualHardDisk $disk
    
    $vsc.WriteToFile(".\templateDisk.vsc")
    
  2. Il tenant ha accesso al file del disco modello. Questo può verificarsi se il tenant crea un disco modello da caricare in un provider di servizi di hosting o se il tenant può scaricare il disco modello del provider. In questo caso, senza VMM nel quadro, il tenant eseguirà il cmdlet seguente (installato con la funzionalità Strumenti VM schermata, parte degli Strumenti di amministrazione remota del server):

    Save-VolumeSignatureCatalog -TemplateDiskPath templateDisk.vhdx -VolumeSignatureCatalogPath templateDisk.vsc
    

Selezionare infrastrutture attendibili

L'ultimo componente nel file di dati di schermatura è correlato al proprietario e ai sorveglianti di una macchina virtuale. I sorveglianti vengono usati per designare sia il proprietario di una VM schermata che le infrastrutture sorvegliate in cui può essere eseguita.

Per autorizzare un'infrastruttura di hosting a eseguire una VM schermata, è necessario ottenere i metadati del sorvegliante dal servizio Sorveglianza host del provider di servizi di hosting. Spesso, il provider di servizi di hosting fornirà questi metadati tramite i suoi strumenti di gestione. In uno scenario aziendale, si potrebbe disporre di accesso diretto per ottenere i metadati.

L'utente o il provider di servizi di hosting può ottenere i metadati del sorvegliante da HGS eseguendo una delle azioni seguenti:

  • Ottenere i metadati del sorvegliante direttamente da HGS eseguendo il comando di Windows PowerShell seguente oppure passando al sito Web e salvando il file XML visualizzato:

    Invoke-WebRequest 'http://hgs.bastion.local/KeyProtection/service/metadata/2014-07/metadata.xml' -OutFile .\RelecloudGuardian.xml
    
  • Ottenere i metadati del sorvegliante da VMM usando i cmdlet di PowerShell VMM:

    $relecloudmetadata = Get-SCGuardianConfiguration
    $relecloudmetadata.InnerXml | Out-File .\RelecloudGuardian.xml -Encoding UTF8
    

Ottenere i file di metadati del sorvegliante per ogni infrastruttura sorvegliata in cui si vuole autorizzare l'esecuzione delle proprie VM schermate prima di continuare.

Creare un file di dati di schermatura e aggiungere sorveglianti usando la Creazione guidata file di dati di schermatura

Eseguire la Creazione guidata file di dati di schermatura per creare il file di dati di schermatura (PDK). Qui si aggiungeranno il certificato RDP, il file di installazione automatica, i cataloghi delle firme dei volumi, il sorvegliante proprietario e i metadati del sorvegliante scaricati ottenuti nel passaggio precedente.

  1. Installare Strumenti di amministrazione remota del server > Strumenti di amministrazione funzionalità > Strumenti VM schermata nel computer usando Server Manager o il comando di Windows PowerShell seguente:

    Install-WindowsFeature RSAT-Shielded-VM-Tools
    
  2. Aprire la Creazione guidata file di dati di schermatura dalla sezione Strumenti di amministrazione del menu Start oppure eseguendo il file seguente C:\Windows\System32\ShieldingDataFileWizard.exe.

  3. Nella prima pagina usare la seconda casella di selezione file per scegliere un percorso e un nome file per il file di dati di schermatura. In genere, per il nome di un file di dati di schermatura si usano il nome dell'entità proprietaria di tutte le VM create con tali dati di schermatura (ad esempio HR, IT, Finance) e il ruolo del carico di lavoro che esegue (ad esempio, file server, server Web o qualsiasi altro ruolo configurato dal file di installazione automatica). Lasciare il pulsante di opzione impostato su Dati di schermatura per modelli schermati.

    Nota

    Nella Creazione guidata file di dati di schermatura si noteranno le due opzioni seguenti:

    • Dati di schermatura per modelli schermati
    • Dati di schermatura per VM esistenti e modelli non schermati
      La prima opzione si usa per la creazione di nuove macchine virtuali schermate da modelli schermati. La seconda opzione consente di creare dati di schermatura che è possibile usare solo durante la conversione di VM esistenti o la creazione di VM schermate da modelli non schermati.

    Schermatura guidata file di dati, selezione file

    Inoltre, è necessario scegliere se le VM create usando questo file di dati di schermatura verranno effettivamente schermate o configurate in modalità "crittografia supportata". Per altre informazioni su queste due opzioni, vedere Quali sono i tipi di macchine virtuali che possono essere eseguiti da un'infrastruttura sorvegliata?.

    Importante

    Prestare attenzione al passaggio successivo, in quanto definisce il proprietario delle macchine virtuali schermate e le infrastrutture in cui le sarà autorizzata l'esecuzione.
    Il possesso del sorvegliante proprietario è necessario per modificare successivamente una macchina virtuale schermata esistente da Schermata a Crittografia supportata o viceversa.

  4. In questo passaggio l'obiettivo è duplice:

    • Creare o selezionare un sorvegliante proprietario che rappresenta l'utente come proprietario della macchina virtuale

    • Importare il sorvegliante scaricato dal servizio Sorveglianza host del provider di serivizi di hosting (o dal proprio) nel passaggio precedente

    Per designare un sorvegliante proprietario esistente, selezionare il sorvegliante appropriato dal menu a discesa. Solo i sorveglianti installati nel computer locale con le chiavi private intatte verranno visualizzati in questo elenco. È anche possibile creare un proprio sorvegliante proprietario selezionando Gestisci sorveglianti locali nell'angolo in basso a destra e facendo clic su Crea e completando la procedura guidata.

    Importiamo ora i metadati dei sorveglianti scaricati in precedenza usando la pagina Proprietario e sorveglianti. Selezionare Gestisci sorveglianti locali nell'angolo in basso a destra. Usare la funzionalità Importa per importare il file di metadati dei sorveglianti. Fare clic su OK dopo aver importato o aggiunto tutti i sorveglianti necessari. Come procedura consigliata, assegnare ai sorveglianti il nome del provider di servizi di hosting o del data center aziendale che rappresentano. Infine, selezionare tutti i sorveglianti che rappresentano i data center in cui è autorizzata l'esecuzione della macchina virtuale schermata. Non è necessario selezionare di nuovo il sorvegliante proprietario. Una volta terminato, fare clic su Avanti.

    Schermatura guidata file di dati, proprietario e tutori

  5. Nella pagina Qualificatori ID volume fare clic su Aggiungi per autorizzare un disco modello firmato nel file di dati di schermatura. Quando si seleziona un VSC nella finestra di dialogo, verranno visualizzate informazioni sul nome del disco, sulla versione e sul certificato usato per firmarlo. Ripetere questa procedura per ogni disco modello da autorizzare.

  6. Nella pagina Valori di specializzazione fare clic su Sfoglia per selezionare il file unattend.xml che verrà usato per specializzare le macchine virtuali.

    Usare il pulsante Aggiungi in basso per aggiungere eventuali altri file al PDK necessari durante il processo di specializzazione. Ad esempio, se il file di installazione automatica installa un certificato RDP nella macchina virtuale (come descritto in Generare un file di risposte usando la funzione New-ShieldingDataAnswerFile), qui è necessario aggiungere il file PFX del certificato RDP e lo script RDPCertificateConfig.ps1. Si noti che tutti i file specificati qui verranno copiati automaticamente nella directory C:\temp\ nella macchina virtuale creata. Il file di installazione automatica dovrebbe aspettarsi di trovare i file in quella cartella quando vi fanno riferimento in base al percorso.

  7. Esaminare le selezioni nella pagina successiva e quindi fare clic su Genera.

  8. Al termine, chiudere la procedura guidata.

Creare un file di dati di schermatura e aggiungere sorveglianti usando PowerShell

In alternativa alla Creazione guidata file di dati di schermatura, è possibile eseguire New-ShieldingDataFile per creare un file di dati di schermatura.

Tutti i file di dati di schermatura devono essere configurati con i certificati dei proprietari e sorveglianti corretti per autorizzare l'esecuzione delle macchine virtuali schermate in un'infrastruttura sorvegliata. È possibile verificare se sono installati sorveglianti in locale eseguendo Get-HgsGuardian. I sorveglianti proprietari hanno chiavi private mentre i sorveglianti per il data center in genere non ne hanno.

Per creare un sorvegliante privato, eseguire il comando seguente:

New-HgsGuardian -Name "Owner" -GenerateCertificates

Questo comando crea una coppia di certificati di firma e crittografia nell'archivio certificati del computer locale all'interno della cartella dei certificati locali della VM schermata. Saranno necessari i certificati del proprietario e le chiavi private corrispondenti per annullare la schermatura di una macchina virtuale, quindi assicurarsi che vengano sottoposti a backup e protetti dal furto. Un utente malintenzionato con accesso ai certificati del proprietario può usarli per avviare la macchina virtuale schermata o modificarne la configurazione di sicurezza.

Se è necessario importare informazioni sui sorveglianti da un'infrastruttura sorvegliata in cui si vuole eseguire la macchina virtuale (data center primario, data center di backup e così via), eseguire il comando seguente per ogni file di metadati recuperato dalle infrastrutture sorvegliate.

Import-HgsGuardian -Name 'EAST-US Datacenter' -Path '.\EastUSGuardian.xml'

Suggerimento

Se sono stati usati certificati autofirmati o se i certificati registrati con HGS sono scaduti, può essere necessario usare i flag -AllowUntrustedRoot e/o -AllowExpired con il comando Import-HgsGuardian per ignorare i controlli di sicurezza.

Sarà anche necessario ottenere un catalogo delle firme dei volumi per ogni disco modello che si vuole usare con questo file di dati di schermatura e un file di risposte dei dati di schermatura per consentire al sistema operativo di completare automaticamente le attività di specializzazione. Infine, decidere se si vuole che la macchina virtuale sia completamente schermata o solo abilitata per vTPM. Usare -Policy Shielded per una macchina virtuale completamente schermata o -Policy EncryptionSupported per una macchina virtuale abilitata per vTPM che consente connessioni di console di base e PowerShell Direct.

Quando tutto è pronto, eseguire il comando seguente per creare il file di dati di schermatura:

$viq = New-VolumeIDQualifier -VolumeSignatureCatalogFilePath 'C:\temp\marketing-ws2016.vsc' -VersionRule Equals
New-ShieldingDataFile -ShieldingDataFilePath "C:\temp\Marketing-LBI.pdk" -Policy EncryptionSupported -Owner 'Owner' -Guardian 'EAST-US Datacenter' -VolumeIDQualifier $viq -AnswerFile 'C:\temp\marketing-ws2016-answerfile.xml'

Suggerimento

Se si usano un certificato RDP personalizzato, chiavi SSH o altri file che devono essere inclusi nel file di dati di schermatura, usare il parametro -OtherFile per includerli. È possibile fornire un elenco delimitato da virgole di percorsi di file, ad esempio -OtherFile "C:\source\myRDPCert.pfx", "C:\source\RDPCertificateConfig.ps1"

Nel comando precedente, il guardiano denominato "Owner" (ottenuto da Get-HgsGuardian) potrà modificare la configurazione di sicurezza della macchina virtuale in futuro, mentre "East-US Datacenter" può eseguire la macchina virtuale ma non modificarne le impostazioni. Se si dispone di più sorveglianti, separare i nomi con virgole, ad esempio 'EAST-US Datacenter', 'EMEA Datacenter'. Il qualificatore dell'ID volume specifica se considerare attendibile solo la versione esatta (Equals) del disco modello o anche le versioni future (GreaterThanOrEquals). Il nome del disco e il certificato di firma devono corrispondere esattamente perché il confronto della versione sia considerato in fase di distribuzione. È possibile considerare attendibili più dischi modello fornendo un elenco delimitato da virgole di qualificatori ID volume al parametro -VolumeIDQualifier. Infine, se sono presenti altri file che devono accompagnare il file di risposte con la VM, usare il parametro -OtherFile e fornire un elenco delimitato da virgole di percorsi di file.

Vedere la documentazione dei cmdlet New-ShieldingDataFile e New-VolumeIDQualifier per informazioni su altri modi per configurare il file di dati di schermatura.

Riferimenti aggiuntivi