Implemente uma instância do Secure Web Proxy

Este guia de início rápido explica como implementar e testar uma instância do proxy Web seguro.

Os passos descrevem a implementação do proxy Web seguro no modo de encaminhamento explícito, que funciona como um proxy explícito. As instâncias do proxy Web seguro no modo de encaminhamento explícito podem ser publicadas como um serviço do Private Service Connect.

Em alternativa, pode implementar o proxy Web seguro no modo de encaminhamento de salto seguinte. Para mais informações, consulte o artigo Implemente o proxy Web seguro como um próximo salto.

Antes de começar

  1. Conclua os passos de configuração inicial.

  2. Opcional: instale a CLI gcloud em qualquer um dos seguintes ambientes de desenvolvimento se quiser executar os exemplos de linha de comando especificados neste guia:gcloud

    Cloud Shell

    Para usar um terminal online com a CLI gcloud já configurada, ative o Cloud Shell:

    No final desta página, é iniciada uma sessão do Cloud Shell e é apresentado um pedido de linha de comandos. A sessão pode demorar alguns segundos a ser inicializada.

    Shell local

    Para usar um ambiente de desenvolvimento local, siga estes passos:

    1. Instale a CLI gcloud.
    2. Inicialize a CLI gcloud.
  3. Crie ou selecione um Google Cloud projeto.

    Consola

    Na Google Cloud consola, na página do seletor de projetos, selecione ou crie um Google Cloud projeto.

    Aceder ao seletor de projetos

    Cloud Shell

    • Crie um Google Cloud projeto:

      gcloud projects create PROJECT_ID
      

      Substitua PROJECT_ID pelo ID do projeto que quer.

    • Selecione o Google Cloud projeto que criou:

      gcloud config set project PROJECT_ID
      
  4. Crie uma instância de máquina virtual (VM) Linux.

    gcloud compute instances create swp-test-vm \
        --subnet=default \
        --zone=ZONE \
        --image-project=debian-cloud \
        --image-family=debian-11
    

    Substitua ZONE pela zona da instância de VM de teste.

    O Compute Engine concede ao utilizador que cria a VM a função de administrador da instância do Compute Engine (roles/compute.instanceAdmin). O Compute Engine também adiciona esse utilizador ao grupo sudo.

  5. Crie uma regra de firewall.

    gcloud compute firewall-rules create default-allow-ssh \
        --direction=INGRESS \
        --priority=1000 \
        --network=default \
        --action=ALLOW \
        --rules=tcp:22 \
        --source-ranges=0.0.0.0/0
    

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 policy1.

  4. Introduza uma descrição da política, como My new swp policy.

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

  6. Se quiser criar regras para a sua política, clique em Adicionar regra. Para mais informações, consulte a secção Crie regras de proxy Web seguro.

  7. Clique em Criar.

Cloud Shell

  1. Crie o 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 sua política
  2. Crie a política de proxy Web seguro.

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

Crie regras do Secure Web Proxy

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. Clique em Adicionar regra.

  4. Preencha os seguintes campos da regra:

    1. Nome
    2. Descrição
    3. Estado
    4. Prioridade: ordem de avaliação numérica da regra. As regras são avaliadas da prioridade mais elevada para a mais baixa, em que 0 é a prioridade mais elevada.
    5. Na secção Ação, especifique se as ligações que correspondem à regra são permitidas (Permitir) ou recusadas (Recusar).
    6. Na secção Correspondência de sessão, especifique os critérios para fazer corresponder a sessão. Para mais informações sobre a sintaxe de SessionMatcher, consulte a referência do idioma do motor de correspondência do IEC.
    7. Opcional: se quiser ativar a inspeção TLS, selecione Ativar inspeção TLS.
    8. Na secção Correspondência da aplicação, especifique os critérios para fazer corresponder o pedido. Se não ativar a regra para inspeção de TLS, o pedido só pode corresponder ao tráfego HTTP.

      Para obter informações sobre a correspondência do tráfego TPC, consulte o artigo Configure regras de proxy TCP para a sua aplicação.

    9. Clique em Criar.

  5. Clique em Adicionar regra para adicionar outra regra.

Cloud Shell

  1. Crie o ficheiro rule.yaml conforme mostrado aqui. Para mais informações sobre a sintaxe de SessionMatcher, consulte a referência da linguagem de correspondência do IEC.

    name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-wikipedia-org
    description: Allow wikipedia.org
    enabled: true
    priority: 1
    basicProfile: ALLOW
    sessionMatcher: host() == 'www.wikipedia.org'
    
    • Opcional: em alternativa, se quiser criar uma regra com a configuração de inspeção TLS, crie o ficheiro rule.yaml, conforme mostrado aqui.

      Para obter informações sobre a correspondência do tráfego TPC, consulte o artigo Configure regras de proxy TCP para a sua aplicação.

      name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-wikipedia-org
      description: Allow wikipedia.org
      enabled: true
      priority: 1
      basicProfile: ALLOW
      sessionMatcher: host() == 'www.wikipedia.org'
      applicationMatcher: request.path.contains('index.html')
      tlsInspectionEnabled: true
      

      Substitua o seguinte:

      • PROJECT_ID: o ID do seu projeto
      • REGION: a região da sua política
  2. Crie a regra da política de segurança.

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

Configure um proxy Web

Esta secção explica como implementar o proxy Web seguro no modo de encaminhamento explícito, que funciona como um proxy explícito.

Consola

  1. Na Google Cloud consola, aceda à página Proxies Web.

    Aceda a Proxies Web

  2. Clique em Criar um proxy Web seguro.

  3. Introduza um nome para o proxy Web que quer criar, como myswp.

  4. Introduza uma descrição do proxy Web, como My new swp.

  5. Para o Modo de encaminhamento, selecione a opção Explícito.

  6. Na lista Regiões, selecione a região onde quer criar o proxy Web.

  7. Na lista Rede, selecione a rede onde quer criar o proxy Web.

  8. Na lista Sub-rede, selecione a sub-rede onde quer criar o proxy Web.

  9. Opcional: introduza o endereço IP do proxy Web seguro. Pode introduzir um endereço IP do intervalo de endereços IP do proxy Web seguro que reside na sub-rede que criou no passo anterior. Se não introduzir o endereço IP, a instância do proxy Web seguro escolhe automaticamente um endereço IP da sub-rede selecionada.

  10. Na lista Certificado, selecione o certificado que quer usar para criar o proxy Web.

  11. Na lista Política, selecione a política que criou para associar ao proxy Web.

  12. Clique em Criar.

Cloud Shell

  1. Crie o ficheiro gateway.yaml.

    name: projects/PROJECT_ID/locations/REGION/gateways/swp1
    type: SECURE_WEB_GATEWAY
    addresses: ["IP_ADDRESS"]
    ports: [443]
    gatewaySecurityPolicy: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1
    network: projects/PROJECT_ID/global/networks/NETWORK
    subnetwork: projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK
    routingMode: EXPLICIT_ROUTING_MODE
    

    Substitua o seguinte:

    • PROJECT_ID: o ID do projeto
    • REGION: a região da sua instância do Secure Web Proxy
    • IP_ADDRESS: o endereço IP da sua instância do Secure Web Proxy
    • NETWORK: a rede da instância do Secure Web Proxy
    • SUBNETWORK: a sub-rede da sua instância do Secure Web Proxy
  2. Crie uma instância do Secure Web Proxy com base em gateway.yaml.

    gcloud network-services gateways import swp1 \
        --source=gateway.yaml \
        --location=REGION
    

    A implementação de uma instância de proxy Web seguro pode demorar vários minutos.

Teste a conetividade

  1. Ligue-se à VM que aprovisionou anteriormente.

    gcloud compute ssh swp-test-vm \
        --zone=ZONE
    

    Substitua ZONE pela zona da instância de VM de teste.

  2. Teste a instância do Secure Web Proxy.

    curl -s -o /dev/null -w "%{http_code}\\n" -x IP_ADDRESS:443 https://www.wikipedia.org
    

    Substitua IP_ADDRESS pelo endereço IP da sua instância do proxy Web seguro. Este comando imprime o código de estado HTTP devolvido por www.wikipedia.org. Se o comando for bem-sucedido, o código de estado é 200. No entanto, se houver um problema com o proxy, o comando devolve um código de estado 000 para indicar um erro de ligação. Para ver as mensagens de erro detalhadas, adicione a opção -v ao comando.

Limpar

Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

Elimine a instância do swp1 Secure Web Proxy

Consola

  1. Na Google Cloud consola, aceda à página Proxies Web. Pode ver a lista de todos os proxies Web ou apenas os proxies Web que estão disponíveis numa determinada rede.

    Aceda a Proxies Web

  2. Selecione o proxy Web que quer eliminar.

  3. Clique em Eliminar.

  4. Clique novamente em Eliminar para confirmar.

Cloud Shell

gcloud network-services gateways delete swp1 \
    --location=REGION

Substitua REGION pela região da sua instância do Secure Web Proxy.

Elimine a regra allow-wikipedia-org

Consola

  1. Na Google Cloud consola, aceda à página Proxies Web. Pode ver a lista de todos os proxies Web ou apenas os proxies Web que estão disponíveis numa determinada rede.

    Aceda a Proxies Web

  2. Clique na sua política.

  3. Selecione a regra que quer eliminar.

  4. Clique em Eliminar.

  5. Clique novamente em Eliminar para confirmar.

Cloud Shell

gcloud network-security gateway-security-policies rules delete allow-wikipedia-org \
    --location=REGION \
    --gateway-security-policy=policy1

Substitua REGION pela região da sua política.

Elimine a política do policy1 Secure Web Proxy

Consola

  1. Na Google Cloud consola, aceda à página Proxies Web. Pode ver a lista de todos os proxies Web ou apenas os proxies Web que estão disponíveis numa determinada rede.

    Aceda a Proxies Web

  2. Selecione a política que quer eliminar.

  3. Clique em Eliminar.

  4. Clique novamente em Eliminar para confirmar.

Cloud Shell

gcloud network-security gateway-security-policies delete policy1 \
    --location=REGION

Substitua REGION pela região da sua política.

Elimine a instância de VM Linux swp-test-vm

Consola

  1. Na Google Cloud consola, aceda à página Instâncias de VM.

    Aceder às instâncias de VM

  2. Selecione as instâncias que quer eliminar.

  3. Clique em Eliminar.

Cloud Shell

gcloud compute instances delete swp-test-vm

O que se segue?