Nesta página, você verá como configurar a inspeção da Transport Layer Security (TLS) para o Cloud Firewall.
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 Firewall usa o Certificate Authority Service para gerar autoridades de certificação (CAs) intermediárias. O Cloud Firewall usa essas CAs intermediárias para gerar os certificados usados para a inspeção de TLS.
Para ativar o serviço de CA, use o seguinte comando:
gcloud services enable privateca.googleapis.com
Ativar o Gerenciador de certificados
O Cloud Firewall 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.
Para ativar o Gerenciador de certificados, 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.
-
O pool de CAs criado nesta etapa é diferente daquele criado para configurar a política de inspeção de TLS.
Crie uma CA raiz usando o pool de CAs criado anteriormente.
Crie um certificado usando uma chave gerada automaticamente. Use o mesmo nome de pool de CAs criado anteriormente.
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 raizLOCATION
: o local da CA raizPROJECT_ID
: o ID do projeto da CA raizCA_POOL
: o nome do pool de CA que será usado para a criação dos certificados.
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.
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_ID@gcp-sa-networksecurity.iam.gserviceaccount.com
.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
Crie um arquivo YAML
TLS_INSPECTION_FILE.yaml
. SubstituaTLS_INSPECTION_FILE
por um nome de arquivo de sua escolha.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 TLSREGION
: 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 TLSCA_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 Firewall.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 TLSVocê 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
: dá suporte a menos recursos de TLS para cumprir requisitos de compliance 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 Firewall só pode fazer conexões da TLS com servidores com certificados assinados por CAs na configuração de confiança.
TRUST_CONFIG_NAME
: o nome do recurso de configuração de confiança
Importar política de inspeção de TLS
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 beta 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 TLSTLS_INSPECTION_FILE
: o nome do arquivo YAML da política de inspeção de 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 de TLS a uma associação de endpoint de firewall, siga as etapas mencionadas em Criar e associar 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.