Fissare gli errori comuni con i certificati PKI dell'hub di Azure Stack

Le informazioni contenute in questo articolo consentono di comprendere e risolvere i problemi comuni relativi ai certificati PKI dell'hub di Azure Stack. È possibile individuare i problemi quando si usa lo strumento di verifica dell'idoneità dell'hub di Azure Stack per convalidare i certificati PKI dell'hub di Azure Stack. Lo strumento verifica se i certificati soddisfano i requisiti PKI di una distribuzione dell'hub di Azure Stack e la rotazione dei segreti dell'hub di Azure Stack e quindi registra i risultati in un file report.json.

CRL HTTP - Avviso

Problema : il certificato non contiene CRL HTTP nell'estensione CDP.

Correzione : si tratta di un problema che non blocca. Azure Stack richiede CRL HTTP per il controllo delle revoche in base ai requisiti dell'infrastruttura a chiave pubblica (PKI) dell'hub di Azure Stack. Nel certificato non è stato rilevato un CRL HTTP. Per garantire il funzionamento del controllo della revoca dei certificati, l'autorità di certificazione deve rilasciare un certificato con un CRL HTTP nell'estensione CDP.

CRL HTTP - Errore

Problema : non è possibile connettersi a CRL HTTP nell'estensione CDP.

Correzione : si tratta di un problema di blocco. Azure Stack richiede la connettività a un CRL HTTP per il controllo delle revoche in base alla pubblicazione delle porte e degli URL dell'hub di Azure Stack (in uscita).

Crittografia PFX

Problema : la crittografia PFX non è TripleDES-SHA1.

Correzione : esportare file PFX con la crittografia TripleDES-SHA1 . Si tratta della crittografia predefinita per tutti i client Windows 10 durante l'esportazione dallo snap-in del certificato o tramite Export-PFXCertificate.

Leggere PFX

Avviso : la password protegge solo le informazioni private nel certificato.

Correzione : esportare file PFX con l'impostazione facoltativa per Abilitare la privacy dei certificati.

Problema : file PFX non valido.

Correzione : esportare di nuovo il certificato seguendo la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione.

Algoritmo di firma

Problema : l'algoritmo di firma è SHA1.

Correzione : usare la procedura descritta nella generazione di richieste di firma dei certificati dell'hub di Azure Stack per rigenerare la richiesta di firma del certificato con l'algoritmo di firma SHA256. Inviare quindi di nuovo la richiesta di firma del certificato all'autorità di certificazione per eseguire nuovamente il certificato.

Chiave privata

Problema : la chiave privata è mancante o non contiene l'attributo del computer locale.

Correzione : dal computer che ha generato la richiesta di firma del certificato, esportare nuovamente il certificato seguendo la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione. Questi passaggi includono l'esportazione dall'archivio certificati del computer locale.

Catena di certificati

Problema : la catena di certificati non è completa.

Correzione : i certificati devono contenere una catena di certificati completa. Esportare di nuovo il certificato seguendo la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione e selezionare l'opzione Includi tutti i certificati nel percorso di certificazione, se possibile.

Nomi DNS

Problema : DNSNameList nel certificato non contiene il nome dell'endpoint del servizio hub di Azure Stack o una corrispondenza valida con caratteri jolly. Le corrispondenze con caratteri jolly sono valide solo per lo spazio dei nomi più a sinistra del nome DNS. Ad esempio, *.region.domain.com è valido solo per portal.region.domain.com, non *.table.region.domain.com.

Correzione : usare la procedura descritta nella generazione di richieste di firma dei certificati dell'hub di Azure Stack per rigenerare la richiesta di firma con i nomi DNS corretti per supportare gli endpoint dell'hub di Azure Stack. Inviare di nuovo il CSR a un'autorità di certificazione. Seguire quindi la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione per esportare il certificato dal computer che ha generato la richiesta di firma del certificato.

Uso delle chiavi

Problema : l'utilizzo delle chiavi manca la firma digitale o la crittografia della chiave oppure l'utilizzo avanzato delle chiavi non è presente nell'autenticazione server o nell'autenticazione client.

Correzione : usare la procedura descritta nella generazione di richieste di firma dei certificati dell'hub di Azure Stack per rigenerare la richiesta di firma con gli attributi di utilizzo della chiave corretti. Inviare di nuovo il csr all'autorità di certificazione e verificare che un modello di certificato non sovrascriva l'utilizzo della chiave nella richiesta.

Dimensione chiavi

Problema : le dimensioni della chiave sono inferiori a 2048.

Correzione : usare la procedura descritta nella generazione della richiesta di firma dei certificati dell'hub di Azure Stack per rigenerare la richiesta csr con la lunghezza della chiave corretta (2048) e quindi inviare di nuovo la richiesta di firma del certificato all'autorità di certificazione.

Ordine catena

Problema : l'ordine della catena di certificati non è corretto.

Correzione : esportare di nuovo il certificato seguendo la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione e selezionare l'opzione Includi tutti i certificati nel percorso di certificazione, se possibile. Assicurarsi che per l'esportazione sia selezionato solo il certificato foglia.

Altri certificati

Problema : il pacchetto PFX contiene certificati che non sono il certificato foglia o parte della catena di certificati.

Correzione : esportare nuovamente il certificato seguendo la procedura descritta in Preparare i certificati PKI dell'hub di Azure Stack per la distribuzione e selezionare l'opzione Includi tutti i certificati nel percorso di certificazione, se possibile. Assicurarsi che per l'esportazione sia selezionato solo il certificato foglia.

Risolvere i problemi comuni relativi alla creazione di pacchetti

Lo strumento AzsReadinessChecker contiene un cmdlet helper denominato Repair-AzsPfxCertificate, che può importare ed esportare un file PFX per risolvere i problemi comuni di creazione dei pacchetti, tra cui:

  • La crittografia PFX non è TripleDES-SHA1.
  • La chiave privata manca l'attributo del computer locale.
  • La catena di certificati è incompleta o errata. Se il pacchetto PFX non lo contiene, il computer locale deve contenere la catena di certificati.
  • Altri certificati

Repair-AzsPfxCertificate non può essere utile se è necessario generare una nuova richiesta di firma del certificato ed eseguire nuovamente un certificato.

Prerequisiti

I prerequisiti seguenti devono essere applicati nel computer in cui viene eseguito lo strumento:

Importare ed esportare un file PFX esistente

  1. In un computer che soddisfa i prerequisiti aprire un prompt di PowerShell con privilegi elevati e quindi eseguire il comando seguente per installare il controllo di idoneità dell'hub di Azure Stack:

    Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease
    
  2. Dal prompt di PowerShell eseguire il cmdlet seguente per impostare la password PFX. Immettere la password quando richiesto:

    $password = Read-Host -Prompt "Enter password" -AsSecureString
    
  3. Dal prompt di PowerShell eseguire il comando seguente per esportare un nuovo file PFX:

    • Per -PfxPathspecificare il percorso del file PFX in uso. Nell'esempio seguente il percorso è .\certificates\ssl.pfx.
    • Per -ExportPFXPath, specificare il percorso e il nome del file PFX per l'esportazione. Nell'esempio seguente il percorso è .\certificates\ssl_new.pfx:
    Repair-AzsPfxCertificate -PfxPassword $password -PfxPath .\certificates\ssl.pfx -ExportPFXPath .\certificates\ssl_new.pfx
    
  4. Al termine dello strumento, esaminare l'output per l'esito positivo:

    Repair-AzsPfxCertificate v1.1809.1005.1 started.
    Starting Azure Stack Hub Certificate Import/Export
    Importing PFX .\certificates\ssl.pfx into Local Machine Store
    Exporting certificate to .\certificates\ssl_new.pfx
    Export complete. Removing certificate from the local machine store.
    Removal complete.
    Log location (contains PII): C:\Users\username\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log
    Repair-AzsPfxCertificate Completed
    

Passaggi successivi