En stage afin d'obtenir mon DUT Réseaux et Télécoms, je me suis vu confier la mission de déployer un serveur freeradius pouvant se manager via une interface web et tournant sous Debian. A ma grande surprise je n'ai pas trouvé de tutoriel récent et donc fonctionnant avec Freeradius 3.0 et Debian 9.4.0. Ayant finalement réussi à configurer mon un Daloradius avec mon serveur Freeradius sous debian 9.4.0 je rédige ce tutoriel.
Mettre à jours les paquets :
apt update
Installer Apache 2 :
apt install apache2
Afficher le statut de Apache 2 pour vérifier qu'il fonctionne.
systemctl status apache2
Installer MariaDB :
apt install mariadb-server
Démarrer et rendre fonctionnel MariaDB :
systemctl start mariadb systemctl enable mariadb
On contrôle ensuite que MariaDB est bien actif :
systemctl status mariadb systemctl is-enabled mariadb.service
Configuration de la base de données :
mysql_secure_installation
Après cette commande répondre “oui” à toutes les questions.
Ensuite :
mysql -u root -p -e " CREATE DATABASE radius" mysql -u root -p -e "show databases" mysql -u root -p
Une fois connecté à la base de données effectuer les commandes suivantes :
MariaDB [(none)]> GRANT ALL ON radius.* TO radius@localhost IDENTIFIED BY "radiuspassword"; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> quit;
apt install php php-mysqlnd php-gd php-mcrypt php-mbstring php-xml php-pear pear install DB
On contrôle le bon fonctionnement de l'installation :
php -v
apt install freeradius freeradius-utils freeradius-mysql
Démarrer et rendre fonctionnel Freeradius :
systemctl start freeradius systemctl enable freeradius
Afficher le statut de Freeradius :
systemctl status freeradius
Ici nous allons d'abord tuer le démon radius, pour éviter un conflit de port, pour ensuiter lancer freeradius en mode debug et vérifier que tout fonctionne :
pkill radius freeradius -X
mysql -u root -p radius < /etc/freeradius/3.0/mods-config/sql/main/mysql/schema.sql ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/
Modification du fichier de configuration de freeradius :
nano /etc/freeradius/3.0//mods-available/sql
Trouver et modifier les lignes comme ci-dessous, ne pas oublier de décommenter si nécessaire :
driver = "rlm_sql_mysql" dialect = "mysql" server = "localhost" port = 3306 login = "radius" password = "radiuspassword" radius_db = "radius" read_clients = yes client_table = “nas”
Changer le groupe du fichier sql :
chgrp -h freerad /etc/freeradius/3.0/mods-enabled/sql
wget https://github.com/lirantal/daloradius/archive/master.zip apt install unzip unzip master.zip rm master.zip mv daloradius-master/ daloradius
Importation des tables mysql de daloradius :
cd daloradius mysql -u root -p radius < contrib/db/fr2-mysql-daloradius-and-freeradius.sql mysql -u root -p radius < contrib/db/mysql-daloradius.sql
Remonter d'un répertoire et endre Daloradius accessible depuis une interface web :
cd .. mv daloradius /var/www/html/
Mofification des droits du fichier de configuration de Daloradius :
chmod 664 /var/www/html/daloradius/library/daloradius.conf.php
Mofification du fichier de configuration de Daloradius :
nano /var/www/html/daloradius/library/daloradius.conf.php
Modifier les lignes du fichier de configuration :
$configValues['CONFIG_DB_ENGINE'] = 'mysqli'; $configValues['CONFIG_DB_HOST'] = 'localhost'; $configValues['CONFIG_DB_PORT'] = '3306'; $configValues['CONFIG_DB_USER'] = 'radius'; $configValues['CONFIG_DB_PASS'] = 'radiuspassword'; $configValues['CONFIG_DB_NAME'] = 'radius';
Redémarrer tous les services :
systemctl restart freeradius systemctl restart mariadb systemctl restart apache2
Connectez-vous via un navigateur web :
http://ip-address-du-serveur/daloradius/login.php
Les login par défault sont :
Username: administrator Password: radius