Crea ed esegui il deployment di un'istanza di Secure Web Proxy
Questa guida rapida spiega come eseguire il deployment e testare un'istanza di Secure Web Proxy. I passaggi descrivono il deployment di Secure Web Proxy in modalità di routing esplicito, che funziona come un proxy esplicito.
Le istanze di Secure Web Proxy in modalità di routing esplicito possono essere deployate come servizio Private Service Connect. In alternativa, puoi eseguire il deployment di Secure Web Proxy in modalità di routing "Hop successivo".
Il deployment di Secure Web Proxy in modalità di routing esplicito include i seguenti passaggi:
- Crea un criterio Secure Web Proxy.
- Crea regole Secure Web Proxy e aggiungile al criterio.
- Configura l'istanza di Secure Web Proxy in modalità di routing esplicito.
- Testa la connettività da un'istanza di macchina virtuale (VM) Linux per verificare che il proxy e le relative policy funzionino correttamente.
Prima di iniziare
Completa i passaggi di configurazione iniziale.
(Facoltativo) Per eseguire gli esempi di riga di comando
gcloudspecificati in questo documento, installa Google Cloud CLI in uno dei seguenti ambienti di sviluppo:Cloud Shell
Per utilizzare un terminale online con gcloud CLI già configurata, attiva Cloud Shell.
Alla fine di questa pagina viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. L'inizializzazione della sessione può richiedere alcuni secondi.
Se hai già installato gcloud CLI, assicurati di avere l'ultima versione disponibile eseguendo il comando
gcloud components update.Shell locale
Per utilizzare un ambiente di sviluppo locale:
Crea o seleziona un Google Cloud progetto esistente.
Se non prevedi di conservare le risorse che crei in questa procedura, ti consigliamo di creare un progetto invece di selezionarne uno esistente. Dopo aver completato i passaggi di questa guida rapida, puoi eliminare il progetto per rimuovere tutte le risorse associate al progetto.
Console
Nella console Google Cloud , nella pagina di selezione del progetto, crea un progetto Google Cloud o seleziona un progetto esistente.
Cloud Shell
Crea un progetto Google Cloud .
gcloud projects create PROJECT_ID
Sostituisci
PROJECT_IDcon l'ID progetto che preferisci.Seleziona il progetto Google Cloud che hai creato.
gcloud config set project PROJECT_ID
Crea un'istanza VM Linux.
gcloud compute instances create swp-test-vm \ --subnet=default \ --zone=ZONE \ --image-project=debian-cloud \ --image-family=debian-11Sostituisci
ZONEcon la zona dell'istanza VM di test.Compute Engine concede il ruolo Amministratore istanze Compute (
roles/compute.instanceAdmin) all'utente che crea l'istanza VM. Compute Engine aggiunge anche l'utente al gruppo sudo.Crea una regola 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
Ruoli obbligatori
Per completare le attività di questo tutorial, assicurati di disporre dei seguenti ruoli:
Ruolo Compute Network Admin (
roles/compute.networkAdmin)Ruolo Editor Certificate Manager (
roles/certificatemanager.editor)
Per ulteriori informazioni, consulta le seguenti risorse:
Crea un criterio Secure Web Proxy
Questa sezione spiega i passaggi per creare un criterio Secure Web Proxy. I criteri possono quindi fungere da contenitore per tutte le regole di sicurezza che regolano il flusso di traffico tramite Secure Web Proxy. Dopo aver creato la policy, puoi creare regole e aggiungerle alla policy.
Console
Nella console Google Cloud , vai alla pagina Policy SWP.
Fai clic su Crea una policy.
Nel campo Nome, inserisci un nome per la policy, ad esempio
myswppolicy.Nel campo Descrizione, inserisci una descrizione della norma, ad esempio
My new swp policy.Per Regioni, seleziona la regione in cui vuoi creare il criterio, ad esempio
us-central1.Se vuoi creare regole per la tua policy, fai clic su Aggiungi regola. Per saperne di più, consulta la sezione Creare regole Secure Web Proxy.
Fai clic su Crea.
Cloud Shell
Utilizza un editor di testo per creare un file
policy.yaml.Aggiungi il codice seguente al file
policy.yaml:description: basic Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/myswppolicySostituisci quanto segue:
PROJECT_ID: l'ID del progettoREGION: la regione in cui viene creata la policy, ad esempious-central1
Crea la policy di Secure Web Proxy.
gcloud network-security gateway-security-policies import myswppolicy \ --source=policy.yaml \ --location=REGION
Crea regole Secure Web Proxy
Questa sezione descrive in dettaglio i passaggi per creare regole Secure Web Proxy. Le regole aiutano a definire i controlli di accesso effettivi per il traffico web.
All'interno delle norme che hai creato in precedenza, puoi definire regole
come allow-wikipedia-org. Queste regole specificano i criteri per la corrispondenza delle sessioni web, ad esempio la corrispondenza di un host specifico come www.wikipedia.org, e quindi consentono o negano il traffico web.
Console
Nella console Google Cloud , vai alla pagina Policy SWP.
Fai clic sul nome della policy, ad esempio
myswppolicy.Fai clic su Aggiungi regola.
Per ogni regola, procedi nel seguente modo:
In Priorità, inserisci un ordine di valutazione numerico per la regola. Le regole vengono valutate dalla priorità più alta a quella più bassa, dove
0è la priorità più alta.Nel campo Nome, inserisci un nome per la regola, ad esempio
allow-wikipedia-org.Nel campo Descrizione, inserisci una descrizione della regola, ad esempio
Allow wikipedia.org.Per Azione, seleziona una delle seguenti opzioni:
- Consenti: per consentire le richieste di connessione che corrispondono alla regola.
- Nega: per negare le richieste di connessione che corrispondono alla regola.
Per il campo Stato, seleziona una delle seguenti opzioni per l'applicazione della regola:
- Attivata: per applicare la regola all'istanza di Secure Web Proxy.
- Disattivato: per non applicare la regola all'istanza di Secure Web Proxy.
Nella sezione Corrispondenza sessione, specifica i criteri per la corrispondenza della sessione, ad esempio
host() == 'www.wikipedia.org'.Per saperne di più sulla sintassi di
SessionMatcher, consulta il riferimento al linguaggio del matcher CEL.Nella sezione Corrispondenza applicazione, specifica i criteri per la corrispondenza della richiesta. Poiché non abbiamo abilitato la regola per l'ispezione TLS, la richiesta può corrispondere solo al traffico HTTP.
Per saperne di più sulla corrispondenza del traffico TCP, consulta Configura le regole proxy TCP.
Fai clic su Crea.
Per aggiungere un'altra regola, fai clic su Aggiungi regola.
Cloud Shell
Utilizza un editor di testo per creare il file
rule.yaml.Aggiungi il seguente codice al file
rule.yaml. Per ulteriori informazioni sulla sintassi diSessionMatcher, consulta il riferimento al linguaggio del matcher CEL.name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME description: Allow wikipedia.org enabled: true priority: 1 basicProfile: ALLOW sessionMatcher: host() == 'www.wikipedia.org'Sostituisci quanto segue:
PROJECT_ID: l'ID del progettoREGION: la regione della policyRULE_NAME: il nome della regola, ad esempioallow-wikipedia-org.
Crea la regola della policy di sicurezza.
gcloud network-security gateway-security-policies rules import allow-wikipedia-org \ --source=rule.yaml \ --location=REGION \ --gateway-security-policy=policy1
Configurare un proxy web
Questa sezione descrive come eseguire il deployment di Secure Web Proxy in modalità di routing esplicito, che funge da proxy esplicito. Spiega anche come associare le norme e le regole create in precedenza all'istanza di Secure Web Proxy, assicurando che tutto il traffico che la attraversa sia soggetto ai controlli di accesso definiti.
Console
Nella console Google Cloud , vai alla pagina Proxy web.
Fai clic su Crea un proxy web sicuro.
Nel campo Nome, inserisci un nome per il proxy web, ad esempio
myswp.Nel campo Descrizione, inserisci una descrizione del proxy web, ad esempio
My new swp.Per Modalità di routing, seleziona l'opzione Esplicita.
Per Regioni, seleziona la regione in cui vuoi creare il proxy web, ad esempio
us-central1.In Rete, seleziona la rete in cui vuoi creare il proxy web.
Per Subnet, seleziona la subnet VPC che hai creato in precedenza nell'ambito dei passaggi di configurazione iniziali.
(Facoltativo) Nel campo Indirizzo IP del proxy web, inserisci l'indirizzo IP del Secure Web Proxy.
Puoi inserire un indirizzo IP dall'intervallo di indirizzi IP di Secure Web Proxy che si trovano nella subnet creata nel passaggio precedente. Se non inserisci l'indirizzo IP, l'istanza di Secure Web Proxy sceglie automaticamente un indirizzo IP dalla subnet selezionata.
In Porte, inserisci i numeri di porta, ad esempio
80o443, su cui vuoi che il proxy web sia in ascolto.
In Certificato, seleziona il certificato che vuoi utilizzare per creare il proxy web.
Per Policy associata, seleziona la policy che hai creato per associare il proxy web.
Fai clic su Crea.
Cloud Shell
Utilizza un editor di testo per creare un file
gateway.yaml.Aggiungi il codice seguente al file
gateway.yaml:name: projects/PROJECT_ID/locations/REGION/gateways/myswp 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(Facoltativo) Per consentire alle applicazioni client di altre Google Cloud regioni di connettersi al proxy, abilita l'accesso globale quando crei l'istanza Secure Web Proxy.
Nel file
gateway.yaml, aggiungi il campoallow_global_accesse impostalo sutrue.Importante: puoi attivare
allow_global_accesssolo quando crei un'istanza di Secure Web Proxy. Non puoi configurare questa impostazione in un secondo momento.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 allow_global_access: trueSostituisci quanto segue: