Introduction
Ce document décrit comment configurer une connexion VPN de site à site IKEv2 entre deux Cisco ASA utilisant des échanges de clés multiples IKEv2.
Conditions préalables
Exigences
Cisco vous recommande de prendre connaissance des rubriques suivantes :
- Appareil de sécurité adaptatif Cisco (ASA)
- Concepts généraux d'IKEv2
Composants utilisés
Les informations contenues dans ce document sont basées sur les Cisco ASA exécutant la version 9.20.1.
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. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Limites
L'échange de clés multiples IKEv2 présente les limitations suivantes :
- Pris en charge sur l'interface CLI ASA uniquement
- Pris en charge sur les périphériques multicontextes et haute disponibilité
- Non pris en charge sur les périphériques en cluster
Licences
Les conditions de licence sont les mêmes que pour le VPN site à site sur les ASA.
Informations générales
Besoin d'échanges de clés supplémentaires
L'arrivée des gros ordinateurs quantiques présente un risque important pour les systèmes de sécurité, en particulier ceux qui utilisent la cryptographie à clé publique. Les méthodes cryptographiques que l'on pensait très difficiles pour les ordinateurs ordinaires peuvent être facilement brisées par les ordinateurs quantiques. Il est donc nécessaire de passer à de nouvelles méthodes de résistance quantique, également appelées algorithmes de cryptographie post-quantique (PQC). L'objectif est d'améliorer la sécurité des communications IPsec en utilisant plusieurs échanges de clés. Cela implique de combiner un échange de clés traditionnel avec un échange post-quantique. Cette approche garantit que l'échange qui en résulte est au moins aussi puissant que l'échange de clés traditionnel, offrant ainsi une couche de sécurité supplémentaire.
L'objectif est d'améliorer IKEv2 en ajoutant la prise en charge de plusieurs échanges de clés. Ces échanges de clés supplémentaires peuvent gérer des algorithmes qui sont à l'abri des menaces quantiques. Pour échanger des informations sur ces clés supplémentaires, un nouveau type de message appelé Échange intermédiaire est introduit. Ces échanges de clés sont négociés à l'aide de la méthode IKEv2 normale, via la charge utile SA.
Configurer
Cette section décrit les configurations ASA.
Diagramme du réseau
Le présent document utilise cette configuration de réseau :
Configuration ASA
Configurer les interfaces ASA
Si les interfaces ASA ne sont pas configurées, assurez-vous de configurer au moins les adresses IP, les noms d'interface et les niveaux de sécurité :
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 10.10.10.10 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 192.168.0.1 255.255.255.0
Remarque : assurez-vous que la connectivité est établie à la fois avec les réseaux internes et externes, en particulier avec l'homologue distant utilisé pour établir un tunnel VPN site à site. Vous pouvez utiliser un message ping pour vérifier la connectivité de base.
Configurez la stratégie IKEv2 avec l'échange de clés multiples et activez IKEv2 sur l'interface externe
Afin de configurer les stratégies IKEv2 pour ces connexions, entrez ces commandes :
crypto ikev2 policy 10
encryption aes-256
integrity sha256
group 20
prf sha256
lifetime seconds 86400
D'autres transformations d'échange de clés peuvent être configurées sous crypto ikev2 policy à l'aide de la commandeadditional-key-exchange . Un total de sept transformations d'échange supplémentaires peut être configuré. Dans cet exemple, deux transformations d'échange supplémentaires ont été configurées (à l'aide des groupes DH 21 et 31).
additional-key-exchange 1 key-exchange-method 21 additional-key-exchange 2 key-exchange-method 31
La stratégie IKEv2 finale ressemble à ceci :
crypto ikev2 policy 10
encryption aes-256
integrity sha256
group 20
prf sha256
lifetime seconds 86400
additional-key-exchange 1
key-exchange-method 21
additional-key-exchange 2
key-exchange-method 31
Remarque : une correspondance de stratégie IKEv2 existe lorsque les deux stratégies des deux homologues contiennent les mêmes valeurs d'authentification, de chiffrement, de hachage, de paramètre Diffie-Hellman et de paramètre Additional Key Exchange.
Vous devez activer IKEv2 sur l'interface qui termine le tunnel VPN. Il s'agit généralement de l'interface externe (ou Internet). Afin d'activer IKEv2, entrez la commandecrypto ikev2 enable outside en mode de configuration globale.
Configuration du groupe de tunnels
Pour un tunnel de site à site, le type de profil de connexion est IPSec-l2l. Afin de configurer la clé prépartagée IKEv2, entrez ces commandes :
tunnel-group 10.20.20.20 type ipsec-l2l
tunnel-group 10.20.20.20 ipsec-attributes
ikev2 remote-authentication pre-shared-key cisco
ikev2 local-authentication pre-shared-key cisco
Configuration du trafic intéressant et ACL de chiffrement
L'ASA utilise des listes de contrôle d'accès (ACL) afin de différencier le trafic qui doit être protégé par cryptage IPSec du trafic qui ne nécessite pas de protection. Il protège les paquets sortants qui correspondent à un moteur de contrôle des applications (ACE) et veille à ce que les paquets entrants qui correspondent à un permis ACE soient protégés.
object-group network local-network
network-object 192.168.0.0 255.255.255.0
object-group network remote-network
network-object 172.16.10.0 255.255.255.0
access-list asa-vpn extended permit ip object-group local-network object-group remote-network
Remarque : l'homologue VPN doit avoir la même liste de contrôle d'accès dans un format en miroir.
Configuration d'une NAT d'identité (facultatif)
Généralement, une NAT d'identité est nécessaire afin d'empêcher le trafic intéressant d'atteindre la NAT dynamique. La NAT d'identité qui est configurée dans ce cas est :
nat (inside,outside) source static local-network local-network destination static remote-network remote-network no-proxy-arp route-lookup
Configuration de la proposition IPSec IKEv2
La proposition IPSec IKEv2 est utilisée pour définir un ensemble d'algorithmes de chiffrement et d'intégrité afin de protéger le trafic de données. Cette proposition doit correspondre aux deux homologues VPN afin de créer une SA IPSec avec succès. Les commandes utilisées dans ce cas sont les suivantes :
crypto ipsec ikev2 ipsec-proposal IKEV2_TSET
protocol esp encryption aes-256
protocol esp integrity sha-256
Configurer une carte de chiffrement et la lier à l’interface
Une crypto-carte combine toutes les configurations requises et doit nécessairement contenir :
- Une liste d’accès correspondant au trafic qui doit être chiffré (communément appelée ACL de chiffrement)
- L’identification des homologues;
- Au moins une proposition IPSec IKEv2
La configuration utilisée ici est la suivante :
crypto map outside_map 1 match address asa-vpn crypto map outside_map 1 set peer 10.20.20.20 crypto map outside_map 1 set ikev2 ipsec-proposal IKEV2_TSET
La dernière partie consiste à appliquer cette crypto-carte à l'interface externe (publique) à l'aide de la commandecrypto map outside_map interface outside.
Configuration finale ASA locale
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 10.10.10.10 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 192.168.0.1 255.255.255.0
!
crypto ikev2 policy 10
encryption aes-256
integrity sha256
group 20
prf sha256
lifetime seconds 86400
additional-key-exchange 1
key-exchange-method 21
additional-key-exchange 2
key-exchange-method 31
!
crypto ikev2 enable outside
!
tunnel-group 10.20.20.20 type ipsec-l2l
tunnel-group 10.20.20.20 ipsec-attributes
ikev2 remote-authentication pre-shared-key cisco
ikev2 local-authentication pre-shared-key cisco
!
object-group network local-network
network-object 192.168.0.0 255.255.255.0
!
object-group network remote-network
network-object 172.16.10.0 255.255.255.0
!
access-list asa-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 ipsec ikev2 ipsec-proposal IKEV2_TSET
protocol esp encryption aes-256
protocol esp integrity sha-256
!
crypto map outside_map 1 match address asa-vpn
crypto map outside_map 1 set peer 10.20.20.20
crypto map outside_map 1 set ikev2 ipsec-proposal IKEV2_TSET
!
crypto map outside_map interface outside
Configuration finale d'ASA distant
interface GigabitEthernet0/0 nameif outside security-level 0 ip address 10.20.20.20 255.255.255.0 ! interface GigabitEthernet0/1 nameif inside security-level 100 ip address 172.16.10.1 255.255.255.0 ! crypto ikev2 policy 10 encryption aes-256 integrity sha256 group 20 prf sha256 lifetime seconds 86400 additional-key-exchange 1 key-exchange-method 21 additional-key-exchange 2 key-exchange-method 31 ! crypto ikev2 enable outside ! tunnel-group 10.10.10.10 type ipsec-l2l tunnel-group 10.10.10.10 ipsec-attributes ikev2 remote-authentication pre-shared-key cisco ikev2 local-authentication pre-shared-key cisco ! object-group network local-network network-object 172.16.10.0 255.255.255.0 ! object-group network remote-network network-object 192.168.0.0 255.255.255.0 ! access-list asa-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 ipsec ikev2 ipsec-proposal IKEV2_TSET protocol esp encryption aes-256 protocol esp integrity sha-256 ! crypto map outside_map 1 match address asa-vpn crypto map outside_map 1 set peer 10.10.10.10 crypto map outside_map 1 set ikev2 ipsec-proposal IKEV2_TSET ! crypto map outside_map interface outside
Remarque : la liste de contrôle d'accès est au format miroir et les clés prépartagées sont identiques aux deux extrémités.
Vérifier
Avant de vérifier si le tunnel est actif et s'il passe le trafic, vous devez vous assurer que le trafic intéressant est envoyé aux ASA.
Remarque : le traceur de paquets a été utilisé afin de simuler le flux de trafic. Cela peut être fait en utilisant la commande packet-tracer ; packet-tracer input inside icmp 192.168.0.11 8 0 172.16.10.11 détaillé sur le Local-ASA.
Afin de valider les échanges de clés supplémentaires, vous pouvez utiliser la commandeshow crypto ikev2 sa. Comme le montre le résultat, vous pouvez vérifier les paramètres AKE afin de valider les algorithmes d'échange sélectionnés.
Local-ASA# show crypto ikev2 sa IKEv2 SAs: Session-id:2, Status:UP-ACTIVE, IKE count:1, CHILD count:1 Tunnel-id Local Remote fvrf/ivrf Status Role 246015 10.10.10.10/500 10.20.20.20/500 READY INITIATOR Encr: AES-CBC, keysize: 256, Hash: SHA256, DH Grp:20, Auth sign: PSK, Auth verify: PSK Additional Key Exchange Group: AKE1: 21 AKE2: 31 Life/Active Time: 86400/7 sec Child sa: local selector 192.168.0.0/0 - 192.168.0.255/65535 remote selector 172.16.10.0/0 - 172.16.10.255/65535 ESP spi in/out: 0xf41ca3b5/0xda0e693b
Dépannage
Les débogages mentionnés peuvent être utilisés pour dépanner le tunnel IKEv2 :
debug crypto ikev2 protocol 127
debug crypto ikev2 platform 127
Remarque : si vous souhaitez dépanner un seul tunnel (ce qui doit être le cas si le périphérique est en production), vous devez activer les débogages conditionnellement en utilisant la commande debug crypto condition peer X.X.X.X.