Implantar um certificado autogerenciado regional


Este tutorial mostra como usar o Certificate Manager para implantar um certificado autogerenciado em um balanceador de carga de aplicativo externo regional ou em um balanceador de carga de aplicativo interno regional.

Se você quiser implantar em balanceadores de carga globais externos ou entre regiões, consulte:

Objetivos

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

  • Faça upload de um certificado autogerenciado para o Gerenciador de certificados.
  • Implante o certificado em um balanceador de carga de aplicativo externo regional ou em um balanceador de carga de aplicativo interno regional usando um proxy HTTPS de destino.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine, Certificate Manager APIs.

    Enable the APIs

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Compute Engine, Certificate Manager APIs.

    Enable the APIs

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init

Funções exigidas

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

  • Proprietário do Gerenciador de certificados (roles/certificatemanager.owner)

    Necessário para criar e gerenciar recursos do Gerenciador de certificados.

  • Administrador do balanceador de carga do Compute (roles/compute.loadBalancerAdmin) ou administrador da rede do Compute (roles/compute.networkAdmin)

    É 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

Este tutorial pressupõe que você já criou e configurou os back-ends, as verificações de integridade, os serviços de back-end e os mapas de URL do balanceador de carga. Anote o nome do mapa de URL, porque você vai precisar dele mais tarde 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 certificadora (AC) terceirizada confiável para emitir o certificado com a chave associada.

  2. Verifique se o certificado está corretamente encadeado e tem confiança raiz.

  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

Para fazer upload do certificado no Gerenciador de certificados, 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 guia Certificados, clique em Adicionar certificado.

  3. No campo Nome do certificado, insira um nome exclusivo para o certificado.

  4. Opcional: no campo Descrição, insira uma descrição para o certificado. A descrição permite identificar o certificado.

  5. Em Local, selecione Regional.

  6. Na lista Região, selecione sua região.

  7. Em Tipo de certificado, selecione Criar certificado autogerenciado.

  8. No campo Certificado, faça uma das seguintes ações:

    • Clique no botão 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-----.
  9. No campo Certificado de chave privada, faça uma destas opções:

    • Clique no botão Upload e selecione sua chave privada. A chave privada 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. As chaves privadas precisam começar com -----BEGIN PRIVATE KEY----- e terminar com -----END PRIVATE KEY-----.
  10. No campo Rótulos, especifique os rótulos a serem associados ao certificado. Para adicionar um rótulo, clique em Adicionar rótulo e especifique uma chave e um valor para o rótulo.

  11. Clique em Criar.

    O novo certificado aparece na lista de certificados.

gcloud

Para criar um certificado autogerenciado regional, execute o comando certificate-manager certificates create:

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

Substitua:

  • CERTIFICATE_NAME: o nome 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.
  • LOCATION: o local Google Cloud de destino.

Terraform

Para fazer upload de um certificado autogerenciado, use um recurso google_certificate_manager_certificate com o bloco self_managed.

API

Faça o upload do certificado fazendo uma solicitação POST ao método certificates.create da seguinte maneira:

POST /v1/projects/PROJECT_ID/locations/LOCATION/certificates?certificate_id=CERTIFICATE_NAME
{
  self_managed: {
    pem_certificate: "PEM_CERTIFICATE",
    pem_private_key: "PEM_KEY",
  }
}

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud.
  • CERTIFICATE_NAME: o nome do certificado.
  • PEM_CERTIFICATE: o certificado PEM.
  • PEM_KEY: a chave PEM.
  • LOCATION: o local Google Cloud de destino.

Implantar o certificado autogerenciado em um balanceador de carga

Para implantar o certificado autogerenciado, anexe-o diretamente ao proxy de destino.

Anexar o certificado diretamente ao proxy de destino

É possível anexar o certificado a um novo proxy de destino ou a um proxy de destino existente.

Para anexar o certificado a um novo proxy de destino, use o comando gcloud compute target-https-proxies create:

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

Substitua:

  • PROXY_NAME: o nome do proxy de destino.
  • CERTIFICATE_NAME: o nome do certificado.
  • URL_MAP: o nome do mapa de URL. Você criou o mapa de URL quando criou o balanceador de carga.
  • LOCATION: o local Google Cloud de destino em que você quer criar o proxy de destino HTTPS.

Para anexar um certificado a um proxy HTTPS de destino, use o comando gcloud compute target-https-proxies update. Se você não souber o nome do proxy de destino atual, acesse a página Proxies de destino e anote o nome dele.

gcloud compute target-https-proxies update PROXY_NAME \
    --region=LOCATION \
    --certificate-manager-certificates=CERTIFICATE_NAME

Depois de criar ou atualizar o proxy de destino, execute o seguinte comando para verificar ele:

gcloud compute target-https-proxies list

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, exclua o certificado enviado:

gcloud certificate-manager certificates delete CERTIFICATE_NAME

Substitua CERTIFICATE_NAME pelo nome do certificado de destino.

Se você não planeja usar o balanceador de carga, exclua-o e os recursos dele. Consulte Limpar uma configuração de balanceamento de carga.

A seguir