Remote Authentication Dial-In User Service (RADIUS)

Généralités

Le RADIUS est un service permettant de faire une authentification de machines ou personnes. Il permet au ResEl l'authentification des administrateurs sur les switchs cisco, mais également l'authentification des utilisateurs sur le Wi-Fi.

Le service utilisé est FreeRADIUS et il est hébergé à Brest sur les machines :

  • beowulf pour les utilisateurs (utilise le LDAP de Brest)
  • rescuerad pour les utilisateurs (utilise le LDAP de Rennes)

  • Beaune pour les switchs

Il est hébergé à Rennes sur :

Configuration

La configuration des clients (et des codes associés) est située dans le fichier /etc/freeradius/clients.conf.

Ces codes sont ceux utilisés par le matériel réseau pour s'authentifier auprès du serveur radius. Dans le cas des cisco, cette configuration se retrouve au niveau des lignes

ip radius source-interface...
et
radius-server...

Proxy RADIUS

Dans le cadre d'un éventuel partenariat, les utilisateurs externes pourraient utiliser leur identifiants distants pour se loguer localement (à la "eduroam").

Ce service est utile pour la connexion au Wi-Fi Federez.

Exemple pour un utilisateur du ResEl en roaming chez un partenaire

Dans cet exemple, le partenaire fictif serait '''unet.fr'''

  • John Doe (utilisateur jdoe au ResEl) veut se connecter chez UNet. Pour cela, il utilise le nom d'utilisateur suivant: jdoe@resel.fr et son mot de passe habituel.
  • Le serveur radius de UNet comprend que la requête concerne le ResEl et redirige le dialoque vers notre pool de serveurs RADIUS.
  • Notre pool de serveurs RADIUS prend une décision, qui est ensuite appliquée par le point d'accès auquel John Doe s'est connecté.

Exemple pour un utilisateur d'un partenaire en roaming chez nous

Dans cet exemple, le partenaire fictif serait '''unet.fr'''

  • Emma Michu (utilisatrice emichu chez UNet) veut se connecter chez nous. Pour cela, elle utilise le nom d'utilisateur suivant: emichu@unet.fr et son mot de passe habituel.
  • Le serveur radius comprend que la requête concerne UNet et redirige le dialoque vers leur pool de serveurs RADIUS.
  • Le pool de serveurs RADIUS d'UNet prend une décision, qui est ensuite appliquée par le point d'accès auquel Emma Michu s'est connectée.

Radmin : Outil de debug radius

Radmin est un outil qui permet de contrôler le serveur radius la manPage est dispo ici : http://freeradius.org/radiusd/man/radmin.html

faire une trace pour un utilisateur

  • créer un fichier vide avec les droits 777 dans le répertoire /var/log/freeradius ce fichier va contenir l'ensemble des messages radius que l'on souhaite capturer
23:27 srecher@beowulf ~ % sudo touch /var/log/freeradius/radmin_20141102_voileux.log
23:28 srecher@beowulf ~ % sudo chmod 777 /var/log/freeradius/radmin_20141102_voileux.log
  • lancer radmin

    23:24 srecher@beowulf ~ % sudo radmin
    radmin 2.1.12 - FreeRADIUS Server administration tool.
    Copyright (C) 2008-2011 The FreeRADIUS server project and contributors.
    There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
    PARTICULAR PURPOSE.
    You may redistribute copies of FreeRADIUS under the terms of the
    GNU General Public License v2.
    radmin>
    • indiquer le niveau de debug voulu (0 le plus élevé)
      radmin> debug level 0
  • indiquer le fichier de log précédemment créé

    radmin> debug file radmin_20140211_voileux.log 
  • indiquer le filtre

    23:28 srecher@beowulf ~ % sudo radmin -e "debug condition '(User-Name == voileux)'" 
    a la place de voileux mettre le login de l'utilisateur

ou sinon mettre condition * si vous voulez voir tout les messages radius

  • lire le fichier de log qui contient la trace réaliser

Arrêter le debug

23:28 srecher@beowulf ~ % sudo radmin -e "debug condition" 

voir les infos de debug

radmin> show debug file

radmin> show debug condition

radmin> show debug level

TODO (rédacteur)

  • Détailler un peu le rôle de chaque serveur
  • Versionner la conf et mettre un lien ici
  • Expliquer un peu la conf
  • Vérifier que les infos de proxy radius sont toujours exactes