¡Hola! Hoy te enseñaremos a configurar un túnel VPN IPSec de sitio a sitio (Site-To-Site IPSec VPN) entre routers Cisco. Estos túneles VPN se utilizan para asegurar la transmisión segura de datos, voz y vídeo entre dos ubicaciones (por ejemplo, oficinas o sucursales). El túnel VPN se crea a través de la red pública de Internet y se cifra utilizando una serie de algoritmos de cifrado avanzados para garantizar la confidencialidad de los datos que se transmiten entre las dos ubicaciones.
En este artículo se mostrará cómo configurar dos routers Cisco para crear un túnel VPN seguro y permanente de tipo “sitio a sitio” a través de Internet utilizando el protocolo IP Security (IPSec). En este artículo, suponemos que ambos routers Cisco tienen una dirección IP pública estática.
Tabla de Contenido
ISAKMP e IPSec
ISAKMP (Internet Security Association and and Key Management Protocol) e IPSec son necesarios para construir y cifrar el túnel VPN. ISAKMP, también conocido como IKE (Internet Key Exchange), es un protocolo de negociación que permite a dos hosts negociar cómo crear una asociación de seguridad IPsec. La negociación ISAKMP consta de dos fases: fase 1 y fase 2.
- Durante la fase 1, se crea el primer túnel, que protege los mensajes de negociación ISAKMP posteriores. Durante la fase 2, se crea el túnel que protege los datos. Luego, IPSec entra en juego para cifrar los datos utilizando algoritmos de cifrado y proporciona autenticación, cifrado y protección contra reproducción.
Requisitos para VPN IPSec
Para facilitar la comprensión de la configuración, la dividiremos en dos partes:
- Configuración de ISAKMP (Fase 1 de ISAKMP)
- Configuración de IPSec (Fase 2 de ISAKMP, ACL, Crypto MAP)
Lo haremos con el ejemplo que se muestra en el diagrama: dos sucursales, ambos routers de las sucursales se conectan a Internet y tienen una dirección IP estática asignada por su proveedor. La sucursal n.º 1 tiene una subred interna 10.10.10.0/24, mientras que la sucursal n.º 2 tiene la subred 20.20.20.0/24. El objetivo es conectar de forma segura ambas redes LAN y permitir una comunicación completa entre ellas sin ninguna restricción.

Configuración de ISAKMP (IKE) – Fase 1 de ISAKMP
IKE solo es necesario para establecer la SA (Asociación de Seguridad) para IPsec. Antes de que pueda hacerlo, IKE debe negociar la relación SA (ISAKMP SA) con el nodo par (peer).
Empezaremos por configurar el router R1 de la primera ubicación. El primer paso es configurar la política de la Fase 1 de ISAKMP:
R1(config)# crypto isakmp policy 1
R1(config-isakmp)# encr 3des
R1(config-isakmp)# hash md5
R1(config-isakmp)# authentication pre-share
R1(config-isakmp)# group 2
R1(config-isakmp)# lifetime 86400
Estas son las órdenes anteriores:
- 3DES: método de cifrado que se utilizará en la etapa 1.
- MD5: algoritmo de hash.
- Pre-Share: uso de una clave precompartida (PSK) como método de autenticación.
- Group 2: grupo de Diffie-Hellman que se utilizará.
- 86400: tiempo de vida de la clave de sesión. Se expresa en kilobytes (cuánto tráfico debe pasar antes de cambiar la clave) o en segundos. El valor se ha establecido de forma predeterminada.
Debemos señalar que la política de la Fase 1 de ISAKMP se define de forma global. Esto significa que si tenemos cinco ubicaciones remotas diferentes y cinco políticas de la Fase 1 de ISAKMP diferentes configuradas (una para cada router remoto), cuando nuestro router intente negociar un túnel VPN con cada ubicación, enviará las cinco políticas y utilizará la primera coincidencia que sea aceptada por ambas partes.
A continuación, vamos a definir la clave precompartida para la autenticación con nuestro socio (router R2) mediante el siguiente comando:
R1(config)# crypto isakmp key merionet address 1.1.1.2
La clave precompartida del socio se ha establecido en “merionet” y su dirección IP pública es 1.1.1.2. Cada vez que R1 intente establecer un túnel VPN con R2 (1.1.1.2), se utilizará esta clave.
Configuración de IPSec: 4 pasos sencillos
Para configurar IPSec, necesitamos hacer lo siguiente:
- Crear un ACL ampliado.
- Crear IPSec Transform
- Crear una mapa criptográfico (Crypto Map).
- Aplicar la mapa criptográfica a la interfaz pública.
Veamos cada uno de estos pasos.
Paso 1: Crear un ACL ampliado
Necesitamos crear una lista de acceso ampliada (puedes leer sobre la configuración de Extended ACL en este artículo) y en ella definir qué tráfico queremos que pase por el túnel VPN. En este ejemplo, será el tráfico de una red a otra desde 10.10.10.0/24 hasta 20.20.20.0/24. A veces, estas listas se llaman listas de acceso criptográfico o listas de acceso de tráfico interesante.
R1(config)# ip access-list extended VPN-TRAFFIC
R1(config-ext-nacl)# permit ip 10.10.10.0 0.0.0.255 20.20.20.0 0.0.0.255
Paso 2: Crear una IPSec Transform
El siguiente paso es crear un conjunto de transformación (Transform Set) que se utilizará para proteger nuestros datos. Lo hemos llamado “TS”.
R1(config)# crypto ipsec transform-set TS esp-3des esp-md5-hmac
El comando anterior define lo siguiente:
- ESP-3DES: método de cifrado.
- MD5: algoritmo de hash.
Paso 3: Crear Crypto Map
Crypto Map es la última etapa de nuestra configuración y combina las configuraciones de ISAKMP e IPSec definidas anteriormente:
R1(config)# crypto map CMAP 10 ipsec-isakmp
R1(config-crypto-map)# set peer 1.1.1.2
R1(config-crypto-map)# set transform-set TS
R1(config-crypto-map)# match address VPN-TRAFFIC
Hemos llamado a nuestra mapa criptográfica “CMAP”. La etiqueta “ipsec-isakmp” indica al router que esta mapa criptográfica es una mapa criptográfica IPsec. Aunque solo se ha declarado un par en esta mapa (1.1.1.2), existe la posibilidad de tener varios pares.
Paso 4: Aplicar la mapa criptográfica a la interfaz pública
El último paso es aplicar la mapa criptográfica a la interfaz del router por la que sale el tráfico. Aquí, la interfaz de salida es FastEthernet 0/1.
R1(config)# interface FastEthernet0/1
R1(config- if)# crypto map CMAP
Ten en cuenta que solo se puede asignar una criptomapa a una interfaz.
Una vez que aplicamos la mapa criptográfica a la interfaz, recibimos un mensaje del router confirmando que isakmp está activado: “ISAKMP is ON
“.
En esta etapa, hemos completado la configuración de IPSec VPN en el router de la Ubicación 1.
Ahora, pasemos al router de la Ubicación 2 para completar la configuración de la VPN. La configuración para R2 es idéntica, con la única diferencia en las direcciones IP de los pares y el ACL.
R2(config)# crypto isakmp policy 1
R2(config-isakmp)# encr 3des
R2(config-isakmp)# hash md5
R2(config-isakmp)# authentication pre-share
R2(config-isakmp)# group 2
R2(config-isakmp)# lifetime 86400
R2(config)# crypto isakmp key merionet address 1.1.1.1
R2(config)# ip access-list extended VPN-TRAFFIC
R2(config-ext-nacl)# permit ip 20.20.20.0 0.0.0.255 10.10.10.0 0.0.0.255
R2(config)# crypto ipsec transform-set TS esp-3des esp-md5-hmac
R2(config)# crypto map CMAP 10 ipsec-isakmp
R2(config-crypto-map)# set peer 1.1.1.1
R2(config-crypto-map)# set transform-set TS
R2(config-crypto-map)# match address VPN-TRAFFIC
R2(config)# interface FastEthernet0/1
R2(config- if)# crypto map CMAP
Traducción de Direcciones de Red (NAT) y Túneles VPN IPSec
En un esquema real, la traducción de direcciones de red (NAT) probablemente se configurará para proporcionar acceso a Internet a los hosts internos. Al configurar un túnel VPN de tipo “sitio a sitio”, es necesario indicar al router que no realice NAT (deny NAT) para los paquetes destinados a la red VPN remota.
Esto se puede hacer fácilmente insertando una instrucción “deny
” al principio de las listas de acceso NAT, como se muestra a continuación:
Para el primer router:
R1(config)# ip nat inside source list 100 interface fastethernet0/1 overload
R1(config)# access-list 100 deny ip 10.10.10.0 0.0.0.255 20.20.20.0 0.0.0.255
R1(config)# access-list 100 permit ip 10.10.10.0 0.0.0.255 any
Para el segundo router:
R2(config)# ip nat inside source list 100 interface fastethernet0/1 overload
R2(config)# access-list 100 deny ip 20.20.20.0 0.0.0.255 10.10.10.0 0.0.0.255
R2(config)# access-list 100 permit ip 20.20.20.0 0.0.0.255 any
Inicialización y Verificación del Túnel VPN IPSec
En este punto, hemos completado nuestra configuración y el túnel VPN está listo para su lanzamiento. Para iniciar el túnel VPN, debemos hacer que un paquete pase por la VPN, y esto se puede lograr enviando una solicitud de eco desde un router a otro:
R1# ping 20.20.20.1 source fastethernet0/0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 20.20.20.1, timeout is 2 seconds:
Packet sent with a source address of 10.10.10.1
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 44/47/48 ms
El primer mensaje de eco icmp (ping) recibió un tiempo de espera, pero los demás recibieron respuesta, como se esperaba. El tiempo que se tarda en iniciar el túnel VPN a veces supera los 2 segundos, lo que provoca el tiempo de espera del primer ping.
Para comprobar el túnel VPN, utiliza el comando “show crypto session
“:
R1# show crypto session
Crypto session current status
Interface: FastEthernet0/1
Session status: UP-ACTIVE
Peer: 1.1.1.2 port 500
IKE SA: local 1.1.1.1/500 remote 1.1.1.2/500 Active
IPSEC FLOW: permit ip 10.10.10.0/255.255.255.0 20.20.20.0/255.255.255.0
Active SAs: 2, origin: crypto map
¡Listo! ¡Acabamos de configurar correctamente un túnel VPN IPSEC de sitio a sitio entre dos routers Cisco!