Publique o proxy Web seguro como um serviço do Private Service Connect

Para centralizar a implementação do proxy Web seguro em várias redes VPC, pode disponibilizar o proxy Web seguro através de uma ligação de serviço do Private Service Connect.

A implementação do proxy Web seguro com o Private Service Connect envolve os seguintes passos:

  1. Crie uma política e regras do Secure Web Proxy.
  2. Crie uma instância do Secure Web Proxy que use a sua política.
  3. Crie uma associação do serviço para publicar a instância do proxy Web seguro como um serviço do Private Service Connect.
  4. Crie um ponto final do consumidor do Private Service Connect em cada rede VPC que precise de se ligar ao proxy Web seguro.
  5. Encaminhe o tráfego de saída da carga de trabalho para a instância do proxy Web seguro centralizado na região.
Implementação do Secure Web Proxy no modo de associação do serviço do Private Service Connect.
A publicação do proxy Web seguro como um serviço do Private Service Connect permite-lhe centralizar a gestão do tráfego de saída para cargas de trabalho em várias redes VPC. (clique para ampliar).

Antes de começar

Antes de concluir os passos nesta página, conclua os passos de configuração inicial.

Crie e configure uma instância do Secure Web Proxy

Este guia descreve como criar uma política e regras de proxy Web seguro que correspondem ao tráfego por sessão.

Para obter informações sobre a configuração opcional da inspeção TLS, consulte o artigo Ative a inspeção TLS.

Para ver informações sobre a configuração opcional da correspondência ao nível da aplicação, consulte o artigo Implemente uma instância de proxy Web segura.

Crie uma política de Secure Web Proxy

Consola

  1. Na Google Cloud consola, aceda à página Políticas de SWP.

    Aceda às políticas de SWP

  2. Clique em Criar uma política.

  3. Introduza um nome para a política que quer criar, como myswppolicy.

  4. Introduza uma descrição da política.

  5. Na lista Regiões, selecione a região onde quer criar a política de proxy Web.

  6. Clique em Criar.

Cloud Shell

  1. Crie um ficheiro policy.yaml.

    description: basic Secure Web Proxy policy
    name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do projeto
    • REGION: a região da política
  2. Crie uma política de Secure Web Proxy com base em policy.yaml.

    gcloud network-security gateway-security-policies import policy1 \
        --source=policy.yaml \
        --location=REGION
    

Adicione regras do Secure Web Proxy à sua política

Configure regras de proxy Web seguro para permitir o tráfego de saída de cada carga de trabalho.

Esta secção mostra como criar uma regra para permitir tráfego de cargas de trabalho que são identificadas pela etiqueta do Resource Manager ou pela conta de serviço. Para obter informações sobre a correspondência de tráfego de outras formas, consulte a referência de linguagem do matcher CEL.

Consola

  1. Na Google Cloud consola, aceda à página Políticas de SWP.

    Aceda às políticas de SWP

  2. Clique no nome da política.

  3. Para adicionar regras que permitam que as cargas de trabalho acedam à Internet, faça o seguinte:

    1. Clique em Adicionar regra.
    2. Introduza uma prioridade. As regras são avaliadas da prioridade mais elevada para a mais baixa, em que 0 é a prioridade mais elevada.
    3. Introduza um nome.
    4. Insira uma descrição.
    5. Introduza um estado.
    6. Em Ação, selecione Permitir.
    7. Clique em Estado e, de seguida, selecione Ativado.
    8. Na secção Correspondência de sessão, especifique os critérios para fazer corresponder a sessão.

      • Por exemplo, para permitir o tráfego para google.com a partir de cargas de trabalho com o ID do valor da etiqueta do Resource Manager tagValues/123456, introduza o seguinte:

        source.matchTag('tagValues/123456') && host() == 'google.com'

      • Para permitir tráfego para google.com a partir de cargas de trabalho que usam a conta de serviço account-name@my-project.iam.gserviceaccount.com, introduza o seguinte:

        source.matchServiceAccount('account-name@my-project.iam.gserviceaccount.com') && host() == 'google.com'

    9. Clique em Criar.

Cloud Shell

Para cada regra que quer adicionar, faça o seguinte:

  1. Crie um rule.yamlficheiro e especifique critérios para fazer corresponder a sessão.

    • Para permitir o tráfego para um domínio específico a partir de cargas de trabalho identificadas pelo ID do valor da etiqueta do Resource Manager, crie o seguinte ficheiro:

      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME
      description: Allow traffic based on tag
      enabled: true
      priority: PRIORITY
      basicProfile: ALLOW
      sessionMatcher: source.matchTag('TAG_VALUE_ID') && host() == 'DOMAIN_NAME'
      

      Substitua o seguinte:

      • PROJECT_ID: o ID do projeto
      • REGION: a região da sua política
      • RULE_NAME: o nome da regra
      • PRIORITY: a prioridade da regra. As regras são avaliadas da prioridade mais alta para a mais baixa, em que 0 é a prioridade mais alta
      • TAG_VALUE_ID: o ID do valor da etiqueta das cargas de trabalho para permitir tráfego
      • DOMAIN_NAME: o nome do domínio para permitir o tráfego para
    • Para permitir o tráfego para um domínio específico a partir de cargas de trabalho que usam uma conta de serviço, crie o seguinte ficheiro:

      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME
      description: Allow traffic based on service account
      enabled: true
      priority: PRIORITY
      basicProfile: ALLOW
      sessionMatcher: source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'DOMAIN_NAME'
      

      Substitua SERVICE_ACCOUNT pelo nome da conta de serviço.

  2. Para atualizar a sua política com a regra que definiu em rule.yaml, use o seguinte comando:

    gcloud network-security gateway-security-policies rules import RULE_NAME \
       --source=rule.yaml \
       --location=REGION \
       --gateway-security-policy=policy1
    

Implemente uma instância do Secure Web Proxy

Implemente uma instância de proxy Web seguro no modo de encaminhamento explícito na rede de nuvem privada virtual (VPC) que quer usar para o tráfego de saída. Quando criar a instância, associe-a à política e às regras que criou nos passos anteriores.

A publicação de um proxy Web seguro com uma associação de serviço do Private Service Connect não suporta o modo de encaminhamento do próximo salto.

Para ver informações sobre a configuração da instância, consulte o artigo Configure um proxy Web. Neste momento, não precisa de concluir os outros passos nessa página.

Implemente o proxy Web seguro como um serviço do Private Service Connect num modelo de hub e spoke

Esta secção descreve como implementar o proxy Web seguro como um serviço do Private Service Connect, usando um modelo de hub e spoke para centralizar a gestão do tráfego de saída.

Publique o proxy Web seguro como um serviço do Private Service Connect

Para publicar o proxy Web seguro como um serviço, crie uma sub-rede do Private Service Connect e uma associação do serviço. A sub-rede e a associação do serviço têm de partilhar a mesma região que os pontos finais do Private Service Connect que acedem à associação do serviço.

Crie uma sub-rede para o Private Service Connect

Para criar uma sub-rede para o Private Service Connect, faça o seguinte.

Consola

  1. Na Google Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Clique no nome de uma rede de VPC para mostrar a página de detalhes da rede de VPC.

  3. Clique em Sub-redes.

  4. Clique em Adicionar sub-rede. No painel apresentado, faça o seguinte:

    1. Indique um Nome.
    2. Selecione uma região.
    3. Na secção Finalidade, selecione Private Service Connect.
    4. Para Tipo de pilha de IP, selecione IPv4 (pilha única) ou IPv4 e IPv6 (pilha dupla).
    5. Introduza um intervalo de IPv4. Por exemplo, 10.10.10.0/24.
    6. Se estiver a criar uma sub-rede de pilha dupla, defina o tipo de acesso IPv6 como Interno.
    7. Clique em Adicionar.

Cloud Shell

Efetue um dos seguintes passos:

  • Para criar uma sub-rede do Private Service Connect apenas IPv4, faça o seguinte:

    gcloud compute networks subnets create SUBNET_NAME \
        --network=NETWORK_NAME \
        --region=REGION \
        --range=SUBNET_RANGE \
        --purpose=PRIVATE_SERVICE_CONNECT
    
  • Para criar uma sub-rede do Private Service Connect de pilha dupla, faça o seguinte:

    gcloud compute networks subnets create SUBNET_NAME \
        --network=NETWORK_NAME \
        --region=REGION \
        --stack-type=IPV4_IPV6 \
        --ipv6-access-type=INTERNAL \
        --range=SUBNET_RANGE \
        --purpose=PRIVATE_SERVICE_CONNECT
    

Substitua o seguinte:

  • SUBNET_NAME: o nome a atribuir à sub-rede.

  • NETWORK_NAME: o nome da VPC para a nova sub-rede.

  • REGION: a região da nova sub-rede. Tem de ser a mesma região que o serviço que está a publicar.

  • SUBNET_RANGE: o intervalo de endereços IPv4 a usar para a sub-rede, por exemplo, 10.10.10.0/24.

Crie uma associação de serviço

Para publicar o proxy Web seguro como uma associação de serviço na rede VPC central (hub), faça o seguinte.

Esta secção descreve como criar uma associação de serviço que aceite automaticamente todas as ligações. Para informações sobre a aprovação explícita ou outras opções de configuração, consulte o artigo Publique um serviço com aprovação explícita.

Consola

  1. Na Google Cloud consola, aceda à página Private Service Connect.

    Aceda ao Private Service Connect

  2. Clique no separador Serviços publicados.

  3. Clique em Publicar serviço.

  4. Na secção Detalhes do alvo, selecione Proxy Web seguro.

  5. Selecione a instância do proxy Web seguro que quer publicar. Os campos de rede e região são preenchidos com os detalhes da instância de proxy Web seguro selecionada.

  6. Em Nome do serviço, introduza um nome para a associação de serviço.

  7. Selecione uma ou mais sub-redes do Private Service Connect para o serviço. A lista é preenchida com sub-redes da rede VPC da instância do proxy Web seguro selecionada.

  8. Na secção Preferência de ligação, selecione Aceitar automaticamente todas as ligações.

  9. Clique em Adicionar serviço.

Cloud Shell

Use o comando gcloud compute service-attachments create.

gcloud compute service-attachments create SERVICE_ATTACHMENT_NAME \
    --target-service=SWP_INSTANCE_URI \
    --connection-preference=ACCEPT_AUTOMATIC \
    --nat-subnets=NAT_SUBNET_NAME \
    --region=REGION \
    --project=PROJECT \

Substitua o seguinte:

  • SERVICE_ATTACHMENT_NAME: o nome do anexo de serviço
  • SWP_INSTANCE_URI: o URI da instância do Secure Web Proxy, no seguinte formato: //networkservices.googleapis.com/projects/PROJECT_ID/locations/REGION/gateways/INSTANCE_NAME
  • NAT_SUBNET_NAME: o nome da sub-rede do Private Service Connect
  • REGION: a região da implementação do Secure Web Proxy
  • PROJECT: o projeto da implementação do Secure Web Proxy

Crie pontos finais

Crie um ponto final em cada rede VPC e região que precise de enviar tráfego de saída através da instância de proxy Web seguro centralizada. Repita os seguintes passos para cada ponto final que tem de criar.

Consola

  1. Na Google Cloud consola, aceda à página Private Service Connect.

    Aceda ao Private Service Connect

  2. Clique no separador Pontos finais ligados.

  3. Clique em Associar ponto final.

  4. Em Segmentar, selecione Serviço publicado.

  5. Para Serviço de destino, introduza o URI do anexo de serviço ao qual quer estabelecer ligação.

    O URI do anexo de serviço está neste formato: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

  6. Em Nome do ponto final, introduza um nome a usar para o ponto final.

  7. Selecione uma rede para o ponto final.

  8. Selecione uma sub-rede para o ponto final.

  9. Selecione um endereço IP para o ponto final. Se precisar de um novo endereço IP, pode criar um:

    1. Clique no menu pendente Endereço IP e selecione Criar endereço IP.
    2. Introduza um Nome e uma Descrição opcional para o endereço IP.
    3. Selecione uma versão do IP.
    4. Se estiver a criar um endereço IPv4, selecione Atribuir automaticamente ou Permitir-me escolher.

      Se selecionou Deixar-me escolher, introduza o endereço IP personalizado que quer usar.

    5. Clique em Reservar.

  10. Clique em Adicionar ponto final.

Cloud Shell

  1. Reserve um endereço IP interno para atribuir ao ponto final.

    gcloud compute addresses create ADDRESS_NAME \
        --region=REGION \
        --subnet=SUBNET \
        --ip-version=IP_VERSION
    

    Substitua o seguinte:

    • ADDRESS_NAME: o nome a atribuir ao endereço IP reservado.

    • REGION: a região do endereço IP do ponto final. Esta tem de ser a mesma região que contém a associação de serviço do produtor de serviços.

    • SUBNET: o nome da sub-rede para o endereço IP do ponto final.

    • IP_VERSION: a versão IP do endereço IP, que pode ser IPV4 ou IPV6. IPV4 é a predefinição. Para especificar IPV6, o endereço IP tem de estar associado a uma sub-rede com um intervalo de endereços IPv6 internos.

  2. Crie uma regra de encaminhamento para associar o ponto final à associação do serviço do produtor do serviço.

    gcloud compute forwarding-rules create ENDPOINT_NAME \
       --region=REGION \
       --network=NETWORK_NAME \
       --address=ADDRESS_NAME \
       --target-service-attachment=SERVICE_ATTACHMENT
    

    Substitua o seguinte:

    • ENDPOINT_NAME: o nome a atribuir ao ponto final.

    • REGION: a região do ponto final. Tem de ser a mesma região que contém a associação do serviço do produtor do serviço.

    • NETWORK_NAME: o nome da rede VPC para o ponto final.

    • ADDRESS_NAME: o nome da morada reservada.

    • SERVICE_ATTACHMENT: o URI da associação do serviço do produtor do serviço. Por exemplo: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

Encaminhe cargas de trabalho para pontos finais do Private Service Connect

Configure as variáveis de ambiente do proxy para que cada carga de trabalho use o endereço IP de um ponto final do Private Service Connect para o tráfego de saída.

Por exemplo, para uma carga de trabalho num ambiente Linux ou macOS, pode usar a linha de comandos para configurar temporariamente as variáveis de ambiente HTTP_PROXY e HTTPS_PROXY:

export HTTP_PROXY="http://ENDPOINT_IP_ADDRESS:HTTP_PORT"
export HTTPS_PROXY="https://ENDPOINT_IP_ADDRESS:HTTPS_PORT"

Substitua o seguinte:

  • ENDPOINT_IP_ADDRESS: o endereço IP interno do seu ponto final
  • HTTP_PORT: a porta para receber tráfego HTTP
  • HTTPS_PORT: a porta para receber tráfego HTTPS

Para obter informações sobre a definição permanente de variáveis de proxy no ambiente das suas cargas de trabalho, consulte a documentação do seu sistema operativo.

O que se segue?