đ IPsec et IKEv2 â Fondements VPN
| Formation | BTS SIO option SISR â IRIS Mediaschool |
|---|---|
| Bloc | B2 â RĂ©seaux et sĂ©curitĂ© |
| Module | M2.1 â Infrastructure rĂ©seau |
| Compétence | B2.2 / Lien B3.4 |
| Durée | 3h30 |
đŻ Introduction (10 min)
En 2019, une vulnĂ©rabilitĂ© critique (CVE-2019-11510) a Ă©tĂ© dĂ©couverte dans Pulse Secure : un 0-day permettant la lecture de fichiers sensibles sans authentification, facilitant l'accĂšs non autorisĂ© Ă des rĂ©seaux d'entreprises et massivement exploitĂ© par des groupes APT. Cet incident montre Ă quel point une mauvaise configuration ou des logiciels non mis Ă jour cĂŽtĂ© VPN peuvent ouvrir des portes sur l'ensemble du SI d'une PME. Dans le contexte du tĂ©lĂ©travail massif de 2020, des VPN mal configurĂ©s ont amplifiĂ© les risques â l'objectif de cette sĂ©ance est de comprendre les protocoles et les mĂ©canismes d'IPsec pour concevoir des VPN robustes.
đŻ Objectifs de la sĂ©ance
à l'issue de cette séance, vous serez capable de :
- Expliquer les principaux protocoles VPN (L2TP/IPsec, SSL VPN, OpenVPN) et les différences IKEv1 vs IKEv2.
- Détailler les mécanismes d'IPsec (SA, ESP, AH, modes tunnel/transport, phases IKE) et choisir des paramÚtres cryptographiques pertinents (AES-256-GCM, SHA-256/384, DH groups).
- Configurer et vĂ©rifier une mise en Ćuvre site-Ă -site IPsec IKEv2 sur routeurs Cisco et diagnostiquer une nĂ©gociation.
1. Protocoles VPN (70 min)
Les VPN sont des solutions qui permettent d'étendre un réseau privé au-dessus d'un réseau non fiable (Internet). Il existe deux grandes familles : les VPN basés sur IPsec (opérés au niveau IP) et les VPN basés sur TLS/SSL (opérés au-dessus de TCP/UDP). Chaque choix a des conséquences opérationnelles (interopérabilité, NAT traversal, gestion des certificats) et de sécurité.
1.1 L2TP/IPsec â historique et usage
L2TP est un protocole de tunneling qui transporte des trames PPP ; il est fréquemment utilisé conjointement avec IPsec pour fournir chiffrement et intégrité. Les clients Windows/macOS disposent d'un support natif pour L2TP/IPsec, ce qui en fait une solution courante pour des accÚs distants légers. L2TP encapsule des sessions PPP, puis IPsec (ESP) chiffre le trafic ; la négociation des clés se fait via IKE (UDP 500) avec NAT-T en UDP 4500 si un NAT est rencontré.
1.2 SSL VPN / TLS-based VPN
Les solutions SSL VPN (ex : appliances type Pulse Secure, ou serveurs OpenVPN en TLS) utilisent la pile TLS. Elles offrent souvent une expérience utilisateur plus flexible (port 443, meilleur NAT traversal) et peuvent proposer des modes « clientless » pour accÚs web. Les clients OpenVPN peuvent s'appuyer sur TLS mutual auth (certificats) pour l'authentification forte cÎté client.
1.3 OpenVPN
OpenVPN est une implémentation TLS robuste et trÚs utilisée en PME : il supporte les modes tun (Layer 3) et tap (Layer 2), fonctionne sur UDP/TCP, et permet d'utiliser une PKI (easy-rsa) pour mutualiser confiance et révocation. OpenVPN est simple à déployer sur Debian et sur des postes clients Linux/Windows.
1.4 IKEv1 vs IKEv2
IKEv1 (ancĂȘtre) utilise deux modes d'Ă©change (main/aggressive) et est plus verbeux ; IKEv2 refond le protocole : Ă©changes simplifiĂ©s, meilleure gestion du rekey, support natif de MOBIKE (mobilitĂ©) et meilleure rĂ©sistance au NAT. IKEv2 est recommandĂ© pour les dĂ©ploiements modernes, il supporte EAP pour des authentifications avancĂ©es et nĂ©gocie plus clairement les suites crypto (proposals).
| CritĂšre | IKEv1 | IKEv2 |
|---|---|---|
| Modes d'Ă©change | Main mode / Aggressive mode | Ăchanges unifiĂ©s (IKE_SA_INIT + IKE_AUTH) |
| Nombre de messages | 6 (main) ou 3 (aggressive) | 4 (minimum) |
| NAT Traversal | Extension RFC 3947 | Intégré nativement |
| Mobilité | Non | MOBIKE (RFC 4555) |
| Authentification étendue | XAUTH (non standard) | EAP (standard) |
| Recommandation | Déploiements legacy | Tout déploiement moderne |
2. IPsec â concepts et paramĂštres (70 min)
IPsec n'est pas un seul protocole mais un ensemble : les Security Associations (SA) définissent l'ensemble des paramÚtres cryptographiques (algorithme de chiffrement, algorithme d'intégrité, durée de vie, paramÚtres DH). Deux protocoles principaux protÚgent le trafic :
- AH (Authentication Header) : fournit intĂ©gritĂ© et authentification de paquets y compris certains champs d'en-tĂȘte IP, mais il est peu compatible avec le NAT.
- ESP (Encapsulating Security Payload) : fournit chiffrement et authentification des donnĂ©es â c'est le choix par dĂ©faut pour la plupart des VPN.
Tunnel vs transport
| Mode | Description | Usage typique |
|---|---|---|
| Transport | ProtĂšge la charge utile IP entre deux hĂŽtes ; l'en-tĂȘte IP original est conservĂ©. | Communication sĂ©curisĂ©e point-Ă -point entre deux hĂŽtes |
| Tunnel | Encapsule un paquet IP entier (en-tĂȘte + donnĂ©es) dans un nouveau paquet IP. | VPN site-Ă -site (les routeurs encapsulent le trafic entre sous-rĂ©seaux) |
IKE â phases de nĂ©gociation
- Phase 1 (ISAKMP / IKE SA) : négociation d'une SA IKE (authentification et échange de clés Diffie-Hellman). IKEv1 distingue main mode / aggressive mode ; IKEv2 fait tout en une série d'échanges plus robustes (IKE_SA_INIT + IKE_AUTH).
- Phase 2 (IPsec SA / Quick Mode) : négociation des SAs IPsec (ESP/AH) qui vont chiffrer réellement le trafic.
ParamÚtres cryptographiques recommandés
| ParamĂštre | Recommandation | Commentaire |
|---|---|---|
| Algorithme AEAD | AES-256-GCM | Chiffrement + intégrité ; tirant parti de l'accélération matérielle AES-NI |
| Alternative si GCM indisponible | AES-256-CBC + HMAC-SHA256/384 | Moins performant mais large compatibilité |
| Hachage (PRF / intégrité) | SHA-256 ou SHA-384 | SHA-1 à proscrire |
| Groupe Diffie-Hellman (compatibilité) | Group 14 (2048-bit MODP) | Minimum acceptable pour les nouveaux déploiements |
| Groupe Diffie-Hellman (sécurité) | Group 20 (ECDH P-384) | Meilleure sécurité/performance via courbes elliptiques |
| NAT Traversal | UDP/4500 avec NAT-T | Encapsulation ESP dans UDP 4500 quand un NAT est détecté |
Certificats PKI vs PSK
| PSK (Pre-Shared Key) | PKI (Certificats) | |
|---|---|---|
| Mise en Ćuvre | Simple, rapide | NĂ©cessite une CA et procĂ©dures de gestion |
| ScalabilitĂ© | Faible â gestion manuelle pair par pair | ĂlevĂ©e â Ă©mission/rĂ©vocation centralisĂ©es |
| Révocation | Aucune (rotation manuelle) | CRL / OCSP |
| Risque si compromis | ĂlevĂ© â toute la liaison exposĂ©e | LimitĂ© â seul le certificat rĂ©voquĂ© est impactĂ© |
| Usage recommandé | Liens site-à -site entre entités contrÎlées (si rotation appliquée) | AccÚs distant multi-utilisateurs (InnovatTech) |
3. Exemple de configuration Cisco IKEv2 site-Ă -site
Contexte : R1 (SiĂšge Nice) IP publique 91.208.45.12, R2 (Succursale Cannes) IP publique 203.0.113.2.
Réseaux locaux : Nice 192.168.10.0/24, Cannes 192.168.30.0/24.
ipsec profile.
Une approche alternative classique est d'utiliser une crypto map (policy-based).
R1 (Nice) â configuration IKEv2 + IPsec
! Contexte IOS 16.x â Routeur R1 (Nice)
hostname R1-Nice
!
interface GigabitEthernet0/0
description WAN
ip address 91.208.45.12 255.255.255.248
!
crypto ikev2 proposal IKEV2-PROP
encryption aes-gcm-256
integrity sha256
group 14
!
crypto ikev2 policy IKEV2-POL
proposal IKEV2-PROP
!
crypto ikev2 keyring KEYRING-NICE
peer R2-Cannes
address 203.0.113.2
pre-shared-key local 0 MyVerySecretPSK
pre-shared-key remote 0 MyVerySecretPSK
!
crypto ikev2 profile IKEV2-PROFILE
match identity remote address 203.0.113.2 255.255.255.255
authentication local pre-share
authentication remote pre-share
keyring local KEYRING-NICE
proposal IKEV2-POL
!
crypto ipsec transform-set TS esp-aes 256 esp-sha256-hmac
mode tunnel
!
crypto ipsec profile IPSEC-PROFILE
set transform-set TS
set ikev2-profile IKEV2-PROFILE
!
interface Tunnel0
ip address 10.10.10.1 255.255.255.252
tunnel source GigabitEthernet0/0
tunnel destination 203.0.113.2
tunnel protection ipsec profile IPSEC-PROFILE
!
ip route 192.168.30.0 255.255.255.0 Tunnel0
R2 (Cannes) â configuration miroir
hostname R2-Cannes
!
interface GigabitEthernet0/0
ip address 203.0.113.2 255.255.255.248
!
crypto ikev2 proposal IKEV2-PROP
encryption aes-gcm-256
integrity sha256
group 14
!
crypto ikev2 keyring KEYRING-CANNES
peer R1-Nice
address 91.208.45.12
pre-shared-key local 0 MyVerySecretPSK
pre-shared-key remote 0 MyVerySecretPSK
!
crypto ikev2 profile IKEV2-PROFILE
match identity remote address 91.208.45.12 255.255.255.255
authentication local pre-share
authentication remote pre-share
keyring local KEYRING-CANNES
proposal IKEV2-POL
!
crypto ipsec transform-set TS esp-aes 256 esp-sha256-hmac
mode tunnel
!
crypto ipsec profile IPSEC-PROFILE
set transform-set TS
set ikev2-profile IKEV2-PROFILE
!
interface Tunnel0
ip address 10.10.10.2 255.255.255.252
tunnel source GigabitEthernet0/0
tunnel destination 91.208.45.12
tunnel protection ipsec profile IPSEC-PROFILE
!
ip route 192.168.10.0 255.255.255.0 Tunnel0
Vérification et sorties attendues
! Vérifier IKEv2 SA (R1 ou R2)
Router# show crypto ikev2 sa
ID LOCAL REMOTE fvrf fpolicy
1 91.208.45.12:500 203.0.113.2:500 0 active
IKEv2 SA established, encrypted: 1, authenticated: 1
! Vérifier IPsec SA
Router# show crypto ipsec sa
interface: Tunnel0
Crypto map tag: IPSEC-MAP, seqnum: 10, local addr: 91.208.45.12
local ident (addr/mask/prot/port): (91.208.45.12/255.255.255.255/0/0)
remote ident (addr/mask/prot/port): (203.0.113.2/255.255.255.255/0/0)
current_peer 203.0.113.2
#pkts encaps: 12, #pkts encrypt: 12, #pkts digest: 12
show crypto isakmp sa est la commande historique pour IKEv1 (ISAKMP).
Avec IKEv2, utilisez exclusivement show crypto ikev2 sa.
đ ïž Travaux Pratiques (70 min)
Contexte du TP
Vous ĂȘtes technicien chez InnovatTech SARL (Nice). Le siĂšge (R1 â Cisco ISR 4321) doit Ă©tablir un VPN site-Ă -site IPsec IKEv2 vers la succursale Cannes (R2 â Cisco). Le responsable rĂ©seau vous fournit les adresses publiques et vous demande une configuration IKEv2 avec PSK pour valider le mĂ©canisme avant migration vers PKI.
Objectif
Configurer un VPN site-à -site IPsec IKEv2 entre R1 (Nice) et R2 (Cannes), vérifier la négociation IKE et IPsec, et vérifier que les réseaux 192.168.10.0/24 et 192.168.30.0/24 peuvent communiquer via le tunnel.
Prérequis techniques
- AccĂšs console/SSH aux routeurs R1 et R2 (IOS 16.x) avec privilĂšges d'administration.
- Adresses publiques assignées :
91.208.45.12pour R1,203.0.113.2pour R2. - AccÚs au plan d'adressage InnovatTech (réseaux locaux déjà configurés).
- Outil de test : un poste Linux sur
192.168.10.Xcapable de pinger192.168.30.5.
Ătapes
1. Préparer les adresses et ACLs
Sur chaque routeur, vérifiez les interfaces WAN et les routes vers les réseaux locaux.
! Vérifier interfaces
R1# show ip interface brief
R2# show ip interface brief
2. Configurer IKEv2 et IPsec (R1 puis R2)
Copier/adapter les blocs de configuration fournis dans la section précédente (proposals, keyring, profile, ipsec profile, Tunnel0).
Utiliser la mĂȘme PSK sur les deux pairs (MyVerySecretPSK dans l'exemple), ou de prĂ©fĂ©rence stocker les PSK dans un gestionnaire sĂ©curisĂ©.
3. Activer le routage vers le tunnel
R1(config)# ip route 192.168.30.0 255.255.255.0 Tunnel0
R2(config)# ip route 192.168.10.0 255.255.255.0 Tunnel0
4. Vérifier la négociation
R1# show crypto ikev2 sa
R1# show crypto ipsec sa
! (optionnel si IKEv1 présent)
R1# show crypto isakmp sa
Vous devriez voir un IKEv2 SA « established » et des compteurs IPsec non nuls (pkts encaps/decaps). Si rien n'apparaßt, vérifiez NAT, ACLs et la correspondance des PSK.
5. Test de connectivité
# Sur le poste Linux client (192.168.10.x)
$ ip route
$ ping -c 4 192.168.30.5
# Vérification cÎté routeur
R1# show crypto ipsec sa | include pkts
Livrable attendu
- Fichiers de configuration (extraits) des deux routeurs contenant les blocs IKEv2/IPsec, l'interface Tunnel et les routes.
- Sorties des commandes de vérification (
show crypto ikev2 sa,show crypto ipsec sa) montrant les SA établies. - Capture d'un ping réussi entre
192.168.10.10et192.168.30.5avec horodatage.
CritÚres de réussite
- â Une IKEv2 SA active sur R1 et R2 (
show crypto ikev2 samontre « established »). - â Des compteurs non nuls dans
show crypto ipsec sa(paquets chiffrĂ©s/dĂ©chiffrĂ©s). - â Ping rĂ©ussi entre les deux sous-rĂ©seaux via le tunnel.
đ SynthĂšse de sĂ©ance (10 min)
Cette séance a posé les fondations des VPN IPsec : on a vu qu'IPsec construit des SAs qui définissent comment chiffrer et authentifier le trafic, qu'ESP est le protocole pratique pour chiffrer des flux, et qu'IKEv2 simplifie et sécurise la négociation des clés. En pratique, privilégiez AES-256-GCM et ECDH (group 20) lorsque le matériel le permet ; préférez PKI pour des accÚs multiples et PSK pour de petites liaisons point-à -point bien contrÎlées.
En une phrase, expliquez pourquoi AH est rarement utilisé avec des NATs.
đź QCM â Testez vos connaissances
- Quel protocole IPsec fournit à la fois chiffrement et authentification des données, tout en restant compatible avec le NAT ?
- Quelle amélioration majeure IKEv2 apporte-t-il par rapport à IKEv1 concernant la mobilité des terminaux ?
- En mode tunnel IPsec, qu'est-ce qui est encapsulé dans le nouveau paquet IP ?
- Quel algorithme AEAD est recommandé pour les nouveaux déploiements IPsec et pourquoi ?
- Pourquoi le protocole AH est-il incompatible avec NAT ?
đ Afficher les corrections
- ESP (Encapsulating Security Payload) â ESP chiffre la charge utile et fournit l'authentification via un HMAC. Contrairement Ă AH, il ne couvre pas les champs de l'en-tĂȘte IP externe et fonctionne donc correctement aprĂšs traversĂ©e d'un NAT.
- MOBIKE (RFC 4555) â IKEv2 intĂšgre nativement MOBIKE, qui permet Ă un pair de changer d'adresse IP (ou de rĂ©seau) sans rĂ©initialiser le tunnel. C'est essentiel pour les terminaux mobiles changeant de rĂ©seau (Wi-Fi â 4G).
- Le paquet IP original complet (en-tĂȘte + donnĂ©es) â En mode tunnel, le paquet IP d'origine (source/destination internes) est entiĂšrement encapsulĂ© dans un nouveau paquet IP (source/destination = adresses publiques des routeurs). Cela permet de relier des sous-rĂ©seaux distants de façon transparente.
- AES-256-GCM â C'est un algorithme AEAD (Authenticated Encryption with Associated Data) qui combine chiffrement et intĂ©gritĂ© en une seule passe, rĂ©duisant la complexitĂ© et bĂ©nĂ©ficiant de l'accĂ©lĂ©ration matĂ©rielle AES-NI prĂ©sente dans la plupart des processeurs modernes.
- AH authentifie les champs de l'en-tĂȘte IP (y compris les adresses source/destination) â Or, NAT modifie prĂ©cisĂ©ment ces adresses lors du passage du paquet. La vĂ©rification d'intĂ©gritĂ© d'AH Ă©choue donc systĂ©matiquement aprĂšs traversĂ©e d'un NAT, rendant le protocole inutilisable dans ces environnements.
IPsec = ensemble de protocoles (SA, AH, ESP) + négociation IKE. Préférez toujours ESP en mode tunnel + IKEv2 + AES-256-GCM + group 20 (ECDH P-384). Utilisez PKI pour les accÚs distants multi-utilisateurs et PSK uniquement pour des liaisons site-à -site bien contrÎlées avec rotation réguliÚre. La commande clé de diagnostic est show crypto ikev2 sa (pas isakmp).
SĂ©ance suivante : SĂ©ance 2 â OpenVPN et dĂ©ploiement d'accĂšs distant sĂ©curisĂ© (PKI + 2FA).
