Filtrage d'attributs des requêtes proxifiées sur le RADIUS d'authentificationIl peut s'avérer nécessaire de filtrer certains attributs, reçus par le serveur RADIUS distant, des nomades lors de leur connexion dans votre établissement. C'est le cas notamment des attributs concernant les VLAN.
Dans le cadre du projet eduroam.fr, le proxy national applique un filtre et ne laisse passer que les attributs suivants :
Pour information, voici le principe et les détails utilisés : Le but est de se protéger des attributs qui non pas la même signification chez vous que dans l'établissement de rattachement du visiteur. En effet, imaginez ce qui se passerait si après authentification d'un nomade chez vous, il se voit connecté dans votre VLAN serveur. Dans le cas de freeRADIUS, pour filtrer ces attributs envoyés aux bornes, nous vous conseillons l'utilisation du module de filtrage d'attribut (Attibute Filtering Module) dans la phase/étape post_proxy. Ce filtrage n'aura d'effet que sur les requêtes proxifiées et non pas sur vos authentifications locales. Voici les étapes de cette mise en place : Configuration du module Dans la section module du fichier radius.conf, renseigner le nom du module et le nom du fichier contenant le filtre :
modules {
...
attr_filter {
attrsfile = ${confdir}/attrs
}
...
}
Activation du module
Ce module doit être appelé AVANT le module realm dans la section authorize du fichier radius.conf :
authorize {
preprocess
attr_filter
realm
files
}
Appel de la fonction de filtrage
Appeler la fonction de filtrage dans la section post_proxy du fichier radius.conf :
post-proxy {
attr_filter
eap
}
Syntaxe du filtre
Une fois ceci mis en place, il reste à écrire les règles du filtrage. Pour ceci, il faut en comprendre le fonctionnement.
Dans le cadre d'eduroam, nous avons cherché à garder le minimum d'attribut nécessaire transmis à une borne, n'utilisant pas de VLAN, pour valider la connexion d'un client. Ce qui nous préoccupe notamment, c'est de bloquer les attributs suivants :
Tunnel-Type:0
Tunnel-Medium-Type:0
Tunnel-Private-Group-Id:0
Voici le contenu du fichier ${confdir}/attrs :
DEFAULT EAP-Message =* ANY, State =* ANY, MS-MPPE-Recv-Key =* ANY, MS-MPPE-Send-Key =* ANYFiltre minimum + affectation de VLAN Vous pouvez utiliser le même principe de filtrage, puis ajouter vos propres valeurs d'attributs (notamment affectation de VLAN) dans la section post_proxy, et ceci avec la fonction attr_rewrite. Plus d'informations concernant cette fonction de freeRADIUS dans le fichier de documentation : rlm_attr_filter |