Gerar solicitações de assinatura de certificado para o Azure Stack Hub
Você usa a ferramenta Azure Stack Hub Readiness Checker para criar solicitações de assinatura de certificado (CSRs) que são adequadas para uma implantação do Azure Stack Hub ou para renovação de certificados para uma implantação existente. É importante solicitar, gerar e validar certificados com tempo suficiente para testá-los antes de serem implantados.
A ferramenta é usada para solicitar os seguintes certificados, com base na Escolha um cenário de certificado CSR seletor na parte superior deste artigo:
- Certificados padrão para uma nova implantação: escolha Nova implantação usando o seletor Escolha um cenário de certificado CSR no início deste artigo.
- Certificados de renovação para uma implantação existente: escolha de renovação usando o Escolha um cenário de certificado CSR seletor na parte superior deste artigo.
- Certificados de plataforma como serviço (PaaS): opcionalmente, podem ser gerados com certificados padrão e de renovação. Consulte requisitos de certificado PKI (infraestrutura de chave pública) do Azure Stack Hub - certificados PaaS opcionais para obter mais detalhes.
Pré-requisitos
Antes de gerar CSRs para certificados PKI para uma implantação do Azure Stack Hub, seu sistema deve atender aos seguintes pré-requisitos:
- Você deve estar em uma máquina com Windows 10 ou posterior, ou Windows Server 2016 ou posterior.
- Instale a ferramenta verificador de preparação do Azure Stack Hub a partir de um prompt do PowerShell (5.1 ou posterior) usando o seguinte cmdlet:
Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease
- Você precisará dos seguintes atributos para seu certificado:
- Nome da região
- FQDN (nome de domínio externo totalmente qualificado)
- Assunto
Gerar CSRs para novos certificados de implantação
Observação
A elevação é necessária para gerar solicitações de assinatura de certificado. Em ambientes restritos onde a elevação não é possível, você pode usar essa ferramenta para gerar arquivos de modelo de texto não criptografado, que contêm todas as informações necessárias para certificados externos do Azure Stack Hub. Em seguida, você precisa usar esses arquivos de modelo em uma sessão elevada para concluir a geração do par de chaves pública/privada. Veja abaixo mais detalhes.
Para preparar CSRs para novos certificados PKI do Azure Stack Hub, conclua as seguintes etapas:
Abra uma sessão do PowerShell na máquina onde você instalou a ferramenta Verificador de Prontidão.
Declare as seguintes variáveis:
Observação
<regionName>.<externalFQDN>
forma a base na qual todos os nomes DNS externos no Azure Stack Hub são criados. No exemplo a seguir, o portal seriaportal.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
Agora gere as CSRs usando a mesma sessão do PowerShell. As instruções são específicas para o formato Assunto que você seleciona abaixo:
Observação
O primeiro nome DNS do serviço Azure Stack Hub será configurado como o campo CN na solicitação de certificado.
Declare um assunto, por exemplo:
$subject = "C=US,ST=Washington,L=Redmond,O=Microsoft,OU=Azure Stack Hub"
Gere CSRs preenchendo um dos seguintes procedimentos:
Para um ambiente de implantação de produção , o primeiro script gerará CSRs para certificados de implantação:
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
O segundo script, se desejado, usa o
-IncludeContainerRegistry
e gerará um CSR para o Registo de Contentores do Azure, ao mesmo tempo que gera CSRs para os certificados de implantação.New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -IncludeContainerRegistry
O terceiro script gerará CSRs para todos os serviços PaaS opcionais que você instalou:
# 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
Para um ambiente com poucos privilégios, para gerar um ficheiro de modelo de certificado em texto claro com os atributos necessários declarados, adicione o seguinte parâmetro
-LowPrivilege
:New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -LowPrivilege
Para um ambiente de desenvolvimento e teste , para gerar um único CSR com nomes alternativos de vários assuntos, adicione o parâmetro
-RequestType SingleCSR
e o valor.Importante
Não recomendamos usar essa abordagem para ambientes de produção.
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -RequestType SingleCSR -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
Conclua as etapas finais:
Analise a saída:
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
Se o parâmetro
-LowPrivilege
foi usado, um arquivo .inf foi gerado no subdiretórioC:\Users\username\Documents\AzureStackCSR
. Por exemplo:C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538_ClearTextTemplate.inf
Copie o arquivo para um sistema onde a elevação é permitida e, em seguida, assine cada solicitação com
certreq
usando a seguinte sintaxe:certreq -new <example.inf> <example.req>
. Em seguida, conclua o restante do processo nesse sistema elevado, pois requer a correspondência do novo certificado assinado pela autoridade de certificação com sua chave privada, que é gerada no sistema elevado.
- A região do seu sistema e o nome de domínio externo (FQDN) serão usados pelo Verificador de Prontidão para determinar o ponto de extremidade para extrair atributos dos seus certificados existentes. Se uma das seguintes situações se aplicar ao seu caso, deve usar o seletor de Escolha um certificado CSR na parte superior deste artigo e escolher a versão de Novo desenvolvimento deste artigo:
- Você deseja alterar os atributos dos certificados no ponto de extremidade, como assunto, comprimento da chave e algoritmo de assinatura.
- Você deseja usar um sujeito de certificado que contenha apenas o atributo de nome comum.
- Confirme se você tem conectividade HTTPS para seu sistema Azure Stack Hub antes de começar.
Gerar CSRs para certificados de renovação
Esta seção aborda a preparação de CSRs para renovação de certificados PKI existentes do Azure Stack Hub.
Gerar CSRs
Abra uma sessão do PowerShell na máquina onde você instalou a ferramenta Verificador de Prontidão.
Declare as seguintes variáveis:
Observação
O Verificador de Preparação usa
stampEndpoint
mais uma cadeia de caracteres predefinida para localizar certificados existentes. Por exemplo,portal.east.azurestack.contoso.com
é usado para certificados de implantação,sso.appservices.east.azurestack.contoso.com
para certificados de serviços de aplicativo, etc.$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
Gere CSRs completando uma ou mais das seguintes opções:
Para um ambiente de produção , o primeiro script gerará CSRs para certificados de implantação:
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
O segundo script, caso desejado, usa o
-IncludeContainerRegistry
e gerará um CSR para o Registo de Contentores do Azure ao mesmo tempo que CSRs para certificados de implantação.New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -IncludeContainerRegistry
O terceiro script gerará CSRs para todos os serviços PaaS opcionais que você instalou:
# 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
Para um ambiente de desenvolvimento e teste , para gerar um único CSR com nomes alternativos de vários assuntos, adicione o parâmetro
-RequestType SingleCSR
e o valor.Importante
Não recomendamos usar essa abordagem para ambientes de produção.
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -RequestType SingleCSR
Analise a saída:
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
Quando estiver pronto, envie o arquivo .req gerado para sua autoridade de certificação (interna ou pública). O diretório especificado pela variável $outputDirectory
contém as CSRs que devem ser enviadas a uma autoridade de certificação. O diretório também contém, para sua referência, um diretório filho contendo os arquivos .inf a serem usados durante a geração de solicitação de certificado. Certifique-se de que a sua autoridade de certificação gere certificados utilizando um pedido gerado que cumpra os requisitos de PKI do Azure Stack Hub .
Próximos passos
Depois de receber os certificados de volta da autoridade de certificação, siga os passos em Preparar certificados PKI do Azure Stack Hub no mesmo sistema.