Generera begäran om certifikatsignering för Azure Stack Hub
Du använder verktyget Azure Stack Hub Readiness Checker för att skapa certifikatsigneringsbegäranden (CSR) som är lämpliga för en Azure Stack Hub-distribution eller för förnyelse av certifikat för en befintlig distribution. Det är viktigt att begära, generera och validera certifikat med tillräckligt med ledtid för att testa dem innan de distribueras.
Verktyget används för att begära följande certifikat, baserat på väljaren Välj ett CSR-certifikatscenario högst upp i den här artikeln:
- Standardcertifikat för en ny distribution: Välj Ny distribution med hjälp av väljaren Välj ett CSR-certifikat överst i den här artikeln.
- Förnyelsecertifikat för en befintlig distribution: Välj Förnyelse med hjälp av väljaren Välj ett CSR-certifikat överst i den här artikeln.
- PaaS-certifikat (Platform-as-a-Service): Kan genereras med både standard- och förnyelsecertifikat. Mer information finns i Certifikatkrav för Azure Stack Hub PKI (Public Key Infrastructure) – valfria PaaS-certifikat .
Förutsättningar
Innan du genererar CSR:er för PKI-certifikat för en Azure Stack Hub-distribution måste systemet uppfylla följande krav:
- Du måste vara på en dator med Windows 10 eller senare, eller Windows Server 2016 eller senare.
- Installera verktyget för beredskapskontroll i Azure Stack Hub från en PowerShell-kommandotolk (5.1 eller senare) med hjälp av följande cmdlet:
Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease
- Du behöver följande attribut för certifikatet:
- Regionsnamn
- Externt fullständigt kvalificerat domännamn (FQDN)
- Ämne
Generera csr:ar för nya distributionscertifikat
Anteckning
Utökade privilegier krävs för att generera begäranden om certifikatsignering. I begränsade miljöer där utökade privilegier inte är möjliga kan du använda det här verktyget för att generera mallfiler med klartext som innehåller all information som krävs för externa Azure Stack Hub-certifikat. Du måste sedan använda dessa mallfiler i en upphöjd session för att slutföra genereringen av offentliga/privata nyckelpar. Mer information finns nedan.
Förbered CSR:er för nya Azure Stack Hub PKI-certifikat genom att utföra följande steg:
Öppna en PowerShell-session på den dator där du installerade verktyget Beredskapskontroll.
Deklarera följande variabler:
Anteckning
<regionName>.<externalFQDN>
utgör grunden för att alla externa DNS-namn i Azure Stack Hub skapas. I följande exempel skulle portalen varaportal.east.azurestack.contoso.com
.$outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR" # An existing output directory $IdentitySystem = "AAD" # Use "AAD" for Azure Active Director, "ADFS" for Active Directory Federation Services $regionName = 'east' # The region name for your Azure Stack Hub deployment $externalFQDN = 'azurestack.contoso.com' # The external FQDN for your Azure Stack Hub deployment
Generera nu csr:erna med samma PowerShell-session. Anvisningarna är specifika för det ämnesformat som du väljer nedan:
Anteckning
Det första DNS-namnet för Azure Stack Hub-tjänsten konfigureras som CN-fältet i certifikatbegäran.
Deklarera ett ämne, till exempel:
$subject = "C=US,ST=Washington,L=Redmond,O=Microsoft,OU=Azure Stack Hub"
Generera csr:ar genom att slutföra något av följande:
För en produktionsdistributionsmiljö genererar det första skriptet CSR:ar för distributionscertifikat:
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
Det andra skriptet, om så önskas, använder
-IncludeContainerRegistry
och genererar en CSR för Azure Container Registry samtidigt som CSR:erna för distributionscertifikat:New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -IncludeContainerRegistry
Det tredje skriptet genererar CSR:er för valfria PaaS-tjänster som du har installerat:
# App Services New-AzsHubAppServicesCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # DBAdapter (SQL/MySQL) New-AzsHubDbAdapterCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # EventHubs New-AzsHubEventHubsCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # Azure Container Registry New-AzsHubAzureContainerRegistryCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
För en miljö med låg behörighet lägger du till parametern
-LowPrivilege
för att generera en certifikatmallfil med klartext med nödvändiga attribut deklarerade:New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -LowPrivilege
För en utvecklings- och testmiljö lägger du till parametern
-RequestType SingleCSR
och värdet för att generera en enskild CSR med alternativa namn med flera certifikatutfärdare.Viktigt
Vi rekommenderar inte att du använder den här metoden för produktionsmiljöer.
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -RequestType SingleCSR -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
Slutför de sista stegen:
Granska utdata:
Starting Certificate Request Process for Deployment CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com Present this CSR to your Certificate Authority for Certificate Generation: C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538.req Certreq.exe output: CertReq: Request Created
Om parametern
-LowPrivilege
användes genererades en .inf-fil i underkatalogenC:\Users\username\Documents\AzureStackCSR
. Exempel:C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538_ClearTextTemplate.inf
Kopiera filen till ett system där utökade privilegier tillåts och signera sedan varje begäran med
certreq
med hjälp av följande syntax:certreq -new <example.inf> <example.req>
. Slutför sedan resten av processen på det upphöjda systemet eftersom det kräver att det nya certifikatet som signeras av certifikatutfärdare matchas med dess privata nyckel, som genereras i det upphöjda systemet.
- Systemets region och externa domännamn (FQDN) används av beredskapskontrollen för att fastställa slutpunkten för att extrahera attribut från dina befintliga certifikat. Om något av följande gäller för ditt scenario måste du använda väljaren Välj ett CSR-certifikatscenario överst i den här artikeln och välja den nya distributionsversionen av den här artikeln i stället:
- Du vill ändra attributen för certifikat vid slutpunkten, till exempel ämne, nyckellängd och signaturalgoritm.
- Du vill använda ett certifikatämne som endast innehåller attributet eget namn.
- Bekräfta att du har HTTPS-anslutning för Ditt Azure Stack Hub-system innan du börjar.
Generera csr:ar för förnyelsecertifikat
Det här avsnittet beskriver hur du förbereder CSR:erna för förnyelse av befintliga Azure Stack Hub PKI-certifikat.
Generera CSR:ar
Öppna en PowerShell-session på den dator där du installerade verktyget Beredskapskontroll.
Deklarera följande variabler:
Anteckning
Beredskapskontrollen använder
stampEndpoint
plus en förberedd sträng för att hitta befintliga certifikat. Används till exempelportal.east.azurestack.contoso.com
för distributionscertifikat,sso.appservices.east.azurestack.contoso.com
för App Services-certifikat osv.$regionName = 'east' # The region name for your Azure Stack Hub deployment $externalFQDN = 'azurestack.contoso.com' # The external FQDN for your Azure Stack Hub deployment $stampEndpoint = "$regionName.$externalFQDN" $outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR" # Declare the path to an existing output directory
Generera CSR:er genom att slutföra en eller flera av följande:
För en produktionsmiljö genererar det första skriptet CSR:ar för distributionscertifikat:
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
Det andra skriptet, om så önskas, använder
-IncludeContainerRegistry
och genererar en CSR för Azure Container Registry samtidigt som CSR:erna för distributionscertifikat:New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -IncludeContainerRegistry
Det tredje skriptet genererar CSR:er för valfria PaaS-tjänster som du har installerat:
# App Services New-AzsHubAppServicesCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # DBAdapter New-AzsHubDBAdapterCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # EventHubs New-AzsHubEventHubsCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # Azure Container Registry New-AzsHubAzureContainerRegistryCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
För en utvecklings- och testmiljö lägger du till parametern
-RequestType SingleCSR
och värdet för att generera en enskild CSR med alternativa namn med flera certifikatutfärdare.Viktigt
Vi rekommenderar inte att du använder den här metoden för produktionsmiljöer.
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -RequestType SingleCSR
Granska utdata:
Querying StampEndpoint portal.east.azurestack.contoso.com for existing certificate Starting Certificate Request Process for Deployment CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com Present this CSR to your certificate authority for certificate generation: C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710122723.req Certreq.exe output: CertReq: Request Created
När du är klar skickar du den genererade .req-filen till din ca (antingen intern eller offentlig). Katalogen som anges av variabeln $outputDirectory
innehåller de CSR:ar som måste skickas till en ca. Katalogen innehåller också, som referens, en underordnad katalog som innehåller de .inf-filer som ska användas vid generering av certifikatbegäran. Se till att din certifikatutfärdare genererar certifikat med hjälp av en genererad begäran som uppfyller PKI-kraven för Azure Stack Hub.
Nästa steg
När du har fått tillbaka dina certifikat från certifikatutfärdare följer du stegen i Förbereda Azure Stack Hub PKI-certifikat på samma system.