16/12/2024

Système

NPS – Comment ajouter un client Radius avec PowerShell ?

I. Présentation

Lors de la mise en place d'un serveur Radius sous Windows Server au travers du rôle NPS, il faut ajouter les clients Radius à la configuration. Les clients Radius peuvent correspondre à vos switchs, vos bornes Wi-Fi, etc... en fonction de la configuration que vous souhaitez mettre en place.

Pour ajouter un client Radius, on peut bien sûr le faire via la console de gestion en mode graphique mais aussi en PowerShell, c'est ce que je vous propose de voir. Dans ce tutoriel, nous allons construire un fichier CSV contenant la liste des clients Radius et ensuite les importer sur notre serveur.

II. Le fichier CSV pour Radius

Nous allons créer un fichier CSV, avec deux colonnes : le nom du client Radius et son adresse IP. Ensuite, sur chaque ligne, on va ajouter un client Radius. Ce qui donne :

Name;IPAddress
ClientRadius1;192.168.1.11
ClientRadius2;192.168.1.12
ClientRadius3;192.168.1.13
ClientRadius4;192.168.1.14

 

Note : Si vous souhaitez utiliser un secret partagé par client Radius, c'est possible ! Il suffit d'ajouter une colonne supplémentaire dans le fichier CSV et de l'exploiter ensuite dans le script.

Notre fichier étant prêt, nous pouvons passer à la suite.

III. Ajouter des clients Radius avec PowerShell

Ouvrez votre éditeur de script préféré, PowerShell ISE ou un autre, pour coder le script. Commençons par déclarer deux variables :

  • $RadiusClientFile : il va contenir le contenu du fichier CSV que l'on importe via Import-CSV
  • $SharedSecret : le secret partagé, unique, qui sera utilisé sur tous les clients que l'on va créer

Ce qui nous donne :

$RadiusClientFile = Import-CSV -Delimiter ";" -Path "C:\Liste_AP.csv"
$SharedSecret = "MonSecretPartageDeFou"

Maintenant, il ne reste plus qu'à faire une boucle pour traiter chaque ligne du fichier CSV et ajouter chaque client Radius :

Foreach($ClientRadius in $RadiusClientFile){
   New-NpsRadiusClient -Address $ClientRadius.IPAddress -Name $ClientRadius.Name -SharedSecret $SharedSecret
}

En PowerShell, le cmdlet New-NpsRadiusClient va permettre de créer les clients Radius grâce à trois paramètres : l'adresse IP, le nom et le secret partagé. Cela tombe bien, ce sont des infos que l'on a 😉

Vous avez donc le script suivant :

$RadiusClientFile = Import-CSV -Delimiter ";" -Path "C:\Liste_AP.csv"
$SharedSecret = "MonSecretPartageDeFou"

Foreach($ClientRadius in $RadiusClientFile){
   New-NpsRadiusClient -Address $ClientRadius.IPAddress -Name $ClientRadius.Name -SharedSecret $SharedSecret
}

➡ Il ne reste plus qu'à le sauvegarder et à l'exécuter sur votre serveur NPS.

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.