Usar la autenticación MD5
Cloud Router usa el protocolo de pasarela fronteriza (BGP) para intercambiar rutas entre una red de nube privada virtual (VPC) y una red del mismo nivel. De forma predeterminada, las sesiones BGP de Cloud Router no están autenticadas. Sin embargo, cuando usas Cloud Router con determinados productos, puedes configurar tus sesiones BGP para que usen la autenticación MD5.
Entre los productos que pueden usar la autenticación MD5 se incluyen los siguientes:
También puedes usar la autenticación MD5 con dispositivos virtuales de red de terceros. Para obtener más información, consulta el artículo sobre dispositivos de router en la documentación de Network Connectivity Center.
Cuando configuras una sesión para que use la autenticación MD5, proporcionas una clave secreta compartida, es decir, una clave que usas al configurar Cloud Router y de nuevo al configurar el router de tu peer. Una vez que hayas completado los pasos de configuración necesarios, Cloud Router usará esa clave para autenticar el par de BGP. Cloud Router aplica la autenticación MD5 mediante el modelo descrito en RFC 2385.
Puedes añadir la autenticación MD5 al crear un peer. También puedes añadir autenticación a una sesión, cambiar la clave que usa una sesión o eliminar la autenticación.
Antes de empezar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init
- Si usas la CLI de Google Cloud, define el ID de tu proyecto ejecutando el siguiente comando. En las
gcloud
instrucciones de esta página se presupone que has definido el ID de tu proyecto.gcloud config set project PROJECT_ID
-
Para confirmar que se ha definido el ID, ejecuta el siguiente comando:
gcloud config list --format='text(core.project)'
- Crear un túnel VPN de alta disponibilidad a una pasarela de VPN de par
- Crear un túnel VPN de alta disponibilidad entre Google Cloud redes
- Crear vinculaciones de VLAN (interconexión dedicada)
- Si configura la autenticación MD5 mediante gcloud o la interfaz de usuario, Google Cloud
se genera automáticamente el nombre de la clave con el formato
PEER_NAME-key
. - Si configuras la autenticación MD5 a través de la API, puedes especificar el nombre de la clave.
En la Google Cloud consola, ve a la página Cloud Routers.
En el campo Nombre, haga clic en el nombre del Cloud Router adecuado.
En la página Detalles del router, haz clic en el nombre de la sesión BGP que quieras modificar.
En la página Detalles de la sesión de BGP, haga clic en
Editar.Para añadir la autenticación MD5, sigue estos pasos:
- En la sección Autenticación MD5, selecciona Habilitada. La página se actualiza para incluir un campo de texto.
- Introduce una llave de seguridad o, para generar una nueva, haz clic en Generar y copiar.
- Anota la clave. Una vez que abandones esta página, no podrás recuperar la clave.
Haz clic en Guardar.
ROUTER_NAME
: el nombre de Cloud RouterPEER_NAME
: el nombre del par de BGPREGION
: la Google Cloud regiónSECRET_KEY
: tu clave secreta compartida de autenticación MD5- Añade una entrada para la clave en la matriz
md5AuthenticationKeys
. Cuando añades la entrada, proporcionas tanto el nombre como el valor de la clave. - Actualice la matriz
bgpPeers
para incluir un valor en el campomd5AuthenticationKeyName
. Este campo hace referencia a la clave por su nombre. PROJECT_ID
: el proyecto que contiene el Cloud RouterREGION
: la Google Cloud regiónROUTER_NAME
: el nombre de Cloud RouterKEY_NAME_1
: el nombre de la clave que se está usando actualmente (porPEER_NAME_1
)KEY_NAME_2
: el nombre de la nueva clave que quieras añadir paraPEER_NAME_2
. Anota el nombre. Si quieres hacer cambios más adelante mediante la API, necesitas el nombre.SECRET_KEY
: tu clave de autenticación MD5 secreta que vas a añadir paraPEER_NAME_2
PEER_NAME_1
: el nombre del par de BGP que no vas a cambiarINTERFACE_NAME_1
: el nombre de la interfaz de la sesión de emparejamiento de BGP que no cambiaIP_ADDRESS_1
: la dirección IP del Cloud Router (del peer que no cambia)PEER_IP_ADDRESS_1
: la dirección IP del peer que no cambiaPEER_ASN_1
: el número de sistema autónomo (ASN) de BGP del peer que no cambiaPEER_NAME_2
: el nombre del peer de BGP que quieras actualizar para que use la autenticación MD5.INTERFACE_NAME_2
: el nombre de la interfaz de la sesión de emparejamiento de BGPIP_ADDRESS_2
: la dirección IP del Cloud RouterPEER_IP_ADDRESS_2
: la dirección IP del router peerPEER_ASN_2
: el número de sistema autónomo (ASN) de BGP de este par de BGP- Si configura la autenticación MD5 mediante gcloud o la interfaz de usuario, Google Cloud
se genera automáticamente el nombre de la clave con el formato
PEER_NAME-key
. - Si configuras la autenticación MD5 a través de la API, puedes especificar el nombre de la clave.
En la Google Cloud consola, ve a la página Cloud Routers.
En el campo Nombre, haga clic en el nombre del Cloud Router adecuado.
En la página Detalles del router, haz clic en el nombre de la sesión BGP que quieras modificar.
En la página Detalles de la sesión de BGP, haga clic en
Editar.En la sección Autenticación MD5, haz clic en Actualizar clave de autenticación MD5.
En el campo Clave de autenticación MD5, introduce la nueva clave de autenticación secreta o haz clic en Generar y copiar para rellenar el campo.
Anota la clave. Una vez que abandones esta página, no podrás recuperar la clave.
Haz clic en Guardar.
ROUTER_NAME
: el nombre de Cloud RouterPEER_NAME
: el nombre del par de BGPREGION
: la Google Cloud regiónSECRET_KEY
: la nueva clave de autenticación MD5 secreta que quieres usarPROJECT_ID
: el proyecto que contiene el Cloud RouterREGION
: la Google Cloud regiónROUTER_NAME
: el nombre de Cloud RouterKEY_NAME
: el nombre de la clave que quieres actualizar. Siempre que trabajes con la autenticación MD5 mediante la API, debes hacer referencia a la clave por su nombre.UPDATED_SECRET_KEY
: tu nueva clave secreta de autenticación MD5PEER_NAME
: el nombre del par de BGPINTERFACE_NAME
: el nombre de la interfaz de la sesión de emparejamiento de BGPIP_ADDRESS
: la dirección IP del Cloud RouterPEER_IP_ADDRESS
: la dirección IP del router peerPEER_ASN
: el número de sistema autónomo (ASN) de BGP de este par de BGPEn la Google Cloud consola, ve a la página Cloud Routers.
En el campo Nombre, haga clic en el nombre del Cloud Router adecuado.
En la página Detalles del router, busca la columna Autenticación MD5. En cada sesión, el valor de esta columna indica si la autenticación MD5 está habilitada.
ROUTER_NAME
: el nombre de Cloud RouterPROJECT
: el nombre del proyectoREGION
: la Google Cloud regiónmd5AuthEnabled
: un campo booleano que indica si la autenticación MD5 está habilitada en la sesión.statusReason
: un campo que describe el estado de la sesión.PROJECT_ID
: el proyecto que contiene el Cloud RouterREGION
: la región en la que se encuentra Cloud RouterROUTER_NAME
: el nombre de Cloud Routermd5AuthEnabled
: campo booleano que indica si la autenticación MD5 está habilitada en la sesión.statusReason
: campo que describe el estado de la sesión. Este campo solo se muestra cuando hay un problema con la autenticación MD5. En ese caso, el valor del campo esMD5_AUTH_INTERNAL_PROBLEM
.En la Google Cloud consola, ve a la página Cloud Routers.
En el campo Nombre, haga clic en el nombre del Cloud Router adecuado.
En la página Detalles del router, haz clic en el nombre de la sesión BGP que quieras modificar.
En la página Detalles de la sesión de BGP, haga clic en
Editar.En Autenticación MD5, haz clic en Inhabilitada.
Haz clic en Guardar. Aparecerá el cuadro de diálogo Deshabilitar clave de autenticación MD5.
En el cuadro de diálogo de confirmación, haz clic en Confirmar.
ROUTER_NAME
: el nombre de Cloud RouterPEER_NAME
: el nombre del par de BGPREGION
: la Google Cloud región- Actualizar la matriz
md5AuthenticationKeys
- Elimina el valor
md5AuthenticationKey
de la entradabgpPeers
correspondiente. PROJECT_ID
: el proyecto que contiene el Cloud RouterREGION
: la Google Cloud región en la que se encuentra el Cloud RouterROUTER_NAME
: el nombre de Cloud RouterNAME_OF_UPDATED_PEER
: el nombre de la sesión de emparejamiento que quieras modificarINTERFACE_NAME_FOR_UPDATED_PEER
: el nombre de la interfaz del par de BGP que quieras modificarIP_ADDRESS_FOR_UPDATED_PEER
: la dirección IP del Cloud Router que usa el peer que quieres modificarPEER_IP_ADDRESS_FOR_UPDATED_PEER
: la dirección IP del router del mismo nivel de la sesión de emparejamiento que quieras modificarPEER_ASN
: el número de sistema autónomo (ASN) de BGP del par de BGP que quieras modificarNAME_OF_UNCHANGED_PEER
: el nombre de la sesión de emparejamiento que quieras conservarINTERFACE_NAME_FOR_UNCHANGED_PEER
: el nombre de la interfaz del par de BGP que quieras mantenerIP_ADDRESS_FOR_UNCHANGED_PEER
: la dirección IP del Cloud Router que utiliza el peer que quieres mantener tal cualPEER_IP_ADDRESS_FOR_UNCHANGED_PEER
: la dirección IP del router de la misma red de la sesión de emparejamiento que quieras mantenerPEER_ASN_FOR_UNCHANGED_PEER
: el número de sistema autónomo (ASN) de BGP del par de BGP que quieras mantener tal cual.KEY_NAME_FOR_UNCHANGED_PEER
: nombre de la clave de autenticación MD5 del peer de BGP que quieras conservar.En la Google Cloud consola, ve a la página Cloud Routers.
- Selecciona el router del que quieras eliminar una sesión de BGP.
- En Sesiones de BGP, seleccione la sesión de BGP que quiera quitar.
- En la parte superior de la página, haz clic en Eliminar y, a continuación, confirma la eliminación.
PROJECT_ID
: el proyecto que contiene el Cloud RouterREGION
: la Google Cloud regiónROUTER_NAME
: el nombre de Cloud RouterKEY_NAME_FOR_RETAINED_PEER
: el nombre de la clave usada por el otro usuario que quieres conservar.NAME_OF_RETAINED_PEER
: el nombre del par de BGP que quieres conservarINTERFACE_FOR_RETAINED_PEER
: el nombre de la interfaz del par de BGP que vas a conservarIP_ADDRESS_FOR_RETAINED_PEER
: la dirección IP del Cloud Router del peer que vas a conservarPEER_IP_ADDRESS_FOR_RETAINED_PEER
: la dirección IP del par que vas a conservarPEER_ASN_FOR_RETAINED_PEER
: número de sistema autónomo (ASN) de BGP del par que vas a conservar.KEY_NAME_FOR_RETAINED_PEER
: el nombre de la clave de autenticación MD5 del peer de BGP que vas a conservar
Crear una sesión que use la autenticación
En algunos productos de Network Connectivity, puedes configurar un peer de BGP para que use la autenticación MD5 mientras creas el recurso. Estos productos incluyen VPN de alta disponibilidad e Interconexión Dedicada.
Para obtener más información, consulta las siguientes secciones:
Si vas a crear una vinculación de VLAN de interconexión de socio de nivel 2, crea la vinculación primero y, a continuación, actualiza el peer de BGP para añadir la autenticación MD5. Para obtener información sobre cómo añadir autenticación al actualizar una sesión de BGP, consulta la sección siguiente. Si tienes una conexión de capa 3, ponte en contacto con tu proveedor de servicios para obtener instrucciones.
Añadir autenticación a una sesión
Para añadir autenticación a un peer de BGP, siga uno de los procedimientos que se indican a continuación. Cuando añadas la autenticación, asegúrate de que la clave que utilices sea idéntica a la que usa tu router de mismo nivel.
Google Cloud no muestra la clave de autenticación MD5 y solo muestra el nombre de la clave cuando la configuración se ha realizado correctamente.
Consola
gcloud
Para actualizar la sesión con gcloud CLI, usa el 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
Sustituye los siguientes valores:
API
Para actualizar la sesión mediante la API, usa el método compute.routers.patch
. Cuando usas este método para añadir autenticación a la sesión, tu
solicitud debe hacer dos cosas:
Cuando apliques un parche a la matriz md5AuthenticationKeys
, debes proporcionar el name
de cada elemento de la matriz (a menos que quieras eliminar algunos elementos).
Sin embargo, no es obligatorio que proporcione el valor del campo key
de cada artículo.
Si omite este valor, Cloud Router conservará el valor anterior que se haya usado. Este comportamiento se ha diseñado para proteger el secreto de las claves.
Se diferencia de otros métodos PATCH, que suelen requerir que especifiques un valor para cada campo de un elemento de un array.
Cuando aplicas un parche a la matriz bgpPeers
, no tienes que proporcionar valores para todos los campos de todos los elementos (a menos que quieras quitar algunos elementos del mismo nivel o algunos valores).
Por ejemplo, supongamos que Cloud Router tiene dos peers, uno que usa la autenticación MD5 y otro que no. Si quieres dejar el primer peer sin cambios, pero añadir la autenticación MD5 al segundo, usarías una solicitud como la siguiente:
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" } ], }
Sustituye los siguientes valores:
Actualizar la clave de autenticación
Para cambiar la clave que usa Cloud Router en una sesión de emparejamiento, sigue uno de estos procedimientos. Cuando actualices la clave en el Cloud Router, asegúrate de que la clave que utilices sea idéntica a la que usa tu router peer.
Google Cloud no muestra la clave de autenticación MD5 y solo muestra el nombre de la clave cuando la configuración se ha realizado correctamente.
Consola
gcloud
Para actualizar la sesión, usa el 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
Sustituye los siguientes valores:
API
Para actualizar la sesión, usa el método compute.routers.patch
. Por ejemplo, puedes usar una solicitud como la siguiente.
En este ejemplo, se sustituye toda la matriz de elementos del mismo nivel, no solo el elemento del mismo nivel específico que se identifica. Es decir, se eliminan todos los participantes excepto PEER_NAME
. Se eliminan todas las claves excepto KEY_NAME
y se actualiza KEY_NAME
con el nuevo valor 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" } ], }
Sustituye los siguientes valores:
Comprobar el estado de la autenticación
Sigue estos pasos para comprobar el estado de la autenticación MD5. Consulta también Ver los detalles de Cloud Router.
Consola
gcloud
Para comprobar la sesión con gcloud CLI, usa el comando gcloud compute routers get-status
.
gcloud compute routers get-status ROUTER_NAME \ --project=PROJECT \ --region=REGION \
Sustituye los siguientes valores:
El resultado incluye el objeto result.bgpPeerStatus[]
, que contiene información sobre las sesiones BGP de Cloud Router. Los datos de cada sesión incluyen los dos campos siguientes:
API
Usa el método routers.getRouterStatus
:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME/getRouterStatus
Haz los cambios siguientes:
La salida incluye información sobre cada sesión de BGP. Los datos de cada sesión incluyen los dos campos siguientes:
Para configurar la monitorización continua de tus sesiones de BGP, usa Cloud Logging. El registro registra información sobre el estado de la autenticación MD5 en el evento BGP, que forma parte del registro de información.
Quitar la autenticación de una sesión
Si quieres quitar la autenticación MD5 de una sesión de BGP, debes quitarla tanto de Cloud Router como de tu router de par.
Para quitar la autenticación MD5 de la sesión de BGP en Cloud Router, usa uno de los siguientes procedimientos.
Consola
gcloud
Para quitar la autenticación MD5, usa el 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
Sustituye los siguientes valores:
API
Para quitar la autenticación MD5, usa el método
compute.routers.patch
.
Cuando quitas la autenticación mediante la API, la actualización debe hacer dos cosas:
Por ejemplo, si tu Cloud Router tiene dos peers de BGP y quieres quitar la autenticación MD5 de uno de ellos. En este caso, usa una solicitud como la siguiente:
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" } ], ], }
Sustituye los siguientes valores:
Eliminar una sesión que usa autenticación
Para eliminar una sesión de emparejamiento que utilice la autenticación MD5, siga uno de los procedimientos que se indican a continuación.
Consola
gcloud
Para quitar una sesión de BGP con la autenticación MD5 habilitada, usa el comando gcloud compute routers remove-bgp-peer
.
Para obtener más información, consulta Inhabilitar o quitar sesiones de BGP.
API
Para quitar una sesión de BGP con la autenticación MD5 habilitada, usa el método
compute.routers.patch
.
Cuando eliminas una sesión de BGP con autenticación MD5 mediante la API, tu actualización debe hacer dos cosas: eliminar la clave de la matriz md5AuthenticationKeys
y eliminar el bgpPeer
.
Por ejemplo, supongamos que Cloud Router tiene dos peers y quieres quitar uno de ellos. En este caso, usa una solicitud como la siguiente:
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" } ], }
Sustituye los siguientes valores:
Por ejemplo, supongamos que has creado los siguientes elementos del mismo nivel:
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" } ], }
Si quisieras quitar el segundo elemento del mismo nivel, usarías una solicitud como la siguiente:
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" } ], }