Utiliser WPA Supplicant en mode LEAP

Gazette Linux n°154 — Septembre 2008

Adaptation française: Nicolas Provost

Relecture de la version française : Deny

Article paru dans le n°154 de la Gazette Linux de septembre 2008.

Article publié sous Open Publication License. La Linux Gazette n'est ni produite, ni sponsorisée, ni avalisée par notre hébergeur principal, SSC, Inc.


Table des matières

Introduction
Système utilisé
Voir les réseaux sans-fil disponibles
Scripts
Configuration de WPA Supplicant
Script de connexion

Introduction

Pour permettre l'authentification LEAP sur un réseau sans-fil sous Linux (oui, oui, je sais que tout le monde va me dire que LEAP n'est pas sécurisé et qu'il ne vaudrait mieux pas l'utiliser, mais si le point d'accès est configuré ainsi, il n'y a pas le choix), j'ai effectué les opérations suivantes. Cela a fonctionné et j'espère qu'il en sera de même pour vous.

Note

LEAP (Lightweight Extensible Authentication Protocol) a été developpé dans le cadre de l'utilisation de points d'accès à des réseaux sans-fil avec des fonctionnalités de clés WEP dynamiques et d'authentification mutuelle --René.

Ces réglages ont fonctionné pour des connexions à un point d'accès CISCO™ ainsi configuré : utiliser l'authentification LEAP / utiliser TKIP / authentifier l'utilisateur avec nom d'utilisateur et mot de passe sur le serveur RADIUS de l'infrastructure.

Système utilisé

Mon système est le suivant : Slackware 12.1 / noyau système 2.6.26.2 / Intel™ Pro Wireless 3945ABG/BG utilisant le pilote iwl3945.

Sur ma machine Slackware, l'interface sans-fil est nommée wlan0, si ce n'est pas le cas pour vous, remplacez wlan0 par le nom de l'interface dans tous les scripts et commandes ci-dessous.

Voir les réseaux sans-fil disponibles

Pour voir quels réseaux sans-fil sont disponibles autour de vous et avec quel type de sécurité, utilisez la commande :

	    iwlist wlan0 scan

Si iwlist retourne une erreur disant qu'il est impossible de scanner les réseaux parce que l'interface est inactive, activez-la avec iwconfig :

ifconfig wlan0 up

puis exécutez la commande pour scanner de nouveau.

Scripts

Je me connecte manuellement avec un script, sans utiliser les scripts automatiques habituels.

Configuration de WPA Supplicant

Mon fichier /etc/wpa_supplicant.conf ressemble à ceci :

# Cette ligne active l'utilisation de wpa_cli, qui est utilisé par rc.wireless
# si possible (pour contrôler que l'association a réussi)
ctrl_interface=/var/run/wpa_supplicant
# Par défaut, seul root (groupe 0) peut utiliser wpa_cli
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1

network={
  scan_ssid=1
  mode=0
  ssid="SSID_réseau_connection"
  proto=WPA
  key_mgmt=WPA-EAP
  pairwise=TKIP
  group=TKIP
  eap=LEAP
  priority=2
  auth_alg=LEAP
  eapol_flags=0
  identity="nom_utilisateur"
  password="mot_de_depasse"
}

Dans le fichier de configuration ci-dessus, remplacez "SSID_réseau_connection" par le SSID (Service Set IDentifier) du réseau sans-fil 802.11 auquel vous voulez vous connecter ; remplacez nom_utilisateur par le nom d'utilisateur à spécifier pour la connexion et enfin mot_de_passe par le mot de passe utilisé pour l'authentification.

Script de connexion

Sur ma machine Slackware, le script de connexion ressemble à ceci :

#!/bin/bash

ifconfig wlan0 down
iwconfig wlan0 essid "XXXXXXXXXX"
ifconfig wlan0 up
wpa_supplicant -iwlan0 -c /etc/wpa_supplicant.conf -Dwext -dd

L'option -dd force wpa_supplicant à être très bavard en sortie, ce qui est utile s'il y a des problèmes, mais qui vous indique aussi ce qui se passe.

Sauvez ce script de connexion (sous root) et rendez-le exécutable, lisible et modifiable par l'utilisateur root (chmod 700 script_connection). Ce script doit être exécuté en tant que root (ou via sudo) pour pouvoir manipuler les interfaces.

Une fois lancé, le script de connexion ne se terminera pas. Pour voir ce qui se passe et si tout fonctionne, exécutez la commande wpa_cli dans un autre shell, ou si vous préférez un programme graphique sous X, lancez wpa_gui. Pour voir si la connexion au réseau sans-fil est opérationnelle, cherchez la ligne :

CTRL-EVENT-CONNECTED - Connection to 00:11:11:11:11:11 completed

Une fois connecté, vous pouvez obtenir une adresse par DHCP (en supposant qu'un serveur DHCP existe et fonctionne sur le réseau sans-fil) avec la commande :

dhcpcd wlan0

J'espère que tout ceci vous aidera.

Nic Tjirkalli travaille pour un des principaux fournisseurs d'accès Internet sud-africains. Il utilise Linux depuis plus de 15 ans, travaillant avec le système Slackware depuis le début.

Adaptation française de la Gazette Linux

L'adaptation française de ce document a été réalisée dans le cadre du Projet de traduction de la Gazette Linux.

Vous pourrez lire d'autres articles traduits et en apprendre plus sur ce projet en visitant notre site : http://wiki.traduc.org/Gazette_Linux.

Si vous souhaitez apporter votre contribution, n'hésitez pas à nous rejoindre, nous serons heureux de vous accueillir.