Documentation Ubuntu/Debian

Transcription

Documentation Ubuntu/Debian
Documentation Ubuntu/Debian – FreeRADIUS et MySQL
Source de la documentation : http: // techtots. blogspot. fr/ 2010/ 01/ installing-and-configuring-freeRADIUS. html
et http: // www. unix-experience. fr/ 2012/ freeRADIUS-serveur-RADIUS-opensource/
Procédure validée sur Debian 7 et Ubuntu 12.04
1
Présentation
RADIUS1 est un protocole client-serveur permettant de centraliser des données d’authentification.
FreeRADIUS est un serveur RADIUS libre permettant de s’authentifier. Le protocole RADIUS permet de se connecter via un échange
de paquets UDP, généralement sur le port 1812. RADIUS intègre également un module d’accounting, permettant par exemple de la
facturation. RADIUS permet de s’authentifier via diverses moyens comme une authentification en clair, par adresse MAC, via base
MySQL/PostgreSQL, protocole MSCHAPv1 et MSCHAPv2 ou encore annuaire LDAP.
2
Installation
Pour installer RADIUS et ses dépendances, tapez :
apt−g e t i n s t a l l f r e e r a d i u s f r e e r a d i u s −m y s q l mysql−s e r v e r
Lors de l’installation de MySQL Server, l’assistant vous demandera le mot de passe root de MySQL. Si cette étape à échoué, entrez :
dpkg−r e c o n f i g u r e mysql−s e r v e r −5.5
3
Configuration de base de FreeRADIUS
Tout d’abord, modifions le mot de passe de FreeRADIUS. Modifiez le fichier /etc/freeradius/clients.conf et modifiez la ligne suivante
dans le secteur localhost :
secret
= ObelixLivreurDeMenhir
Ajoutons maintenant un utilisateur de test dans le fichier /etc/freeradius/users :
antoine
C l e a r t e x t −Password := " L u k e J e S u i s T o n P e r e "
Enregistrez et entrez la commande suivante pour (re)démarrer le service :
/ e t c / i n i t . d/ f r e e r a d i u s r e s t a r t
Puis entrez la commande suivante pour tester FreeRADIUS :
r a d t e s t a n t o i n e L u k e J e S u i s T o n P e r e l o c a l h o s t 1812 O b e l i x L i v r e u r D e M e n h i r
Vous devriez obtenir le résultat suivant :
S e n d i n g A c c e s s −R e q u e s t o f i d 149 t o 1 2 7 . 0 . 0 . 1 p o r t 1812
User−Name = " a n t o i n e "
User−Password = " L u k e J e S u i s T o n P e r e "
NAS−IP−A d d r e s s = X . X . X . X
NAS−P o r t = 1812
r a d _ r e c v : A c c e s s −A c c e p t p a c k e t from h o s t 1 2 7 . 0 . 0 . 1 p o r t 1 8 1 2 , i d =149 , l e n g t h =20
Une fois ce test effectué et fonctionnel, commentez ou supprimez la ligne que nous avons ajouté dans le fichier /etc/freeradius/users.
1 Remote Authentication Dial-In User Service
1
4
Configuration de MySQL et de FreeRADIUS pour MySQL
Connectez-vous à MySQL :
m y s q l −u r o o t −p
Entrez votre mot de passe défini lors de l’installation puis créez la base de donnée pour RADIUS :
CREATE DATABASE r a d i u s ;
GRANT ALL ON r a d i u s . ∗ TO r a d i u s @ l o c a l h o s t IDENTIFIED BY " r a d p a s s " ;
Puis déconnectez-vous en appuyant sur Ctrl et D . Entrez la commande suivante afin d’importer le modèle RADIUS dans la base
de données :
m y s q l −u r o o t −p r a d i u s < / e t c / f r e e r a d i u s / s q l / m y s q l / schema . s q l
Modifiez le fichier /etc/freeradius/sql.conf afin d’adapter la configuration de RADIUS à celle de MySQL et modifiez les entrées
suivantes :
server = " localhost "
login = " radius "
password = " radpass "
radius_db = " r a d i u s "
Activez la configuration MySQL dans RADIUS en décommentant la ligne suivante dans le fichier /etc/freeradius/radiusd.conf :
$INCLUDE s q l . c o n f
Puis décommentez les lignes "sql" dans le fichier /etc/freeradius/sites-available/default :
authorize {
...
sql
...
}
accounting {
...
sql
...
}
session {
...
sql
...
}
p o s t −a u t h {
...
sql
...
}
Ajoutez enfin un utilisateur à la base de données. Connectez-vous à la base de données et entrez :
INSERT INTO ’ r a d i u s ’ . ’ r a d c h e c k ’ ( ’ i d ’ , ’ username ’ , ’ a t t r i b u t e ’ , ’ op ’ , ’ v a l u e ’ )
VALUES (NULL , ’ a n t o i n e ’ , ’MD5−Password ’ , ’ := ’ , MD5( ’ L u k e J e S u i s T o n P e r e ’ ) ) ;
Redémarrez le serveur RADIUS et testez de nouveau. Vérifiez en entrant cette commande dans l’interpréteur de MySQL :
SELECT ∗ FROM r a d p o s t a u t h ;
Auteur : Antoine Pernot
2

Documents pareils