Authentification Wi-Fi freeradius

Mise en place de l'authentification Wi-Fi par identifiants du réseau SambaÉdu 4

Freeradius, pourquoi faire ?

Initialement, les réseaux Wi-Fi dans les EPLE sont mis en place avec différents SSID, et une clef WPA2 pour chacun d'eux.

Le problème d'un réseau en wifi avec clef WPA2 (déployée par mdm ou autre) est qu'une fuite de la clef est possible (il est simple pour un utilisateur Windows sans droits particuliers de récupérer SSID et clef avec quelques lignes de commandes facilement trouvables sur le net), et qu'une fois cette information connue par les utilisateurs, ils peuvent utiliser des appareils personnels donc non autorisés. A ce moment là, il n'est plus possible d'identifier les connexions avec seulement l'adresse MAC de l'appareil.

On se propose ici d'utiliser une méthode d'authentification utilisant les identifiants du réseau pédagogique, ainsi, toute connexion en wi-fi est reliée à un utilisateur qui peut donc être retrouvé en cas de problème.

image01.png

Le serveur se4fs est doté d'un module sambaedu-freeradius optionnel. Ce module (basé sur le paquet freeradius) va permettre une communication entre le contrôleur wi-fi et l'annuaire du se4. Il sera donc possible de se connecter au wifi avec ses identifiants du réseau pédagogique et non plus avec un système de clef WPA2. Il sera possible de restreindre l'accès à des groupes AD spécifiques.

Le principe de fonctionnement est simple:

Lorsqu'un usager veut se connecter au wifi avec ses identifiants, Les bornes Wi-Fi vont vérifier auprès du serveur radius si le login/mdp est correct, et si cet utilisateur a le droit de se connecter. Si ce n'est pas le cas, la connexion sera refusée.

image02.png

Les bornes et le serveur freeradius partagent un mot de passe appelé "secret" qui devra donc être indiqué sur chaque périphérique ou sur le contrôleur virtuel Wi-Fi s'il existe.

Vous devez avoir l'accord de votre chef d'établissement pour procéder à cette modification. Il est aussi plus que conseillé d'avertir la collectivité qui a mise en place le réseau Wi-Fi des changements qui y ont été faits.

Exemple du Wi-FI déployé par les collectivités

Dans la suite , on considère un ensemble de bornes Wi-Fi reliées sur un vlan dédié avec un contrôleur virtuel Wi-Fi (c'est le cas dans les lycées d'IDF).

image03.png

Les bornes sont donc ici dans un sous-réseau en 172.20.251.0/24

Si les bornes étaient simplement mises sur le réseau pédagogique sans routage intervlan , alors les bornes seraient dans un réseau en 172.20.0.0./16 (à adapter évidemment à votre réseau).

Côté serveur se4fs

On installe le paquet sambaedu-freeradius

apt update

apt install sambaedu-freeradius

Il faut indiquer le réseau des bornes Wi-Fi

image04.png

Puis, il va falloir choisir un "secret" qui sera partagé entre le se4fs qui va servir de Radius, et les bornes Wi-Fi (ou le contrôleur virtuel) image05.png

Ces informations seront stockées dans le fichier /etc/sambaedu/sambaedu.conf.d/radius.conf

image06.png

On peut modifier secret et réseau des bornes en éditant le fichier /etc/sambaedu/sambaedu.conf.d/radius.conf puis en réinstallant le paquet pour que les modifications soient prises en compte*

apt install --reinstall sambaedu-freeradius

Restriction de l'accès à un groupe

Par défaut, le serveur Radius du SE4 va autoriser tout compte du domaine PREVERT (à adapter) à se connecter. Si on veut restreindre cet accès à un groupe, alors il va falloir modifier un fichier de configuration

nano /etc/freeradius/3.0/mods-available/mschap

ntlm_auth = "/usr/bin/ntlm_auth --request-nt-key --username=%{mschap:User-Name:-None} --domain=%{%{mschap:NT-Domain}:-PREVERT} --challenge=%{mschap:Challenge:-00} --nt-response=%{mschap:NT-Response:-00} --require-membership-of=PREVERT\wifi"

Ici, l'accès est retreint à un groupe appelé Wifi, mais on peut y mettre n'importe quel groupe de l'annuaire comme "Profs".

Côté contrôleur Wi-fi

Ici, on utilise un contrôleur Wi-Fi Aruba, mais le principe sera le même sur d'autres solutions.

On va commencer à ajouter dans la rubrique sécurité le serveur d'authentification du SE4

image07.png

On indique seulement l'ip du se4fs(1) et le secret partagé(2), tout le reste ne doit pas être modifié.

image07b.png

On valide

image08.png

Prise en compte du serveur radius pour un SSID dans le contrôleur virtuel

On va aller sur la console de gestion du cluster WI-FI , se rendre dans la gestion des réseaux SSID

image09.png

et cliquer sur le "crayon" pour éditer le réseau existant (ici le SSID Professeurs)

Avancer sans rien modifier jusqu'à la partie "sécurité".

Une fois dessus, il suffit d'indiquer les informations comme sur l'image suivante

image10.png

Le protocole WPA ENTREPRISE est le mode d’authentification type RADIUS. On ajoute le serveur radius choisi (le radius_se4fs ou un autre si vous avez plusieurs serveurs précédent ).

Ne pas modifier les autres paramètres sauf si vous savez ce que vous faites.

Dans le cas de bornes Wi-Fi mises sans contrôleur virtuel, il faudra indiquer dans l'interface de chaque borne :


Sécurité Wireless

Version: WPA2

ENCRYPTION: Automatic

Radius Server IP: indiquer l'ip du se4fs

Port: 1812

Radius Password: celui indiqué lors de l'installation du paquet


Côté client 

Sur un poste en Windows, une fenêtre demandera login et mot de passe. Aucun réglage supplémentaire n'est à faire (si ce n'est le paramétrage du Proxy probablement à faire de façon manuelle sur Androïd.

Methode d'authentification EAP : PEAP

Authentification phase 2 : MSCHAPV2

Certificat CA : Ne pas valider

Identité : votre login

Proxy: Manuel

Sur un laptop Linux (ici Ubuntu KDE)

image11.png

image12.png

Plusieurs freeradius ?

Il est possible d'installer plusieurs serveurs freeradius sur des petites VM ( en mettant un client Linux sans interface, et en modifiants quelques fichiers comme peut le faire le paquet sambaedu-freeradius) et mettre des restrictions de groupes sur chaque. Ainsi, seul un prof pourra aller sur le SSID Professeur, et seul un élève pourra aller sur le SSID Eleves. Il sera peut-être préférable de se lancer dans la mise en place de PacketFence.

Packetfence, va permettre une gestion bien plus poussée avec des vlans dynamiques.Un utilisateur/machine donné va se retrouver dans un vlan associé, plus besoin de SSID particulier. Le filtrage pourra alors se faire par groupe, les connexions pourront se faire par compte machines et donc permettre aussi une gestion poussée des connexions filaires. Filtrage par type de périphérique (smartphone,tablette,laptop...).

Plus d'informations ici : https://gitlab.sambaedu.org/sambaedu/sambaedu-packetfence