22/12/2024

Astuces

Import et export de profils Wi-Fi avec netsh

I. Présentation

Sous Windows, les profils Wi-Fi peuvent être manipulés en ligne de commande par l'intermédiaire du bon vieux "netsh". Ce qui va nous permettre de lister les réseaux sans-fil enregistrés sur notre machine, mais aussi de les exporter sur une clé USB par exemple. Ceci va nous permettre ensuite de les réimporter sur un autre poste, ou pourquoi pas de déployer les profils Wi-Fi par GPO pour qu'ils soient préenregistrés sur un ensemble de machines (y compris la clé de sécurité du réseau qui sera injectée).

II. Exporter le profil Wi-Fi

Sur votre PC sous Windows, pour ma part Windows 10, exécutez la commande ci-dessous pour lister les réseaux Wi-Fi connus où un réseau = un profil.

netsh wlan show profiles

Maintenant, si l'on veut exporter un profil spécifique, on va utiliser la commande "netsh wlan export profile" avec les paramètres "key" et "folder". Ici, le paramètre "key" va avoir la valeur "clear" afin de récupérer la clé de sécurité en clair, ce qui est indispensable pour que ce soit lisible par Windows pour une importation sur un autre poste. Quant au paramètre "folder" il contient le chemin de destination du fichier d'export. Ce fichier est au format XML.

Voici un exemple pour exporter le profil nommé "MON-WIFI" (le nom du profil est à récupérer grâce à la commande précédente) :

netsh wlan export profile "MON-WIFI" key=clear folder=f:\

Comme cette commande d'export offre la possibilité d'exporter les réseaux sans-fil avec la clé de sécurité en clair à chaque fois, c'est à manipuler avec précaution.

Le résultat en image :

On obtient un fichier XML qui contient de nombreuses informations sur notre réseau Wi-Fi :

  • Son nom (SSID) via la balise "Name"
  • Le mode de connexion via la balise "connectionMode" : la valeur "auto" indique la connexion automatique, remplacez par "manual" si vous désirez que ce soit manuellement
  • La clé de sécurité du réseau via la balise "keyMaterial"

Maintenant que l'on a notre fichier de config, voyons comment l'importer sur une autre machine.

III. Importer le profil Wi-Fi

Toujours via netsh, on va pouvoir importer le profil Wi-Fi sur un autre poste Windows, il suffit d'exécuter la commande suivante qui contient le chemin vers le fichier XML :

netsh wlan add profile filename="f:\Wi-Fi-MON-WIFI.xml" user=all

A noter également la présence de l'option "user=all" ce qui permet d'ajouter le réseau Wi-Fi pour tous les utilisateurs. Si l'on souhaite l'ajouter uniquement pour l'utilisateur connecté, on utilisera plutôt : user=current.

Il est à noter que cette commande peut-être exécutée depuis un script PowerShell via la syntaxe suivante :

Invoke-Expression "netsh wlan add profile filename='F:\Wi-Fi-MON-WIFI.xml' user=all"

Voilà, vous êtes désormais capable d'exporter et d'importer vos connexions Wi-Fi sous Windows en ligne de commande !

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

3 commentaires sur “Import et export de profils Wi-Fi avec netsh

  • Bonjour,

    Existe-t-il une manip pour importer tous les profils en une seule fois ?

    Merci,

    Loïc

    Répondre
    • Tout simplement créer un fichier batch, avec une ligne pour chaque profil à importer (en reprenant l’exemple ci-dessous, et en indiquant bien le chemin de localisation et le nom de chaque fichier XML) :

      netsh wlan add profile filename= »f:\Wi-Fi-MON-WIFI-1.xml » user=all
      netsh wlan add profile filename= »f:\Wi-Fi-MON-WIFI-2.xml » user=all
      netsh wlan add profile filename= »f:\Wi-Fi-MON-WIFI-3.xml » user=all
      etc…

      Répondre
  • Bonjour,

    Pour importer tous les profiles d’un coup un ce petit script dans un cmd

    for %%f in (*) do (
    netsh wlan add profile filename= »%%f »
    )

    CS

    Répondre

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.