Una VPN es una red privada que conecta interlocutores a través de redes públicas (por ejemplo Internet).
No garantiza confidencialidad, pero sí métodos criptográficos y autenticidad de datos. Para proporcionar confidencialidad se puede unir con IPSec (IP security) que sí proporciona esta característica junto con autenticidad e integridad.
IPSEC (IP Security)
Es un protocolo seguro de la capa de Red, contenido en el estándar 2401, es del IETF del 1999. Proporciona seguridad para IP y los protocolos de capas superiores. Provee control de acceso, integridad, rechazo o reenvio de paquetes, confidencialidad, autenticación y negociación de compresión IP. Es independiente de los algoritmos criptográficos, contempla su implementación en IPv4 e IPv6.
La arquitectura de IPSEC estácompuesta por: protocolos de seguridad (AH – Authentication Header y ESP – Encapsulation Security Payload), Asociaciones de seguridad (SA), IKE (Internet Key Exchange) y algoritmos de autenticación y cifrado.
Existen dos tipo de tecnologías VPN:
VPN DE ACCESO REMOTO
Se caracteriza porque los usuarios remotos deben tener acceso de banda ancha, el usuario establece un túnel VPN a través de un proveedor de servicios de Internet, el túnel se establece solo cuando se necesita y los parámetros VPN se negocian dinámicamente.
VPN SITE-TO-SITE
Son configuradas entre dos dispositivos compatibles en los extremos de la conexión, provee conectividad a múltiples redes en ambos lados de la comunicación y en cada extremo del túnel actúa como una puerta de enlace a las diferentes redes.
Práctica: VPN Site-to-Site
Primero habría que realizar una lista de control de acceso poniendo como dirección de origen la red en la que estamos y la de destino la red a la que queremos conectarnos y después configurar una política IKE en el router R1, se identifican por números cuanto más bajo más prioridad tiene:
R1(config)# Access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255
R1(config)# crypto isakmp policy 10
R1(config-isakmp)# authentification pre-share
R1(config-isakmp)# group 2
R1(config-isakmp)# encryption aes
R1(config-isakmp)# exit
R1(config)# crypto isakmp key miclavevpn address 10.2.2.2
Esta dirección última es la dirección serial del router de destino. Ahora una vez declaradas las políticas IKE, vamos a configurar las propiedades de IPSec en R1:
R1(config)# crypto ipsec transform-set SETVPN esp-3des esp-sha-hmac
R1(config)# crypto map MAPVPN 10 ipsec-isakmp
R1(config-crypto-map)# description VPN connection to R3
R1(config-crypto-map)# set peer 10.2.2.2
R1(config-crypto-map)# set transform-set SETVPN
R1(config-crypto-map)# match address 101
R1(config-crypto-map)# exit
Ahora pasamos a configurar el crypto-map en la interfaz que va a R3:
R1(config)# interface serial0/0
R1(config-if)# crypto map MAPVPN
Para finalizar lo único que hace falta es establecer el mismo procedimiento en sentido contrario, en nuestro caso de R3 a R1:
R3(config)# Access-list 101 permit ip 192.168.3.0 0.0.0.255 192.168.1.0 0.0.0.255
R3(config)# crypto isakmp policy 10
R3(config-isakmp)# authentification pre-share
R3(config-isakmp)# group 2
R3(config-isakmp)# encryption aes
R3(config-isakmp)# exit
R3(config)# crypto isakmp key miclavevpn address 10.1.1.2
Esta dirección última es la dirección serial del router de destino. Ahora una vez declarado el IPSec, vamos a configurar las propiedades de isakmp en R3:
R3(config)# crypto ipsec transform-set SETVPN esp-3des esp-sha-hmac
R3(config)# crypto map MAPVPN 10 ipsec-isakmp
R3(config-crypto-map)# description VPN connection to R1
R3(config-crypto-map)# set peer 10.1.1.2
R3(config-crypto-map)# set transform-set SETVPN
R3(config-crypto-map)# match address 101
R3(config-crypto-map)# exit
Ahora pasamos a configurar el crypto-map en la interfaz que va a R3
R3(config)# interface serial0/0
R3(config-if)# crypto map MAPVPN
Por ultimo, para comprobar el correcto funcionamiento podemos usar el comando: show crypto ipsec sa