Implantar um certificado regional gerenciado pelo Google


Neste tutorial, descrevemos como usar o Gerenciador de certificados para implantar um certificado regional gerenciado pelo Google para um balanceador de carga de aplicativo externo regional ou para um do balanceador de carga de aplicativo interno regional.

Para implantar um certificado em um balanceador de carga de aplicativo externo regional ou em um o balanceador de carga de aplicativo interno regional, anexe o certificado diretamente ao proxy de destino.

Objetivos

Nesta seção, mostramos como concluir as seguintes tarefas:

  • Criar um certificado gerenciado pelo Google emitido por uma AC publicamente confiável com DNS usando o Gerenciador de certificados. Para criar um certificado regional gerenciado pelo Google, é necessário usar o DNS por projeto autorização.

  • Implantar o certificado em um balanceador de carga compatível usando um HTTPS de destino proxy.

Para mais informações sobre o processo de implantação de certificados, consulte Visão geral da implantação.

Antes de começar

  1. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  2. É necessário ter a versão 465.0.0 ou mais recente da CLI do Google Cloud para implantar o certificado. Para verificar a versão da CLI gcloud, execute o seguinte comando:

    gcloud --version
    
  3. Para atualizar a CLI gcloud, execute o comando a seguir.

    gcloud components update
    
  4. Você precisa ter os papéis a seguir para concluir as tarefas desta tutorial:

    • Proprietário do Gerenciador de certificados: necessário para criar e gerenciar recursos do Gerenciador de certificados.
    • Administrador do balanceador de carga do Compute ou Administrador de rede do Compute: obrigatório para criar e gerenciar proxy de destino HTTPS.
    • Administrador de DNS: obrigatório se você quiser usar o Cloud DNS como seu solução de DNS.

    Para ver mais informações, consulte os seguintes tópicos:

    .

Criar um certificado regional gerenciado pelo Google

Conclua as etapas nesta seção para criar uma autorização de DNS e uma Certificado gerenciado pelo Google que faz referência a essa autorização de DNS.

Criar uma autorização de DNS

Crie a autorização de DNS conforme descrito nesta seção. Se você está criando um Autorização de DNS para um certificado com caractere curinga, como *.myorg.example.com, configura a autorização de DNS para o domínio pai, por exemplo, myorg.example.com.

gcloud

gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \
    --domain="DOMAIN_NAME" \
    --type=PER_PROJECT_RECORD \
    --location="LOCATION"

gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME \
    --location="LOCATION"

Substitua:

  • AUTHORIZATION_NAME: o nome da autorização de DNS.
  • DOMAIN_NAME: o nome do domínio que você está criando essa autorização de DNS. O nome de domínio deve ser um domínio nome de domínio, como myorg.example.com.
  • LOCATION: o local em que você cria o DNS. autorização.

O comando retorna uma resposta conforme mostrado no exemplo a seguir. Use o Registro CNAME da saída a ser adicionado à configuração de DNS.

createTime: '2022-01-14T13:35:00.258409106Z'
dnsResourceRecord:
data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.us-central1.authorize.certificatemanager.goog.
name: _acme-challenge_ujmmovf2vn55tgye.myorg.example.com.
type: CNAME
domain: myorg.example.com
name: projects/myProject/locations/us-central1/dnsAuthorizations/myAuthorization
updateTime: '2022-01-14T13:35:01.571086137Z'

Adicionar o registro CNAME à configuração de DNS

Se você estiver usando o Google Cloud para gerenciar seu DNS, conclua as etapas nesta seção. Caso contrário, consulte a documentação do seu DNS de terceiros solução.

Antes de concluir as etapas desta seção, verifique se você tem criou uma zona de DNS pública.

Quando você cria uma autorização de DNS, o comando da CLI gcloud retorna registro CNAME correspondente. Você precisa adicionar esse registro CNAME à sua configuração DNS na zona DNS do domínio de destino da seguinte maneira:

gcloud

  1. Inicie a transação do registro DNS:

    gcloud dns record-sets transaction start --zone="DNS_ZONE_NAME"
    

    Substitua DNS_ZONE_NAME pelo nome do DNS de destino. zona.

  2. Adicione o registro CNAME à zona DNS de destino:

    gcloud dns record-sets transaction add CNAME_RECORD_DATA \
      --name="CNAME_RECORD_NAME" \
      --ttl="30" \
      --type="CNAME" \
      --zone="DNS_ZONE_NAME"
    

    Substitua:

    • CNAME_RECORD_DATA: o valor de dados completo do CNAME retornado pelo comando da CLI gcloud que criou o autorização DNS correspondente.
    • CNAME_RECORD_NAME: o valor do nome completo do CNAME retornado pelo comando da CLI gcloud que criou o autorização DNS correspondente.
    • DNS_ZONE_NAME: o nome da zona de DNS de destino.

    Veja o exemplo a seguir:

    gcloud dns record-sets transaction add 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.us-central1.authorize.certificatemanager.goog. \
      --name="_acme-challenge_ujmmovf2vn55tgye.myorg.example.com" \
      --ttl="30" \
      --type="CNAME" \
      --zone="example-com"
    
  3. Execute a transação do registro DNS para salvar as alterações:

    gcloud dns record-sets transaction execute --zone="DNS_ZONE_NAME"
    

    Substitua DNS_ZONE_NAME pelo nome da zona de DNS de destino.

Criar um certificado regional gerenciado pelo Google que faça referência à autorização de DNS

Para criar um certificado gerenciado pelo Google que faça referência à autorização de DNS criado nas etapas anteriores, faça o seguinte:

Console

  1. No console do Google Cloud, acesse a página Gerenciador de certificados.

    Acessar o Gerenciador de certificados

  2. Na página exibida, selecione a guia Certificados.

  3. Clique em Adicionar certificado.

  4. Digite um Nome para o certificado.

    O nome precisa ser exclusivo no projeto.

  5. Opcional: digite a Descrição do certificado. Descrição ajuda a identificar um certificado específico posteriormente.

  6. Em local, escolha Regional.

  7. Na lista Região, selecione uma região.

  8. Em Tipo de certificado, escolha Criar um certificado gerenciado pelo Google.

  9. Em Tipo de autoridade de certificação, escolha Pública.

  10. Especifique os Nomes de domínio do certificado. Insira um valor delimitado por vírgulas lista dos domínios de destino. Além disso, cada nome de domínio deve ser um domínio nome de domínio, como myorg.example.com.

  11. Em Tipo de autorização, escolha Autorização de DNS. Se o nome de domínio tiver uma autorização DNS associada, ele será selecionado automaticamente. Se o nome de domínio não tiver uma autorização DNS associada, faça o seguinte:

    1. Clique em Criar autorização de DNS ausente para exibir os Caixa de diálogo Criar autorização de DNS.
    2. No campo DNS Authorization Name, especifique o nome da autorização de DNS.
    3. Clique em Criar autorização de DNS. Verifique se o nome DNS está associado ao nome de domínio.
  12. Especifique um rótulo para associar ao certificado. Você pode adicionar mais de um rótulo, se necessário. Para adicionar um marcador, clique no Adicionar rótulo e especifique um key e um value para o rótulo.

  13. Clique em Criar. Verifique se o novo certificado aparece na lista.

gcloud

Execute este comando:

gcloud certificate-manager certificates create CERTIFICATE_NAME \
    --domains=DOMAIN_NAME \
    --dns-authorizations=AUTHORIZATION_NAME \
    --location=LOCATION

Substitua:

  • CERTIFICATE_NAME: um nome exclusivo do certificado.
  • DOMAIN_NAME: o domínio de destino do certificado. O prefixo de ponto de asterisco (*.) indica um certificado com caractere curinga. O nome de domínio deve ser um nome de domínio totalmente qualificado, como myorg.example.com:
  • AUTHORIZATION_NAME: o nome da autorização de DNS. que você criou para este certificado.
  • LOCATION: o local onde você cria o Certificado gerenciado pelo Google.

Para criar um certificado gerenciado pelo Google com um nome de domínio curinga, use o comando a seguir. Um O certificado de nome de domínio curinga abrange todos os subdomínios de primeiro nível de um determinado domínio.

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --domains="*.DOMAIN_NAME,DOMAIN_NAME" \
   --dns-authorizations=AUTHORIZATION_NAME \
   --location=LOCATION

Substitua:

  • CERTIFICATE_NAME: um nome exclusivo do certificado.
  • DOMAIN_NAME: o domínio de destino do certificado. O *. significa um certificado com caractere curinga. O nome de domínio deve ser um nome de domínio totalmente qualificado, como myorg.example.com.
  • AUTHORIZATION_NAME: o nome da autorização de DNS. que você criou para este certificado.
  • LOCATION: o local onde você cria o Certificado gerenciado pelo Google.

Verificar se o certificado está ativo

Use o comando a seguir para verificar se o próprio certificado está ativo antes de implantá-lo no balanceador de carga. Pode levar algumas horas para que o estado do certificado seja alterado para ACTIVE.

gcloud certificate-manager certificates describe CERTIFICATE_NAME \
    --location=LOCATION

Substitua:

  • CERTIFICATE_NAME: um nome exclusivo do certificado.
  • LOCATION: o local onde você criou o certificado gerenciado pelo Google.

O resultado será assim:

createTime: '2021-10-20T12:19:53.370778666Z'
expireTime: '2022-05-07T05:03:49Z'
managed:
  authorizationAttemptInfo:
  - domain: myorg.example.com
    state: AUTHORIZED
  dnsAuthorizations:
  -  projects/my-project/locations/us-central1/dnsAuthorizations/myAuth
  domains:
  - myorg.example.com
  state: ACTIVE
name: projects/myProject/locations/us-central1/certificates/myCert
pemCertificate: |
  -----BEGIN CERTIFICATE-----
  [...]
  -----END CERTIFICATE-----
sanDnsnames:
- myorg.example.com
updateTime: '2021-10-20T12:19:55.083385630Z'

Implantar o certificado em um balanceador de carga

Para implantar o certificado gerenciado pelo Google em um balanceador de carga, conclua o etapas seguintes.

Antes de prosseguir com as tarefas nesta seção, você precisa concluir as tarefas listadas no Criar um certificado regional gerenciado pelo Google nesta seção.

Para implantar um certificado regional gerenciado pelo Google em um balanceador de carga de aplicativo regional externo ou para o balanceador de carga de aplicativo interno regional, implante o certificado anexando-o diretamente ao proxy de destino.

Anexar o certificado diretamente ao proxy de destino

Para anexar o certificado diretamente ao proxy, execute o seguinte comando:

gcloud compute target-https-proxies update PROXY_NAME \
    --url-map=URL_MAP \
    --region=REGION \
    --certificate-manager-certificates=CERTIFICATE_NAME

Substitua:

  • PROXY_NAME: um nome exclusivo do proxy.
  • URL_MAP: o nome do mapa de URL que você criou ao criou o balanceador de carga.
  • REGION: a região em que o proxy de destino HTTPS será criado.
  • CERTIFICATE_NAME: o nome do certificado.

Limpar

Para reverter as alterações feitas neste tutorial, faça o seguinte etapas:

  1. Exclua o certificado gerenciado pelo Google:
    gcloud certificate-manager certificates delete CERTIFICATE_NAME
       --location=LOCATION
    
    Substitua o seguinte:
  • CERTIFICATE_NAME: o nome do certificado.
  • LOCATION: o local onde você criou o certificado gerenciado pelo Google.
  1. Exclua a autorização de DNS:
    gcloud certificate-manager dns-authorizations delete AUTHORIZATION_NAME
       --location=LOCATION
    
    Substitua o seguinte:
  • AUTHORIZATION_NAME: o nome da autorização de DNS.
  • LOCATION: o local onde você criou a autorização de DNS.

A seguir