Site to Site IPSec VPN entre dos Routers sobre NAT
A solicitud de mi compañero Jonathan Montero les voy a mostrar como realizar una VPN IPSec entre dos Routers con Cisco IOS en un ambiente en donde tengamos NAT y necesitémos usar Port Forwarding. Les invito a leer y practicar con la guia practica que publique hace unos dias atras llamada «Site to Site IPSec VPN entre dos Routers Cisco» antes de empezar a trabajar con esta ya que la parte de IPSec no la voy a detallar. A continuación el escenario:
Antes de mostrarles la configuración inicial de cada equipo vamos a suponer algunas cosas sobre el escenario anterior. Los routers llamados Internet_Access no soportan IPSec (Estamos suponiendo que son Routers facilitados por el ISP) y por lo tanto necesitamos hacer el IPSec desde los Routers llamados Central_Office y Branch_Office, los cuales tienen cada uno su respectiva red local.
A continuación la configuración inicial de cada equipo:
Central_Office:
interface fastethernet0/0
ip address 10.0.0.2 255.255.255.0
duplex auto
speed auto
interface fastethernet0/1
ip address 192.168.1.1 255.255.255.0
duplex auto
speed auto
ip route 0.0.0.0 0.0.0.0 10.0.0.1
Internet_Access1:
interface fastethernet0/0
ip address 200.192.1.2 255.255.255.252
duplex auto
speed auto
interface fastethernet0/1
ip address 10.0.1.1 255.255.255.0
duplex auto
speed auto
ip route 0.0.0.0 0.0.0.0 200.192.1.1
Branch_Office:
interface fastethernet0/0
ip address 10.0.2.2 255.255.255.0
duplex auto
speed auto
interface fastethernet0/1
ip address 192.168.2.1 255.255.255.0
duplex auto
speed auto
ip route 0.0.0.0 0.0.0.0 10.0.2.1
Internet_Access2:
interface fastethernet0/0
ip address 200.192.2.2 255.255.255.252
duplex auto
speed auto
interface fastethernet0/1
ip address 10.0.2.1 255.255.255.0
duplex auto
speed auto
ip route 0.0.0.0 0.0.0.0 200.192.2.1
Nat Overload:
Suponiendo que nuestro provedor de servicios nos asigne solamente 1 dirección IP Publica (Como nuestro caso) para salir a Internet vamos a configurar un Nat Overload en Internet_Access1 para que las redes 192.168.1.0/24 y 10.0.1.0/24 desde Central_Office puedan salir a Internet utilizando una sola IP y llegar a hacia la IP Publica 200.192.2.2 de Internet_Access2 ubicado en nuestro Branch_Office:
1) Creamos un access-list que permita la redes que vamos a incluir en el Nat:
InternetAccess1(config)# access-list 10 permit 192.168.1.0 0.0.0.255
InternetAccess1e(config)# access-list 10 permit 10.0.1.0 0.0.0.255
2) Configuramos un Nat Overload:
InternetAccess1(config)# ip nat inside source list 10 interface fastethernet0/0 overload
3) Aplicamos Nat a la interfaz que va hacia internet (outside):
InternetAccess1(config)# interface fast0/0
InternetAccess1(config-if)# ip nat outside
4) Aplicamos Nat a la interfaz que va a la Red Interna (inside):
InternetAccess1(config)# interface fast0/1
InternetAccess1(config-if)# ip nat inside
Luego configuramos el Nat en InternetAccess2 para el Branch Office:
1) Creamos un access-list que permita la redes que vamos a incluir en el Nat:
InternetAccess2(config)# access-list 10 permit 192.168.2.0 0.0.0.255
InternetAccess2(config)# access-list 10 permit 10.0.2.0 0.0.0.255
2) Configuramos un Nat Overload:
InternetAccess2(config)# ip nat inside source list 10 interface fastethernet0/0 overload
3) Aplicamos Nat a la interfaz que va hacia internet (outside):
InternetAccess2(config)# interface fast0/0
InternetAccess2(config-if)# ip nat outside
4) Aplicamos Nat a la interfaz que va a la Red Interna (inside):
InternetAccess2(config)# interface fast0/1
InternetAccess2(config-if)# ip nat inside
Port Forwarding:
Luego procedemos a configurar el Port Forwarding para redireccionar los puertos de IPSec desde los routers InternetAccess hacia los Routers de las Oficinas Central_Office y Branch_Office, empezando con InternetAccess1:
InternetAccess1(config)# ip nat inside source static esp 10.0.1.2 interface FastEthernet0/0
InternetAccess1(config)# ip nat inside source static udp 10.0.1.2 500 interface FastEthernet0/0 500
InternetAccess1(config)# ip nat inside source static udp 10.0.1.2 4500 interface FastEthernet0/0 4500
Luego con InternetAccess2:
InternetAccess2(config)# ip nat inside source static esp 10.0.2.2 interface FastEthernet0/0
InternetAccess2(config)# ip nat inside source static udp 10.0.2.2 500 interface FastEthernet0/0 500
InternetAccess2(config)# ip nat inside source static udp 10.0.2.2 4500 interface FastEthernet0/0 4500
En las configuraciones anteriores podemos observar como redireccionamos las peticiones desde los puertos y protocolos especificados hacia el Router de cada Oficina utilizando un Port Forwarding con NAT, los puertos que redireccioné son los siguientes:
- Internet Key Exchange (IKE) – UDP 500
- Encapsulating Security Payload (ESP)
- IPsec NAT-T – UDP 4500
IPSec Tunnel VPN:
Luego procedemos a configurar el Tunnel en cada localidad:
Central_Office:
crypto isakmp policy 10
encr aes
authentication pre-share
group 2
crypto isakmp key cisco123 address 200.192.2.2
crypto ipsec transform-set MyTransform1 esp-aes esp-sha-hmac
crypto map MyCrypto1 10 ipsec-isakmp
set peer 200.192.2.2
set transform-set MyTransform1
match address 100
interface fastethernet0/0
ip address 10.0.1.2 255.255.255.0
duplex auto
speed auto
crypto map MyCrypto1
Branch_Office:
crypto isakmp policy 10
encr aes
authentication pre-share
group 2
crypto isakmp key cisco123 address 200.192.1.2
crypto ipsec transform-set MyTransform1 esp-aes esp-sha-hmac
crypto map MyCrypto1 10 ipsec-isakmp
set peer 200.192.1.2
set transform-set MyTransform1
match address 100
interface fastethernet0/0
ip address 10.0.2.2 255.255.255.0
duplex auto
speed auto
crypto map MyCrypto1
Prueba de Conectividad:
Finalmente deberiamos tener comunicación entre las dos localidades. Realizamos un ping desde el Central_Office especificando como source la interfaz local y se establecerá el tunnel:
Central_Office# ping 192.168.2.1 source fastethernet0/1
Con el comando «show crypto isakmp sa» verificamos el estado del Tunnel. Cualquier duda o inconveniente estamos a las ordenes!
no me funciono
Para hacer la prueba donde esta la nube de internet ¿en lugar de la nube se puede poner un router y funciona igual?