arrow_back

Log di flusso VPC: analisi del traffico di rete

Partecipa Accedi
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Log di flusso VPC: analisi del traffico di rete

Lab 1 ora universal_currency_alt 5 crediti show_chart Intermedio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP212

Laboratori autogestiti Google Cloud

Panoramica

In questo lab imparerai a configurare una rete per registrare il traffico da e verso un server web Apache utilizzando i log di flusso VPC. Quindi esporterai i log in BigQuery per analizzarli.

Esistono più casi d'uso per i log di flusso VPC. Ad esempio, potresti utilizzare i log di flusso VPC per determinare da dove viene effettuato l'accesso alle tue applicazioni per ottimizzare le spese legate al traffico di rete, creare bilanciatori del carico HTTP per bilanciare il traffico a livello globale o inserire gli indirizzi IP indesiderati nella lista bloccata con Cloud Armor.

Obiettivi

In questo lab imparerai a:

  • Configurare una rete personalizzata con i log di flusso VPC.
  • Creare un server web Apache.
  • Verificare che il traffico di rete venga registrato.
  • Esportare il traffico di rete in BigQuery per analizzare ulteriormente i log.
  • Configurare l'aggregazione del log di flusso VPC.

Configurazione e requisiti

Prima di fare clic sul pulsante Avvia lab

Leggi le seguenti istruzioni. I lab sono a tempo e non possono essere messi in pausa. Il timer si avvia quando fai clic su Avvia lab e ti mostra per quanto tempo avrai a disposizione le risorse Google Cloud.

Con questo lab pratico avrai la possibilità di completare le attività in prima persona, in un ambiente cloud reale e non di simulazione o demo. Riceverai delle nuove credenziali temporanee che potrai utilizzare per accedere a Google Cloud per la durata del lab.

Per completare il lab, avrai bisogno di:

  • Accesso a un browser internet standard (Chrome è il browser consigliato).
Nota: utilizza una finestra del browser in incognito o privata per eseguire questo lab. Ciò evita eventuali conflitti tra il tuo account personale e l'account Studente, che potrebbero causare addebiti aggiuntivi sul tuo account personale.
  • È ora di completare il lab: ricorda che, una volta iniziato, non puoi metterlo in pausa.
Nota: se hai già un account o un progetto Google Cloud personale, non utilizzarlo per questo lab per evitare addebiti aggiuntivi al tuo account.

Come avviare il lab e accedere alla console Google Cloud

  1. Fai clic sul pulsante Avvia lab. Se devi effettuare il pagamento per il lab, si apre una finestra popup per permetterti di selezionare il metodo di pagamento. A sinistra, trovi il riquadro Dettagli lab con le seguenti informazioni:

    • Pulsante Apri console Google
    • Tempo rimanente
    • Credenziali temporanee da utilizzare per il lab
    • Altre informazioni per seguire questo lab, se necessario
  2. Fai clic su Apri console Google. Il lab avvia le risorse e apre un'altra scheda con la pagina di accesso.

    Suggerimento: disponi le schede in finestre separate posizionate fianco a fianco.

    Note: se visualizzi la finestra di dialogo Scegli un account, fai clic su Utilizza un altro account.
  3. Se necessario, copia il Nome utente dal riquadro Dettagli lab e incollalo nella finestra di dialogo di accesso. Fai clic su Avanti.

  4. Copia la Password dal riquadro Dettagli lab e incollala nella finestra di dialogo di benvenuto. Fai clic su Avanti.

    Importante: devi utilizzare le credenziali presenti nel riquadro di sinistra. Non utilizzare le tue credenziali Google Cloud Skills Boost. Nota: utilizzare il tuo account Google Cloud per questo lab potrebbe comportare addebiti aggiuntivi.
  5. Fai clic nelle pagine successive:

    • Accetta i termini e le condizioni.
    • Non inserire opzioni di recupero o l'autenticazione a due fattori, perché si tratta di un account temporaneo.
    • Non registrarti per le prove gratuite.

Dopo qualche istante, la console Google Cloud si apre in questa scheda.

Nota: puoi visualizzare il menu con un elenco di prodotti e servizi Google Cloud facendo clic sul menu di navigazione in alto a sinistra. Icona menu di navigazione

Attiva Cloud Shell

Cloud Shell è una macchina virtuale in cui sono caricati strumenti per sviluppatori. Offre una home directory permanente da 5 GB e viene eseguita su Google Cloud. Cloud Shell fornisce l'accesso da riga di comando alle risorse Google Cloud.

  1. Fai clic su Attiva Cloud Shell Icona Attiva Cloud Shell nella parte superiore della console Google Cloud.

Quando la connessione è attiva, l'autenticazione è già avvenuta e il progetto è impostato sul tuo PROJECT_ID. L'output contiene una riga che dichiara il PROJECT_ID per questa sessione:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud è lo strumento a riga di comando di Google Cloud. È preinstallato su Cloud Shell e supporta il completamento tramite tasto Tab.

  1. (Facoltativo) Puoi visualizzare il nome dell'account attivo con questo comando:
gcloud auth list
  1. Fai clic su Autorizza.

  2. L'output dovrebbe avere ora il seguente aspetto:

Output:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facoltativo) Puoi elencare l'ID progetto con questo comando:
gcloud config list project

Output:

[core] project = <project_ID>

Output di esempio:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: per la documentazione completa di gcloud, in Google Cloud, fai riferimento alla Panoramica dell'interfaccia a riga di comando gcloud.

Attività 1: configura una rete personalizzata con i log di flusso VPC

Crea la rete personalizzata

Per impostazione predefinita, i log di flusso VPC sono disabilitati per una rete. Pertanto, creerai una nuova rete in modalità personalizzata e abiliterai i log di flusso VPC.

  1. Nella console, vai a Menu di navigazione (Icona menu di navigazione) > Rete VPC > Reti VPC.

    Percorso di navigazione dell&#39;opzione Reti VPC

  2. Fai clic su Crea rete VPC.

  3. Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:

    Proprietà Valore (digita il valore o seleziona l'opzione come specificato)
    Nome vpc-net
    Descrizione Inserisci una descrizione facoltativa
  4. In Modalità di creazione subnet, fai clic su Personalizzata.

  5. Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:

    Proprietà Valore (digita il valore o seleziona l'opzione come specificato)
    Nome vpc-subnet
    Regione
    Intervallo IPv4 10.1.3.0/24
    Log di flusso On
  6. Fai clic su Fine, quindi su Crea.

Nota: l'attivazione dei log di flusso VPC non influisce sulle prestazioni, ma alcuni sistemi generano un numero elevato di log, con un conseguente aumento dei costi Nota: attendi la creazione della rete prima di procedere al passaggio successivo.

Verifica l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai completato correttamente l'attività, ti verrà assegnato un punteggio di valutazione.

Crea la rete personalizzata. Crea una subnet per la rete personalizzata nella regione .

Crea la regola firewall

Per gestire il traffico HTTP e SSH sulla rete, devi creare una regola firewall.

  1. Nel menu a sinistra, fai clic su Firewall.

  2. Fai clic su Crea regola firewall.

  3. Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:

    Proprietà Valore (digita il valore o seleziona l'opzione come specificato)
    Nome allow-http-ssh
    Rete vpc-net
    Destinazioni Tag di destinazione specificati
    Tag di destinazione http-server
    Filtro di origine Intervalli IPv4
    Intervalli IPv4 di origine 0.0.0.0/0
    Protocolli e porte Protocolli e porte specificati, quindi seleziona TCP e digita: 80, 22
Nota: assicurati di includere la porzione /0 nel campo Intervalli IPv4 di origine per specificare tutte le reti.
  1. Fai clic su Crea.

Verifica l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai completato correttamente l'attività, ti verrà assegnato un punteggio di valutazione.

Crea la regola firewall nella rete personalizzata.

Attività 2: crea un server web Apache

Crea il server web

  1. Nella console, vai a Menu di navigazione (Icona menu di navigazione) > Compute Engine > Istanze VM.

  2. Fai clic su CREA ISTANZA.

  3. Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:

    Proprietà Valore (digita il valore o seleziona l'opzione come specificato)
    Nome web-server
    Regione
    Zona
    Tipo di macchina e2-micro (2 vCPU, 1 GB di memoria)
    Firewall Consenti traffico HTTP
  4. Fai clic su Networking, dischi, sicurezza, gestione, single tenancy.

  5. Fai clic su Networking.

  6. In Interfacce di rete, fai clic su default per effettuare la modifica.

  7. Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:

    Proprietà Valore (digita il valore o seleziona l'opzione come specificato)
    Rete vpc-net
    Subnet vpc-subnet
  8. Fai clic su Fine, quindi su Crea.

Verifica l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai completato correttamente l'attività, ti verrà assegnato un punteggio di valutazione.

Crea il server web nella rete personalizzata (zona:).

Installa Apache

Configura l'istanza VM che hai creato come server web Apache e sovrascrivi la pagina web predefinita.

  1. Torna alla console, sempre nella pagina Istanze VM (Menu di navigazione (Icona menu di navigazione) > Compute Engine > Istanze VM). Fai clic su SSH in corrispondenza di web-server per avviare un terminale e stabilire una connessione.
  2. Nel terminale SSH web-server aggiorna l'indice dei pacchetti:
sudo apt-get update
  1. Installa il pacchetto Apache2:
sudo apt-get install apache2 -y
  1. Sovrascrivi la pagina web predefinita per crearne una nuova:
echo '<!doctype html><html><body><h1>Hello World!</h1></body></html>' | sudo tee /var/www/html/index.html
  1. Esci dal terminale SSH:
exit

Verifica l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai completato correttamente l'attività, ti verrà assegnato un punteggio di valutazione.

Installa Apache nel server web.

Attività 3: verifica che il traffico di rete venga registrato

Genera traffico di rete

  1. Torna alla console, sempre nella pagina Istanze VM (Menu di navigazione (Icona menu di navigazione) > Compute Engine > Istanze VM).
  2. Per visualizzare web-server, fai clic sull'IP esterno per accedere al server.
Nota: si apre la pagina di benvenuto Hello World! che hai configurato. In alternativa, puoi accedere al server in una nuova scheda andando all'indirizzo http://indirizzo IP esterno.

Trova il tuo indirizzo IP

Trova l'indirizzo IP del computer che stai utilizzando. Un modo semplice per farlo è visitare un sito web che fornisce questo indirizzo.

  1. Fai clic su whatismyip.host per trovare il tuo indirizzo IPv4.
  2. Copia il tuo indirizzo IP. Verrà indicato come YOUR_IP_ADDRESS.

Accedi ai log di flusso VPC

  1. Nella console, vai a Menu di navigazione > Logging > Esplora log.

  2. Nel riquadro Campi log, in Tipo di risorsa, fai clic su Subnet. Nel riquadro Risultati delle query, vengono visualizzate le voci di log della subnet.

  3. Nel riquadro Campi log, in Nome log, fai clic su compute.googleapis.com/vpc_flows.

  4. Inserisci "YOUR_IP_ADDRESS" nella casella di ricerca Query in alto. Poi fai clic su Esegui query.

Nota: se non vedi alcun log né l'opzione di filtro compute.googleapis.com/vpc_flows, potresti dover attendere un paio di minuti e aggiornare.

Pulsante Esegui query evidenziato nella pagina Esplora log.

  1. Fai clic su una delle voci di log per espanderla.
  2. All'interno della voce, fai clic sulle frecce per espandere jsonPayload e quindi su connection. Potresti dover fare clic su Espandi tutto per visualizzare connection.

Tutte le connessioni elencate nella sezione Risultati delle query

Nota: connection include l'indirizzo IP o il numero di porta di destinazione, il protocollo e l'indirizzo IP o il numero di porta di origine. A seconda della direzione del traffico, la destinazione è il tuo server web o la macchina su cui stai lavorando e viceversa per l'origine.

Il protocollo dovrebbe essere 6, ovvero il protocollo IANA per il traffico TCP. Uno dei numeri di porta sarà 80, ovvero la porta HTTP di web-server, mentre l'altro numero di porta dovrebbe essere un numero maggiore di 1024, ovvero la porta HTTP sulla tua macchina.

Se vuoi, puoi esaminare altri campi all'interno della voce di log prima di passare all'attività successiva.

Attività 4: esporta il traffico di rete in BigQuery per analizzare ulteriormente i log

Crea un sink di esportazione

  1. Nella console, nel riquadro a sinistra, fai clic su Esplora log.

  2. Nel menu a discesa Risorse, seleziona Subnet. Quindi, fai clic su Applica.

  3. Nel menu a discesa Nome log, seleziona vpc_flows e fai clic su Applica. Quindi, fai clic su Esegui query.

  4. Fai clic su Altre azioni > Crea sink.

  5. Per "Nome sink", digita vpc-flows e fai clic su AVANTI.

  6. Per "Seleziona il servizio sink", seleziona Set di dati BigQuery.

  7. Per "Destinazione sink", seleziona Crea nuovo set di dati BigQuery.

  8. Per "ID set di dati", digita bq_vpcflows e fai clic su CREA SET DI DATI.

  9. Fai clic su CREA SINK. Viene visualizzata la pagina Sink del router dei log. Dovresti riuscire a vedere il sink che hai creato (vpc-flows). Se non riesci a vedere il sink, fai clic su Router dei log.

Genera log del traffico per BigQuery

Ora che i log del traffico di rete sono stati esportati in BigQuery, genera maggiore traffico accedendo più volte al server web. Tramite Cloud Shell puoi usare il comando curl per determinare più volte l'indirizzo IP del server web.

  1. Nella console, vai a Menu di navigazione (Icona menu di navigazione) > Compute Engine > Istanze VM.
  2. Prendi nota dell'indirizzo IP esterno per l'istanza web-server da utilizzare nel passaggio successivo. Verrà indicato come EXTERNAL_IP.
  3. Nella riga di comando di Cloud Shell, esegui questo comando per archiviare EXTERNAL_IP in una variabile di ambiente. Sostituisci <EXTERNAL_IP> con l'indirizzo di cui hai preso nota:
export MY_SERVER=<EXTERNAL_IP>
  1. Accedi a web-server 50 volte da Cloud Shell:
for ((i=1;i<=50;i++)); do curl $MY_SERVER; done

Verifica l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai completato correttamente l'attività, ti verrà assegnato un punteggio di valutazione.

Esporta il traffico di rete in BigQuery.

Visualizza i log di flusso VPC in BigQuery

  1. Nella console, vai a Menu di navigazione (Icona menu di navigazione) > BigQuery.
  2. Fai clic su Fine.
  3. Sul lato sinistro, espandi il set di dati bq_vpcflows per visualizzare la tabella. Potresti prima dover espandere l'ID progetto per visualizzare il set di dati.
  4. Fai clic sul nome della tabella. Dovrebbe iniziare con compute_googleapis.
Nota: se il set di dati bq_vpcflows non è visibile o non si espande, attendi e aggiorna la pagina.
  1. Fai clic sulla scheda Dettagli.

  2. Copia l'ID tabella fornito nella scheda Details.

  3. Aggiungi quanto segue all'editor di query e sostituisci your_table_id con TABLE_ID lasciando gli accenti (`) su entrambi i lati:

#standardSQL SELECT jsonPayload.src_vpc.vpc_name, SUM(CAST(jsonPayload.bytes_sent AS INT64)) AS bytes, jsonPayload.src_vpc.subnetwork_name, jsonPayload.connection.src_ip, jsonPayload.connection.src_port, jsonPayload.connection.dest_ip, jsonPayload.connection.dest_port, jsonPayload.connection.protocol FROM `your_table_id` GROUP BY jsonPayload.src_vpc.vpc_name, jsonPayload.src_vpc.subnetwork_name, jsonPayload.connection.src_ip, jsonPayload.connection.src_port, jsonPayload.connection.dest_ip, jsonPayload.connection.dest_port, jsonPayload.connection.protocol ORDER BY bytes DESC LIMIT 15
  1. Fai clic su Esegui.
Nota: la tabella dei risultati mostra il totale dei byte inviati, l'indirizzo IP di origine, l'indirizzo IP di destinazione, la porta di destinazione, il protocollo e i rispettivi nomi della rete VPC e della subnet. Nota: se ricevi un messaggio di errore, assicurati di non aver rimosso la parte #standardSQL della query. Se il problema persiste, assicurati che TABLE_ID non includa l'ID progetto.

Analizza i log di flusso VPC in BigQuery

La query precedente ti ha fornito le stesse informazioni che hai visto nella console Cloud. Ora modifica la query per identificare i principali indirizzi IP che hanno scambiato traffico con la tua istanza web-server.

  1. Crea una nuova query nell'editor di query con il seguente codice e sostituisci your_table_id con TABLE_ID lasciando gli accenti (`) su entrambi i lati:
#standardSQL SELECT jsonPayload.connection.src_ip, jsonPayload.connection.dest_ip, SUM(CAST(jsonPayload.bytes_sent AS INT64)) AS bytes, jsonPayload.connection.dest_port, jsonPayload.connection.protocol FROM `your_table_id` WHERE jsonPayload.reporter = 'DEST' GROUP BY jsonPayload.connection.src_ip, jsonPayload.connection.dest_ip, jsonPayload.connection.dest_port, jsonPayload.connection.protocol ORDER BY bytes DESC LIMIT 15
  1. Fai clic su Esegui.
Nota: la tabella dei risultati ora ha una riga per ciascun IP di origine ed è ordinata in base alla quantità massima di byte inviati a web-server. Il risultato principale dovrebbe riflettere il tuo indirizzo IP di Cloud Shell. Nota: a meno che tu non abbia effettuato l'accesso a web-server dopo aver creato il sink di esportazione, non vedrai l'indirizzo IP della tua macchina nella tabella.

Se vuoi, puoi generare maggiore traffico verso web-server da più origini ed eseguire nuovamente query sulla tabella per determinare i byte inviati al server.

Attività 5: aggiungi l'aggregazione dei log di flusso VPC

Ora esplorerai una nuova versione della riduzione del volume dei log di flusso VPC. Non tutti i pacchetti vengono acquisiti nel relativo record di log. Tuttavia, anche con il campionamento, le acquisizioni nel record di log possono essere piuttosto grandi.

Puoi bilanciare le esigenze di visibilità del traffico e costi di archiviazione modificando aspetti specifici della raccolta dei log, che esplorerai in questa sezione.

Configura l'aggregazione

  1. Nella console, vai a Menu di navigazione (Icona menu di navigazione) > Rete VPC > Reti VPC.

  2. Fai clic su vpc-net e quindi su Modifica.

  3. Nella scheda Subnet, fai clic su vpc-subnet:

Subnet vpc-subnet evidenziata nella scheda Subnet.

  1. Fai clic su Modifica > Configura log per esporre i seguenti campi:

Pagina di configurazione dei log di flusso con diversi campi visualizzati.

Lo scopo di ciascun campo è spiegato di seguito:

  • Intervallo di tempo di aggregazione: i pacchetti campionati per un intervallo di tempo vengono aggregati in un'unica voce di log. Questo intervallo di tempo può essere 5 secondi (impostazione predefinita), 30 secondi, 1 minuto, 5 minuti, 10 minuti o 15 minuti.

  • Annotazioni sui metadati: per impostazione predefinita, le voci di log di flusso vengono annotate con informazioni sui metadati, ad esempio i nomi delle VM di origine e di destinazione o la regione geografica delle origini e destinazioni esterne. Questa annotazione sui metadati può essere disattivata per risparmiare spazio di archiviazione.

  • Campionamento delle voci di log: prima di essere scritto nel database, il numero di log può essere campionato per ridurne la quantità. Per impostazione predefinita, il volume delle voci di log viene scalato di 0,50 (50%), il che significa che viene mantenuta la metà delle voci. Puoi modificarlo da 1,0 (100%, vengono mantenute tutte le voci di log) a 0,0 (0%, non viene mantenuto nessun log).

  1. Imposta l'intervallo di aggregazione su 30 secondi.

  2. Imposta Frequenza di campionamento su 25%.

  3. Fai clic su Salva. Dovresti vedere il seguente messaggio:

Messaggio Log stimati generati al giorno: 6,14 MB.

L'impostazione del livello di aggregazione su 30 secondi può ridurre le dimensioni dei log di flusso fino all'83% rispetto all'intervallo di aggregazione predefinito di 5 secondi. La configurazione dell'aggregazione dei log di flusso può influire seriamente sulla visibilità del traffico e sui costi di archiviazione.

Complimenti!

Hai configurato una rete VPC, abilitato i log di flusso VPC e creato un server web in quella rete. Quindi, hai generato traffico HTTP verso il server web, hai visualizzato i log del traffico nella console Cloud e li hai analizzati in BigQuery.

Completa la Quest

Questo self-paced lab fa parte della Quest Network Performance and Optimization. Una Quest è una serie di lab collegati tra loro che formano un percorso di apprendimento. Il completamento di una Quest ti permette di ottenere un badge come riconoscimento dell'obiettivo raggiunto. Puoi rendere pubblici i tuoi badge inserendone i link nel tuo CV online o sui social media. Iscriviti a una delle Quest contenenti il lab e ricevi subito un riconoscimento per averlo completato. Fai riferimento al catalogo Google Cloud Skills Boost per tutte le Quest disponibili.

Completa un'altra Quest

Continua il tuo percorso di apprendimento con un'altra Quest, ad esempio Google Cloud Solutions I: Scaling Your Infrastructure o dai un'occhiata a questi suggerimenti:

Prossimi passi/Scopri di più

Per informazioni sui concetti base di Google Cloud Identity and Access Management:

Formazione e certificazione Google Cloud

… per utilizzare al meglio le tecnologie Google Cloud. I nostri corsi ti consentono di sviluppare competenze tecniche e best practice per aiutarti a metterti subito al passo e avanzare nel tuo percorso di apprendimento. Offriamo vari livelli di formazione, dal livello base a quello avanzato, con opzioni di corsi on demand, dal vivo e virtuali, in modo da poter scegliere il più adatto in base ai tuoi impegni. Le certificazioni ti permettono di confermare e dimostrare le tue abilità e competenze relative alle tecnologie Google Cloud.

Ultimo aggiornamento del manuale: 28 settembre 2023

Ultimo test del lab: 28 settembre 2023

Copyright 2024 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.