RADIUS - Guide rapide
Avant de commencer à découvrir Radius, il est important que vous compreniez:
- Qu'est-ce que l'AAA?
- Qu'est-ce que le NAS?
Alors laissez-nous d'abord avoir une idée de base sur ces deux sujets.
Qu'est-ce que l'AAA?
AAA signifie authentification, autorisation et comptabilité.
Authentification
Fait référence à la confirmation qu'un utilisateur qui demande un service est un utilisateur valide.
Réalisé via la présentation d'une identité et de justificatifs.
Des exemples d'informations d'identification incluent les mots de passe, les jetons à usage unique, les certificats numériques et les numéros de téléphone (appelant / appelé).
Autorisation
Se réfère à l'octroi de types spécifiques de service (y compris «aucun service») aux utilisateurs en fonction de leur authentification.
Peut être basé sur des restrictions, par exemple, des restrictions d'heure, des restrictions d'emplacement physique ou des restrictions contre plusieurs connexions par le même utilisateur.
Les exemples de services incluent le filtrage d'adresses IP, l'attribution d'adresses, l'attribution de routes, le chiffrement, les services QoS / différentiels, le contrôle de la bande passante / la gestion du trafic, etc.
Comptabilité
Désigne le suivi de la consommation des ressources réseau par les utilisateurs.
Les informations typiques qui sont collectées dans la comptabilité incluent l'identité de l'utilisateur, la nature du service fourni, le moment où le service a commencé et quand il s'est terminé.
Peut être utilisé pour la gestion, la planification, la facturation, etc.
Le serveur AAA fournit tous les services ci-dessus à ses clients.
Protocoles AAA
Radius est un protocole AAA pour des applications telles que l'accès réseau ou la mobilité IP. Outre Radius, nous avons les protocoles suivants en AAA:
Système de contrôle d'accès du contrôleur d'accès aux terminaux (TACACS)
TACACS est un protocole d'authentification à distance utilisé pour communiquer avec un serveur d'authentification couramment utilisé dans les réseaux Unix. TACACS permet à un serveur d'accès distant de communiquer avec un serveur d'authentification afin de déterminer si l'utilisateur a accès au réseau.
TACACS +
TACACS + fournit un contrôle d'accès pour les routeurs, les serveurs d'accès au réseau et d'autres appareils informatiques en réseau via un ou plusieurs serveurs centralisés. Il utilise TCP et fournit des services distincts d'authentification, d'autorisation et de comptabilité. Cela fonctionne sur le port 49.
DIAMÈTRE
Le diamètre est un remplacement prévu de Radius.
Qu'est-ce que le serveur d'accès réseau?
Le serveur d'accès au réseau (NAS) est un élément de service que les clients composent pour accéder au réseau. Un NAS est un appareil ayant des interfaces à la fois avec le backbone et avec le POTS ou le RNIS, et reçoit les appels des hôtes qui souhaitent accéder au backbone par des services commutés. NAS est situé au point de présence d'un fournisseur Internet pour fournir un accès Internet à ses clients.
Un serveur d'accès au réseau est:
Un point d'accès unique à une ressource distante.
Un serveur d'accès à distance, car il permet l'accès à distance à un réseau.
Un point d'entrée initial vers un réseau.
Une passerelle pour protéger les ressources protégées.
Les exemples comprennent:
Vérification de l'accès Internet à l'aide de l'ID utilisateur et du mot de passe.
VoIP, FoIP et VMoIP nécessitent un numéro de téléphone ou une adresse IP valide.
La carte téléphonique prépayée utilise le numéro de carte prépayée.
La figure suivante montre une architecture de base de Radius.
RADIUS est un protocole permettant de transporter des informations relatives à l'authentification, à l'autorisation et à la configuration entre un serveur d'accès réseau qui souhaite authentifier ses liens et un serveur d'authentification partagé.
RADIUS signifie Remote Authentication Dial In User Service.
RADIUS est un protocole AAA pour des applications telles que l'accès réseau ou la mobilité IP
Cela fonctionne dans les deux situations, local et mobile.
Il utilise les protocoles PAP (Password Authentication Protocol), Challenge Handshake Authentication Protocol (CHAP) ou EAP (Extensible Authentication Protocol) pour authentifier les utilisateurs.
Il regarde dans le fichier texte, les serveurs LDAP, la base de données pour l'authentification.
Après le retour des paramètres des services d'authentification au NAS.
Il notifie quand une session démarre et s'arrête. Ces données sont utilisées à des fins de facturation ou de statistiques.
SNMP est utilisé pour la surveillance à distance.
Il peut être utilisé comme proxy.
Voici un diagramme de réseau simple de rayon:
Voici une liste de toutes les fonctionnalités clés de Radius:
Modèle client / serveur
Le NAS fonctionne comme un client pour le serveur Radius.
Le serveur Radius est chargé d'obtenir les demandes de connexion des utilisateurs, d'authentifier l'utilisateur, puis de renvoyer toutes les informations de configuration nécessaires pour que le client fournisse le service à l'utilisateur.
Un serveur Radius peut agir en tant que client proxy pour d'autres serveurs Radius.
Sécurité Internet
Les transactions entre un client et un serveur sont authentifiées grâce à l'utilisation d'une clé partagée. Cette clé n'est jamais envoyée sur le réseau.
Le mot de passe est crypté avant de l'envoyer sur le réseau.
Mécanismes d'authentification flexibles
Radius prend en charge les protocoles suivants à des fins d'authentification:
Protocal point à point - PPP
Protocole d'authentification par mot de passe - PAP
Challenge Handshake Authentication Protocol - CHAP
Connexion UNIX simple
Protocole extensible
Le rayon est extensible; la plupart des fournisseurs de matériel et de logiciels Radius implémentent leurs propres dialectes.
Le protocole sans état, utilisant UDP, fonctionne sur le port 1812.
Avant que le client ne commence à communiquer avec le serveur Radius, il est nécessaire que la clé secrète soit partagée entre le client et le serveur et le client doit être configuré pour utiliser le serveur Radius pour obtenir le service.
Une fois que le client est configuré correctement, alors:
Le client commence par Access-Request.
Le serveur envoie soit Access-Accept, Access-Reject, ou Access-Challenge.
Access-Accept conserve tous les attributs requis pour fournir un service à l'utilisateur.
Les codes de rayon (décimal) sont attribués comme suit:
- 1 demande d'accès
- 2 Accès-Accepter
- 3 Accès-Rejeter
- 4 Demande de comptabilité
- 5 Comptabilité-Réponse
- 11 Access-Challenge
- 12 Status-Server (expérimental)
- 13 Status-Client (expérimental)
- 255 Réservé
- Pas de concept Keep Alive - Bon ou mauvais ??
Les codes 4 et 5 sont liés à la fonctionnalité de comptabilité Radius. Les codes 12 et 13 sont réservés pour une utilisation éventuelle.
Le format de paquet de Radius est comme indiqué ci-dessous:
Code:Il mesure 1 octet (1 octet) et identifie divers types de paquets. Normalement, 1 octet signifie 1 octet.
Identifier: C'est encore une fois long de 1 octet et aide à faire correspondre les réponses avec les demandes.
Length:Il mesure 2 octets et spécifie la longueur du paquet, y compris le code, l'identifiant, la longueur et l'authentificateur. (Le paquet minimum est de 20 octets et le maximum est de 4096 octets).
Authenticator: C'est 16 octets de long et rempli en cas de certaines demandes et réponses.
List of Attributes: Il existe une liste de plus de 63 attributs et un attribut Radius aura également un format défini qui est décrit dans le chapitre suivant.
Un attribut Radius se compose des trois parties suivantes:
Type:1 octet de long, identifie divers types d'attributs. Il s'agit d'un code d'attribut répertorié ci-dessous.
Length: 1 octet de long, longueur de l'attribut, type compris.
Value: 0 octets ou plus, contient des informations spécifiques à l'attribut.
Liste des attributs RADIUS
Code | Les attributs |
---|---|
1 | Nom d'utilisateur |
2 | Mot de passe de l'utilisateur |
3 | Mot de passe CHAP |
4 | Adresse IP NAS |
5 | NAS-Port |
6 | Type de service |
sept | Protocole encadré |
8 | Adresse IP encadrée |
9 | Masque de réseau IP encadré |
dix | Routage encadré |
11 | ID de filtre |
12 | Encadré-MTU |
13 | Compression encadrée |
14 | Connexion-IP-hôte |
15 | Service de connexion |
16 | Connexion-TCP-Port |
17 | (Non attribué) |
18 | Message de réponse |
19 | Numéro de rappel |
20 | ID de rappel |
21 | (Non attribué) |
22 | Route encadrée |
23 | Réseau IPX encadré |
24 | Etat |
25 | Classe |
26 | Spécifique au fournisseur |
27 | Expiration de la session |
28 | Délai d'inactivité |
29 | Résiliation-Action |
30 | Identifiant de la station appelée |
31 | Identifiant du poste d'appel |
32 | Identifiant NAS |
33 | État proxy |
34 | Service de connexion LAT |
35 | Connexion-LAT-Nœud 3 |
36 | Connexion-LAT-Group |
37 | Framed-AppleTalk-Link |
38 | Réseau AppleTalk encadré |
39 | Zone AppleTalk encadrée |
40-59 | (réservé à la comptabilité) |
60 | Défi CHAP |
61 | Type de port NAS |
62 | Limite de port |
63 | Connexion-LAT-Port |
Exemple de demande de rayon
Jetons un coup d'œil à un exemple de requête Radius:
Le NAS à 192.168.1.16 envoie un paquet UDP de demande d'accès au serveur RADIUS pour un utilisateur nommé Nemo se connectant sur le port 3 avec le mot de passe "arctangent".
Le Request Authenticator est un nombre aléatoire de 16 octets généré par le NAS.
Le mot de passe utilisateur est de 16 octets complétés à la fin avec des valeurs nulles, XORed avec D5 (Shared Secret | Request Authenticator).
01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb 98 f4 22 7a 01 06 6e 65 6d 6f 02 12 0d être 70 8d 93 d4 13 ce 31 96 e4 3f 78 2a 0a ee 04 06 c0 a8 01 10 05 06 00 00 00 03
1 Code = Demande d'accès (1)
1 identifiant = 0
2 Longueur = 56
16 Demande d'authentificateur
Liste d'attributs
6 Nom d'utilisateur = "Nemo"
18 Mot de passe utilisateur
6 Adresse IP NAS = 192.168.1.16
6 NAS-Port = 3
Exemple de réponse de rayon
Voici un exemple de paquets de réponse:
Le serveur Radius authentifie Nemo et envoie un paquet UDP d'acceptation d'accès au NAS en lui indiquant de Telnet Nemo pour héberger 192.168.1.3
L'authentificateur de réponse est une somme de contrôle MD5 de 16 octets du code (2), id (0), longueur (38), l'authentificateur de demande d'en haut, les attributs de cette réponse et le secret partagé.
02 00 00 26 86 fe 22 0e 76 24 ba 2a 10 05 f6 bf 9b 55 e0 b2 06 06 00 00 00 01 0f 06 00 00 00 00 0e 06 c0 a8 01 03
1 Code = Accepter l'accès (2)
1 identifiant = 0 (identique à celui de la demande d'accès)
2 Longueur = 38
16 Authentificateur de réponse
Liste d'attributs:
6 Type de service (6) = Connexion (1)
6 Service de connexion (15) = Telnet (0)
6 Connexion-IP-hôte (14) = 192.168.1.3
Le diamètre est un remplacement prévu de RADIUS. C'est un protocole AAA pour des applications telles que l'accès au réseau et la mobilité IP. Vous trouverez ci-dessous quelques points à connaître sur le diamètre:
Il est destiné à fonctionner dans des situations AAA locales et itinérantes.
Le diamètre est juste le double du protocole précédent Radius.
Il utilise TCP ou SCTP et non UDP.
Il utilise la sécurité au niveau du transport (IPSEC ou TLS).
Il a un identifiant de 32 bits au lieu de 8 bits.
Il prend en charge le mode sans état ainsi que le mode avec état.
Il prend en charge l'accusé de réception de la couche application, définit le basculement.
Il offre une meilleure prise en charge de l'itinérance.
Il utilise des AVP.
Diamètre permet de définir de nouvelles commandes et attributs. Il est facile d'étendre.
Quelle est la prochaine?
Vous avez maintenant une compréhension de base du rayon et du diamètre. Pour acquérir plus de connaissances sur ces protocoles, vous devez passer par divers RFC et autres ressources mentionnées dans la section Ressources.