É possível usar o Gerenciador de certificados para implantar um certificado autogerenciado global em um balanceador de carga de aplicativo interno entre regiões, ajudando a proteger seus aplicativos internos com o gerenciamento de certificados SSL/TLS. Este tutorial orienta você no processo de configuração dessa implantação.
Antes de começar, crie um balanceador de carga de aplicativo interno entre regiões.
Se você quiser implantar certificados autogerenciados em outros tipos de balanceadores de carga, consulte os seguintes documentos:
Objetivos
Nesta seção, mostramos como concluir as seguintes tarefas:
- Fazer upload de um certificado autogerenciado para o Gerenciador de certificados.
- Implantar o certificado em um balanceador de carga compatível usando um proxy HTTPS de destino.
Antes de começar
- Faça login na sua Google Cloud conta do. Se você começou a usar o Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Compute Engine, Certificate Manager APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Compute Engine, Certificate Manager APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
Funções exigidas
Verifique se você tem as seguintes funções para concluir as tarefas neste 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 de 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:
- Funções e permissões do Gerenciador de certificados.
- Funções e permissões do IAM do Compute Engine
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.
Se você não criou um balanceador de carga de aplicativo interno entre regiões, consulte Configurar um balanceador de carga de aplicativo interno entre regiões com back-ends de grupo de instâncias de VM .
Criar uma chave privada e um certificado
Para criar uma chave privada e um certificado, faça o seguinte:
Use uma autoridade certificadora (AC) terceirizada confiável para emitir o certificado com a chave associada.
Verifique se o certificado está encadeado e confiável na raiz.
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 para o Gerenciador de certificados, faça o seguinte:
Console
No Google Cloud console, acesse a página Gerenciador de certificados.
Na guia Certificados, clique em Adicionar certificado.
No campo Nome do certificado, insira um nome exclusivo para o certificado.
Opcional: no campo Descrição, insira uma descrição para o certificado. A descrição permite identificar o certificado.
Em Local, selecione Global.
Em Escopo, selecione Todas as regiões.
Em Tipo de certificado, selecione Criar certificado autogerenciado.
No campo Certificado, faça uma destas 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-----.
No campo Certificado de chave privada, faça uma destas 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. As chaves privadas precisam começar com
-----BEGIN PRIVATE KEY-----e terminar com-----END PRIVATE KEY-----.
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.
Clique em Criar.
O novo certificado aparece na lista de certificados.
gcloud
Para criar um certificado autogerenciado entre regiões, use o certificate-manager certificates create 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 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.
Terraform
Para fazer upload de um certificado autogerenciado, use um
google_certificate_manager_certificate recurso com o self_managed bloco.
API
Faça upload do certificado fazendo uma solicitação POST para o método certificates.create da seguinte maneira:
POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME
{
self_managed: {
pem_certificate: "PEM_CERTIFICATE",
pem_private_key: "PEM_KEY",
scope: "ALL_REGIONS"
}
}
Substitua:
PROJECT_ID: ID do Google Cloud projeto.CERTIFICATE_NAME: o nome do certificado.PEM_CERTIFICATE: o PEM do certificado.PEM_KEY: o PEM da chave.
Implantar o certificado autogerenciado em um balanceador de carga
Para implantar o certificado autogerenciado global, anexe-o diretamente ao proxy de destino.
Anexar o certificado diretamente ao proxy de destino
É possível anexar o certificado a um proxy de destino novo ou atual.
Para anexar o certificado a um novo proxy de destino, use o gcloud compute
target-https-proxies create
comando:
gcloud compute target-https-proxies create PROXY_NAME \
--url-map=URL_MAP \
--certificate-manager-certificates=CERTIFICATE_NAME \
--global
Substitua:
PROXY_NAME: nome do proxy de destino.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.
Para anexar o certificado a um proxy HTTPS de destino atual, use o gcloud
compute target-https-proxies update
comando. Se você
não souber o nome do proxy de destino atual, acesse a página Proxies
de destino
e anote o nome do proxy de destino.
gcloud compute target-https-proxies update PROXY_NAME \
--global \
--certificate-manager-certificates=CERTIFICATE_NAME
Depois de criar ou atualizar o proxy de destino, execute o comando a seguir para verificá-lo:
gcloud compute target-https-proxies list
Limpar
Para evitar cobranças na sua Google Cloud conta do 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.