Aller au contenu principal

1. Introduction

1. Introduction​

Le Point-to-Point Protocol (PPP) [RFC1661] fournit un protocole de contrôle de liaison (LCP) extensible permettant de négocier les options de la couche liaison, y compris les protocoles d'authentification. Grâce à l'option de négociation LCP, le protocole d'authentification à utiliser (par exemple le Password Authentication Protocol (PAP) [RFC1661] ou le Challenge Handshake Authentication Protocol (CHAP) [RFC1994]) peut être déterminé avant la phase d'authentification.

Les protocoles d'authentification PPP (comme CHAP) conviennent lorsqu'un seul mécanisme d'authentification est disponible. Ce mécanisme est largement utilisé dans les déploiements ISP par ligne commutée, où un seul mécanisme (CHAP) est utilisé, mais il peut y avoir plusieurs mécanismes disponibles, comme dans les réseaux sans fil, où EAP offre une plus grande flexibilité.

Cependant, dans certains déploiements, le mécanisme d'authentification disponible ne peut pas être connu avant la phase d'authentification. Il est possible que l'authentification doive être effectuée par un serveur de sécurité backend (comme RADIUS [RFC2865]), le serveur d'accès réseau (NAS) ne mettant en œuvre aucun mécanisme particulier. Une autre possibilité est que le mécanisme d'authentification à utiliser ne puisse pas être déterminé avant la phase d'authentification, permettant ainsi à l'authenticateur de demander plus d'informations avant de déterminer le mécanisme d'authentification approprié.

Le protocole Extensible Authentication Protocol (EAP) [RFC2284] prend en charge l'authentification au-dessus de la couche liaison (comme PPP [RFC1661], les réseaux filaires IEEE 802 [IEEE-802.1X] et les réseaux locaux sans fil IEEE 802.11 [IEEE-802.11]) et peut fonctionner en mode "pass-through" via un serveur d'authentification backend.

1.1. Objectifs de conception​

Les objectifs de la conception d'EAP incluent les aspects suivants :

[1] Généralité. Le mécanisme d'authentification doit être indépendant de la couche liaison utilisée et peut être utilisé sur plusieurs couches liaison.

[2] Extensibilité. De nouveaux mécanismes d'authentification doivent pouvoir être définis sans modifier les implémentations de couche liaison existantes.

[3] Flexibilité. Le mécanisme d'authentification à utiliser ne doit pas être déterminé à l'avance avant le début de la phase d'authentification. Cela permet à l'authenticateur de demander des informations d'identité avant de déterminer le mécanisme d'authentification à utiliser.

[4] Adaptabilité. Prend en charge le fonctionnement sur plusieurs couches liaison, y compris PPP, IEEE 802 filaire et réseaux locaux sans fil IEEE 802.11.

1.2. Terminologie​

Ce document utilise les termes suivants :

Authenticateur (Authenticator) L'entité qui contrôle le point (tel que défini dans [IEEE-802.1X]) ou le canal (tel que défini dans [RFC1661]) à l'extrémité de l'échange d'authentification. L'authenticateur tente de vérifier l'identité de l'homologue (peer) en imposant l'authentification.

Serveur d'authentification backend (Backend Authentication Server) Entité qui communique avec l'authenticateur et effectue ou prend en charge les calculs d'authentification pour le compte de l'authenticateur. Lorsque l'authenticateur est un authenticateur "pass-through", le serveur d'authentification backend effectue réellement la méthode d'authentification, l'authenticateur se contentant de relayer l'échange d'authentification.

Homologue (Peer) L'entité de l'échange d'authentification sur laquelle l'authentification est imposée par l'authenticateur.

Méthode EAP (EAP Method) Un mécanisme d'authentification implémentant un algorithme d'authentification EAP. Dans EAP, les méthodes d'authentification sont négociées par type, comme décrit à la section 5.

Couche homologue EAP (EAP Peer Layer) Partie du protocole EAP implémentée sur l'homologue EAP, chargée d'envoyer les paquets EAP liés à la méthode EAP vers la couche de méthode EAP et de renvoyer les réponses de méthode EAP vers la couche EAP.

Couche authenticateur EAP (EAP Authenticator Layer) Partie du protocole EAP implémentée sur l'authenticateur EAP, chargée d'envoyer les paquets EAP liés à la méthode EAP vers la couche de méthode EAP et de renvoyer les réponses de méthode EAP vers la couche EAP.

Couche de méthode EAP (EAP Method Layer) La couche qui implémente l'algorithme d'authentification et émet/reçoit des messages EAP via les couches homologue et authenticateur EAP.

Couche EAP (EAP Layer) Partie du protocole EAP chargée d'émettre et de recevoir des paquets EAP, d'implémenter la détection de doublons et la retransmission, et de distribuer les messages EAP aux couches homologue et authenticateur EAP.

Couche inférieure (Lower Layer) La couche chargée de transporter et de recevoir les trames EAP entre l'homologue et l'authenticateur. EAP fonctionne sur plusieurs couches inférieures, notamment PPP, les réseaux locaux filaires IEEE 802, les réseaux locaux sans fil IEEE 802.11, UDP (L2TP [RFC2661] et IKEv2 [IKEv2]) et TCP [PIC].

Authenticateur pass-through (Pass-Through Authenticator) L'authenticateur qui relaie les paquets EAP reçus de l'homologue vers le serveur d'authentification backend et les paquets EAP reçus du serveur d'authentification backend vers l'homologue.

1.3. Applicabilité​

EAP convient pour fournir une authentification sur la couche liaison (comme PPP ou IEEE 802), et peut également être utilisé pour fournir une authentification de couche réseau ou applicative lorsque EAP est tunnelisé dans des protocoles de couche supérieure (comme UDP, TCP ou RADIUS).

EAP est conçu pour fournir un cadre général d'authentification d'accès réseau de couche liaison. Il n'est pas adapté à un cadre d'authentification général, comme SASL [SASL] pour l'authentification de couche applicative, où des fonctionnalités supplémentaires (comme la négociation, la couche de sécurité, etc.) peuvent être nécessaires.

EAP n'est pas non plus adapté pour fournir une authentification avant l'établissement de la liaison, car il dépend des garanties de ordonnancement fournies par la couche inférieure et nécessite généralement une association préalable avec l'homologue (comme une liaison PPP ou un port IEEE 802) pour déterminer l'identité.

Étant donné qu'EAP est un protocole "pas à pas" (lock step), il est inefficace dans le traitement de la fragmentation et de la réassemblage. Par conséquent, si la couche inférieure prend en charge la fragmentation et la réassemblage (comme lorsque EAP est transporté sur IP), il est généralement préférable que la fragmentation et la réassemblage se produisent dans la couche inférieure plutôt que dans EAP.