parte 3: Configuración para acceso por VPN por IpSec

13 de abril de 2008

En esta parte configuraremos el router para dar acceso por VPN y acceder de forma segura a la Lan interna de nuestra red.
Existen diferentes formas de crear VPNs, y la que utilizaremos aquí será una VPN a través de los protocolos de Ipsec y una validación del clientes a través de Radius. En el caso de los cliente generaran la VPN a través del Cisco VPN Client.

Los pasos que debemos seguir son:

+ Preparación de IKE e Ipsec, donde decidiremos los algoritmos de cifrado y hash que queremos utilizar así como los parámetros TCP/IP que recibirán los clientes una vez conectados a la VPN.
+ Configuración de la primera fase de IKE. En nuestro caso utilizaremos cifrado 3DES y una autentificación de clave precompartida.
+ Configuración de la segunda fase de IKE (o configuración de IpSec). Para esta parte también utilizaremos 3DES para el cifrado, SHA para las funciones de Hash y Radius para la validación del cliente.
+ Por ultimo comprobaremos y verificaremos IKE para ver si funciona correctamente cuando los clientes empiecen a conectarse por VPN.

Comenzamos pues con la configuración de la primera fase de IKE:

(config)# crypto isakmp policy 1
(config-isakmp)# encr 3des
(config-isakmp)# authentication pre-share
(config-isakmp)# group 2
(config)# ip local pool vpnpool 192.168.2.1 192.168.2.255
(config)# crypto isakmp client configuration group thevpn
(config-isakmp-group)# key 1827hdyha2
(config-isakmp-group)# dns 212.73.32.3 212.73.32.67
(config-isakmp-group)# pool vpnpool
(config-isakmp-group)# max-users 3
(config-isakmp-group)# netmask 255.255.255.0
(config-isakmp-group)# acl 101
Configuramos la segunda fase de IKE o Ipsec:

(config)#crypto ipsec transform-set ESP-3DES-SHA esp-3des esp-sha-hmac
(config)#crypto dynamic-map dynmap1 1
(config-crypto-map)#set security-association idle-time 3600
(config-crypto-map)#set transform-set ESP-3DES-SHA
(config-crypto-map)#reverse-route
Utilizamos el Radius local que ya habíamos configurado para la Wireless:

(config)#aaa authorization network authovpn local
(config)#aaa authentication login authenvpn local
(config)#crypto map mymap client authentication list authenvpn
(config)#crypto map mymap isakmp authorization list authovpn
(config)#crypto map mymap client configuration address respond
(config)#crypto map mymap 65535 ipsec-isakmp dynamic dynmap1
Aplicamos el mapa de Ipsec a la interfaz de ADSL que es la que queremos que escuche las conexiones de VPN:

(config)#interface dialer 0
(config-if)#crypto map mymap
Configuramos las ACLs necesarias:

(config)# access-list 101 permit ip 192.168.1.0 0.0.0.255 any
(config)# access-list 102 deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
(config)# access-list 102 permit ip 192.168.1.0 0.0.0.255 any
(config)# route-map myrm permit 1
(config-route-map)# match ip address 102
(config)# no ip nat inside source list 1 interface Dialer0 overload
(config)# ip nat source route-map myrm interface dialer 0 overload
Ahora ya podemos configurar nuestro cliente de VPN con la IP de la ADSL, el grupo y la password y probar si podemos conectarnos por VPN.
Podemos utilizar los comanndos "debug crypto isakmp" y "debug crypto ipsec" para ver que todo es correcto.
Una vez creada la VPN y que sabemos que todo funciona podemos modificar la configuración para validarnos por el Radius y no por local como hasta ahora. Para validarnos por Radius, utilizaremos el Radius local que ya habiamos configurado:

(config)# no aaa authentication login authenvpn local
(config)# aaa authentication login authenvpn group rad_eap