Introducción
Este documento proporciona un ejemplo de configuración para configurar un túnel de sitio a sitio IPv6 entre un ASA (Adaptive Security Appliance) y un FTD (Firepower Threat Defense) mediante el protocolo de intercambio de claves de Internet versión 2 (IKEv2). La configuración incluye conectividad de red IPv6 de extremo a extremo con ASA y FTD como dispositivos de terminación VPN.
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
- Conocimientos fundamentales de la configuración de ASA CLI
- Conocimientos fundamentales de los protocolos IKEv2 e IPSEC
- Comprensión del direccionamiento y el routing IPv6
- Comprensión básica de la configuración de FTD mediante FMC
Componentes Utilizados
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- Cisco ASAv con 9.6.1(4)12
- Cisco FTDv con 6.5.0
- Cisco FMCv con 6.6.0
Configurar
Diagrama de la red

Configuración de Cisco ASA
Esta sección describe la configuración requerida en el ASA.
Paso 1. Configure las interfaces ASA.
interface GigabitEthernet0/0
nameif outside
security-level 0
ipv6 address 2001:bbbb::1/64
ipv6 enable
interface GigabitEthernet0/1
nameif inside
security-level 100
ipv6 address 2001:aaaa::1/64
ipv6 enable
Paso 2. Establezca una ruta predeterminada IPv6.
ipv6 route outside ::/0 2001:bbbb::2
Paso 3. Configure la política IKEv2 y habilite IKEv2 en la interfaz externa.
crypto ikev2 policy 1
encryption aes-256
integrity sha256
group 14
prf sha256
lifetime seconds 86400
crypto ikev2 enable outside
Paso 4. Configure el Grupo de Túnel.
tunnel-group 2001:cccc::1 type ipsec-l2l
tunnel-group 2001:cccc::1 ipsec-attributes
ikev2 remote-authentication pre-shared-key cisco123
ikev2 local-authentication pre-shared-key cisco123
Paso 5. Cree los objetos y la lista de control de acceso (ACL) para que coincidan con el tráfico interesante.
object-group network local-network
network-object 2001:aaaa::/64
object-group network remote-network
network-object 2001:dddd::/64
access-list CRYPTO_ACL extended permit ip object-group local-network object-group remote-network
Paso 6. Configure las reglas de identidad de traducción de direcciones de red (NAT) para el tráfico interesante.
nat (inside,outside) source static local-network local-network destination static remote-network remote-network no-proxy-arp route-lookup
Paso 7. Configuración de la propuesta IPSec de IKEv2.
crypto ipsec ikev2 ipsec-proposal ikev2_aes256
protocol esp encryption aes-256
protocol esp integrity sha-1
Paso 8. Establezca el mapa criptográfico y aplíquelo a la interfaz externa.
crypto map VPN 1 match address CRYPTO_ACL
crypto map VPN 1 set peer 2001:cccc::1
crypto map VPN 1 set ikev2 ipsec-proposal ikev2_aes256
crypto map VPN 1 set reverse-route
crypto map VPN interface outside
Configuración de FTD
Esta sección proporciona instrucciones para configurar un FTD mediante FMC.
Definición de la topología VPN
Paso 1. Navegue hasta Dispositivos > VPN > Sitio a sitio.
Seleccione 'Agregar VPN' y elija 'Dispositivo Firepower Threat Defence', como se muestra en esta imagen.

Paso 2. Aparece el cuadro 'Crear nueva topología de VPN'. Dé a la VPN un nombre fácilmente identificable.
Topología de red: Punto a punto
Versión IKE: IKEv2
En este ejemplo, al seleccionar los extremos, el nodo A es el FTD. El nodo B es el ASA. Haga clic en el botón verde más para agregar dispositivos a la topología.

Paso 3. Agregue el FTD como primer punto final.
Elija la interfaz donde se aplica el mapa criptográfico. La dirección IP debe cumplimentarse automáticamente a partir de la configuración del dispositivo.
Haga clic en el icono verde más bajo Redes protegidas para seleccionar subredes que se cifran a través de este túnel VPN. En este ejemplo, el objeto de red 'Proxy local' en FMC consta de la subred IPv6 '2001:DDDD::/64'.


Con el paso anterior, se completa la configuración del terminal FTD.
Paso 4. Haga clic en el icono verde más para el Nodo B que es un ASA en el ejemplo de configuración. Los dispositivos no gestionados por el FMC se consideran Extranet. Agregue un nombre de dispositivo y una dirección IP.
Paso 5. Seleccione el icono verde más para agregar redes protegidas.

Paso 6. Seleccione las subredes ASA que deben cifrarse y agréguelas a las redes seleccionadas.
'Remote Proxy' es la subred ASA '2001:AAAA::/64' en este ejemplo.

Configurar parámetros IKE
Paso 1. En la pestaña IKE, especifique los parámetros que se utilizarán para el intercambio inicial de IKEv2. Haga clic en el icono verde más para crear una nueva política IKE.

Paso 2. En la nueva política IKE, especifique un número de prioridad así como la duración de la fase 1 de la conexión. Esta guía utiliza estos parámetros para el intercambio inicial:
Integridad (SHA256)
Encriptación (AES-256),
PRF (SHA256) y
Grupo Diffie-Hellman (Grupo 14).
Todas las políticas IKE del dispositivo se enviarán al par remoto independientemente de lo que haya en la sección de políticas seleccionada. El primero que coincida con el par remoto se seleccionará para la conexión VPN.
[Opcional] Elija qué política se enviará primero mediante el campo de prioridad. La prioridad 1 se envía primero.




Paso 3. Una vez agregados los parámetros, seleccione la política arriba configurada y elija el tipo de autenticación.
Seleccione la opción Pre-shared Manual Key . Para esta guía, se utiliza la clave previamente compartida 'cisco123'.

Configurar parámetros IPSEC
Paso 1. Vaya a la ficha IPSec y cree una nueva propuesta IPSec haciendo clic en el icono del lápiz para editar el conjunto de transformación.

Paso 2. Cree una nueva propuesta IKEv2 IPsec seleccionando el icono verde más e introduzca los parámetros de la fase 2 como se muestra a continuación:
Hash ESP: SHA-1
Cifrado ESP: AES-256


Paso 3. Una vez creada la nueva propuesta IPSec, agréguela a los conjuntos de transformación seleccionados.

Paso 4. La propuesta de IPSec recientemente seleccionada ahora se enumera en Propuestas de IPSec IKEv2.
Si es necesario, la duración de la fase 2 y la SLP se pueden editar aquí. En este ejemplo, la duración se establece como predeterminada y PFS se deshabilita.

Debe configurar los pasos siguientes para omitir el control de acceso o crear reglas de directiva de control de acceso para permitir subredes VPN a través de FTD.
Omitir control de acceso
Si sysopt permit-vpn no está habilitado, se debe crear una política de control de acceso para permitir el tráfico VPN a través del dispositivo FTD. Si sysopt permit-vpn está habilitado, omita la creación de una política de control de acceso. En este ejemplo de configuración se utiliza la opción "Omitir control de acceso".
El parámetro sysopt permit-vpn se puede habilitar en Advanced > Tunnel.
Precaución: Esta opción elimina la posibilidad de utilizar la política de control de acceso para inspeccionar el tráfico procedente de los usuarios. Los filtros VPN o las ACL descargables se pueden seguir utilizando para filtrar el tráfico de los usuarios. Este es un comando global y se aplica a todas las VPN si esta casilla de verificación está habilitada.

Configurar exención de NAT
Configure una sentencia de exención de NAT para el tráfico VPN. La exención de NAT debe estar en vigor para evitar que el tráfico VPN coincida con otra sentencia NAT y traduzca incorrectamente el tráfico VPN.
Paso 1. Navegue hasta Devices > NAT y cree una nueva política haciendo clic en New Policy > Threat Defence NAT.


Paso 2. Haga clic en Agregar regla.

Paso 3. Crear una nueva regla NAT manual estática.
Haga referencia a las interfaces internas y externas para la regla NAT. Especificar las interfaces en la pestaña Objetos de interfaz evita que estas reglas afecten al tráfico de otras interfaces.
Vaya a la pestaña Traducción y seleccione las subredes de origen y destino. Dado que se trata de una regla de exención de NAT, asegúrese de que el origen/destino original y el origen/destino traducido sean iguales.

Haga clic en la ficha Advanced (Opciones avanzadas) y active no-proxy-arp y route-lookup.

Guarde esta regla y confirme la sentencia NAT final en la lista NAT.

Paso 4. Una vez completada la configuración, guarde e implemente la configuración en el FTD.

Verificación
Inicie el tráfico interesante desde la máquina LAN o puede ejecutar el siguiente comando packet-tracer en el ASA.
packet-tracer input inside icmp 2001:aaaa::23 128 0 2001:dddd::33 detail
Nota: Aquí Type = 128 y Code=0 representa ICMPv6 "Echo Request".
En la sección siguiente se describen los comandos que puede ejecutar en ASAv o FTD LINA CLI para comprobar el estado del túnel IKEv2.
Este es un ejemplo de un resultado de ASA:
ciscoasa# show crypto ikev2 sa
IKEv2 SAs:
Session-id:3, Status:UP-ACTIVE, IKE count:1, CHILD count:1
Tunnel-id Local Remote Status Role
6638313 2001:bbbb::1/500 2001:cccc::1/500 READY INITIATOR
Encr: AES-CBC, keysize: 256, Hash: SHA256, DH Grp:14, Auth sign: PSK, Auth verify: PSK
Life/Active Time: 86400/224 sec
Child sa: local selector 2001:aaaa::/0 - 2001:aaaa::ffff:ffff:ffff:ffff/65535
remote selector 2001:dddd::/0 - 2001:dddd::ffff:ffff:ffff:ffff/65535
ESP spi in/out: 0xa0fd3fe6/0xd95ecdb8
ciscoasa# show crypto ipsec sa detail
interface: outside
Crypto map tag: VPN, seq num: 1, local addr: 2001:bbbb::1
access-list CRYPTO_ACL extended permit ip 2001:aaaa::/64 2001:dddd::/64
local ident (addr/mask/prot/port): (2001:aaaa::/64/0/0)
remote ident (addr/mask/prot/port): (2001:dddd::/64/0/0)
current_peer: 2001:cccc::1
#pkts encaps: 11, #pkts encrypt: 11, #pkts digest: 11
#pkts decaps: 11, #pkts decrypt: 11, #pkts verify: 11
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts comp failed: 0, #pkts decomp failed: 0
#pre-frag successes: 0, #pre-frag failures: 0, #fragments created: 0
#PMTUs sent: 0, #PMTUs rcvd: 0, #decapsulated frgs needing reassembly: 0
#TFC rcvd: 0, #TFC sent: 0
#Valid ICMP Errors rcvd: 0, #Invalid ICMP Errors rcvd: 0
#pkts no sa (send): 0, #pkts invalid sa (rcv): 0
#pkts encaps failed (send): 0, #pkts decaps failed (rcv): 0
#pkts invalid prot (rcv): 0, #pkts verify failed: 0
#pkts invalid identity (rcv): 0, #pkts invalid len (rcv): 0
#pkts invalid pad (rcv): 0,
#pkts invalid ip version (rcv): 0,
#pkts replay rollover (send): 0, #pkts replay rollover (rcv): 0
#pkts replay failed (rcv): 0
#pkts min mtu frag failed (send): 0, #pkts bad frag offset (rcv): 0
#pkts internal err (send): 0, #pkts internal err (rcv): 0
local crypto endpt.: 2001:bbbb::1/500, remote crypto endpt.: 2001:cccc::1/500
path mtu 1500, ipsec overhead 94(64), media mtu 1500
PMTU time remaining (sec): 0, DF policy: copy-df
ICMP error validation: disabled, TFC packets: disabled
current outbound spi: D95ECDB8
current inbound spi : A0FD3FE6
inbound esp sas:
spi: 0xA0FD3FE6 (2700951526)
transform: esp-aes-256 esp-sha-hmac no compression
in use settings ={L2L, Tunnel, IKEv2, }
slot: 0, conn_id: 1937408, crypto-map: VP
sa timing: remaining key lifetime (kB/sec): (4055040/28535)
IV size: 16 bytes
replay detection support: Y
Anti replay bitmap:
0x00000000 0x00000001
outbound esp sas:
spi: 0xD95ECDB8 (3646868920)
transform: esp-aes-256 esp-sha-hmac no compression
in use settings ={L2L, Tunnel, IKEv2, }
slot: 0, conn_id: 1937408, crypto-map: VPN
sa timing: remaining key lifetime (kB/sec): (4193280/28535)
IV size: 16 bytes
replay detection support: Y
Anti replay bitmap:
0x00000000 0x00000001
ciscoasa# show vpn-sessiondb detail l2l filter name 2001:cccc::1
Session Type: LAN-to-LAN Detailed
Connection : 2001:cccc::1
Index : 473 IP Addr : 2001:cccc::1
Protocol : IKEv2 IPsec
Encryption : IKEv2: (1)AES256 IPsec: (1)AES256
Hashing : IKEv2: (1)SHA256 IPsec: (1)SHA1
Bytes Tx : 352 Bytes Rx : 352
Login Time : 12:27:36 UTC Sun Apr 12 2020
Duration : 0h:06m:40s
IKEv2 Tunnels: 1
IPsec Tunnels: 1
IKEv2:
Tunnel ID : 473.1
UDP Src Port : 500 UDP Dst Port : 500
Rem Auth Mode: preSharedKeys
Loc Auth Mode: preSharedKeys
Encryption : AES256 Hashing : SHA256
Rekey Int (T): 86400 Seconds Rekey Left(T): 86000 Seconds
PRF : SHA256 D/H Group : 14
Filter Name :
IPsec:
Tunnel ID : 473.2
Local Addr : 2001:aaaa::/64/0/0
Remote Addr : 2001:dddd::/64/0/0
Encryption : AES256 Hashing : SHA1
Encapsulation: Tunnel
Rekey Int (T): 28800 Seconds Rekey Left(T): 28400 Seconds
Rekey Int (D): 4608000 K-Bytes Rekey Left(D): 4608000 K-Bytes
Idle Time Out: 30 Minutes Idle TO Left : 23 Minutes
Bytes Tx : 352 Bytes Rx : 352
Pkts Tx : 11 Pkts Rx : 11
Troubleshoot
Para resolver problemas de establecimiento del túnel IKEv2 en ASA y FTD, ejecute los siguientes comandos debug:
debug crypto condition peer <peer IP>
debug crypto ikev2 protocol 255
debug crypto ikev2 platform 255
A continuación se muestra un ejemplo de depuración IKEv2 como referencia:
https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/115935-asa-ikev2-debugs.html
Referencias
https://www.cisco.com/c/en/us/support/docs/security-vpn/ipsec-negotiation-ike-protocols/119425-configure-ipsec-00.html
https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/81824-common-ipsec-trouble.html