Vous êtes sur la page 1sur 4
Configuration du serveur freeradius pour une infrastructure WIFI s'inscrivant dans Eduroam Nous allons donner

Configuration du serveur freeradius pour une infrastructure WIFI s'inscrivant dans Eduroam

Nous allons donner certaines parties de différents fichiers de configuration du serveur

radius :

eap.conf, radiusd.conf, proxy.conf , client.conf , users , attrs.

Notre serveur fait de l'eap-ttls , pour l'authentification 802.1x , et du wep 128 bits avec rotation de clés pour le chiffrement de la partie radio.

L'ensemble des utilisateurs authentifiés par le Siris se trouvent dans un annuaire ldap avec mot de passe encrypté « crypt unix. »

Configuration eap : le fichier eap.conf

le default_eap_type est ttls

il faut configurer la section tls

tls {

private_key_file =/etc/raddb/certs/demoCA/%2A.siris.sorbonne.fr.key

certificate_file = /etc/raddb/certs/demoCA/%2A.siris.sorbonne.fr.crt

CA_file = /etc/raddb/certs/demoCA/cachain.txt

dh_file = ${raddbdir}/certs/dh

random_file = ${raddbdir}/certs/random

fragment_size = 1024

include_length = yes

}

puis la section ttls comme suit :

ttls {

copy_request_to_tunnel = yes

use_tunneled_reply = yes

}

si l'ont veut permettre des authentifications peap ou leap il suffit de décommenter les sections concernées.

Configuration radius , le fichier radiusd.conf

Il faut activer les différents modules que l'on souhaite utiliser comme par exemple le module proxy :

proxy_requests = yes $INCLUDE ${confdir}/proxy.conf

Il est possible de faire plusieurs déclarations ldap , chacune correspondant soit à un annuaire différent, soit à des personnes différentes dans un même annuaire, ce qui est notre cas ( on filtre par un attribut de groupe dans l'annuaire ).

ldap siris { server = "xxx.xxx.xxx.xxx" identity = "cn=Manager" password = XXXXX basedn = "dc=sorbonne,dc=fr" filter = "(uid=%{Stripped-User-Name:-%{User-Name}})" base_filter = "(o=siris)" dictionary_mapping = ${raddbdir}/ldap.attrmap ldap_connections_number = 5 password_header = "{crypt}" password_attribute = userPassword groupname_attribute = cn groupmembership_filter =

"(&(objectclass=posixGroup)(uniquemember=%uid,ou=People,dc=sorbonne,dc=fr}))

"

groupmembership_attribute = o timeout = 24 timelimit = 23 net_timeout = 21

}

et pour chaque section ldap on a dans la section authorize :

Autz-Type siris { siris

}

On active également un maximum de modules de logs pour conserver le plus de traces possibles.

On active les bonnes sections dans authenticate et authorize Seule astuce :

Auth-Type LDAP { pap

}

afin de permettre d'aller chercher un mot de passe encrypté dans un annauire.

Le fichier proxy.conf

On y déclare les différents realms , ceux que l'on sert soit même et ceux pour lesquels on va relayer les requêtes.

Il suffit de s'inspirer des sections données en exemple , et ne pas oublier l'option nostrip pour le realm DEFAULT qui renvoie vers les proxy national.

Le fichier client.conf

c'est là qu'on déclare les machines autorisées à communiquer avec notre serveur radius.

S'inspirer des sections d'exemples.

Le fichier Users C'est là qu'on va déclarer les utilisateurs et les options par défaut pour un groupe d'utilisateurs

On commence par mettre cette directive en tête de fichier ( recommandation eduroam )

DEFAULT

User-Name := `%{User-Name}`, Fall-Through = Yes ,

Voilà la déclaration d'un realm que nous servons

DEFAULT

:= paris4,Auth-Type := pap,Freeradius-Proxied-To == 127.0.0.1 Service-Type = Framed-User, Session-Timeout = 12000, Tunnel-Type:1 = 13, Tunnel-Medium-Type:1 = 6, Tunnel-Private-Group-ID:1 = 4,

Realm == "paris4.sorbonne.fr" ,LDAP-Group == "paris4",Autz-Type

Voilà la déclaration d'un realm que nous proxifions :

DEFAULT

Realm == "enc.sorbonne.fr" Service-Type = Framed-User, Session-Timeout = 12000, Tunnel-Type = VLAN, Tunnel-Medium-Type = 6, Tunnel-Private-Group-ID = 4,

le fichier attrs , qui sert à filtrer les attributs dans le cadre d'un proxy

voila la seule déclaration qui y est effectué :

DEFAULT Service-Type == Login-User, Framed-MTU >= 576, Framed-Filter-ID =* ANY, Reply-Message =* ANY, Proxy-State =* ANY, Port-Limit <= 2, MS-MPPE-Recv-Key =* ANY, MS-MPPE-Send-Key =* ANY, User-Name =* ANY, EAP-Message =* ANY, Message-Authenticator =* ANY, Called-Station-Id =* ANY, Calling-Station-Id =* ANY, NAS-Port-Type =* ANY, NAS-Port =* ANY, State =* ANY, NAS-IP-Address =* ANY, NAS-Identifier =* ANY, Proxy-State =* ANY