Citrix Virtual Apps and Desktops

Proteggere una distribuzione di Web Studio (facoltativo)

Quando si installa Web Studio insieme a un Delivery Controller, il programma di installazione crea un certificato autofirmato, associato alla porta 443 del server corrente. Web Studio e il Delivery Controller utilizzeranno il certificato come certificato TLS. Quando si accede da un computer diverso, potrebbe non essere possibile accedere a Web Studio o potrebbe essere visualizzato un errore nella schermata di accesso di Web Studio.

Se si desidera accedere a Web Studio da un computer diverso, è possibile effettuare le seguenti operazioni:

  1. Esportare il certificato autofirmato dal Delivery Controller.

    Esportare il certificato autofirmato

    • In Export Private Key (Esporta chiave privata), selezionare No, do not export the private key (No, non esportare la chiave privata).

    • In Export File Format (Formato di esportazione file), selezionare il DER encoded binary X.509 (.CER) (binario codificato DER X.509 (.CER)).

  2. Passare alla macchina dalla quale si intende accedere a Web Studio e quindi installare il certificato.

    Installa certificato

    • In Store Location (Posizione store), selezionare Local Machine (Macchina locale).

Se si sceglie di installare Web Studio su un server dedicato remoto dal Delivery Controller, è necessario eseguire due attività:

  • Attività 1: esportare i certificati rispettivamente dal server Web Studio e dal Delivery Controller.

  • Attività 2: Installare i due certificati sul computer da cui si desidera accedere a Web Studio.

Nota:

La procedura consigliata è proteggere la distribuzione di Web Studio utilizzando un certificato di attendibilità pubblico esterno o un certificato rilasciato da una CA aziendale.

Usare un certificato di attendibilità pubblico esterno

È possibile importare un certificato di attendibilità pubblico esterno nel server Web Studio utilizzando uno dei tre metodi seguenti:

  • Installare il file PFX.

    1. Fare doppio clic sul file PFX.

    2. In Store Location (Posizione store), selezionare Local Machine (Macchina locale).

      Procedura guidata di importazione dei certificati

    3. Se necessario, inserire la password.

      Protezione delle chiavi

    4. In Certificate Store, selezionare Personal.

      Certificate store

  • Usare la console Gestisci i certificati computer.

    1. Aprire la console Gestisci i certificati computer e passare a Personale > Certificati > Tutte le attività > Importa.

      Console Gestisci i certificati computer

    2. Selezionare il file PFX e inserire la password, se necessario.

  • Utilizzare PowerShell.

     Import-PfxCertificate -Password $(ConvertTo-SecureString -String "123456" -AsPlainText -Force) -CertStoreLocation Cert:\LocalMachine\My\ -FilePath .\Desktop\certificate.pfx
     <!--NeedCopy-->
    

Quindi si associa il certificato alla porta 443. È possibile farlo prima dell’installazione o dell’aggiornamento o dopo l’installazione o l’aggiornamento. Il programma di installazione non fa nulla se l’associazione del certificato è configurata per la porta 443. Per ulteriori informazioni, vedere Prima dell’installazione o dell’aggiornamento.

Utilizzare un certificato rilasciato da una CA aziendale

Prima di iniziare, assicurarsi di avere il server aziendale Certification Authority (CA) installato nel proprio dominio.

Per richiedere un certificato, procedere nel seguente modo:

  1. Sul server, aprire la console Gestisci i certificati computer.

  2. Passare a Personale > Certificati > Tutte le attività > Richiedi nuovo certificato.

    Richiedi nuovo certificato

  3. Passare a Registrazione certificato, selezionare il server Web e fare clic sul messaggio di avviso per inserire le informazioni necessarie.

    Registrazione certificato

  4. Selezionare Nome comune come tipo di nome dell’oggetto e inserire il proprio FQDN o DNS. Inoltre, inserire il nome alternativo.

    Nota:

    Se è necessario un certificato jolly, è possibile inserire CN=*.bvttree.local come nome dell’oggetto e *.bvttree.local and bvttree.local come nome DNS alternativo.

    Proprietà del certificato

Il certificato è disponibile in Personale > Certificati.

Personale > Certificati

Quindi si associa il certificato alla porta 443. È possibile farlo prima dell’installazione o dell’aggiornamento o dopo l’installazione o l’aggiornamento. Il programma di installazione non fa nulla se l’associazione del certificato è configurata per la porta 443.

Prima dell’installazione o dell’aggiornamento

Per associare il certificato alla porta 443, effettuate le seguenti operazioni (a condizione che l’associazione dei certificati non sia ancora configurata per 443 e che IIS sia abilitato sul server):

  1. Accedere al server di Web Studio come amministratore.

  2. Aprire Gestione IIS, passare a Siti > Sito Web predefinito > Binding.

  3. In Binding sito, fare clic su Aggiungi.

    Bindin al sito 2

  4. In Add Site Binding, impostare il tipo su https e la porta su 443, selezionare il certificato SSL richiesto alla CA e quindi fare clic su OK.

    Aggiungi binding

Dopo aver installato Web Studio, Web Studio e Delivery Controller vengono configurati automaticamente per utilizzare il certificato per proteggere le connessioni.

In alternativa, è possibile modificare il certificato utilizzando PowerShell.

$certSName = 'CN=whpdevddc0.bvttree.local'  # The subject name of the certificate
$certificate = Get-ChildItem -Path Cert:\LocalMachine\My\ | ? {$_.Subject -eq $certSName}
netsh http add sslcert ipport=0.0.0.0:443 certhash=$($certificate.Thumbprint) certstorename=My appid="$($(New-Guid).ToString("B"))"
<!--NeedCopy-->

Dopo l’installazione o l’aggiornamento

Accedere al server Web Studio e modificare il certificato utilizzando IIS Manager. In alternativa, è possibile modificare il certificato utilizzando PowerShell.

$certSName = 'CN=whpdevddc0.bvttree.local' # The Enterprise CA certificate subject.
$certificate = Get-ChildItem -Path Cert:\LocalMachine\My\ | ? {$_.Subject -eq $certSName}
netsh http update sslcert ipport=0.0.0.0:443 certhash=$($certificate.Thumbprint)
<!--NeedCopy-->

Utilizzare un nuovo certificato autofirmato

È possibile generare un nuovo certificato autofirmato e utilizzarlo per sostituire quello esistente. Effettuare le seguenti operazioni:

  1. Accedere al server di Web Studio come amministratore.

  2. Aprire IIS Manager, identificare Server Certificates (Certificati server) e selezionare Create Self-Signed Certificate (Crea certificato autofirmato) nel riquadro Actions.

    Certificati server

  3. In Create Self-Signed Certificate, inserire un nome da dare al certificato e fare clic su OK. Viene quindi creato il certificato autofirmato.

    Creare un certificato autofirmato

  4. Passare a Sites > Default Web Site (Siti > Sito Web predefinito), selezionare Bindings (Associazioni) nel riquadro Actions, selezionare la voce https e quindi Edit (Modifica).

    Associazioni al sito

  5. In Edit Site Binding (Modifica associazione al sito), selezionare il certificato dall’elenco e fare clic su OK.

    Modifica binding sito

Questo completa la modifica del certificato.

In alternativa, è possibile modificare il certificato utilizzando PowerShell.

$certSubject = "CN=WHPBVTDEVDDC2.BVTTREE.LOCAL" # The FQDN of the server.
$frindlyName = "Self-Signed-3"
$expireYears = 5

## new self-signed certificate under LocalMachine\My
$certificate = New-SelfSignedCertificate -Subject $certSubject -CertStoreLocation "Cert:\LocalMachine\My" -KeyExportPolicy Exportable -KeySpec Signature -KeyLength 2048 -KeyAlgorithm RSA -HashAlgorithm SHA256 -FriendlyName $frindlyName -NotAfter $([System.DateTime]::Now.AddYears($expireYears))
Remove-Item -Path $Env:TEMP\tempCertificate.cer -Force -ErrorAction SilentlyContinue

## Import this certificate into LocalMachine\Root to let this OS trust this certificate
Export-Certificate -Type CERT -Force -Cert $certificate -FilePath $Env:TEMP\tempCertificate.cer -NoClobber
Import-Certificate -FilePath $Env:TEMP\tempCertificate.cer -CertStoreLocation "Cert:\LocalMachine\Root"

## Update bind the 0.0.0.0:443 with this certificate
Invoke-Command -ScriptBlock { Param ($param1) netsh http update sslcert ipport=0.0.0.0:443 certhash=$param1 } -ArgumentList @($certificate.Thumbprint)
<!--NeedCopy-->
Proteggere una distribuzione di Web Studio (facoltativo)