Made4it

Túnel GRE + IPSec entre Cisco IOS y Huawei NE40

En este post vamos a discutir un escenario muy común (y poco documentado), que consiste en utilizar un túnel GRE protegido con IPSec entre un router Cisco IOS ASR1002 y un router Huawei NE40.

La topología de este ejemplo se describe a continuación. Se ha mantenido simple para que podamos discutir los detalles de GRE+IPSEC, sin entrar en los otros puntos de la red.

En ella contamos con el router Cisco, con la dirección IP pública 198.51.100.2, y el router Huawei NE40, con la dirección IP pública 203.0.113.66. Ambos están conectados a Internet y disponen de conectividad entre sí. Debemos establecer un túnel GRE entre los routers y protegerlo mediante IPSec en modo túnel. El espacio de direcciones del túnel es 172.31.31.0/30.

A continuación hablaremos de GRE e IPSec. El objetivo no es detallar por completo estos protocolos, sino ofrecer una visión general y, principalmente, una base para el resto del artículo. No te precipites, hay información muy relevante entre medias.

GRE

Generic Routing Encapsulation (GRE) es un protocolo de tunelización que puede encapsular diversos protocolos de red (por ejemplo, ATM, IPX, IPv6 e incluso IPv4) dentro de paquetes IPv4. Estos paquetes pueden transmitirse a través de redes IPv4 comunes (por ejemplo, Internet).

Algunos casos de uso del GRE:
interconectar redes internas desconectadas entre sí
interconectar redes IPv6 aisladas a través de redes IPv4
establecer la comunicación entre la sede central y las sucursales a través de Internet
enlaces de mitigación
con VPN cuando sea necesario protocolos de enrutamiento


IPSEC

IPSec es un marco de seguridad desarrollado por el IETF que trata de resolver problemas de seguridad que el protocolo IPv4 no pudo solucionar, como el cifrado, la integridad de los datos, la validación de fuentes y la antirrepetición.
En realidad, IPSec no es un único protocolo, sino una combinación de protocolos y algoritmos. Los principales son IKEv1, IKEv2, ESP y AH.

IPSec se utiliza ampliamente en las VPN, tanto de acceso remoto como de sitio a sitio.

En el ciclo de vida de un túnel, tenemos 5 etapas bien definidas:

  1. Definición de «tráfico de interés»
    El tráfico de interés es el desencadenante que hace que se establezca el túnel. El router o el cortafuegos, al detectar tráfico de interés, inicia las siguientes etapas de la negociación de IPSec.
    El tráfico de interés suele configurarse en forma de ACL, o políticas de tráfico.

  2. IKE fase 1
    En la fase 1, el protocolo establece un canal de comunicación seguro con el par remoto. Una vez establecido este canal seguro, se permite el intercambio de mensajes de la fase 2.
    Es en la fase 1 cuando se protegen los peers, se autentican y se comparan las políticas ISAKMP (y tienen que coincidir). Hay dos modos, principal y agresivo.

    Términos que verás sobre la fase 1: ike, isakmp, grupo DH, clave precompartida, integridad, política isakmp

  3. Fase 2 de IKE
    En esta fase, una vez establecido el túnel seguro en la fase 1, podemos negociar lo que denominamos «SA de IPSec», que no son más que los «acuerdos» sobre el tipo de tráfico que será protegido por el túnel IPSec, negociados de forma dinámica. Un ejemplo podría ser: «Voy a proteger el tráfico de la red 192.168.1.0/24 cuando el destino sea 192.168.2.0/24 utilizando el algoritmo de cifrado X y el de autenticación Y», y el par remoto establece la regla en sentido inverso.

    Otra función de la fase 2 es mantener las SAs, así como expirar claves y sesiones si se alcanza algún parámetro (ej: expirar SAs y negociar nuevas cada x horas, o cada N kilobytes).

    Términos que veremos sobre la fase 2: ipsec, ipsec sa, crypto acl, transform set, mode tunnel, authentication, encryption, ipsec policy

  4. Transferencia de datos
    En esta fase tiene lugar la transferencia de datos propiamente dicha. Tan pronto como el tráfico relevante llega al router y se completan las fases 1 y 2, los paquetes se envían de acuerdo con los acuerdos establecidos en las SA de IPSec, transmitiéndose hasta el par remoto.

  5. Cierre del túnel
    El cierre del túnel se produce de forma manual, o bien cuando algún parámetro de IPSec caduca o alcanza su límite. En este caso, se descartan todas las claves, se rescinden los contratos y, si es necesario redirigir el tráfico, debe establecerse un nuevo túnel IPSec.

Para más detalles sobre GRE e IPSEC, consulte las referencias citadas al final del artículo.

Las configuraciones GRE e IPSEC acordadas entre las Partes

El siguiente ejemplo muestra cómo se acuerda la información de la VPN. Suelen ser formularios que se rellenan con información sobre el túnel.

Dispositivo VPN

Sitio A Dispositivo VPN

Sitio B Dispositivo VPN

Dirección IP del par VPN *

198.51.100.2

203.0.113.66

Dispositivo *

Cisco ASR 1004

Huawei NE40-M2K

Versión *

V3.0.6

Propiedades del túnel

Sitio A Dispositivo VPN

Sitio B Dispositivo VPN

Fase 1

Método de autenticación

APasswordWellS3gur@

APasswordWellS3gur@

Versión de IKE

IKEv2

IKEv2

Grupo Diffie-Hellman

grupo 14

grupo 14

Algoritmo de cifrado *

AES 256

AES 256

Algoritmo Hashing *

SHA-1

SHA-1

Modo principal o agresivo *

Modo principal

Modo principal

SA Lifetime * (para renegociación) sin kbytes rekeying

86400 segundos

86400 segundos

Fase 2

Encapsulación * (ESP o AH)

ESP

ESP

Algoritmo de cifrado *

AES 256

AES 256

Algoritmo de autenticación *

SHA-1

SHA-1

Perfect Forward Secrecy para reintroducir *

Discapacitados

Discapacitados

Grupo Diffie-Hellman *

grupo 14

grupo 14

SA Lifetime * (para renegociación) ) sin kbytes rekeying

3600 segundos

3600 segundos

GRE

Dirección

172.31.31.1/30

172.31.31.2/30

Keepalives

Discapacitados

Discapacitados

MTU

1400

1400

Ajustar SMS

1360

1360

Información importante sobre la licencia y los módulos

Consulte con el fabricante de su equipo para ver si no se requiere algún tipo de tarjeta de servicio, o licencia.

En el caso del equipo de este laboratorio, el router NE40-M2K no necesitaba ningún módulo físico adicional, sólo la licencia IPSec. En el router Cisco tampoco fue necesaria ninguna licencia, ya que su IOS ya estaba en ADVIPSERVICES-K9 (que contiene toda la base para Ipsec).

*Información útil*: si desea ejecutar IKEv1, en el router Huawei necesita un módulo de software para IKEv1 (que se obtiene del proveedor de Huawei).

Configuraciones de Cisco IOS XE

Así que vamos a configurar el router Cisco para establecer la VPN. No entraré en detalles sobre las interfaces físicas, sólo sobre la VPN. Al final del artículo hay un bloque con su correspondiente conf.

Configuraciones de la fase 1 según la tabla anterior:

Todo lo anterior se refiere a la Fase 1. Así que, cuando esté diagnosticando problemas y estos pertenezcan a esta fase, ya sabrá dónde realizar los cambios 🙂.

Ahora preparando la fase 2:

¡Demasiado simple en Cisco! Ahora combinaremos las dos fases en un solo perfil:

Creación del túnel GRE y adición de la protección IPSec:

Configuraciones Huawei

A continuación, vamos a configurar el router Huawei para establecer la VPN. Como en el caso de Cisco, no entraré en detalles sobre las interfaces físicas, sólo sobre la VPN. Al final del artículo hay un bloque con su correspondiente conf.

La configuración en el router Huawei es un poco más compleja, ya que crea un túnel para el protocolo GRE, y un túnel para IPSec. Además, queremos utilizar la misma IP para ambos túneles, por lo que se necesita un VRF. 😮

Creación de una instancia de servicio para utilizar la VPN (sólo aplicable en NE40):

Actualización del nuevo VRF (vpn-instance):

Creación de las dos interfaces Loopback con la misma IP (magia VRF). El looback con el túnel IPSec estará en la tabla de enrutamiento público, mientras que el del túnel GRE estará en la tabla VPNA.

Ahora llegamos a IPSec.

La ACL de tráfico interesante define el tráfico que será protegido por IPSec. En el caso entonces, tendremos el tráfico GRE entre las IPs del sitio A y el sitio B. Tenga en cuenta que sólo hago la comunicación en una dirección – la dirección del router proteger su tráfico).

El ACL anterior puede leerse así:

«Proteger los datos del protocolo GRE procedentes del VRF vpna entre el origen 203.0.113.66 y el destino 198.51.100.2»

Ahora vamos a crear la fase 1 (recuerde que en Cisco ya se empieza por ella, lo cual es mucho más sencillo). En medio de esta fase hay algunas configuraciones de enlace de la instancia VPN, debido a la VRF creada.

Todo lo anterior se refiere a la Fase 1. Así que, cuando esté diagnosticando problemas y estos pertenezcan a esta fase, ya sabrá dónde realizar los cambios 🙂.

Pasamos a la fase 2:

Ahora combinaremos las dos fases en un solo perfil:

Creación de túneles GRE e IPSEC. Vamos allá para no confundir:

Túnel 900 – es un túnel GRE, que opera dentro de la vpna.

Túnel 10 – es un túnel IPSec, que funciona en la tabla global

La idea en Huawei es que haya un túnel IPSec funcionando en el exterior y un segundo túnel GRE en el interior, uno encapsulado dentro del otro. Pero lo curioso es que el túnel GRE funciona fuera de la VRF, y el IPSec, dentro. Un poco lioso, ¿verdad?

Así que tunnel900 que es el GRE (y que recibe las IPs de /30) usa un destino que va dentro de la VPNA. Y dentro de la VPNA se llega al destino por túnel IPSec. Observe también que la política IPsec se asoció con el túnel 10, utilizando el perfil que se creó.

Por último, y no por ello menos importante, una ruta que presenta cierta complejidad en sí misma: dentro de la instancia VPNA, indico que, para llegar al par remoto, utilizo la interfaz IPSec recién creada, siendo el siguiente salto el propio par.

Y así configuramos el router Huawei. A ver si ahora ha subido.

Validación del funcionamiento

En el proceso de validación del túnel, debemos recordar siempre que cada fase y etapa depende del establecimiento completo de la otra, por lo que no tiene sentido querer tener conectividad si la fase 1 aún no ha establecido la comunicación.

En ambos routers, validaremos en secuencia:

  • conectividad
  • fase1
  • fase2
  • Conectividad GRE
  • estado de las interfaces

Pasemos a las pruebas.

Comprobación Cisco

Validación de la conectividad mediante ping ICMP

Comprobación de que IKEv2 se ha establecido en Fase 1:

Cuando no aparece nada en la salida, o no está lista, significa que alguno de los parámetros de la Fase 1 no coincidía. Comprueba en ambos lados si están de acuerdo.

Continuamos la validación en la fase 2:

En la salida anterior, vemos que los routers han conmutado el contrato de «tráfico interesante». Cada parte se ha comprometido a proteger una dirección de la comunicación GRE.

En secuencia todavía en Fase 2, hay algunos contadores muy importantes que se refieren a paquetes enviados/recibidos/encapsulados/encriptados/verificados. Se encuentra en la salida del comando «show crypto ipsec sa». Veámoslos.

Cuando estos contadores no se incrementan, o siguen incrementando fallos, es porque alguna configuración de Fase 2 no se está casando.

Un buen ejemplo sería que sólo se incrementara el contador de encaps/encrypt, y que el de decaps/decrypt se pusiera a cero. Este va a ser un interesante asunto de tráfico ACL que está divergiendo en ambos lados. O bloqueo de las comunicaciones en la red de transporte u otros factores que no trataremos aquí. Si necesita ayuda, no dude en ponerse en contacto con nosotros.

Por último, ¡validemos la conectividad en sí! ¡Pero ahora dentro del túnel ya protegido!

Y la interfaz del túnel está funcionando:

Verificación Huawei

Para validar el funcionamiento en el router Huawei NE40, el enfoque es el mismo que para Cisco.

Validación de la conectividad mediante ping ICMP (recuerde utilizar la fuente loopback)

Comprobación de que IKEv2 se ha establecido en Fase 1:

Cuando no aparece nada en la salida, o no está en listo (RD), significa que alguno de los parámetros de la Fase 1 no coincidía. Comprueba en ambos lados si están de acuerdo.

Continuamos la validación en la fase 2:

Por último, validemos la conectividad comprobando los contadores de tráfico. ¡Pero ahora dentro del túnel ya protegido!

Y la interfaz del túnel está funcionando:

¡Con esto llegamos al túnel establecido y en funcionamiento entre el router Cisco IOS XE y el Huawei NE40!

Configuración completa de Cisco

Configuración completa de Huawei

Autores

Rafael Ganascim

Julian Eble

Referencias

[1] Descripción general del GRE. NE40E-M2 de Huawei. https://support.huawei.com/hedex/hdx.do?docid=EDOC1100277532&id=EN-US_CONCEPT_0172355906&ui=1

Made4it surge para satisfacer las necesidades del mercado, que cada vez exige más soluciones personalizadas.