Utilizza l'autenticazione MD5
Il router Cloud utilizza Border Gateway Protocol (BGP) per lo scambio di route tra una rete Virtual Private Cloud (VPC) e una rete peer. Per impostazione predefinita, le sessioni BGP del router Cloud non sono autenticate. Tuttavia, quando utilizzi il router Cloud con determinati prodotti, puoi facoltativamente configurare le sessioni BGP per utilizzare l'autenticazione MD5.
I prodotti che possono utilizzare l'autenticazione MD5 includono:
Puoi anche utilizzare l'autenticazione MD5 con appliance virtuali di rete di terze parti. Per ulteriori informazioni, consulta il documento relativo all'appliance router nella documentazione del Network Connectivity Center.
Quando configuri una sessione per l'utilizzo dell'autenticazione MD5, fornisci una chiave condivisa segreta, una chiave da utilizzare per la configurazione del router Cloud, e di nuovo quando configuri il router peer. Dopo aver completato i passaggi di configurazione richiesti, il router Cloud utilizza questa chiave per autenticare il peer BGP. Il router Cloud applica l'autenticazione MD5 utilizzando il modello descritto in RFC 2385.
Puoi aggiungere l'autenticazione MD5 quando crei un peer. Puoi anche aggiungere l'autenticazione a una sessione esistente, modificare la chiave utilizzata da una sessione o rimuovere l'autenticazione.
Prima di iniziare
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
- Installa Google Cloud CLI.
-
Per inizializzare l'interfaccia a riga di comando gcloud, esegui il comando seguente:
gcloud init
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
- Installa Google Cloud CLI.
-
Per inizializzare l'interfaccia a riga di comando gcloud, esegui il comando seguente:
gcloud init
- Se utilizzi Google Cloud CLI, imposta il tuo ID progetto
eseguendo il comando seguente. Le istruzioni
gcloud
in questa pagina presuppongono che tu abbia impostato l'ID progetto.gcloud config set project PROJECT_ID
-
Verifica che l'ID sia stato impostato eseguendo il comando seguente:
gcloud config list --format='text(core.project)'
Crea una sessione che utilizza l'autenticazione
Per alcuni prodotti per la connettività di rete, puoi configurare un peer BGP per utilizzare l'autenticazione MD5 durante la creazione della risorsa. Questi prodotti includono VPN ad alta disponibilità e Dedicated Interconnect.
Per ulteriori informazioni, consulta le seguenti sezioni:
- Crea un tunnel VPN ad alta disponibilità connesso a un gateway VPN peer
- Crea un tunnel VPN ad alta disponibilità tra le reti Google Cloud
- Creare collegamenti VLAN (Dedicated Interconnect)
Se stai creando un collegamento VLAN partner di livello 2, crea prima il collegamento, quindi aggiorna il peer BGP per aggiungere l'autenticazione MD5. Per informazioni su come aggiungere l'autenticazione durante l'aggiornamento di una sessione BGP, consulta la sezione seguente. Se hai una connessione di livello 3, contatta il tuo fornitore di servizi per le istruzioni.
Aggiungi l'autenticazione a una sessione esistente
Per aggiungere l'autenticazione a un peer BGP esistente, utilizza una delle seguenti procedure. Quando aggiungi l'autenticazione, assicurati che la chiave che utilizzi sia identica a quella utilizzata dal router peer.
Google Cloud non mostra la chiave di autenticazione MD5 e solo mostra il nome chiave dopo la corretta configurazione.
- Se configuri l'autenticazione MD5 tramite gcloud o UI, Google Cloud genera automaticamente il nome chiave nel formato
PEER_NAME-key
. - Se configuri l'autenticazione MD5 tramite API, puoi specificare il nome della chiave.
Console
In Google Cloud Console, vai alla pagina Router Cloud.
Nel campo Nome, fai clic sul nome del router Cloud appropriato.
Nella pagina Dettagli route, fai clic sul nome della sessione BGP da modificare.
Nella pagina Dettagli sessione BGP, fai clic su
Modifica.Per aggiungere l'autenticazione MD5:
- Nella sezione Autenticazione MD5, seleziona Attivata. La pagina viene aggiornata per includere un campo di testo.
- Inserisci un token di sicurezza oppure, per generare un nuovo token di sicurezza, fai clic su Genera e copia.
- Prendi nota della chiave. Dopo aver lasciato questa pagina, non puoi recuperare la chiave.
Fai clic su Salva.
gcloud
Per aggiornare la sessione utilizzando l'interfaccia a riga di comando gcloud, utilizza il comando gcloud compute routers update-bgp-peer
:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --md5-authentication-key=SECRET_KEY
Sostituisci i seguenti valori:
ROUTER_NAME
: nome del router CloudPEER_NAME
: il nome del peer BGPREGION
: area geografica Google CloudSECRET_KEY
: la tua chiave di autenticazione MD5 condivisa segreta
API
Per aggiornare la sessione utilizzando l'API, utilizza il metodo compute.routers.patch
. Quando utilizzi questo metodo per aggiungere autenticazione alla sessione, la richiesta deve eseguire due operazioni:
- Aggiungi una voce per la chiave nell'array di
md5AuthenticationKeys
. Quando aggiungi la voce, fornisci sia un nome che un valore per la chiave. - Aggiorna l'array
bgpPeers
per includere un valore per il campomd5AuthenticationKeyName
. Questo campo fa riferimento alla chiave per nome.
Quando applichi patch all'array md5AuthenticationKeys
, devi fornire name
per ogni elemento nell'array (a meno che tu non voglia rimuovere alcuni elementi).
Tuttavia, non è necessario fornire il valore per il campo key
di ogni elemento.
Se ometti questo valore, il router Cloud conserva il valore precedente utilizzato. Questo comportamento è progettato per proteggere la riservatezza delle chiavi.
A differenza di altri metodi di applicazione patch, che in genere richiedono di specificare un valore per ciascun campo in un elemento array.
Quando applichi patch all'array di bgpPeers
, devi fornire valori per ogni campo di ogni elemento (a meno che tu non voglia rimuovere alcuni peer o alcuni valori).
Ad esempio, supponiamo che il router Cloud abbia due peer, uno che utilizza l'autenticazione MD5 e uno che non lo fa. Se vuoi lasciare invariato il primo peer, ma aggiungere l'autenticazione MD5 al secondo peer, devi utilizzare una richiesta simile alla seguente:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ { "name": "KEY_NAME_1", }, { "name": "KEY_NAME_2", "key": "SECRET_KEY" } ], "bgpPeers": [ { "name": "PEER_NAME_1", "md5AuthenticationKeyName": "KEY_NAME_1", "interfaceName": "INTERFACE_NAME_1", "ipAddress": "IP_ADDRESS_1", "peerIpAddress": "PEER_IP_ADDRESS_1", "peerAsn": "PEER_ASN_1" }, { "name": "PEER_NAME_2", "md5AuthenticationKeyName": "KEY_NAME_2", "interfaceName": "INTERFACE_NAME_2", "ipAddress": "IP_ADDRESS_2", "peerIpAddress": "PEER_IP_ADDRESS_2", "peerAsn": "PEER_ASN_2" } ], }
Sostituisci i seguenti valori:
PROJECT_ID
: il progetto che contiene il router CloudREGION
: area geografica Google CloudROUTER_NAME
: nome del router CloudKEY_NAME_1
: nome della chiave attualmente in uso (daPEER_NAME_1
)KEY_NAME_2
: il nome della nuova chiave che vuoi aggiungere perPEER_NAME_2
. Prendi nota del nome. Se vuoi apportare modifiche in un secondo momento utilizzando l'API, hai bisogno del nome.SECRET_KEY
: la chiave di autenticazione MD5 segreta che aggiungi perPEER_NAME_2
PEER_NAME_1
: il nome del peer BGP che non stai modificandoINTERFACE_NAME_1
: il nome dell'interfaccia per la sessione di peering BGP che non cambiaIP_ADDRESS_1
: l'indirizzo IP sul router Cloud (per il peer che non cambia)PEER_IP_ADDRESS_1
: l'indirizzo IP del peer che non cambiaPEER_ASN_1
: numero di sistema autonomo BGP (ASN) per il peer che non cambieràPEER_NAME_2
: il nome del peer BGP da aggiornare in modo che utilizzi l'autenticazione MD5INTERFACE_NAME_2
: nome dell'interfaccia per la sessione di peering BGPIP_ADDRESS_2
: l'indirizzo IP del router CloudPEER_IP_ADDRESS_2
: l'indirizzo IP del router peerPEER_ASN_2
: numero di sistema autonomo BGP (ASN) per questo peer BGP
Aggiornare la chiave di autenticazione
Per modificare la chiave utilizzata dal router Cloud per una sessione di peering, utilizza una delle seguenti procedure. Quando aggiorni la chiave nel router Cloud, assicurati che la chiave che utilizzi sia identica a quella utilizzata dal router peer.
Google Cloud non mostra la chiave di autenticazione MD5 e solo mostra il nome chiave dopo la corretta configurazione.
- Se configuri l'autenticazione MD5 tramite gcloud o UI, Google Cloud genera automaticamente il nome chiave nel formato
PEER_NAME-key
. - Se configuri l'autenticazione MD5 tramite API, puoi specificare il nome della chiave.
Console
In Google Cloud Console, vai alla pagina Router Cloud.
Nel campo Nome, fai clic sul nome del router Cloud appropriato.
Nella pagina Dettagli route, fai clic sul nome della sessione BGP da modificare.
Nella pagina Dettagli sessione BGP, fai clic su
Modifica.Nella sezione Autenticazione MD5, fai clic su Aggiorna chiave di autenticazione MD5.
Nel campo MD5 Authentication key (Chiave di autenticazione MD5), inserisci la nuova chiave di autenticazione segreta oppure, per completare il campo, fai clic su Genera e copia.
Prendi nota della chiave. Dopo aver lasciato questa pagina, non puoi recuperare la chiave.
Fai clic su Salva.
gcloud
Per aggiornare la sessione, utilizza il comando gcloud compute routers update-bgp-peer
.
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --md5-authentication-key=SECRET_KEY
Sostituisci i seguenti valori:
ROUTER_NAME
: nome del router CloudPEER_NAME
: il nome del peer BGPREGION
: area geografica Google CloudSECRET_KEY
: la nuova chiave di autenticazione MD5 segreta che vuoi utilizzare
API
Per aggiornare la sessione, utilizza il metodo compute.routers.patch
. Ad esempio, utilizza una richiesta simile alla seguente.
Questo esempio sostituisce l'intera matrice di peer, non solo il peer specifico identificato. Ciò significa che vengono rimossi tutti i peer tranne PEER_NAME
. Rimuove tutte le chiavi tranne KEY_NAME
e aggiorna KEY_NAME
con il nuovo valore UPDATED_SECRET_KEY
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ { "name": "KEY_NAME", "key": "UPDATED_SECRET_KEY" } ], "bgpPeers": [ { "name": "PEER_NAME", "md5AuthenticationKeyName": "KEY_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "peerAsn": "PEER_ASN" } ], }
Sostituisci i seguenti valori:
PROJECT_ID
: il progetto che contiene il router CloudREGION
: area geografica Google CloudROUTER_NAME
: nome del router CloudKEY_NAME
: il nome della chiave che vuoi aggiornare; ogni volta che utilizzi l'autenticazione MD5 utilizzando l'API, devi fare riferimento alla chiave in base al nomeUPDATED_SECRET_KEY
: la tua nuova chiave di autenticazione MD5 segretaPEER_NAME
: il nome del peer BGPINTERFACE_NAME
: nome dell'interfaccia per la sessione di peering BGPIP_ADDRESS
: l'indirizzo IP del router CloudPEER_IP_ADDRESS
: l'indirizzo IP del router peerPEER_ASN
: numero di sistema autonomo BGP (ASN) per questo peer BGP
Controlla stato autenticazione
Per controllare lo stato dell'autenticazione MD5: Vedi anche Visualizzare i dettagli del router Cloud.
Console
In Google Cloud Console, vai alla pagina Router Cloud.
Nel campo Nome, fai clic sul nome del router Cloud appropriato.
Nella pagina Dettagli percorso, cerca la colonna Autenticazione MD5. Per ogni sessione, il valore in questa colonna indica se l'autenticazione MD5 è abilitata.
gcloud
Per verificare la sessione utilizzando l'interfaccia a riga di comando gcloud, utilizza il comando gcloud compute routers get-status
.
gcloud compute routers get-status ROUTER_NAME \ --project=PROJECT \ --region=REGION \
Sostituisci i seguenti valori:
ROUTER_NAME
: nome del router CloudPROJECT
: il nome del progettoREGION
: area geografica Google Cloud
L'output include l'oggetto result.bgpPeerStatus[]
, che contiene informazioni sulle sessioni BGP del router Cloud. I dati relativi a ogni sessione includono i seguenti due campi:
md5AuthEnabled
: un campo booleano che indica se la sessione MD5 è abilitata per la sessionestatusReason
: un campo che descrive lo stato della sessione.
API
Utilizza il metodo routers.getRouterStatus
:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/getRouterStatus
Sostituisci quanto segue:
PROJECT_ID
: il progetto che contiene il router CloudREGION
: la regione in cui si trova il router CloudROUTER_NAME
: nome del router Cloud
L'output include informazioni su ogni sessione BGP. I dati relativi a ogni sessione includono i due campi seguenti:
md5AuthEnabled
: un campo booleano che indica se la sessione MD5 è abilitata per la sessionestatusReason
: un campo che descrive lo stato della sessione. Questo campo viene visualizzato solo quando si verifica un problema con l'autenticazione MD5. In questo caso, il valore del campo èMD5_AUTH_INTERNAL_PROBLEM
.
Per configurare il monitoraggio continuo delle sessioni BGP, utilizza Cloud Logging. Il logging registra le informazioni sullo stato di autenticazione MD5 nell'evento BGP, che fa parte del Log delle informazioni.
Rimuovere l'autenticazione da una sessione
Se vuoi rimuovere l'autenticazione MD5 da una sessione BGP, devi rimuovere l'autenticazione MD5 sia dal router Cloud che dal router peer.
Per rimuovere l'autenticazione MD5 dalla sessione BGP sul router Cloud, utilizza una delle seguenti procedure.
Console
In Google Cloud Console, vai alla pagina Router Cloud.
Nel campo Nome, fai clic sul nome del router Cloud appropriato.
Nella pagina Dettagli route, fai clic sul nome della sessione BGP da modificare.
Nella pagina Dettagli sessione BGP, fai clic su
Modifica.In Autenticazione MD5, fai clic su Disabilitata.
Fai clic su Salva. Viene visualizzata la finestra di dialogo Disattiva chiave di autenticazione MD5.
Nella finestra di dialogo di conferma, fai clic su Conferma.
gcloud
Per rimuovere l'autenticazione MD5, utilizza il comando gcloud compute routers update-bgp-peer
:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --peer-name=PEER_NAME \ --region=REGION \ --clear-md5-authentication-key
Sostituisci i seguenti valori:
ROUTER_NAME
: nome del router CloudPEER_NAME
: il nome del peer BGPREGION
: area geografica Google Cloud
API
Per rimuovere l'autenticazione MD5, utilizza il metodo compute.routers.patch
.
Quando rimuovi l'autenticazione tramite l'API, l'aggiornamento deve eseguire due operazioni:
- Aggiorna l'array di
md5AuthenticationKeys
- Rimuovi il valore
md5AuthenticationKey
dalla vocebgpPeers
pertinente
Ad esempio, se il router Cloud ha due peer BGP e vuoi rimuovere l'autenticazione MD5 da una di esse. In questo caso, utilizza una richiesta simile alla seguente:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ "name": "KEY_NAME_FOR_UNCHANGED_PEER", ], "bgpPeers": [ { "name": "NAME_OF_UPDATED_PEER", "interfaceName": "INTERFACE_NAME_FOR_UPDATED_PEER", "ipAddress": "IP_ADDRESS_FOR_UPDATED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_UPDATED_PEER", "peerAsn": "PEER_ASN_FOR_UPDATED_PEER" }, { "name": "NAME_OF_UNCHANGED_PEER", "interfaceName": "INTERFACE_NAME_FOR_UNCHANGED_PEER", "ipAddress": "IP_ADDRESS_FOR_UNCHANGED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_UNCHANGED_PEER", "peerAsn": "PEER_ASN_FOR_UNCHANGED_PEER" "md5AuthenticationKeyName": "KEY_NAME_FOR_UNCHANGED_PEER" } ], ], }
Sostituisci i seguenti valori:
PROJECT_ID
: il progetto che contiene il router CloudREGION
: la regione di Google Cloud in cui si trova il router CloudROUTER_NAME
: nome del router CloudNAME_OF_UPDATED_PEER
: il nome della sessione di peering che vuoi modificareINTERFACE_NAME_FOR_UPDATED_PEER
: il nome dell'interfaccia per il peer BGP da modificare.IP_ADDRESS_FOR_UPDATED_PEER
: l'indirizzo IP sul router Cloud utilizzato dal peer che vuoi modificarePEER_IP_ADDRESS_FOR_UPDATED_PEER
: l'indirizzo IP del router peer per la sessione di peering da modificarePEER_ASN
: il numero di sistema autonomo BGP (ASN) per il peer BGP da modificareNAME_OF_UNCHANGED_PEER
: il nome della sessione di peering che vuoi mantenere così com'èINTERFACE_NAME_FOR_UNCHANGED_PEER
: il nome dell'interfaccia del peer BGP che vuoi mantenere così com'èIP_ADDRESS_FOR_UNCHANGED_PEER
: l'indirizzo IP sul router Cloud utilizzato dal peer che vuoi mantenere così com'èPEER_IP_ADDRESS_FOR_UNCHANGED_PEER
: l'indirizzo IP del router peer per la sessione di peering che vuoi mantenere così com'è.PEER_ASN_FOR_UNCHANGED_PEER
: il numero di sistema autonomo BGP (ASN) per il peer BGP che vuoi mantenere così com'èKEY_NAME_FOR_UNCHANGED_PEER
: il nome della chiave di autenticazione MD5 per il peer BGP che vuoi mantenere così com'è
Rimuovere una sessione che utilizza l'autenticazione
Per rimuovere una sessione di peering che utilizza l'autenticazione MD5, utilizza una delle seguenti procedure.
Console
In Google Cloud Console, vai alla pagina Router Cloud.
- Seleziona il router da cui vuoi rimuovere una sessione BGP.
- Per Sessioni BGP, seleziona la sessione BGP che vuoi rimuovere.
- Nella parte superiore della pagina, fai clic su Elimina, quindi conferma l'eliminazione.
gcloud
Per rimuovere una sessione BGP con l'autenticazione MD5 abilitata, usa il comando gcloud compute routers remove-bgp-peer
.
Per scoprire di più, consulta Disattivare o rimuovere le sessioni BGP.
API
Per rimuovere una sessione BGP con l'autenticazione MD5 abilitata, usa il metodo compute.routers.patch
.
Quando rimuovi una sessione BGP con autenticazione MD5 utilizzando l'API, l'aggiornamento deve eseguire due operazioni: rimuovere la chiave dall'array md5AuthenticationKeys
e rimuovere bgpPeer
stesso.
Supponi ad esempio che il router Cloud abbia due peer e che tu voglia rimuoverne uno. In questo caso, utilizza una richiesta simile alla seguente:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "md5AuthenticationKeys": [ "name": "KEY_NAME_FOR_RETAINED_PEER", ], "bgpPeers": [ { "name": "NAME_OF_RETAINED_PEER", "interfaceName": "INTERFACE_FOR_RETAINED_PEER", "ipAddress": "IP_ADDRESS_FOR_RETAINED_PEER", "peerIpAddress": "PEER_IP_ADDRESS_FOR_RETAINED_PEER", "peerAsn": "PEER_ASN_FOR_RETAINED_PEER", "md5AuthenticationKeyName": "KEY_NAME_FOR_RETAINED_PEER" } ], }
Sostituisci i seguenti valori:
PROJECT_ID
: il progetto che contiene il router CloudREGION
: area geografica Google CloudROUTER_NAME
: nome del router CloudKEY_NAME_FOR_RETAINED_PEER
: il nome della chiave utilizzato dal peer che stai mantenendoNAME_OF_RETAINED_PEER
: il nome del peer BGP che stai mantenendoINTERFACE_FOR_RETAINED_PEER
: il nome dell'interfaccia del peer BGP che stai mantenendoIP_ADDRESS_FOR_RETAINED_PEER
: l'indirizzo IP sul router Cloud per il peer che stai mantenendoPEER_IP_ADDRESS_FOR_RETAINED_PEER
: l'indirizzo IP del peer che stai mantenendoPEER_ASN_FOR_RETAINED_PEER
: il numero di sistema autonomo BGP (ASN) per il peer che stai mantenendoKEY_NAME_FOR_RETAINED_PEER
: il nome della chiave di autenticazione MD5 per il peer BGP che stai mantenendo
Supponi, ad esempio, di aver creato i seguenti peer:
PATCH https://compute.googleapis.com/compute/v1/projects/project_id/regions/region_name/routers/cloud_router_name { "md5AuthenticationKeys": [ { "name": "first_key_name", "key": "first_secret_key_value" }, { "name": "second_key_name", "key": "second_secret_key_value" } ], "bgpPeers": [ { "name": "first_peer", "md5AuthenticationKeyName": "first_key_name", "interfaceName": "first_interface", "ipAddress": "first_address", "peerIpAddress": "first_peer_interface", "peerAsn": "first_peer_asn" }, { "name": "second_peer", "md5AuthenticationKeyName": "second_key_name", "interfaceName": "second_interface", "ipAddress": "second_address", "peerIpAddress": "second_peer_interface", "peerAsn": "second_peer_asn" } ], }
Se poi vuoi rimuovere il secondo peer, devi utilizzare una richiesta simile alla seguente:
PATCH https://compute.googleapis.com/compute/v1/projects/project_id/regions/region_name/routers/cloud_router_name { "md5AuthenticationKeys": [ { "name": "first_key_name", } ], "bgpPeers": [ { "name": "first_peer", "md5AuthenticationKeyName": "first_key_name", "interfaceName": "first_interface", "ipAddress": "first_address", "peerIpAddress": "first_peer_interface", "peerAsn": "first_peer_asn" } ], }