Introduction
Este documento descreve como configurar o VTI (Virtual Tunnel Interfaces) entre dois ASAs (Adaptive Security Appliances) com o uso do protocolo IKEv2 (Internet Key Exchange versão 2) para fornecer conectividade segura entre duas filiais. Ambas as filiais têm dois links ISP para alta disponibilidade e fins de balanceamento de carga. A vizinhança do BGP (Border Gateway Protocol) é estabelecida nos túneis para trocar informações de roteamento interno.
Esse recurso é apresentado no ASA versão 9.8(1). A implementação do ASA VTI é compatível com a implementação do VTI disponível nos roteadores IOS.
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento destes tópicos:
Componentes Utilizados
As informações neste documento são baseadas em firewalls ASAv executando a versão de software 9.8(1)6.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Diferenças entre VTI e mapa de criptografia
- O mapa de criptografia é um recurso de saída da interface. Para enviar o tráfego através do túnel baseado em mapa de criptografia, o tráfego precisa ser roteado para a interface de Internet (tradicionalmente chamada de interface externa) e deve ser comparado à ACL de criptografia. Por outro lado, VTI é uma interface lógica. O túnel para cada peer VPN é representado por um VTI diferente. Se o roteamento apontar para VTI, o pacote será criptografado e enviado ao correspondente peer.
- O VTI elimina a necessidade de usar listas de acesso de criptografia e regras de isenção de NAT (Network Address Translation).
- A lista de controle de acesso (ACL) do mapa de criptografia não permite entradas sobrepostas. O VTI é uma VPN baseada em rota e as regras de roteamento regulares aplicam-se ao tráfego VPN, o que simplifica a configuração e os processos para a solução de problemas.
- O mapa de criptografia impede automaticamente que o tráfego entre sites seja enviado em texto claro se o túnel estiver inoperante. O VTI não protege automaticamente contra ele. Rotas nulas precisam ser adicionadas para garantir funcionalidade igual.
Configurar
Diagrama de Rede

Configurações
Observação: este exemplo não é adequado para o cenário em que o ASA é membro do sistema autônomo independente e tem peerings de BGP com redes ISP. Ele abrange a topologia em que o ASA tem dois links ISP independentes com endereços públicos de diferentes sistemas autônomos. Nesse caso, o ISP pode implantar uma proteção anti-falsificação que verifique se os pacotes recebidos não têm origem em IP público que pertence a outro ISP. Nesta configuração, são tomadas as medidas adequadas para evitar isso.
- Parâmetros comuns de criptografia e autenticação. Informações sobre os parâmetros criptográficos recomendados podem ser encontradas em:
https://www.cisco.com/c/en/us/about/security-center/next-generation-cryptography.html
Em ambos os ASAs:
crypto ikev2 policy 10
encryption aes-256
integrity sha256
group 24
prf sha256
lifetime seconds 86400
!
crypto ipsec ikev2 ipsec-proposal PROP
protocol esp encryption aes-256
protocol esp integrity sha-256
- Configure o perfil IPsec. Um dos lados precisa ser iniciador e um precisa ser um respondente da negociação de IKEv2:
ASA restante:
crypto ipsec profile PROF
set ikev2 ipsec-proposal PROP
set pfs group24
responder-only
Direito ASA:
crypto ipsec profile PROF
set ikev2 ipsec-proposal PROP
set pfs group24
- Ative o protocolo IKEv2 em ambas as interfaces do ISP.
Ambos os ASAs:
crypto ikev2 enable ispa
crypto ikev2 enable ispb
- Configure a chave pré-compartilhada para autenticar mutuamente os ASAs:
ASA restante: tunnel-group 198.51.100.1 type ipsec-l2l
tunnel-group 198.51.100.1 ipsec-attributes
ikev2 remote-authentication pre-shared-key *****
ikev2 local-authentication pre-shared-key *****
!
tunnel-group 203.0.113.1 type ipsec-l2l
tunnel-group 203.0.113.1 ipsec-attributes
ikev2 remote-authentication pre-shared-key *****
ikev2 local-authentication pre-shared-key *****
Direito ASA:
tunnel-group 198.51.100.129 type ipsec-l2l
tunnel-group 198.51.100.129 ipsec-attributes
ikev2 remote-authentication pre-shared-key *****
ikev2 local-authentication pre-shared-key *****
!
tunnel-group 203.0.113.129 type ipsec-l2l
tunnel-group 203.0.113.129 ipsec-attributes
ikev2 remote-authentication pre-shared-key *****
ikev2 local-authentication pre-shared-key *****
- Configure as interfaces do ISP:
ASA restante:
interface GigabitEthernet0/1
nameif ispa
security-level 0
ip address 198.51.100.129 255.255.255.252
!
interface GigabitEthernet0/2
nameif ispb
security-level 0
ip address 203.0.113.129 255.255.255.252
!
Direito ASA:
interface GigabitEthernet0/1
nameif ispa
security-level 0
ip address 198.51.100.1 255.255.255.252
!
interface GigabitEthernet0/2
nameif ispb
security-level 0
ip address 203.0.113.1 255.255.255.252
!
- O link principal é a interface ISP A. O ISP B é secundário. A disponibilidade do link principal é controlada com o uso da solicitação de ping ICMP para um host na Internet, neste exemplo, os ASAs usam uma interface ISP A entre si como destino de ping:
ASA restante:
sla monitor 1
type echo protocol ipIcmpEcho 198.51.100.1 interface ispa
!
sla monitor schedule 1 life forever start-time now
!
track 1 rtr 1 reachability
!
route ispa 0.0.0.0 0.0.0.0 198.51.100.130 1 track 1
route ispb 0.0.0.0 0.0.0.0 203.0.113.130 10
Direito ASA:
sla monitor 1
type echo protocol ipIcmpEcho 198.51.100.129 interface ispa
!
sla monitor schedule 1 life forever start-time now
!
track 1 rtr 1 reachability
!
route ispa 0.0.0.0 0.0.0.0 198.51.100.2 1 track 1
route ispb 0.0.0.0 0.0.0.0 203.0.113.2 10
- O VTI principal é sempre estabelecido no ISP A. O VTI secundário é estabelecido no ISP B. As rotas estáticas para o destino do túnel são necessárias. Isso garante que os pacotes criptografados saiam da interface física correta para evitar quedas anti-falsificação de ISP:
ASA restante:
route ispa 198.51.100.1 255.255.255.255 198.51.100.130 1
route ispb 203.0.113.1 255.255.255.255 203.0.113.130 1
Direito ASA:
route ispa 198.51.100.129 255.255.255.255 198.51.100.2 1
route ispb 203.0.113.129 255.255.255.255 203.0.113.2 1
- Configuração do VTI:
ASA restante:
interface Tunnel1
nameif tuna
ip address 10.1.1.2 255.255.255.0
tunnel source interface ispa
tunnel destination 198.51.100.1
tunnel mode ipsec ipv4
tunnel protection ipsec profile PROF
!
interface Tunnel2
nameif tunb
ip address 10.1.2.2 255.255.255.0
tunnel source interface ispb
tunnel destination 203.0.113.1
tunnel mode ipsec ipv4
tunnel protection ipsec profile PROF
Direito ASA: interface Tunnel1
nameif tuna
ip address 10.1.1.1 255.255.255.0
tunnel source interface ispa
tunnel destination 198.51.100.129
tunnel mode ipsec ipv4
tunnel protection ipsec profile PROF
!
interface Tunnel2
nameif tunb
ip address 10.1.2.1 255.255.255.0
tunnel source interface ispb
tunnel destination 203.0.113.129
tunnel mode ipsec ipv4
tunnel protection ipsec profile PROF
- Configuração de BGP. O túnel associado ao ISP A é primário. Os prefixos anunciados sobre o túnel formado sobre o ISP B têm menor preferência local, o que os torna menos preferidos pela tabela de roteamento:
ASA restante:
route-map BACKUP permit 10
set local-preference 80
!
router bgp 65000
bgp log-neighbor-changes
address-family ipv4 unicast
neighbor 10.1.1.1 remote-as 65000
neighbor 10.1.1.1 activate
neighbor 10.1.1.1 next-hop-self
neighbor 10.1.2.1 remote-as 65000
neighbor 10.1.2.1 activate
neighbor 10.1.2.1 next-hop-self
neighbor 10.1.2.1 route-map BACKUP out
network 192.168.1.0
no auto-summary
no synchronization
exit-address-family
Direito ASA:
route-map BACKUP permit 10
set local-preference 80
!
router bgp 65000
bgp log-neighbor-changes
address-family ipv4 unicast
neighbor 10.1.1.2 remote-as 65000
neighbor 10.1.1.2 activate
neighbor 10.1.1.2 next-hop-self
neighbor 10.1.2.2 remote-as 65000
neighbor 10.1.2.2 activate
neighbor 10.1.2.2 next-hop-self
neighbor 10.1.2.2 route-map BACKUP out
network 192.168.2.0
no auto-summary
no synchronization
exit-address-family
- (Opcional) Para anunciar a rede adicional atrás do ASA esquerdo que não está diretamente conectado a ele, a redistribuição de rota estática pode ser configurada:
ASA restante:
route inside 192.168.10.0 255.255.255.0 192.168.1.100 1
!
prefix-list REDISTRIBUTE_LOCAL seq 10 permit 192.168.10.0/24
!
route-map REDISTRIBUTE_LOCAL permit 10
match ip address prefix-list REDISTRIBUTE_LOCAL
!
router bgp 65000
address-family ipv4 unicast
redistribute static route-map REDISTRIBUTE_LOCAL
- (Opcional) O tráfego pode ser balanceado entre os túneis com base no destino do pacote. Neste exemplo, a rota em direção à rede 192.168.10.0/24 é preferida ao túnel de backup (túnel B do ISP)
ASA restante:
route-map BACKUP permit 5
match ip address prefix-list REDISTRIBUTE_LOCAL
set local-preference 200
!
route-map BACKUP permit 10
set local-preference 80
- Para evitar que o tráfego entre sites seja enviado em texto claro para a Internet se os túneis estiverem inoperantes, é necessário adicionar rotas nulas. Todos os endereços RFC1918 foram adicionados para simplificar:
Ambos os ASAs:
route Null0 10.0.0.0 255.0.0.0 250
route Null0 172.16.0.0 255.240.0.0 250
route Null0 192.168.0.0 255.255.0.0 250
13. (Opcional) Por padrão, o processo de BGP do ASA envia keepalives uma vez por 60 segundos. Se a resposta de keepalive não for recebida do peer por 180 segundos, ela será declarada como morta. Para acelerar a falha do vizinho de detecção, você pode configurar temporizadores BGP. Neste exemplo, os keepalives são enviados a cada 10 segundos e o vizinho é declarado inativo após 30 segundos.
router bgp 65000
address-family ipv4 unicast
neighbor 10.1.1.2 timers 10 30
neighbor 10.1.2.2 timers 10 30
exit-address-family
Verificar
Verifique se o túnel IKEv2 está ativado:
ASA-right(config)# show crypto ikev2 sa
IKEv2 SAs:
Session-id:32538, Status:UP-ACTIVE, IKE count:1, CHILD count:1
Tunnel-id Local Remote Status Role
836052177 198.51.100.1/500 198.51.100.129/500 READY INITIATOR
Encr: AES-CBC, keysize: 256, Hash: SHA256, DH Grp:24, Auth sign: PSK, Auth verify: PSK
Life/Active Time: 86400/7 sec
Child sa: local selector 0.0.0.0/0 - 255.255.255.255/65535
remote selector 0.0.0.0/0 - 255.255.255.255/65535
ESP spi in/out: 0xc6623962/0x5c4a3bce
IKEv2 SAs:
Session-id:1711, Status:UP-ACTIVE, IKE count:1, CHILD count:1
Tunnel-id Local Remote Status Role
832833529 203.0.113.1/500 203.0.113.129/500 READY INITIATOR
Encr: AES-CBC, keysize: 256, Hash: SHA256, DH Grp:24, Auth sign: PSK, Auth verify: PSK
Life/Active Time: 86400/29 sec
Child sa: local selector 0.0.0.0/0 - 255.255.255.255/65535
remote selector 0.0.0.0/0 - 255.255.255.255/65535
ESP spi in/out: 0x2e3715af/0xc20e22b4
Verificar o status da vizinhança do BGP:
ASA-right(config)# show bgp summary
BGP router identifier 203.0.113.1, local AS number 65000
BGP table version is 29, main routing table version 29
3 network entries using 600 bytes of memory
5 path entries using 400 bytes of memory
5/3 BGP path/bestpath attribute entries using 1040 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 2040 total bytes of memory
BGP activity 25/22 prefixes, 69/64 paths, scan interval 60 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
10.1.1.2 4 65000 6 5 29 0 0 00:00:51 2
10.1.2.2 4 65000 7 6 29 0 0 00:01:20 2
Verifique as rotas recebidas do BGP. As rotas marcadas com ">" estão instaladas na tabela de roteamento:
ASA-right(config)# show bgp
BGP table version is 29, local router ID is 203.0.113.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale, m multipath
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*>i192.168.1.0 10.1.1.2 0 100 0 i
* i 10.1.2.2 0 80 0 i
*> 192.168.2.0 0.0.0.0 0 32768 i
* i192.168.10.0 10.1.1.2 0 100 0 ?
*>i 10.1.2.2 0 200 0 ?
Verify routing table:
ASA-right(config)# show route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, V - VPN
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, + - replicated route
Gateway of last resort is 198.51.100.2 to network 0.0.0.0
S* 0.0.0.0 0.0.0.0 [1/0] via 198.51.100.2, ispa
S 10.0.0.0 255.0.0.0 is directly connected, Null0
C 10.1.1.0 255.255.255.0 is directly connected, tuna
L 10.1.1.1 255.255.255.255 is directly connected, tuna
C 10.1.2.0 255.255.255.0 is directly connected, tunb
L 10.1.2.1 255.255.255.255 is directly connected, tunb
S 172.16.0.0 255.240.0.0 is directly connected, Null0
S 192.168.0.0 255.255.0.0 is directly connected, Null0
B 192.168.1.0 255.255.255.0 [200/0] via 10.1.1.2, 00:02:06
C 192.168.2.0 255.255.255.0 is directly connected, inside
L 192.168.2.1 255.255.255.255 is directly connected, inside
B 192.168.10.0 255.255.255.0 [200/0] via 10.1.2.2, 00:02:35
C 198.51.100.0 255.255.255.252 is directly connected, ispa
L 198.51.100.1 255.255.255.255 is directly connected, ispa
S 198.51.100.129 255.255.255.255 [1/0] via 198.51.100.2, ispa
C 203.0.113.0 255.255.255.252 is directly connected, ispb
L 203.0.113.1 255.255.255.255 is directly connected, ispb
S 203.0.113.129 255.255.255.255 [1/0] via 203.0.113.2, ispb
Troubleshoot
Depurações usadas para solucionar problemas do protocolo IKEv2:
debug crypto ikev2 protocol 4
debug crypto ikev2 plataforma 4
Para obter mais informações sobre a solução de problemas do protocolo IKEv2:
https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/115935-asa-ikev2-debugs.html
Para obter mais informações sobre a solução de problemas do protocolo BGP:
https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/118050-config-bgp-00.html#anc37
Informações Relacionadas