Configurar a inspeção de TLS

Nesta página, descrevemos como configurar a inspeção Transport Layer Security (TLS) para o firewall do Cloud Next Generation.

Antes de começar

Antes de configurar a inspeção de TLS, conclua as tarefas nas seções a seguir.

Ativar o Certificate Authority Service

O Cloud NGFW usa o Certificate Authority Service para gerar autoridades de certificação (CAs) intermediárias. O Cloud NGFW usa essas CAs intermediárias para gerar os certificados usados para a inspeção de TLS.

É possível ativar a API CA Service usando o console do Google Cloud:

Enable the API

Para ativar o serviço de CA usando a CLI do Google Cloud, use o seguinte comando:

   gcloud services enable privateca.googleapis.com
  

Ativar o Gerenciador de certificados

O Cloud NGFW usa o Gerenciador de certificados para criar configurações de confiança. Se você não quiser usar as configurações de confiança, pule esta etapa.

É possível ativar a API Certificate Manager usando o console do Google Cloud:

Enable the API

Para ativar o Gerenciador de certificados usando a CLI do Google Cloud, use o seguinte comando:

   gcloud services enable certificatemanager.googleapis.com
  

Criar uma configuração de confiança

Essa é uma etapa opcional. Para criar uma configuração de confiança, siga as etapas desta seção.

  1. Criar um pool de CA.

    O pool de CAs criado nesta etapa é diferente daquele criado para configurar a política de inspeção de TLS.

  2. Crie uma CA raiz usando o pool de CAs criado anteriormente.

  3. Crie um certificado usando uma chave gerada automaticamente. Use o mesmo nome de pool de CAs criado anteriormente.

  4. Consiga o certificado público da CA do certificado criado.

    $PEM-CERT=$(gcloud privateca roots describe ROOT_CA_NAME \
       --location LOCATION \
       --project PROJECT_ID \
       --pool CA_POOL \
       --format "value(pemCaCertificates)")
    

    Substitua:

    • ROOT_CA_NAME: o nome da CA raiz
    • LOCATION: o local da CA raiz
    • PROJECT_ID: o ID do projeto da CA raiz
    • CA_POOL: o nome do pool de CA que será usado para a criação dos certificados.
  5. Crie e importe uma configuração de confiança usando o PEM-CERT recebido na etapa anterior. Se você usar sua própria CA, use o certificado público recebido da CA.

Use essa configuração de confiança para criar uma política de inspeção de TLS.

Criar um pool de CA

É preciso criar um pool de CAs antes de usar o serviço de CA. Para criar um pool de CAs, siga as instruções em Como criar pools de CAs.

Use esse pool de CAs para criar uma política de inspeção de TLS.

Criar uma CA raiz

Se você ainda não tiver uma CA raiz, poderá criá-la no Serviço de CA. Para criar uma CA raiz, siga as instruções em Como criar uma CA raiz e use o mesmo pool de CAs criado anteriormente. Consulte a seção Criar uma CA. pool.

Crie uma conta de serviço

Se você não tiver uma conta de serviço, crie uma e conceda as permissões necessárias.

  1. Crie uma conta de serviço:

     gcloud beta services identity create \
         --service networksecurity.googleapis.com \
         --project PROJECT_ID
    

    Substitua PROJECT_ID pelo ID do projeto da conta de serviço.

    A CLI do Google Cloud cria uma conta de serviço chamada service-PROJECT_NUMBER@gcp-sa-networksecurity.iam.gserviceaccount.com. Aqui, PROJECT_NUMBER é o identificador exclusivo do PROJECT_ID que você forneceu no comando anterior.

  2. Conceda permissão à sua conta de serviço para gerar certificados que usam seu pool de CA:

     gcloud privateca pools add-iam-policy-binding CA_POOL \
         --member 'serviceAccount:SERVICE_ACCOUNT' \
         --role 'roles/privateca.certificateRequester' \
         --location REGION
    

    Substitua:

    • CA_POOL: o nome do pool de CA que será usado para a criação dos certificados.
    • SERVICE_ACCOUNT: o nome da conta de serviço que você criou na etapa anterior.
    • LOCATION: a região do pool de CAs

Configurar inspeção de TLS

Antes de prosseguir com as tarefas desta seção, verifique se você configurou os certificados ou concluiu as tarefas de pré-requisito listadas na seção Antes de começar.

Para configurar a inspeção de TLS, conclua as tarefas nas seções a seguir.

Criar uma política de inspeção de TLS

Console

  1. No console do Google Cloud, acesse a página Políticas de inspeção TLS.

    Acessar as políticas de inspeção TLS

  2. No menu do seletor de projetos, escolha seu projeto.

  3. Clique em Criar política de inspeção TLS.

  4. Em Nome, digite um nome.

    .

  5. Opcional: no campo Descrição, insira uma descrição.

  6. Na lista Região, selecione a região onde você quer criar a política de inspeção TLS.

  7. Na lista Pool de AC, selecione o pool de AC do qual você quer criar os certificados.

    Se você não tiver um pool de AC configurado, clique em Novo pool e siga as instruções em Criar um pool de AC.

  8. Opcional: na lista Versão mínima de TLS, selecione a versão mínima de TLS compatível com a política.

  9. Em Configuração de confiança, selecione uma das seguintes opções:

    • Somente Public CA: selecione essa opção se você quiser confiar em servidores com certificados assinados publicamente.
    • Somente ACs particulares: selecione essa opção se você quiser confiar em servidores com certificados assinados de modo particular.

      Na lista Configuração de confiança particular, selecione a configuração com o repositório de confiança definido que será usado para usar os certificados de servidor upstream confiáveis. Para mais informações sobre a criação de uma configuração de confiança, consulte Criar uma configuração de confiança.

    • ACs públicas e particulares: selecione essa opção se você quiser usar ACs públicas e particulares.

  10. Opcional: na lista Perfil do pacote de criptografia, selecione o tipo de perfil TLS. É possível escolher um dos seguintes valores:

    • Compatível: permite que o conjunto mais amplo de clientes negociem TLS, incluindo aqueles compatíveis apenas com recursos desatualizados de TLS.
    • Moderno: compatível com um amplo conjunto de recursos de TLS, permitindo que clientes modernos negociem TLS.
    • Restrito: compatível com um conjunto reduzido de recursos de TLS para cumprir requisitos de conformidade mais rigorosos.
    • Personalizado: permite selecionar recursos de TLS individualmente.

      Na lista Pacotes de criptografia, selecione o nome dos pacotes de criptografia compatíveis com o perfil personalizado.

  11. Clique em Criar.

gcloud

  1. Crie um arquivo YAML TLS_INSPECTION_FILE.yaml. Substitua TLS_INSPECTION_FILE por um nome de arquivo de sua escolha.

  2. Adicione o seguinte código ao arquivo YAML para configurar a política de inspeção de TLS.

    name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
    caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL
    minTlsVersion: TLS_VERSION
    tlsFeatureProfile: PROFILE_TYPECIPHER_NAME
    excludePublicCaSet: `TRUE`|`FALSE`
    trustConfig: projects/PROJECT_ID/locations/REGION/trustConfigs/TRUST_CONFIG_NAME
    

    Substitua:

    • PROJECT_ID: o ID do projeto da política de inspeção de TLS
    • REGION: a região em que a política de inspeção de TLS é criada.
    • TLS_INSPECTION_NAME: o nome da política de inspeção de TLS.
    • CA_POOL: o nome do pool de CA que será usado para a criação dos certificados.

      O pool de CAs precisa estar na mesma região.

    • TLS_VERSION: um argumento opcional que especifica a versão mínima da TLS compatível com o Cloud NGFW.

      Você pode selecionar um dos seguintes valores:

      • TLS_1_0
      • TLS_1_1
      • TLS_1_2
    • PROFILE_TYPE: um argumento opcional que especifica o tipo de perfil da TLS

      Você pode selecionar um dos seguintes valores:

      • PROFILE_COMPATIBLE: permite que o conjunto mais amplo de clientes negociem TLS, incluindo aqueles compatíveis apenas com recursos desatualizados de TLS.
      • PROFILE_MODERN: compatível com um amplo conjunto de recursos de TLS, permitindo que clientes modernos negociem TLS.
      • PROFILE_RESTRICTED: compatível com um conjunto reduzido de recursos de TLS para cumprir requisitos de conformidade mais rigorosos.
      • PROFILE_CUSTOM: permite selecionar recursos de TLS individualmente.
    • CIPHER_NAME: um argumento opcional para especificar o nome do pacote de criptografia compatível com o perfil personalizado.

      Você especifica esse argumento somente quando o tipo de perfil está definido como PROFILE_CUSTOM.

    • excludePublicCaSet: uma sinalização opcional para incluir ou excluir um conjunto de CAs públicas. Por padrão, essa sinalização é definida como falsa. Quando essa sinalização é definida como verdadeira, as conexões da TLS não confiam em servidores de CA públicos. Nesse caso, o Cloud NGFW só pode fazer conexões da TLS com servidores com certificados assinados por CAs na configuração de confiança.

    • TRUST_CONFIG_NAME: um argumento opcional para especificar o nome do recurso de configuração de confiança

  3. Importe a política de inspeção de TLS que você criou na seção Criar uma política de inspeção de TLS.

    gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \
        --source TLS_INSPECTION_FILE.yaml \
        --location REGION
    

    Substitua:

    • TLS_INSPECTION_NAME: o nome da política de inspeção de TLS
    • TLS_INSPECTION_FILE: o nome do arquivo YAML da política de inspeção TLS

Ver detalhes de uma política de inspeção TLS

É possível consultar informações sobre a política de inspeção TLS que você criou no projeto.

Console

  1. No console do Google Cloud, acesse a página Políticas de inspeção TLS.

    Acessar as políticas de inspeção TLS

  2. No menu do seletor de projetos, escolha seu projeto.

  3. As políticas de inspeção TLS são listadas na seção Inspeções TLS.

  4. Para acessar os detalhes, clique no nome da sua política de inspeção TLS.

Adicionar política de inspeção de TLS a uma associação de endpoint de firewall

Para adicionar a política de inspeção TLS a uma associação de endpoint de firewall, siga as etapas mencionadas em Criar associações de endpoints de firewall.

Configurar regras da política de firewall com inspeção de TLS

Para ativar a inspeção de TLS na rede de nuvem privada virtual (VPC), defina a sinalização --tls-inspect na regra de política de firewall. Essa sinalização indica que a inspeção de TLS pode ser realizada quando o grupo de perfis de segurança é aplicado.

Para saber mais sobre como ativar a sinalização --tls-inspect nas regras hierárquicas da política de firewall, consulte Criar regras de firewall.

Para saber mais sobre como ativar a sinalização --tls-inspect nas regras da política de firewall da rede global, consulte Criar regras globais de firewall da rede.

Gerenciar política de inspeção TLS

É possível listar, atualizar e excluir políticas de inspeção TLS no seu projeto.

Listar todas as políticas de inspeção TLS

É possível listar todas as políticas de inspeção TLS em um projeto.

Console

  1. No console do Google Cloud, acesse a página Políticas de inspeção TLS.

    Acessar as políticas de inspeção TLS

  2. No menu do seletor de projetos, escolha seu projeto.

  3. As políticas de inspeção TLS são listadas na seção Inspeções TLS.

gcloud

Para listar todas as políticas de inspeção TLS, use o comando gcloud network-security tls-inspection-policies list:

gcloud network-security tls-inspection-policies list \
    --project PROJECT_ID \
    --location REGION

Substitua:

  • PROJECT_ID: o ID do projeto para a política de inspeção TLS.
  • REGION: o nome da região em que você quer listar a política de inspeção TLS.

Editar uma política de inspeção TLS

É possível modificar uma política de inspeção TLS que já existe no seu projeto.

Console

  1. No console do Google Cloud, acesse a página Políticas de inspeção TLS.

    Acessar as políticas de inspeção TLS

  2. No menu do seletor de projetos, escolha seu projeto.

  3. As políticas de inspeção TLS são listadas na seção Inspeções TLS.

  4. Para editar uma política, clique no nome da sua política de inspeção TLS.

  5. Clique em Editar.

  6. Modifique os campos obrigatórios. Para mais informações sobre cada campo, consulte Criar uma política de inspeção TLS.

  7. Clique em Salvar.

Excluir uma política de inspeção TLS

É possível excluir uma política de inspeção TLS do seu projeto. No entanto, se a política de inspeção TLS for referenciada por uma associação de endpoint de firewall, essa política não poderá ser excluída.

Console

  1. No console do Google Cloud, acesse a página Políticas de inspeção TLS.

    Acessar as políticas de inspeção TLS

  2. No menu do seletor de projetos, escolha seu projeto.

  3. As políticas de inspeção TLS são listadas na seção Inspeções TLS.

  4. Para excluir uma política de inspeção TLS, marque a caixa de seleção ao lado do nome dela.

  5. Clique em Excluir.

  6. Clique em Excluir novamente.

gcloud

Para excluir uma política de inspeção TLS, use o comando gcloud network-security tls-inspection-policies delete:

gcloud network-security tls-inspection-policies delete \
    projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME \
    --location REGION

Substitua:

  • PROJECT_ID: o ID do projeto da política de inspeção de TLS
  • TLS_INSPECTION_NAME: o nome da inspeção TLS
  • REGION: a região em que a política de inspeção de TLS é criada.

A seguir