Este tutorial mostra-lhe como usar o Gestor de certificados para implementar um certificado gerido pela Google global com o Certificate Authority Service num Application Load Balancer interno de várias regiões.
Se quiser implementar balanceadores de carga externos globais ou balanceadores de carga regionais, consulte o seguinte:
Configure a integração do serviço de AC com o Gestor de certificados
Para integrar o serviço de AC com o gestor de certificados, siga estes passos:
No Google Cloud projeto de destino, crie uma conta de serviço do Certificate Manager:
gcloud beta services identity create --service=certificatemanager.googleapis.com \ --project=PROJECT_ID
Substitua
PROJECT_ID
pelo ID do projeto de destino Google Cloud .O comando devolve o nome da identidade do serviço criada. Veja o exemplo seguinte:
service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
Conceda à conta de serviço do Certificate Manager a função de requerente de certificado do serviço de AC (
roles/privateca.certificateRequester
) no conjunto de AC de destino:gcloud privateca pools add-iam-policy-binding CA_POOL \ --location LOCATION \ --member "serviceAccount:SERVICE_ACCOUNT" \ --role roles/privateca.certificateRequester
Substitua o seguinte:
CA_POOL
: o ID do grupo de ACs de destino.LOCATION
: a localização Google Cloud alvo.SERVICE_ACCOUNT
: o nome completo da conta de serviço que criou no passo 1.
Crie um recurso de configuração de emissão de certificados para o seu conjunto de ACs:
Consola
Na Google Cloud consola, aceda ao separador Configurações de emissão na página Certificate Manager.
Clique em Criar. É apresentada a página Crie uma configuração de emissão de certificados.
No campo Nome, introduza um nome exclusivo para a configuração de emissão do certificado.
Opcional: no campo Descrição, introduza uma descrição para a configuração de emissão.
Para Localização, selecione Global.
Opcional: no campo Duração total, especifique a duração total do certificado emitido em dias. O valor tem de estar compreendido entre 21 e 30 dias (inclusive).
Opcional: em Percentagem do período de tempo de rotação, especifique a percentagem do período de tempo do certificado quando o respetivo processo de renovação começa. Para encontrar o intervalo de valores válidos, consulte a secção Percentagem do período de rotação e duração.
Opcional: na lista Algoritmo de chave, selecione o algoritmo de chave a usar quando gerar a chave privada.
Na lista CA pool, selecione o nome do CA pool a atribuir a este recurso de configuração de emissão de certificados.
No campo Etiquetas, especifique as etiquetas a associar ao certificado. Para adicionar uma etiqueta, clique em
Adicionar etiqueta e especifique uma chave e um valor para a etiqueta.Clique em Criar.
gcloud
gcloud certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \ --ca-pool=CA_POOL
Substitua o seguinte:
ISSUANCE_CONFIG_NAME
: o nome do recurso de configuração de emissão do certificado.CA_POOL
: o caminho e o nome completos do recurso CA pool que quer atribuir a este recurso de configuração de emissão de certificados.
Para mais informações sobre os recursos de configuração da emissão de certificados, consulte o artigo Faça a gestão dos recursos de configuração da emissão de certificados.
Crie um certificado gerido pela Google emitido pela sua instância do serviço de AC
Para criar um certificado gerido pela Google emitido pela instância do serviço de AC, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Gestor de certificados.
No separador Certificados, clique em Adicionar certificado.
No campo Nome do certificado, introduza um nome exclusivo para o certificado.
Opcional: no campo Descrição, introduza uma descrição do certificado. A descrição permite-lhe identificar o certificado.
Para Localização, selecione Global.
Para Âmbito, selecione Todas as regiões.
Para Tipo de certificado, selecione Criar certificado gerido pela Google.
Para Tipo de autoridade de certificação, selecione Privado.
No campo Nomes de domínios, especifique uma lista de nomes de domínios do certificado separados por vírgulas. Cada nome do domínio tem de ser um nome do domínio totalmente qualificado, como
myorg.example.com
.Para Selecionar uma configuração de emissão de certificados, selecione o nome do recurso de configuração de emissão de certificados que faz referência ao conjunto de AC de destino.
No campo Etiquetas, especifique as etiquetas a associar ao certificado. Para adicionar uma etiqueta, clique em
Adicionar etiqueta e especifique uma chave e um valor para a etiqueta.Clique em Criar.
O novo certificado é apresentado na lista de certificados.
gcloud
Para criar um certificado gerido pela Google entre regiões com o Certificate Authority Service, use o comando certificate-manager certificates create
com as flags issuance-config
e --scope
:
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAMES" \ --issuance-config=ISSUANCE_CONFIG_NAME \ --scope=all-regions
Substitua o seguinte:
CERTIFICATE_NAME
: o nome do certificado.DOMAIN_NAME
: o nome do domínio de destino. O nome do domínio tem de ser um nome do domínio totalmente qualificado, comomyorg.example.com
.ISSUANCE_CONFIG_NAME
: o nome do recurso de configuração de emissão de certificados que faz referência ao conjunto de ACs de destino.
API
Crie o certificado fazendo um pedido POST
ao método certificates.create
da seguinte forma:
POST /v1/projects/PROJECT_ID/locations/global/certificates?certificate_id=CERTIFICATE_NAME" { "managed": { "domains": ["DOMAIN_NAME"], "issuanceConfig": "ISSUANCE_CONFIG_NAME", "scope": "ALL_REGIONS" } }
Substitua o seguinte:
PROJECT_ID
: o ID do Google Cloud projeto.CERTIFICATE_NAME
: o nome do certificado.DOMAIN_NAME
: o nome do domínio de destino. O nome do domínio tem de ser um nome do domínio totalmente qualificado, comomyorg.example.com
.ISSUANCE_CONFIG_NAME
: o nome do recurso de configuração de emissão de certificados que faz referência ao conjunto de ACs de destino.
Valide o estado do certificado
Antes de implementar um certificado num equilibrador de carga, verifique se está ativo. O estado do certificado pode demorar vários minutos a mudar para ACTIVE
.
Consola
Na Google Cloud consola, aceda à página Gestor de certificados.
No separador Certificados, verifique a coluna Estado do certificado.
gcloud
Para verificar o estado do certificado, execute o seguinte comando:
gcloud certificate-manager certificates describe CERTIFICATE_NAME
Substitua CERTIFICATE_NAME
pelo nome do certificado gerido pela Google de destino.
O resultado é semelhante ao seguinte:
createTime: '2021-10-20T12:19:53.370778666Z' expireTime: '2022-05-07T05:03:49Z' managed: domains: - myorg.example.com issuanceConfig: projects/myproject/locations/global/issuanceConfigs/myissuanceConfig state: ACTIVE name: projects/myproject/locations/global/certificates/mycertificate pemCertificate: | -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE----- sanDnsnames: - myorg.example.com updateTime: '2021-10-20T12:19:55.083385630Z'
Para ver mais passos de resolução de problemas, consulte o artigo Resolva problemas do Gestor de certificados.
Implemente o certificado num balanceador de carga
Para implementar o certificado global gerido pela Google, anexe-o diretamente ao proxy de destino.
Anexe o certificado diretamente ao proxy de destino
Pode 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 \ --url-map=URL_MAP \ --certificate-manager-certificates=CERTIFICATE_NAME \ --global
Substitua o seguinte:
PROXY_NAME
: o nome do proxy de destino.URL_MAP
: o nome do mapa de URLs. Criou o mapa de URLs quando criou o balanceador de carga.CERTIFICATE_NAME
: o nome do certificado.
Para anexar o certificado a um proxy HTTPS de destino existente, use o comando gcloud
compute target-https-proxies update
. Se não souber o nome do proxy de destino existente, aceda à 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 seguinte comando para o verificar:
gcloud compute target-https-proxies list
Resolução de problemas de certificados emitidos pelo serviço de AC
Para ver os passos de resolução de problemas, consulte o artigo Problemas relacionados com certificados emitidos por uma instância do serviço de AC.
Limpar
Para evitar incorrer em cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, elimine-os.
Elimine o balanceador de carga e os respetivos recursos.
Consulte o artigo Limpe uma configuração de equilíbrio de carga.
Elimine o certificado gerido pela Google:
Consola
Na Google Cloud consola, aceda à página Gestor de certificados.
No separador Certificados, selecione a caixa de verificação do certificado.
Clique em Eliminar.
Na caixa de diálogo apresentada, clique em Eliminar para confirmar.
gcloud
gcloud certificate-manager certificates delete CERTIFICATE_NAME
Substitua
CERTIFICATE_NAME
pelo nome do certificado de destino.Elimine o recurso de configuração de emissão de certificados:
Consola
Na Google Cloud consola, aceda ao separador Configurações de emissão na página Certificate Manager.
Selecione a caixa de verificação do recurso de configuração de emissão que quer eliminar.
Clique em Eliminar.
Na caixa de diálogo apresentada, clique em Eliminar para confirmar.
gcloud
gcloud certificate-manager issuance-configs delete ISSUANCE_CONFIG_NAME
Substitua
ISSUANCE_CONFIG_NAME
pelo nome do recurso de configuração de emissão do certificado de destino.Elimine o conjunto de CA.
Para eliminar o conjunto de ACs ou desativar a última AC ativada num conjunto de ACs referenciado por um recurso de configuração de emissão de certificados, elimine todas as configurações de emissão de certificados que referenciam o conjunto de ACs. Para mais informações, consulte o artigo Elimine um conjunto de ACs.