Comment fonctionne RADIUS ?

Introduction

Le protocole RADIUS (Remote Authentication Dial-In User Service) a été développé par Livingston Enterprises, Inc, comme protocole d’authentification et de comptabilité des serveurs d’accès. La spécification RADIUS RFC 2865 supprime la RFC 2138. La norme de comptabilité RADIUS RFC 2866 obsolete le RFC 2139.

Prérequis

Exigences

Il n’y a pas de prérequis spécifiques pour ce document.

Composants utilisés

Ce document n’est pas restreint à des versions logicielles et matérielles spécifiques.

Conventions

Pour plus d’informations sur les conventions des documents, consultez les conventions des conseils techniques Cisco.

Informations de base

La communication entre un serveur d’accès réseau (NAS) et un serveur RADIUS est basée sur le protocole de datagramme utilisateur (UDP). En général, le protocole RADIUS est considéré comme un service sans connexion. Les problèmes liés à la disponibilité du serveur, à la retransmission et aux délais d’attente sont traités par les appareils compatibles avec RADIUS plutôt que par le protocole de transmission.

RADIUS est un protocole client/serveur. Le client RADIUS est généralement un NAS et le serveur RADIUS est généralement un processus démon exécuté sur une machine UNIX ou Windows NT. Le client transmet des informations sur l’utilisateur à des serveurs RADIUS désignés et agit en fonction de la réponse qui lui est renvoyée. Les serveurs RADIUS reçoivent les demandes de connexion des utilisateurs, authentifient l’utilisateur, puis renvoient les informations de configuration nécessaires pour que le client puisse fournir un service à l’utilisateur. Un serveur RADIUS peut agir comme un client proxy vers d’autres serveurs RADIUS ou d’autres types de serveurs d’authentification.

Cette figure montre l’interaction entre un utilisateur connecté et le client et le serveur RADIUS.

  1. L’utilisateur initie l’authentification PPP au NAS.

  2. Le NAS demande le nom d’utilisateur et le mot de passe (si le protocole d’authentification par mot de passe ) ou le défi (si le protocole d’authentification par échange de mouchard).

  3. L’utilisateur répond.

  4. Le client RADIUS envoie le nom d’utilisateur et le mot de passe crypté au serveur RADIUS.

  5. Le serveur RADIUS répond par Accept, Reject ou Challenge.
  6. Le client RADIUS agit sur les services et les paramètres de services regroupés avec Accept ou Reject.

Authentification et autorisation

Le serveur RADIUS peut prendre en charge une variété de méthodes pour authentifier un utilisateur. Lorsqu’on lui fournit le nom d’utilisateur et le mot de passe original donnés par l’utilisateur, il peut prendre en charge les mécanismes d’authentification PPP, PAP ou CHAP, UNIX login et autres.

Typiquement, une connexion d’utilisateur consiste en une requête (Access-Request) du NAS au serveur RADIUS et une réponse correspondante (Access-Accept ou Access-Reject) du serveur. Le paquet Access-Request contient le nom d’utilisateur, le mot de passe crypté, l’adresse IP du NAS et le port. Les premiers déploiements de RADIUS ont été effectués en utilisant le port UDP numéro 1645, qui entre en conflit avec le service « datametrics ». En raison de ce conflit, la RFC 2865 a officiellement attribué le numéro de port 1812 pour RADIUS. La plupart des périphériques et applications Cisco prennent en charge l’un ou l’autre de ces numéros de port. Le format de la requête fournit également des informations sur le type de session que l’utilisateur souhaite initier. Par exemple, si la requête est présentée en mode caractère, la déduction est « Service-Type = Exec-User », mais si la requête est présentée en mode paquet PPP, la déduction est « Service Type = Framed User » et « Framed Type = PPP. »

Lorsque le serveur RADIUS reçoit la requête d’accès du NAS, il recherche dans une base de données le nom d’utilisateur indiqué. Si le nom d’utilisateur n’existe pas dans la base de données, soit un profil par défaut est chargé, soit le serveur RADIUS envoie immédiatement un message de rejet d’accès. Ce message Access-Reject peut être accompagné d’un message texte indiquant la raison du refus.

Dans RADIUS, l’authentification et l’autorisation sont couplées. Si le nom d’utilisateur est trouvé et que le mot de passe est correct, le serveur RADIUS renvoie une réponse Access-Accept, comprenant une liste de paires attribut-valeur qui décrivent les paramètres à utiliser pour cette session. Les paramètres typiques comprennent le type de service (shell ou framed), le type de protocole, l’adresse IP à attribuer à l’utilisateur (statique ou dynamique), la liste d’accès à appliquer ou une route statique à installer dans la table de routage du NAS. Les informations de configuration du serveur RADIUS définissent ce qui sera installé sur le NAS. La figure ci-dessous illustre la séquence d’authentification et d’autorisation RADIUS.

Comptabilité

Les fonctions de comptabilité du protocole RADIUS peuvent être utilisées indépendamment de l’authentification ou de l’autorisation RADIUS. Les fonctions de comptabilité RADIUS permettent d’envoyer des données au début et à la fin des sessions, indiquant la quantité de ressources (telles que le temps, les paquets, les octets, etc.) utilisées pendant la session. Un fournisseur de services Internet (ISP) peut utiliser le logiciel de contrôle d’accès et de comptabilité RADIUS pour répondre à des besoins particuliers en matière de sécurité et de facturation. Le port de comptabilité de RADIUS pour la plupart des périphériques Cisco est 1646, mais il peut également être 1813 (en raison du changement de port tel que spécifié dans le RFC 2139 ).

Les transactions entre le client et le serveur RADIUS sont authentifiées par l’utilisation d’un secret partagé, qui n’est jamais envoyé sur le réseau. En outre, les mots de passe des utilisateurs sont envoyés sous forme cryptée entre le client et le serveur RADIUS afin d’éliminer la possibilité qu’une personne fouinant sur un réseau non sécurisé puisse déterminer le mot de passe d’un utilisateur.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *