Implantar um certificado autogerenciado global


Neste tutorial, descrevemos como usar o Gerenciador de certificados para implantar um certificado global autogerenciado.

Os seguintes balanceadores de carga dão suporte a certificados globais autogerenciados:

  • Balanceador de carga de aplicativo externo global
  • Balanceador de carga de aplicativo clássico
  • Balanceador de carga de rede de proxy externo global
  • Balanceador de carga de aplicativo interno entre regiões

Para implantar um certificado autogerenciado em um balanceador de carga de aplicativo externo regional ou em um balanceador de carga de aplicativo interno regional, consulte Implantar um certificado autogerenciado regional.

Objetivos

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

  • Fazer upload de um certificado autogerenciado para o Gerenciador de certificados.
  • Implante o certificado em um balanceador de carga compatível usando um proxy HTTPS de destino.

Para mais informações sobre o processo de implantação do certificado, 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. Verifique se você tem os papéis a seguir para concluir as tarefas do 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: necessário para criar e gerenciar o proxy de destino HTTPS.

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

Criar o balanceador de carga

Crie o balanceador de carga em que você quer implantar o certificado.

O restante deste tutorial pressupõe que você já configurou os back-ends, a verificação de integridade, o serviço de back-end e o mapa de URL do balanceador de carga. Anote o nome do mapa de URL, porque você precisará dele mais adiante neste tutorial.

Criar uma chave privada e um certificado

Para criar uma chave privada e um certificado, faça o seguinte:

  1. Use uma autoridade de certificação (CA, na sigla em inglês) de terceiros confiável para emitir o certificado com a chave associada.

  2. Verifique se o certificado está encadeado e confiável corretamente.

  3. Prepare os seguintes arquivos codificados em PEM:

    • O arquivo de certificado (CRT)
    • O arquivo de chave privada correspondente (KEY)

Para informações sobre como solicitar e validar um certificado, consulte Criar uma chave privada e um certificado.

Fazer upload de um certificado autogerenciado para o Gerenciador de certificados

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: insira a Descrição do certificado. A descrição ajuda a identificar um certificado específico posteriormente.

  6. Em Local, escolha Global.

  7. Em Escopo, escolha qualquer uma das seguintes opções:

    1. Padrão: escolha o padrão para o Balanceador de carga de aplicativo externo global, um Balanceador de carga de aplicativo clássico ou um Balanceador de carga de rede de proxy externo global.
    2. All-regions: escolha todas as regiões para um balanceador de carga de aplicativo interno entre regiões
  8. Em Tipo de certificado, escolha Criar certificado autogerenciado.

  9. No campo Certificado, siga um destes procedimentos:

    • Clique no botão Fazer upload e selecione o arquivo de certificado no formato PEM.
    • Copie e cole o conteúdo de um certificado no formato PEM. O conteúdo precisa começar com -----BEGIN CERTIFICATE----- e terminar com -----END CERTIFICATE-----.
  10. No campo Certificado de chave privada, siga um destes procedimentos:

    • Clique no botão Upload e selecione sua chave privada. Ela precisa estar no formato PEM e não ser protegida com uma senha longa.
    • Copie e cole o conteúdo de uma chave privada no formato PEM. As chaves privadas precisam começar com -----BEGIN PRIVATE KEY----- e terminar com -----END PRIVATE KEY-----.
  11. Especifique um rótulo para associar ao certificado. É possível adicionar mais de um rótulo, se necessário. Para adicionar um rótulo, clique no botão Adicionar rótulo e especifique um key e um value para ele.

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

gcloud

Para fazer o upload do certificado para o Gerenciador de certificados, faça o seguinte:

Para um balanceador de carga de aplicativo externo global, um balanceador de carga de aplicativo clássico ou um balanceador de carga de rede de proxy externo global:

Execute este comando:

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --certificate-file="CERTIFICATE_FILE" \
   --private-key-file="PRIVATE_KEY_FILE"

Substitua:

  • CERTIFICATE_NAME: o nome exclusivo do certificado
  • CERTIFICATE_FILE: o caminho e o nome do arquivo de certificado de CRT
  • PRIVATE_KEY_FILE: o caminho e o nome de arquivo do arquivo de chave privada KEY

Para um balanceador de carga de aplicativo interno entre regiões:

Execute este comando:

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --certificate-file="CERTIFICATE_FILE" \
   --private-key-file="PRIVATE_KEY_FILE" \
   --scope=all-regions

Substitua:

  • CERTIFICATE_NAME: o nome exclusivo do certificado
  • CERTIFICATE_FILE: o caminho e o nome do arquivo de certificado de CRT
  • PRIVATE_KEY_FILE: o caminho e o nome de arquivo do arquivo de chave privada KEY

Implantar o certificado autogerenciado em um balanceador de carga

As seções a seguir descrevem como implantar em um balanceador de carga o certificado autogerenciado que você enviou para o Gerenciador de certificados.

Dependendo do tipo do balanceador de carga, é possível implantar certificados da seguinte maneira:

Implantar o certificado usando um mapa de certificado

Nesta seção, descrevemos as etapas para implantar um certificado usando um mapa de certificado.

Criar um CertificateMap

Crie um mapa de certificado que faça referência à entrada do mapa de certificado associada ao seu certificado:

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

Substitua CERTIFICATE_MAP_NAME pelo nome do mapa de certificado de destino.

Criar uma entrada de mapa de certificado

Crie uma entrada de mapa de certificado e a associe ao seu certificado autogerenciado e ao mapa de certificados:

gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME" \
    --certificates="CERTIFICATE_NAME" \
    --hostname="HOSTNAME"

Substitua:

  • CERTIFICATE_MAP_ENTRY_NAME: um nome exclusivo da entrada do mapa de certificado
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificado ao qual a entrada do mapa está anexada
  • CERTIFICATE_NAME: o nome do certificado que você quer associar à entrada do mapa de certificado
  • HOSTNAME: o nome do host que você quer associar à entrada do mapa de certificado

Verificar se a entrada do mapa de certificado está ativa

Antes de anexar o mapa de certificado ao proxy de destino, execute o seguinte comando para verificar se a entrada do mapa de certificado está ativa:

gcloud certificate-manager maps entries describe CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME"

Substitua:

  • CERTIFICATE_MAP_ENTRY_NAME: um nome exclusivo da entrada do mapa de certificado
  • CERTIFICATE_MAP_NAME: o nome do mapa de certificado ao qual a entrada do mapa está anexada

Se a entrada do mapa de certificado estiver ativa, a Google Cloud CLI retornará uma saída semelhante a esta:

certificates:
createTime: '2021-09-06T10:01:56.229472109Z'
hostname: example.com
name: projects/my-project/locations/global/certificateMaps/myCertMap/certificateMapEntries/myCertMapEntry
state: ACTIVE
updateTime: '2021-09-06T10:01:58.277031787Z'

Criar o proxy de destino HTTPS

Para criar um proxy de destino HTTPS, consulte Criar um proxy de destino.

Anexar o mapa de certificado ao proxy de destino

Para anexar o mapa de certificados configurado ao proxy de destino, siga estas etapas:

  1. No Console do Google Cloud, acesse a página Proxies de destino.

    Acesse proxies de destino

  2. Anote o nome do proxy de destino.

  3. Para anexar o mapa de certificado ao proxy de destino, execute o seguinte comando:

    gcloud compute target-https-proxies update PROXY_NAME \
       --certificate-map="CERTIFICATE_MAP_NAME"
    

    Substitua:

    • PROXY_NAME: o nome do proxy de destino
    • CERTIFICATE_MAP_NAME: o nome do mapa de certificado que faz referência à sua entrada de mapa de certificado e o certificado associado

Se algum certificado TLS (SSL) for anexado diretamente ao proxy, o proxy dará preferência aos certificados referenciados pelo mapa de certificados em vez dos certificados anexados diretamente.

Criar uma regra de encaminhamento

Configure uma regra de encaminhamento e conclua a configuração do balanceador de carga. Para mais informações, consulte Usar regras de encaminhamento.

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 \
    --global \
    --certificate-manager-certificates=CERTIFICATE_NAME

Substitua:

  • PROXY_NAME: um nome exclusivo do proxy.
  • URL_MAP: o nome do mapa de URL. Você criou o mapa de URL quando criou o balanceador de carga.
  • CERTIFICATE_NAME: o nome do certificado.

Limpar

Para reverter as alterações feitas neste tutorial, siga estas etapas:

  1. Desanexe o mapa de certificado do proxy:

    gcloud compute target-https-proxies update PROXY_NAME \
       --clear-certificate-map
    

    Substitua PROXY_NAME pelo nome do proxy de destino.

    Antes de remover o mapa de certificados do proxy, observe o seguinte:

    • Verifique se pelo menos um certificado TLS (SSL) está diretamente anexado ao proxy. Se nenhum certificado estiver anexado ao proxy, não será possível remover o mapa.
    • Remover o mapa de certificado de um proxy permite que ele retome o uso de certificados TLS (SSL) anexados ao proxy.
  2. Exclua a entrada do mapa de certificado:

    gcloud certificate-manager maps entries delete CERTIFICATE_MAP_ENTRY_NAME \
       --map="CERTIFICATE_MAP_NAME"
    

    Substitua:

    • CERTIFICATE_MAP_ENTRY_NAME: o nome da entrada do mapa do certificado de destino
    • CERTIFICATE_MAP_NAME: o nome do mapa de certificado de destino
  3. Exclua o mapa de certificado:

    gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
    

    Substitua CERTIFICATE_MAP_NAME pelo nome do mapa de certificado de destino.

  4. Exclua o certificado enviado por upload:

    gcloud certificate-manager certificates delete CERTIFICATE_NAME
    

    Substitua CERTIFICATE_NAME pelo nome do certificado de destino.

A seguir