Implantar um certificado autogerenciado global


Este tutorial descreve como usar o Gerenciador de certificados para implantar um certificado autogerenciado global.

Os seguintes balanceadores de carga oferecem suporte a certificados autogerenciados globais:

  • 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:

  • Faça upload de um certificado autogerenciado no 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 de certificados, consulte Visão geral da implantação.

Antes de começar

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Verifique se você tem os seguintes papéis para concluir as tarefas deste tutorial:

    • Proprietário do Gerenciador de certificados: necessário para criar e gerenciar recursos do Gerenciador de certificados.
    • Administrador do Compute Load Balancer ou Administrador da 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.

No restante deste tutorial, presumimos que você já tenha configurado 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 ele será necessário 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á devidamente encadeado e confiável.

  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 Crie 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 que aparece, 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. A descrição ajuda a identificar um certificado específico mais tarde.

  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, o Balanceador de carga de aplicativo clássico ou o Balanceador de carga de rede de proxy externo global.
    2. Todas as regiões: 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 Certificate, faça uma das seguintes ações:

    • Clique no botão Fazer upload e selecione o formato PEM arquivo de certificado.
    • 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, faça uma das seguintes ações:

    • Clique no botão Upload e selecione sua chave privada. Ela precisa estar no formato PEM e não ser protegida por uma senha longa.
    • Copie e cole o conteúdo de uma chave privada no formato PEM. O chaves privadas devem começar com -----BEGIN PRIVATE KEY----- terminam com -----END PRIVATE KEY-----.
  11. 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.

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

gcloud

Para fazer o upload do certificado no 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 CRT
  • PRIVATE_KEY_FILE: o caminho e o nome do arquivo de chave privada.

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 CRT
  • PRIVATE_KEY_FILE: o caminho e o nome 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 ao Gerenciador de certificados.

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

Implantar o certificado usando um mapa de certificados

Esta seção descreve as etapas para implantar um certificado usando um mapa de certificados.

Criar um CertificateMap

Criar um mapa de certificados que faz referência à entrada do mapa de certificado associadas 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 certificados

Crie uma entrada de mapa de certificado, e associá-la ao seu um certificado autogerenciado e 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 certificados ao qual a entrada do mapa de certificados está anexada
  • CERTIFICATE_NAME: o nome do certificado que você quer associar à entrada do mapa de certificados
  • HOSTNAME: o nome do host que você quer associar à entrada do mapa de certificados.

Verificar se a entrada do mapa de certificado está ativa

Antes de anexar o mapa de certificados ao proxy de destino, execute o comando a seguir para verificar se a entrada do mapa de certificados 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 certificados ao qual a entrada do mapa de certificados está anexada

Se a entrada do mapa de certificado estiver ativa, a Google Cloud CLI vai 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 certificado 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 à entrada do mapa de certificado e ao certificado associado

Se algum certificado TLS (SSL) for anexado diretamente ao proxy, ele 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 termine de configurar o 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 ao criar o balanceador de carga.
  • CERTIFICATE_NAME: o nome do certificado.

Limpar

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

  1. Desconecte o mapa de certificados do proxy:

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

    Substitua PROXY_NAME pelo nome do proxy de destino.

    Antes de desanexar o mapa de certificado do proxy, observe o seguinte:

    • Verifique se pelo menos um certificado TLS (SSL) está anexado diretamente ao proxy. Se nenhum certificado estiver anexado ao proxy, não será possível desanexar o mapa de certificado.
    • Se você desconectar o mapa de certificados de um proxy, ele poderá retomar o uso de certificados TLS (SSL) que foram anexados diretamente a ele.
  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 de certificados 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