Abilitare il supporto HTTPS per Microsoft Connected Cache in Windows

Questo articolo fornisce istruzioni per abilitare il supporto HTTPS in Microsoft Connected Cache per aziende e istruzione nodi in esecuzione in un computer host Windows.

Il processo di installazione richiede la generazione di una richiesta di firma del certificato (CSR) nel computer host, la firma della richiesta csr tramite l'infrastruttura a chiave pubblica o aziendale e quindi l'importazione di nuovo nel computer host.

Prerequisiti

Prima di configurare la funzionalità HTTPS, verificare che siano soddisfatti i requisiti seguenti:

  • Il nodo della cache si trova nella versione del software ga

    1. Aprire portale di Azure e passare alla risorsa Cache connessa per l'organizzazione che ospita i nodi della cache.
    2. In Gestione nodi cache individuare il nodo della cache in cui si vuole abilitare HTTPS.
    3. Verificare che il nodo si trova nella versione ga- deve mostrare "Sì" o "N/D" nella colonna Migrato .
    4. Se non è disponibile nella versione ga ("No" nella colonna Migrata ), selezionare il nodo della cache, passare alla scheda Distribuzione e seguire le istruzioni per ridistribuire Cache connessa.
  • Accesso a un'autorità di certificazione (CA)

    È necessario accedere all'infrastruttura a chiave pubblica aziendale o a una CA pubblica. Se si usa l'infrastruttura a chiave pubblica aziendale, verificare i requisiti dell'organizzazione per l'invio di una richiesta csr alla CA.

  • Documentare i metodi di connessione client

    Si noti l'indirizzo IP o il nome host (FQDN) usato dai client per connettersi al server della cache connessa. Questo valore verrà usato come input SAN (Subject Alternative Name) durante il processo di generazione di una richiesta csr.

  • Verificare la disponibilità della porta 443

    Per stabilire una connessione HTTPS con Cache connessa, la porta 443 deve essere disponibile nel computer host. Eseguire il comando seguente per verificare:

    netstat -an | findstr :443
    

    Esaminare l'output:

    • Nessun output : la porta 443 non è in uso. Procedere con la configurazione HTTPS.
    • L'output contiene LISTENING (ad esempio, TCP 0.0.0.0:443 0.0.0.0:0 LISTENING) — La porta 443 è aperta e in ascolto delle connessioni in ingresso. Procedere con la configurazione HTTPS.
    • L'output contiene ESTABLISHED (ad esempio, TCP 192.168.1.10:443 10.0.0.5:52674 ESTABLISHED) — La porta 443 viene utilizzata attivamente da un altro servizio. Identificare e arrestare il servizio in conflitto prima che Cache connessa possa usare la porta 443.

    Suggerimento

    Per identificare un servizio usando la porta 443, eseguire netstat -ano | findstr :443 per trovare l'ID processo (PID) nell'ultima colonna. tasklist /fi "pid eq <PID>" Eseguire quindi (sostituendo <PID> con il numero effettivo) per visualizzare il nome del processo. I servizi comuni che usano la porta 443 includono IIS, altri server Web e software VPN. Arrestare o riconfigurare il servizio in conflitto prima di continuare.

  • Verificare la configurazione del proxy aziendale

    Se il firewall o il proxy aziendale intercetta il traffico HTTPS verso il server della cache connessa (ad esempio, tramite l'ispezione TLS), la convalida del certificato avrà sempre esito negativo indipendentemente dalla configurazione del certificato.

Per altre informazioni su uno dei prerequisiti, vedere la pagina di riferimento HTTPS in Windows.

Generare una richiesta di firma del certificato

Importante

Ogni nodo della cache necessita del proprio csr/certificato (non può condividere):

  • Usare una denominazione coerente: mcc-node1.company.com, mcc-node2.company.com e così via.
  • Documento a quale certificato appartiene il nodo
  • I certificati con caratteri jolly non funzioneranno. Il csr/certificato usato per la connessione HTTPS alla cache connessa è associato in modo univoco a ogni nodo della cache per motivi di sicurezza.
  1. Aprire PowerShell come amministratore e passare alla cartella Cache connessa che contiene gli script di PowerShell.

    Eseguire il comando seguente per passare alla cartella degli script della cache connessa:

       cd (deliveryoptimization-cli mcc-get-scripts-path)
    
  2. Configurare i parametri per generateCsr.ps1 ed eseguire lo script con i valori specificati.

    Sintassi di base

       .\generateCsr.ps1 [Required Parameters] [Subject Parameters] [SAN Parameters]
    

    Parametri obbligatori

    Parametro Descrizione
    -algo Algoritmo di certificato: RSA, EC, ED25519o ED448
    -keySizeOrCurve Per RSA: dimensione chiave (2048, 3072, 4096). Per EC: nome curva (prime256v1, secp384r1). Per ED25519 ed ED448: nessuna dimensione della chiave necessaria.
    -csrName Nome desiderato per il file CSR
    -mccRunTimeAccount Account che esegue il software della cache connessa. Deve trattarsi di una variabile di PowerShell contenente il nome utente dell'account che si intende designare come account di runtime della cache connessa. Ad esempio, $User = "LocalMachineName\Username" per un account utente locale. Se si usa un account del servizio gestito di gruppo (gMSA), deve essere formattato come "Domain\Username$".
    -mccLocalAccountCredential Oggetto credenziali di PowerShell per l'account di runtime della cache connessa. Questa operazione è necessaria solo se si usa un account utente locale, un account utente di dominio o un account del servizio. Il comando $myLocalAccountCredential = Get-Credential può essere usato per accodare la GUI di recupero delle credenziali.

    Nota

    Il -mccRunTimeAccount parametro è disponibile nell'applicazione Windows cache connessa v1.0.26.0 e versioni successive. Se si usa l'applicazione v1.0.24.0 precedente, usare -RunTimeAccountName per gli account utente, utente di dominio e servizio locali o -RunTimeAccount per account del servizio gestito di gruppo (gMSA).

    Parametri del soggetto

    Parametro Obbligatorio Descrizione Esempio
    -subjectCommonName Nome comune per il certificato "localhost", "example.com"
    -subjectCountry No Codice paese a due lettere "US", "CA", "GB"
    -subjectState No Provincia "WA", "TX", "Ontario"
    -subjectOrg No Nome organizzazione "MyCompany", "ACME Corp"

    Warning

    La configurazione SAN è fondamentale per la convalida del certificato. Il certificato deve corrispondere esattamente al modo in cui i client si connettono alla cache connessa, altrimenti i client ignorano il nodo della cache.

    Ad esempio, se i client si connettono tramite indirizzo 192.168.1.100 IP ma il certificato ha -sanDns "server.local"solo , la convalida del certificato ha esito negativo.

    Nomi alternativi soggetto (almeno uno obbligatorio)

    Parametro Descrizione Esempio
    -sanDns Nomi DNS (separati da virgole) "localhost,example.com,api.example.com"
    -sanIp Indirizzi IP (separati da virgole) "127.0.0.1,192.168.1.100"
    -sanUri URI (separati da virgole) "https://example.com,http://localhost"
    -sanEmail indirizzi Email (separati da virgole) "admin@example.com,user@domain.com"
    -sanRid ID registrati (separati da virgole)
    -sanDirName Nomi di directory (separati da virgole)
    -sanOtherName Altri nomi (separati da virgole)

    Per altri dettagli ed esempi basati su scenari sui parametri dello script CSR, vedere Informazioni di riferimento su HTTPS in Windows

  3. Verificare che il processo di generazione csr sia stato completato correttamente.

    Se si verificano errori, individuare il file con GenerateCsr.log timestamp nella cartella specificata nell'output dello script. Cercare la riga di output che inizia con "Controlla i log per informazioni dettagliate sugli errori:" La directory termina con (...\Certificates\logs).

    • Formato file: GenerateCsr_YYYYMMDD-HHMMSS.log
    • Esempio: GenerateCsr_20251201_143022.log è un file creato il 1° dicembre 2025 alle 14:30:22
  4. Individuare il file CSR generato nella cartella Certificati nel computer host e trasferirlo, se necessario

    Il percorso della cartella Certificates viene specificato nell'output dello script, a partire da "CSR file created at: ...". La directory termina con (...\Certificates\certs).

Firmare la richiesta csr

  1. Selezionare un'autorità di certificazione (CA) per firmare la richiesta del certificato.

    Importante

    La firma ca deve corrispondere a un certificato radice nell'archivio radice attendibile del client.

    • Infrastruttura a chiave pubblica aziendale: la maggior parte dei clienti usa l'infrastruttura PKI interna dell'organizzazione per firmare la richiesta csr. Rivolgersi al team IT o di sicurezza nel processo dell'organizzazione per inviare una richiesta csr alla CA interna.

    • CA pubblica: se non si dispone di un'infrastruttura a chiave pubblica aziendale, è possibile usare una CA pubblica. Le risorse seguenti possono essere utili per iniziare:

  2. Inviare la richiesta csr alla CA scelta e salvare il certificato firmato.

    Il certificato firmato deve essere in formato CRT con codifica X.509. Se la CA fornisce altri formati, controllare il riferimento HTTPS in Windows su come eseguire la conversione in formato .crt.

    Nota

    Cache connessa non supporta attualmente i formati protetti da password (con estensione pfx, p12, p7b). Il supporto per questi elementi verrà aggiunto presto come parte della roadmap per l'automazione dei certificati.

  3. Verificare che il certificato firmato sia nel formato corretto.

    Confermare la codifica PEM:

    Get-Content "xxxx.crt" | Select-String "BEGIN CERTIFICATE"
    

    Output con esito positivo previsto:

    -----BEGIN CERTIFICATE-----
    
  4. Spostare il certificato firmato nella cartella Certificati nel computer host Windows.

    Questa sarà la stessa cartella in cui è stato inizialmente trovato il csr dopo che è stato generato: (...\Certificates\certs).

    Attenzione

    Non condividere chiavi private. La cache connessa richiede solo il certificato firmato.

Importare il certificato TLS firmato

  1. Aprire PowerShell come amministratore e passare alla cartella Cache connessa che contiene gli script di PowerShell.

  2. Configurare i parametri per importCert.ps1 ed eseguire lo script con i valori specificati.

    Sintassi di base

      .\importCert.ps1 [Required Parameters]
    

    Parametri obbligatori

    Parametro Descrizione
    -certName Nome file completo del certificato TLS firmato (con o senza estensione crt)
    -mccRunTimeAccount Account che esegue il software della cache connessa. Deve trattarsi di una variabile di PowerShell contenente il nome utente dell'account che si intende designare come account di runtime della cache connessa. Ad esempio, $User = "LocalMachineName\Username" per un account utente locale. Se si usa un account del servizio gestito di gruppo (gMSA), deve essere formattato come "Domain\Username$".
    -mccLocalAccountCredential Oggetto credenziali di PowerShell per l'account di runtime della cache connessa. Questa operazione è necessaria solo se si usa un account utente locale, un account utente di dominio o un account del servizio. Ad esempio: $myLocalAccountCredential = Get-Credential.

    Nota

    Il -mccRunTimeAccount parametro è disponibile nell'applicazione Windows cache connessa v1.0.26.0 e versioni successive. Se si usa l'applicazione v1.0.24.0 precedente, usare -RunTimeAccountName per gli account utente, utente di dominio e servizio locali o -RunTimeAccount per account del servizio gestito di gruppo (gMSA).

    Nota

    L'applicazione Windows cache connessa v1.0.24.0 non supporta l'esecuzione importCert.ps1 in Windows Server 2022 o Windows Server 2025 con un account di runtime gMSA. Usare l'applicazione v1.0.26.0 o versione successiva per eseguire questo script in tali ambienti.

    Esempio

      .\importCert.ps1 `
        -mccRunTimeAccount $myLocalAccountCredential.Username `
        -mccLocalAccountCredential $myLocalAccountCredential `
        -certName "myTlsCert.crt"
    
  3. Verificare che il processo di importazione sia stato completato correttamente.

    Se si verificano errori, individuare il file con ImportCert.log timestamp nella cartella specificata nell'output dello script. Cercare la riga di output che inizia con "È possibile trovare i log qui: ..."

    • Formato file: ImportCert_YYYYMMDD-HHMMSS.log
    • Esempio: ImportCert_20251201_143022.log è un file creato il 1° dicembre 2025 alle 14:30:22
  4. Verificare che il certificato corretto sia stato importato eseguendo lo ShowCertDetails.ps1 script.

    Nota

    Lo ShowCertDetails.ps1 script è disponibile a partire dall'applicazione di distribuzione Windows v1.0.26.

    .\ShowCertDetails.ps1
    

    Questo script visualizza l'identificazione personale del certificato e la data di scadenza per il certificato TLS attualmente importato nel nodo della cache.

  5. Assicurarsi che La cache connessa sia accessibile ai client esterni tramite la porta 443.

    Nota

    Verificare nuovamente che la porta 443 sia disponibile prima di configurare l'inoltro delle porte: netstat -an | findstr :443

    Inoltrare il traffico della porta 443

    Usare il comando seguente per collegare il traffico dal computer host Windows al contenitore Cache connessa:

     $ipFilePath = Join-Path ([System.Environment]::GetEnvironmentVariable("MCC_INSTALLATION_FOLDER", "Machine")) "wslIp.txt"
     $ipAddress = (Get-Content $ipFilePath | Select-Object -First 1).Trim()
     netsh interface portproxy add v4tov4 listenport=443 listenaddress=0.0.0.0 connectport=443 connectaddress=$ipAddress
    

    In questo modo viene configurato un proxy di porta in modo che il traffico in ingresso sulla porta 443 venga reindirizzato all'INDIRIZZO IP interno del contenitore.

    Aprire la porta 443 nel firewall

    Anche con l'inoltro delle porte, Windows Firewall potrebbe bloccare il traffico in ingresso o in uscita sulla porta 443. Usare i comandi seguenti per assicurarsi che il traffico HTTPS possa scorrere liberamente da e verso la cache connessa.

     [void](New-NetFirewallRule -DisplayName "WSL2 Port Bridge (HTTPS)" -Direction Inbound -Action Allow -Protocol TCP -LocalPort "443")
     [void](New-NetFirewallRule -DisplayName "WSL2 Port Bridge (HTTPS)" -Direction Outbound -Action Allow -Protocol TCP -LocalPort "443")
    

Per istruzioni su come convalidare ulteriormente l'importazione del certificato, vedere la pagina di convalida HTTPS in Windows.

Disabilitare il supporto HTTPS

Se è necessario ripristinare la comunicazione solo HTTP nella cache connessa, seguire questa procedura. Questo processo non eliminerà nulla nella cartella Certificati, inclusi i file csr, i certificati e i log.

  1. Aprire PowerShell come amministratore e passare alla cartella degli script di PowerShell.

  2. Configurare i parametri per disableTls.ps1 ed eseguire lo script con i valori specificati.

    Sintassi di base

      .\disableTls.ps1 [Required Parameters]
    

    Parametri obbligatori

    Parametro Descrizione
    -mccRunTimeAccount Account che esegue il software della cache connessa. Deve trattarsi di una variabile di PowerShell contenente il nome utente dell'account che si intende designare come account di runtime della cache connessa. Ad esempio, $User = "LocalMachineName\Username" per un account utente locale. Se si usa un account del servizio gestito di gruppo (gMSA), deve essere formattato come "Domain\Username$".
    -mccLocalAccountCredential Oggetto credenziali di PowerShell per l'account di runtime della cache connessa. Questa operazione è necessaria solo se si usa un account utente locale, un account utente di dominio o un account del servizio. Ad esempio: $myLocalAccountCredential = Get-Credential.

    Nota

    Il -mccRunTimeAccount parametro è disponibile nell'applicazione Windows cache connessa v1.0.26.0 e versioni successive. Se si usa l'applicazione v1.0.24.0 precedente, usare -RunTimeAccountName per gli account utente, utente di dominio e servizio locali o -RunTimeAccount per account del servizio gestito di gruppo (gMSA).

    Esempio

      .\disableTls.ps1 `
        -mccRunTimeAccount $myLocalAccountCredential.Username `
        -mccLocalAccountCredential $myLocalAccountCredential `
    
  3. Verificare che il processo di disabilitazione sia stato completato correttamente.

  4. Dopo la disabilitazione di HTTPS, le richieste HTTP devono funzionare mentre le richieste HTTPS devono avere esito negativo. Per istruzioni su come testarlo, vedere la pagina di convalida HTTPS in Windows .

Passaggi successivi