Le protocole IKE (Internet Key Exchange)

Présentation

Le protocole Internet Key Exchange (IKE) est un protocole utilisé pour mettre en place les informations de sécurité partagées dans IPsec et permet la mise en place d’un tunnel sécurisé entre deux équipements (appelés « pairs » ou « peers » en anglais).

La phase 1 IKE utilise le port UDP 500 pour effectuer la négociation.

Les phases IKE

Phase 1

Lors de la phase 1, deux pairs IKE établissent une connexion sécurisée par le biais d’un canal sécurisé afin d’échanger une clé de sécurité partagée. La phase 1 peut fonctionner en « Main Mode » ou en « Aggresive Mode ». Le « Main Mode » utilise plus de paquets que « l’Aggresive Mode », il est pourtant considéré comme étant le plus sécurisé des deux.

Voici les 5 éléments négociés durant la phase 1 IKE :

  • Hash : Spécifier quelle fonction de hachage sera utilisée (MD5 ou SHA)
  • Authentication Method : Spécifier quelle méthode d’authentification sera utilisée (PSK ou PKI)
  • DH Group : Spécifier quel groupe « Diffie-Hellman » sera utilisé
  • Lifetime : Spécifier la durée de vie du tunnel de la phase 1 IKE (par défaut : 86400 secondes, soit 1 jour)
  • Encryption Method : Spécifier quel méthode de chiffrement sera utilisé (DES, 3 DES ou AES)

Une fois le tunnel de la phase 1 IKE actif, ce dernier manage la mise en place du tunnel de la phase 2 IKE qui sera utilisé pour l’échange des données des pairs.

Phase 2 (Quick Mode)

La phase 2 est également appelée « Quick Mode ». Elle a pour but d’établir les tunnels (et les associations de sécurité correspondantes) servant au transfert des données. Un tunnel est unidirectionnel et il faut donc en établir 2 pour un échange « full-duplex ». Les mécanismes propres à cette phase sont grossièrement semblables à ceux de la phase précédente. Le « Quick Mode » IKE est l’un des deux modes utilisables durant la phase 2 IKE. Le second mode étant le « Group Domain of Interpretation (GDOI) », mode utilisé par GET VPN.

Voici les 5 éléments négociés durant la phase 2 IKE :

  • Peer IP Address : Spécifier les adresses IP des deux pairs
  • Traffic to Encrypt : Spécifier par le biais d’une « access-list » (ACL) quels réseaux doivent être chiffrés
  • Encryption Method
  • Hash
  • DH Group

Il est important de noter que les paramètres « Encryption Method », « Hash » et « DH Group » peuvent être différents de ceux configurés lors de la phase 1 IKE. Cependant, les paramètres doivent être rigoureusement identiques sur les deux pairs (aussi bien pour la phase 1 que pour la phase 2).

Les modes IKE

Main Mode

Permet de négociation de la politique IKE de façon plus souple et protège toujours l’identité des pairs. Cela signifie qu’une oreille indiscrète ne peut découvrir l’identité de l’un des pairs durant l’échange IKE. Le « Main Mode » IKE ne supporte pas les pairs possédant des adresses attribuées dynamiquement lors de l’utilisation des clés pré-partagées (PSK) pour l’authentification. Il est également incompatible lorsque la méthode d’authentification utilisée est une infrastructure à clés publiques (PKI).

Aggresive Mode

Ce mode ne protège pas l’identité des pairs, ce qui pourrait rendre le VPN sensibles aux détournements de session. « L’Aggressive Mode » IKE ne supporte pas l’authentification par clés pré-partagées (PSK) pour les pairs adressés dynamiquement et utilisant des noms d’authentification. Ce mode est plus rapide que le « Main Mode » mais prévoit clairement un niveau de sécurité moindre.

Établissement de la session VPN avec IKE

Voici les 4 étapes nécessaires à l’établissement de la session :

  1. Etape 1 : Négociation de la phase 1 du tunnel IKE. Ce premier tunnel ne sera pas utilisé pour les échanges de données utilisateurs mais pour protéger le trafic de management utilisé pour le VPN entre les deux pairs.
  2. Etape 2 : Echange de la clé DH. Une fois le tunnel de la phase 1 IKE initié (non-fonctionnel à cette étape), les deux pairs lancent la négociation de la longueur de la clé « Diffie-Hellman » par le biais des groupes configurés.
  3. Etape 3 : Authentification des pairs. La dernière étape de la phase 1 IKE est d’authentifier le pair distant avec qui l’on souhaite créer la connexion sécurisée (par le biais de PSK ou PKI)
  4. Etape 4 : Initiation de la phase 2 du tunnel IKE. Le tunnel de la phase 1 IKE étant opérationnel, il manage la mise en place du tunnel de la phase 2 IKE qui permettra l’échange sécurisé des données.