Utilizza un elenco di URL per creare criteri

Questa guida illustra come utilizzare gli elenchi di URL per definire gli URL che gli utenti possono l'accesso.

Prima di iniziare

  • Completa i passaggi della configurazione iniziale.

  • Verifica di aver installato la versione 406.0.0 o successiva di Google Cloud CLI:

    gcloud version | head -n1
    

    Se hai installato una versione precedente della gcloud CLI, aggiorna la versione:

    gcloud components update --version=406.0.0
    

Creare un'istanza di Secure Web Proxy con un criterio vuoto

Per creare un'istanza di Secure Web Proxy, crea prima un criterio di sicurezza vuoto e poi un proxy web.

Creare un criterio di sicurezza vuoto

Console

  1. Nella console Google Cloud, vai alla pagina Sicurezza della rete.

    Vai a Sicurezza di rete

  2. Fai clic su Secure Web Proxy (Proxy web sicuro).

  3. Fai clic sulla scheda Norme.

  4. Fai clic su Crea un criterio.

  5. Inserisci un nome per il criterio che vuoi creare, ad esempio myswppolicy.

  6. Inserisci una descrizione del criterio, ad esempio My new swp policy.

  7. Nell'elenco Regioni, seleziona la regione in cui vuoi creare il criterio.

  8. Fai clic su Crea.

Cloud Shell

  1. Utilizza l'editor di testo che preferisci per creare il file POLICY_FILE.yaml. Sostituisci POLICY_FILE con il nome file che per il file dei criteri.

  2. Aggiungi quanto segue al file YAML che hai creato:

    name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
    description: POLICY_DESCRIPTION
    

    Sostituisci quanto segue:

    • PROJECT_NAME: il nome del progetto
    • REGION: la regione a cui si applicano queste norme
    • POLICY_NAME: il nome del criterio che stai creando
    • POLICY_DESCRIPTION: la descrizione del criterio che stai creando
  3. Importa il criterio di sicurezza:

    gcloud network-security gateway-security-policies import POLICY_NAME \
        --source=POLICY_FILE.yaml \
        --location=REGION
    

Crea un proxy web

Console

  1. Nella console Google Cloud, vai alla pagina Sicurezza della rete.

    Vai a Sicurezza di rete

  2. Fai clic su Secure Web Proxy (Proxy web sicuro).

  3. Fai clic su Configura un proxy web.

  4. Inserisci un nome per il proxy web che vuoi creare, ad esempio myswp.

  5. Inserisci una descrizione del proxy web, ad esempio My new swp.

  6. Nell'elenco Regioni, seleziona la regione in cui vuoi per creare il proxy web.

  7. Nell'elenco Rete, seleziona la rete in cui vuoi per creare il proxy web.

  8. Nell'elenco Subnet, seleziona la subnet a cui vuoi per creare il proxy web.

  9. Inserisci l'indirizzo IP del proxy web.

  10. Nell'elenco Certificato, seleziona il certificato che vuoi. da utilizzare per creare il proxy web.

  11. Nell'elenco Criterio, seleziona il criterio che hai creato per associare il proxy web.

  12. Fai clic su Crea.

Cloud Shell

  1. Utilizza il tuo editor di testo preferito per creare il file GATEWAY_FILE.yaml. Sostituisci GATEWAY_FILE con il nome del file che vuoi assegnare al file del proxy web.

  2. Aggiungi quanto segue al file YAML che hai creato:

    name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME
    type: SECURE_WEB_GATEWAY
    ports: [GATEWAY_PORT_NUMBERS]
    certificateUrls: [CERTIFICATE_URLS]
    gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
    network: projects/PROJECT_NAME/global/networks/NETWORK_NAME
    subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME
    addresses: [GATEWAY_IP_ADDRESS]
    scope: samplescope
    

    Sostituisci quanto segue:

    • GATEWAY_NAME: il nome di questa istanza
    • GATEWAY_PORT_NUMBERS: un elenco di numeri di porta per questo gateway, ad esempio [80,443]
    • CERTIFICATE_URLS: un elenco di certificati SSL URL
    • SUBNET_NAME: il nome della subnet che contiene GATEWAY_IP_ADDRESS

    • GATEWAY_IP_ADDRESS: un elenco facoltativo di indirizzi IP per le istanze di Secure Web Proxy all'interno delle sottoreti proxy create in precedenza nei passaggi di configurazione iniziale

      Se scegli di non elencare gli indirizzi IP, ometti il campo per consentire al proxy web di scegliere un indirizzo IP per te.

  3. Crea un'istanza di Secure Web Proxy:

    gcloud network-services gateways import GATEWAY_NAME \
        --source=GATEWAY_FILE.yaml \
        --location=REGION
    

Testa la connettività

Per verificare la connettività, utilizza il comando curl da qualsiasi VM all'interno della rete Virtual Private Cloud (VPC):

  curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure

È previsto un errore 403 Forbidden.

Crea un elenco di URL

Per creare un elenco di URL e aggiungere una regola, completa le attività nelle sezioni seguenti.

Creare e configurare un elenco di URL

Console

  1. Nella console Google Cloud, vai alla pagina Sicurezza della rete.

    Vai a Sicurezza di rete

  2. Fai clic su Secure Web Proxy.

  3. Fai clic sulla scheda Elenchi di URL.

  4. Fai clic su Crea un elenco di URL.

  5. Inserisci un nome per l'elenco di URL che vuoi creare, ad esempio myurllist.

  6. Inserisci una descrizione dell'elenco di URL, ad esempio My new URL list.

  7. Nell'elenco Regioni, seleziona la regione in cui vuoi per creare l'elenco di URL.

  8. Fai clic su Carica elenchi per caricare l'elenco di host, URL o pattern corrispondenti. Per saperne di più, consulta la sezione Riferimento alla sintassi di UrlList.

  9. Fai clic su Crea.

Cloud Shell

  1. Utilizza l'editor di testo che preferisci per creare il file URL_LIST_FILE.yaml. ReplaceURL_LIST_FILE` con il nome file che preferisci.

      name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME
      values: URL_LIST
    

    Sostituisci quanto segue:

    • PROJECT_ID: il numero del tuo progetto
    • REGION: la regione a cui si applica questo elenco di URL
    • URL_LIST_NAME: un nome per l'elenco di URL che stai creando
    • URL_LIST: elenco di host, URL o pattern da abbinare

    Per ulteriori informazioni, vedi Riferimento alla sintassi di UrlList.

    Di seguito è riportato un esempio di file di regole dell'elenco di URL:

    name: projects/PROJECT_ID/locations/REGION/urlLists/example-org-allowed-list
    values:
      - www.example.com
      - about.example.com
      - "*.google.com"
      - "github.com/example-org/*"
    

    Il carattere asterisco (*) ha un significato speciale in YAML. Pertanto, devi racchiudere tra virgolette gli URL che includono un carattere *.

  2. Aggiungi l'elenco di URL in modo che possa essere utilizzato come riferimento da una regola di Secure Web Proxy:

    gcloud network-security url-lists import URL_LIST_NAME \
        --location=REGION \
        --project=PROJECT_ID \
        --source=URL_LIST_FILE.yaml
    

Aggiungi una regola

Console

  1. Nella console Google Cloud, vai alla pagina Sicurezza di rete.

    Vai a Sicurezza della rete

  2. Fai clic su Secure Web Proxy (Proxy web sicuro).

  3. Nel menu del selettore progetti, seleziona l'ID organizzazione o la cartella. che contiene il criterio.

  4. Fai clic sul nome della norma.

  5. Fai clic su Aggiungi regola.

  6. Compila i campi della regola:

    1. Nome
    2. Descrizione
    3. Stato
    4. Priorità: l'ordine di valutazione numerica della regola. Le regole vengono valutate dalla priorità più alta a quella più bassa, dove 0 è la priorità più alta.
    5. Nella sezione Azione, specifica se le connessioni se la regola è consentita (Allow) o negata (Nega).
    6. Nella sezione Corrispondenza sessione, specifica il nome dell'elenco di URL che hai creato in precedenza. Ad esempio:

        sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
      
    7. Per attivare l'ispezione TLS, seleziona Abilita ispezione TLS.

    8. Nella sezione Corrispondenza applicazione, specifica i criteri per che corrispondono alla richiesta.

    9. Fai clic su Crea.

  7. Fai clic su Aggiungi regola per aggiungere un'altra regola.

  8. Fai clic su Crea per creare il criterio.

Cloud Shell

  1. Utilizza l'editor di testo che preferisci per creare il file RULE_FILE.yaml. Sostituisci RULE_FILE con il nome file che preferisci.

    name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME
    basicProfile: ALLOW
    enabled: true
    priority: PRIORITY_VALUE
    description: RULE_DESCRIPTION
    sessionMatcher: SESSION_CEL_EXPRESSION
    applicationMatcher: APPLICATION_CEL_EXPRESSION
    

    Sostituisci quanto segue:

    • PROJECT_ID: il numero del progetto
    • REGION: la regione a cui si applica questa regola
    • POLICY_NAME: il nome di un GatewaySecurityPolicy esistente utilizzato dalla tua istanza Secure Web Proxy
    • RULE_NAME: il nome di GatewaySecurityPolicyRule che sei creazione in corso
    • PRIORITY_VALUE: un valore di priorità per questa regola; numeri più bassi corrispondono a priorità più elevate
    • RULE_DESCRIPTION: una descrizione della norma che stai creazione in corso
    • SESSION_CEL_EXPRESSION: un'espressione CEL (Common Expression Language) per la sessione
    • APPLICATION_CEL_EXPRESSION: un'espressione CEL per l'applicazione

    Di seguito è riportato un esempio di file di regole:

    name: projects/PROJECT_ID/locations/REGION/urlLists/allow-repos
    basicProfile: ALLOW
    enabled: true
    priority: 100
    description: Allow access to our list of known code repos.
    sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
    

  2. Aggiungi una regola di Secure Web Proxy utilizzando l'elenco di URL creato in precedenza:

        gcloud network-security gateway-security-policies rules import RULE_NAME \
          --location=REGION \
          --project=PROJECT_ID \
          --source=RULE_FILE.yaml \
          --gateway-security-policy=POLICY_NAME
    

Testa la connettività

Per verificare la connettività, usa il seguente comando curl:

curl -x https://SWP_IP_ADDRESS:SWP_PORT_NUMBER HTTP_TEST_ADDRESS
--proxy-insecure

Sostituisci quanto segue:

  • SWP_IP_ADDRESS: l'indirizzo IP del proxy web

  • SWP_PORT_NUMBER: il numero di porta per il proxy web, ad esempio 443

  • HTTP_TEST_ADDRESS: un indirizzo da testare, ad esempio https://www.example.com, che corrisponde a una voce host o URL in URL_LIST

La richiesta deve restituire una risposta positiva.

Passaggi successivi