El conjunto de documentos para este producto aspira al uso de un lenguaje no discriminatorio. A los fines de esta documentación, "no discriminatorio" se refiere al lenguaje que no implica discriminación por motivos de edad, discapacidad, género, identidad de raza, identidad étnica, orientación sexual, nivel socioeconómico e interseccionalidad. Puede haber excepciones en la documentación debido al lenguaje que se encuentra ya en las interfaces de usuario del software del producto, el lenguaje utilizado en función de la documentación de la RFP o el lenguaje utilizado por un producto de terceros al que se hace referencia. Obtenga más información sobre cómo Cisco utiliza el lenguaje inclusivo.
Cisco ha traducido este documento combinando la traducción automática y los recursos humanos a fin de ofrecer a nuestros usuarios en todo el mundo contenido en su propio idioma. Tenga en cuenta que incluso la mejor traducción automática podría no ser tan precisa como la proporcionada por un traductor profesional. Cisco Systems, Inc. no asume ninguna responsabilidad por la precisión de estas traducciones y recomienda remitirse siempre al documento original escrito en inglés (insertar vínculo URL).
Este documento describe cómo configurar un túnel IKEv1 de sitio a sitio a través de la CLI entre un Cisco ASA y un router que ejecuta el software Cisco IOS XE.
Cisco recomienda que tenga conocimiento sobre estos temas:
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
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.
En esta sección se describe cómo completar las configuraciones CLI de los routers ASA y Cisco IOS XE.
La información de este documento utiliza esta configuración de red:
Si las interfaces ASA no están configuradas, asegúrese de configurar al menos las direcciones IP, los nombres de interfaz y los niveles de seguridad:
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 172.16.1.1 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 10.10.10.1 255.255.255.0
Nota: Asegúrese de que haya conectividad tanto con las redes internas como externas, especialmente con el peer remoto que se utiliza para establecer un túnel VPN de sitio a sitio. Puede utilizar un ping para verificar la conectividad básica.
Para configurar las directivas ISAKMP (Internet Security Association and Key Management Protocol) para las conexiones IKEv1 (Intercambio de claves de Internet IPSec versión 1), escriba elcrypto ikev1 policy
comando:
crypto ikev1 policy 10
authentication pre-share
encryption aes-256
hash sha
group 14
lifetime 86400
Nota: Existe una coincidencia de política IKEv1 cuando ambas políticas de los dos peers contienen los mismos valores de parámetro de autenticación, cifrado, hash y Diffie-Hellman. Para IKEv1, la política de peer remoto también debe especificar una duración menor o igual a la duración en la política que envía el iniciador. Si las duraciones no son idénticas, el ASA utiliza la duración más corta.
Nota: Si no especifica un valor para un parámetro de política determinado, se aplica el valor por defecto.
Debe habilitar IKEv1 en la interfaz que termina el túnel VPN. Normalmente, se trata de la interfaz externa (o pública). Para habilitar IKEv1, ingrese elcrypto ikev1 enable
comando en el modo de configuración global:
crypto ikev1 enable outside
Para un túnel de LAN a LAN, el tipo de perfil de conexión esipsec-l2l
. Para configurar la clave previamente compartida IKEv1, ingrese eltunnel-group ipsec-attributes
modo de configuración:
tunnel-group 172.17.1.1 type ipsec-l2l
tunnel-group 172.17.1.1 ipsec-attributes
ikev1 pre-shared-key cisco123
ASA utiliza listas de control de acceso (ACL) para diferenciar el tráfico que debe protegerse con cifrado IPSec del tráfico que no requiere protección. Protege los paquetes salientes que coinciden con un permit Application Control Engine (ACE) y garantiza que los paquetes entrantes que coinciden con un permit ACE tengan protección.
object-group network local-network
network-object 10.10.10.0 255.255.255.0
object-group network remote-network
network-object 10.20.10.0 255.255.255.0
access-list asa-router-vpn extended permit ip object-group local-network
object-group remote-network
Nota: Una ACL para el tráfico VPN utiliza las direcciones IP de origen y de destino después de la traducción de direcciones de red (NAT).
Nota: Una ACL para el tráfico VPN se debe duplicar en ambos pares VPN.
Nota: Si es necesario agregar una nueva subred al tráfico protegido, simplemente agregue una subred/host al grupo de objetos respectivo y complete un cambio de reflejo en el par VPN remoto.
Nota: La configuración que se describe en esta sección es opcional.
Normalmente, no debe realizarse ninguna NAT en el tráfico VPN. Para eximir ese tráfico, debe crear una regla de identidad NAT. La regla de identidad NAT simplemente traduce una dirección a la misma dirección.
nat (inside,outside) source static local-network local-network destination static
remote-network remote-network no-proxy-arp route-lookup
Un conjunto de transformación IKEv1 es una combinación de protocolos y algoritmos de seguridad que definen la forma en que ASA protege los datos. Durante las negociaciones de la Asociación de seguridad IPSec (SA), los pares deben identificar un conjunto o una propuesta de transformación que sea la misma para ambos pares. A continuación, ASA aplica el conjunto o la propuesta de transformación coincidente para crear una SA que proteja los flujos de datos en la lista de acceso para ese mapa criptográfico.
Para configurar el conjunto de transformación IKEv1, ingrese elcrypto ipsec ikev1 transform-set
comando:
crypto ipsec ikev1 transform-set ESP-AES256-SHA esp-aes-256 esp-sha-hmac
Un mapa criptográfico define una política IPSec que se negociará en la SA IPSec e incluye:
Aquí tiene un ejemplo:
crypto map outside_map 10 match address asa-router-vpn
crypto map outside_map 10 set peer 172.17.1.1
crypto map outside_map 10 set ikev1 transform-set ESP-AES256-SHA
A continuación, puede aplicar el mapa criptográfico a la interfaz:
crypto map outside_map interface outside
Esta es la configuración final del ASA:
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 172.16.1.1 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 10.10.10.1 255.255.255.0
!
object-group network local-network
network-object 10.10.10.0 255.255.255.0
object-group network remote-network
network-object 10.20.10.0 255.255.255.0
!
access-list asa-router-vpn extended permit ip object-group local-network
object-group remote-network
!
nat (inside,outside) source static local-network local-network destination
static remote-network remote-network no-proxy-arp route-lookup
!
crypto ikev1 policy 10
authentication pre-share
encryption aes-256
hash sha
group 14
lifetime 86400
!
crypto ikev1 enable outside
!
crypto ipsec ikev1 transform-set ESP-AES256-SHA esp-aes-256 esp-sha-hmac
!
crypto map outside_map 10 match address asa-router-vpn
crypto map outside_map 10 set peer 172.17.1.1
crypto map outside_map 10 set ikev1 transform-set ESP-AES256-SHA
crypto map outside_map interface outside
!
tunnel-group 172.17.1.1 type ipsec-l2l
tunnel-group 172.17.1.1 ipsec-attributes
ikev1 pre-shared-key cisco123
!
Si las interfaces del router Cisco IOS XE aún no están configuradas, deben configurarse al menos las interfaces LAN y WAN. Aquí tiene un ejemplo:
interface GigabitEthernet0/0
ip address 172.17.1.1 255.255.255.0
no shutdown
!
interface GigabitEthernet0/1
ip address 10.20.10.1 255.255.255.0
no shutdown
Asegúrese de que haya conectividad tanto con las redes internas como externas, especialmente con el peer remoto que se utiliza para establecer un túnel VPN de sitio a sitio. Puede utilizar un ping para verificar la conectividad básica.
Para configurar las políticas ISAKMP para las conexiones IKEv1, ingrese elcrypto isakmp policy
comando en el modo de configuración global. Aquí tiene un ejemplo:
crypto isakmp policy 10
encryption aes 256
hash sha
authentication pre-share
group 14
Nota: Puede configurar varias políticas IKE en cada par que participa en IPSec. Cuando comienza la negociación IKE, intenta encontrar una política común que se configura en ambos peers, y comienza con las políticas de mayor prioridad que se especifican en el peer remoto.
Para configurar una clave de autenticación previamente compartida, ingrese elcrypto isakmp key
comando en el modo de configuración global:
crypto isakmp key cisco123 address 172.16.1.1
Utilice la lista de acceso ampliada o con nombre para especificar el tráfico que debe protegerse mediante cifrado. Aquí tiene un ejemplo:
access-list 110 remark Interesting traffic access-list
access-list 110 permit ip 10.20.10.0 0.0.0.255 10.10.10.0 0.0.0.255
Nota: Una ACL para el tráfico VPN utiliza las direcciones IP de origen y de destino después de NAT.
Nota: Una ACL para el tráfico VPN se debe duplicar en ambos pares VPN.
Nota: La configuración que se describe en esta sección es opcional.
Normalmente, no debe realizarse ninguna NAT en el tráfico VPN. Si se utiliza la sobrecarga NAT, se debe utilizar un route-map para eximir de la traducción el tráfico VPN de interés. Observe que en la lista de acceso que se utiliza en el route-map, se debe denegar el tráfico VPN de interés.
access-list 111 remark NAT exemption access-list
access-list 111 deny ip 10.20.10.0 0.0.0.255 10.10.10.0 0.0.0.255
access-list 111 permit ip 10.20.10.0 0.0.0.255 any
route-map nonat permit 10
match ip address 111
ip nat inside source route-map nonat interface GigabitEthernet0/0 overload
Para definir un conjunto de transformación IPSec (una combinación aceptable de protocolos y algoritmos de seguridad), ingrese elcrypto ipsec transform-set
comando en el modo de configuración global. Aquí tiene un ejemplo:
crypto ipsec transform-set ESP-AES256-SHA esp-aes 256 esp-sha-hmac
mode tunnel
Para crear o modificar una entrada de mapa criptográfico e ingresar al modo de configuración de mapa criptográfico, ingrese el comando de configuración global crypto map. Para que la entrada de mapa criptográfico esté completa, hay algunos aspectos que deben definirse como mínimo:
set peer
comando.set transform-set
comando.match address
comando.Aquí tiene un ejemplo:
crypto map outside_map 10 ipsec-isakmp
set peer 172.16.1.1
set transform-set ESP-AES256-SHA
match address 110
El paso final es aplicar el conjunto de mapas criptográficos previamente definido a una interfaz. Para aplicar esto, ingrese elcrypto map
comando interface configuration:
interface GigabitEthernet0/0
crypto map outside_map
Esta es la configuración final de la CLI del router Cisco IOS XE:
crypto isakmp policy 10
encryption aes 256
authentication pre-share
group 14
crypto isakmp key cisco123 address 172.16.1.1
!
crypto ipsec transform-set ESP-AES256-SHA esp-aes 256 esp-sha-hmac
mode tunnel
!
crypto map outside_map 10 ipsec-isakmp
set peer 172.16.1.1
set transform-set ESP-AES256-SHA
match address 110
!
interface GigabitEthernet0/0
ip address 172.17.1.1 255.255.255.0
ip nat outside
ip virtual-reassembly in
duplex auto
speed auto
crypto map outside_map
!
interface GigabitEthernet0/1
ip address 10.20.10.1 255.255.255.0
ip nat inside
ip virtual-reassembly in
duplex auto
speed auto
!
ip nat inside source route-map nonat interface GigabitEthernet0/0 overload
!
route-map nonat permit 10
match ip address 111
!
access-list 110 remark Interesting traffic access-list
access-list 110 permit ip 10.20.10.0 0.0.0.255 10.10.10.0 0.0.0.255
access-list 111 remark NAT exemption access-list
access-list 111 deny ip 10.20.10.0 0.0.0.255 10.10.10.0 0.0.0.255
access-list 111 permit ip 10.20.10.0 0.0.0.255 any
Antes de verificar si el túnel está activo y que pasa el tráfico, debe asegurarse de que el tráfico de interés se envía hacia el router ASA o Cisco IOS XE.
Nota: En ASA, la herramienta de seguimiento de paquetes que coincide con el tráfico de interés se puede utilizar para iniciar el túnel IPSec (comopacket-tracer input inside tcp 10.10.10.10 12345 10.20.10.10 80 detailed
por ejemplo).
Para verificar si IKEv1 Phase 1 está activo en el ASA, ingrese el comando show crypto isakmp sa. El resultado esperado es ver elMM_ACTIVE
estado:
ciscoasa# show crypto isakmp sa
IKEv1 SAs:
Active SA: 1
Rekey SA: 0 (A tunnel will report 1 Active and 1 Rekey SA during rekey)
Total IKE SA: 1
1 IKE Peer: 172.17.1.1
Type : L2L Role : responder
Rekey : no State : MM_ACTIVE
There are no IKEv2 SAs
ciscoasa#
Para verificar si IKEv1 Phase 1 está activo en Cisco IOS XE, ingrese elshow crypto isakmp sa
comando. El resultado esperado es ver elACTIVE
estado:
Router#show crypto isakmp sa
IPv4 Crypto ISAKMP SA
dst src state conn-id status
172.16.1.1 172.17.1.1 QM_IDLE 2003 ACTIVE
IPv6 Crypto ISAKMP SA
Router#
Para verificar si IKEv1 Phase 2 está activo en el ASA, ingrese elshow crypto ipsec sa
comando. El resultado esperado es ver el Índice de parámetros de seguridad (SPI) entrante y saliente. Si el tráfico pasa a través del túnel, debe ver el incremento de los contadores encaps/decaps.
Nota: Para cada entrada de ACL, se crea una SA entrante/saliente independiente, que puede dar como resultado una salida de comando largashow crypto ipsec sa
(dependiente del número de entradas ACE en la ACL crypto).
Aquí tiene un ejemplo:
ciscoasa# show crypto ipsec sa peer 172.17.1.1
peer address: 172.17.1.1
Crypto map tag: outside_map, seq num: 10, local addr: 172.16.1.1
access-list asa-router-vpn extended permit ip 10.10.10.0 255.255.255.0
10.20.10.0 255.255.255.0
local ident (addr/mask/prot/port): (10.10.10.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (10.20.10.0/255.255.255.0/0/0)
current_peer: 172.17.1.1
#pkts encaps: 989, #pkts encrypt: 989, #pkts digest: 989
#pkts decaps: 989, #pkts decrypt: 989, #pkts verify: 989
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 989, #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
#send errors: 0, #recv errors: 0
local crypto endpt.: 172.16.1.1/0, remote crypto endpt.: 172.17.1.1/0
path mtu 1500, ipsec overhead 74(44), media mtu 1500
PMTU time remaining (sec): 0, DF policy: copy-df
ICMP error validation: disabled, TFC packets: disabled
current outbound spi: 5397114D
current inbound spi : 9B592959
inbound esp sas:
spi: 0x9B592959 (2606311769)
SA State: active
transform: esp-aes-256 esp-sha-hmac no compression
in use settings ={L2L, Tunnel, IKEv1, }
slot: 0, conn_id: 2, crypto-map: outside_map
sa timing: remaining key lifetime (kB/sec): (4373903/3357)
IV size: 16 bytes
replay detection support: Y
Anti replay bitmap:
0xFFFFFFFF 0xFFFFD7FF
outbound esp sas:
spi: 0x5397114D (1402409293)
SA State: active
transform: esp-aes-256 esp-sha-hmac no compression
in use settings ={L2L, Tunnel, IKEv1, }
slot: 0, conn_id: 2, crypto-map: outside_map
sa timing: remaining key lifetime (kB/sec): (4373903/3357)
IV size: 16 bytes
replay detection support: Y
Anti replay bitmap:
0x00000000 0x00000001
ciscoasa#
Para verificar si IKEv1 Phase 2 está activo en Cisco IOS XE, ingrese elshow crypto ipsec sa
comando. El resultado esperado es ver el SPI entrante y saliente. Si el tráfico pasa a través del túnel, debe ver el incremento de los contadores encaps/decaps.
Aquí tiene un ejemplo:
Router#show crypto ipsec sa peer 172.16.1.1
interface: GigabitEthernet0/0
Crypto map tag: outside_map, local addr 172.17.1.1
protected vrf: (none)
local ident (addr/mask/prot/port): (10.20.10.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (10.10.10.0/255.255.255.0/0/0)
current_peer 172.16.1.1 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 989, #pkts encrypt: 989, #pkts digest: 989
#pkts decaps: 989, #pkts decrypt: 989, #pkts verify: 989
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 172.17.1.1, remote crypto endpt.: 172.16.1.1
plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet3
current outbound spi: 0x9B592959(2606311769)
PFS (Y/N): N, DH group: none
inbound esp sas:
spi: 0x5397114D(1402409293)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2003, flow_id: CSR:3, sibling_flags FFFFFFFF80004048, crypto map: outside_map
sa timing: remaining key lifetime (k/sec): (4607857/3385)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x9B592959(2606311769)
transform: esp-256-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2004, flow_id: CSR:4, sibling_flags FFFFFFFF80004048, crypto map: outside_map
sa timing: remaining key lifetime (k/sec): (4607901/3385)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
outbound ah sas:
outbound pcp sas:
Router#
Esta sección describe los comandos que puede utilizar en ASA o Cisco IOS XE para verificar los detalles para las fases 1 y 2.
Ingrese elshow vpn-sessiondb
comando en el ASA para la verificación:
ciscoasa# show vpn-sessiondb detail l2l filter ipaddress 172.17.1.1
Session Type: LAN-to-LAN Detailed
Connection : 172.17.1.1
Index : 2 IP Addr : 172.17.1.1
Protocol : IKEv1 IPsec
Encryption : IKEv1: (1)AES256 IPsec: (1)AES256
Hashing : IKEv1: (1)SHA1 IPsec: (1)SHA1
Bytes Tx : 98900 Bytes Rx : 134504
Login Time : 06:15:52 UTC Fri Sep 6 2024
Duration : 0h:15m:07s
IKEv1 Tunnels: 1
IPsec Tunnels: 1
IKEv1:
Tunnel ID : 2.1
UDP Src Port : 500 UDP Dst Port : 500
IKE Neg Mode : Main Auth Mode : preSharedKeys
Encryption : AES256 Hashing : SHA1
Rekey Int (T): 86400 Seconds Rekey Left(T): 84093 Seconds
D/H Group : 14
Filter Name :
IPsec:
Tunnel ID : 2.2
Local Addr : 10.10.10.0/255.255.255.0/0/0
Remote Addr : 10.20.10.0/255.255.255.0/0/0
Encryption : AES256 Hashing : SHA1
Encapsulation: Tunnel
Rekey Int (T): 3600 Seconds Rekey Left(T): 3293 Seconds
Rekey Int (D): 4608000 K-Bytes Rekey Left(D): 4607901 K-Bytes
Idle Time Out: 30 Minutes Idle TO Left : 26 Minutes
Bytes Tx : 98900 Bytes Rx : 134504
Pkts Tx : 989 Pkts Rx : 989
NAC:
Reval Int (T): 0 Seconds Reval Left(T): 0 Seconds
SQ Int (T) : 0 Seconds EoU Age(T) : 309 Seconds
Hold Left (T): 0 Seconds Posture Token:
Redirect URL :
ciscoasa#
Ingrese elshow crypto session
comando en Cisco IOS XE para la verificación:
Router#show crypto session remote 172.16.1.1 detail
Crypto session current status
Code: C - IKE Configuration mode, D - Dead Peer Detection
K - Keepalives, N - NAT-traversal, T - cTCP encapsulation
X - IKE Extended Authentication, F - IKE Fragmentation
Interface: GigabitEthernet0/0
Uptime: 00:03:36
Session status: UP-ACTIVE
Peer: 172.16.1.1 port 500 fvrf: (none) ivrf: (none)
Phase1_id: 172.16.1.1
Desc: (none)
IKE SA: local 172.17.1.1/500 remote 172.16.1.1/500 Active
Capabilities:(none) connid:1005 lifetime:23:56:23
IPSEC FLOW: permit ip 10.20.10.0/255.255.255.0 10.10.10.0/255.255.255.0
Active SAs: 2, origin: crypto map
Inbound: #pkts dec'ed 989 drop 0 life (KB/Sec) 4449870/3383
Outbound: #pkts enc'ed 989 drop 0 life (KB/Sec) 4449868/3383
Router#
Esta sección proporciona información que puede utilizar para resolver problemas de su configuración.
Nota: Refiérase a los documentos de Información Importante sobre Comandos de Debug y Troubleshooting de Seguridad IP - Comprensión y Uso de Comandos debug de Cisco antes de utilizardebug
comandos.
Para verificar automáticamente si la configuración IPSec de LAN a LAN entre ASA y Cisco IOS XE es válida, puede utilizar la herramienta IPSec LAN a LANChecker. La herramienta está diseñada para que acepte un comandoshow tech
oshow running-config
de un router ASA o Cisco IOS XE. Examina la configuración e intenta detectar si se ha configurado un túnel IPSec de LAN a LAN basado en mapa criptográfico. Si se configura, realiza una verificación multipunto de la configuración y resalta cualquier error de configuración y configuración para el túnel que se negociaría.
Para resolver problemas de negociación de túnel IKEv1 IPSec en un firewall ASA, puede utilizar estosdebug
comandos:
debug crypto ipsec 127
debug crypto isakmp 127
debug ike-common 10
Nota: Si el número de túneles VPN en el ASA es significativo, eldebug crypto condition peer A.B.C.D
comando se debe utilizar antes de habilitar los debugs para limitar los resultados de debug de modo que incluyan solamente el peer especificado.
Para resolver problemas de negociación de túnel IPSec IKEv1 en un router Cisco IOS XE, puede utilizar estos comandos debug:
debug crypto ipsec
debug crypto isakmp
Nota: Si el número de túneles VPN en el IOS XE de Cisco es significativo, el sedebug crypto condition peer ipv4 A.B.C.D
debe utilizar antes de habilitar los debugs para limitar los resultados de debug de modo que incluyan solamente el peer especificado.
Sugerencia: Consulte el documento L2L y Soluciones de Troubleshooting de VPN IPSec de Acceso Remoto más Comunes de Cisco para obtener más información sobre cómo resolver problemas de una VPN de sitio a sitio.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
17-Feb-2023 |
Versión inicial |