## Étape 1 :Installer le serveur Freeradius
Sur RHEL 8 :
```
sudo yum install freeradius freeradius-utils -y
```
Sur RHEL 7 et CentOS :
```
sudo yum install freeradius freeradius-utils -y
sudo yum install freeradius-postgresql -y
```
Étape 2 :Configurer la base de données PostgreSQL
Sur CentOS/RHEL 7 :
Avant de commencer la configuration, assurez-vous que le serveur de base de données PostgreSQL est correctement installé et initialisé. Voici comment procéder :
```
sudo miam installez le serveur postgresql
```
Si vous avez déjà configuré la base de données, vous pouvez ignorer cette étape.
Configurer l'utilisateur PostgreSQL et accorder des privilèges
Créez un nouvel utilisateur dans PostgreSQL appelé « radius ».
```
sudo -u postgres bash
créer un rayon utilisateur
```
Ensuite, attribuez les autorisations appropriées à l'utilisateur nouvellement créé appelé « rayon ».
```
psql -U postgres
MODIFIER le rayon de l'UTILISATEUR AVEC LE MOT DE PASSE « rayon » ;
```
Ensuite, créez la base de données qui sera utilisée par FreeRADIUS.
```
CRÉER un rayon de BASE DE DONNÉES ;
ACCORDER TOUS LES PRIVILÈGES SUR LE rayon DE LA BASE DE DONNÉES À radius ;
\q
```
Mettre à jour la configuration de la base de données
Modifiez le fichier situé dans "/etc/freeradius/sql/main/authorize".
```
sudo vi /etc/freeradius/sql/main/authorize
```
Localisez les lignes qui commencent par "driver =". Remplacez-les par les lignes suivantes :
```
pilote =pgsql
connectString =host=localhost port=5432 dbname=radius user=radius password=radius
```
Sur RHEL 8 :
Cette dernière version de FreeRADIUS est configurée pour utiliser SQLite par défaut. Par conséquent, suivez les étapes décrites ci-dessous pour le configurer afin qu'il utilise PostgreSQL à la place.
Tout d'abord, activez la prise en charge de PostgreSQL dans le fichier de configuration.
```
sudo vi /etc/raddb/mods-enabled/sql
```
Localisez la ligne suivante :
```
sql {
```
et supprimez le commentaire (le cas échéant) et remplacez-le par :
```
sql {
pilote =pgsql
}
```
Ensuite, remplacez le pilote par défaut pour l'authentification et la comptabilité par le pilote PostgreSQL. Remplacez les lignes suivantes :
```
auth {
conducteur =mannequin
}
comptabilité {
conducteur =mannequin
}
```
Avec ce qui suit :
```
auth {
pilote =pgsql
}
comptabilité {
pilote =pgsql
}
```
Dans la section nommée « sql », mettez à jour les paramètres en spécifiant le nom d'hôte, le port et les informations d'identification de la base de données.
```
[sql]
hôte =hôte local
port =5432
utilisateur =rayon
mot de passe =rayon
base de données =rayon
```
Enfin, remplacez le pilote par défaut dans la stratégie « autoriser » par PostgreSQL. Modifiez la ligne suivante :
```
sql {
conducteur =mannequin
}
```
Aux éléments suivants :
```
sql {
pilote =pgsql
}
```
Si vous y êtes invité, redémarrez Freeradius.
```
sudo systemctl redémarrer freeradius
```
Étape 3 :Configurer le serveur Freeradius
Le fichier de configuration FreeRADIUS par défaut est généralement suffisant. Cependant, il est recommandé de vérifier et d'effectuer les ajustements nécessaires en fonction de vos besoins spécifiques.
Étape 4 :Activer et démarrer Freeradius
Exécutez les commandes suivantes pour activer et démarrer le service Freeradius.
Sur RHEL 8 :
```
sudo systemctl activer freeradius
sudo systemctl démarrer freeradius
```
Sur RHEL 7 et CentOS :
```
sudo systemctl activer le rayon
sudo systemctl start radiusd
```
Étape 5 : Testez si le serveur Freeradius est en cours d'exécution
Entrez cette commande pour vérifier que le service est opérationnel :
```
sudo netstat -ltup | rayon de reconnaissance
```
En conséquence, vous devriez voir quelque chose comme ce qui suit :
```
tcp6 0 0 :::5080 :::* ECOUTER 20550/radiusd
udp6 0 0 :::1812 :::* ECOUTER 20550/rayond
tcp 0 0 0.0.0.0:1812 0.0.0.0:* ECOUTER 20550/radiusd
```
Cette sortie signifie que le serveur Freeradius s'exécute sur les ports 1812/UDP et 1812/TCP.
Étape 6 :Connectez-vous au serveur Freeradius
Pour tester si vous pouvez vous authentifier avec succès via Freeradius, installez le client FreeRADIUS sur la même machine.
Sur RHEL 8 :
```
sudo yum install freeradius-client -y
```
Sur RHEL 7 et CentOS :
```
sudo yum install freeradius-client -y
```
Tenter d'exécuter un exemple de script testera la connexion au serveur. Assurez-vous de remplacer « nom d'utilisateur » et « mot de passe » par les valeurs réelles.
```
#!/bin/bash
Fichier de configuration du client Freeradius :
echo -e 'client freeradius {\nserveur 127.0.0.1\nport 1812\nsecret testing123\n}\n'> ~/.freeradius/freeradius.conf
Exemple de script d'authentification :
echo -e '#!/bin/bash\n\nusername="$2"\npassword="$3"\n\n/usr/bin/radtest $username $password -s ~/.freeradius/freeradius.conf'> ~/freeradius-client.sh
Accorder l'autorisation « exécuter » au script :
chmod +x ~/freeradius-client.sh
Tester la connexion :
~/freeradius-client.sh nom d'utilisateur mot de passe du client
```
Si le script renvoie quelque chose comme "Nom d'utilisateur ='nom d'utilisateur', Type d'authentification =Mot de passe", alors la connexion au serveur Freeradius réussit, complétant ainsi la configuration.
|