Configuration du WiFi sous Linux

De WikiBR

Cette page présente les différentes méthodes de connexion sous système d'exploitation Linux...

Configuration et utilisation en mode graphique

Sous ubuntu

Utiliser la documentation de la DSI.

Avec wpa_gui

Il faut installer le package wpa_supplicant (http://hostap.epitest.fi/wpa_supplicant/, en natif sur toutes les bonnes distribs).

On remplit alors de manière minimale le fichier de configuration /etc/wpa_supplicant/wpa_supplicant.conf ou /etc/wpa_supplicant.conf selon les distributions :

#######################################
#  Config de /etc/wpa_supplicant.conf #
#######################################
# Fichier d'interface pour contrôle du démon
ctrl_interface=/var/run/wpa_supplicant
# Contrôle d'accès à l'interface (ici membres du groupe wifi)
ctrl_interface_group=wifi
# IEEE 802.1X/EAPOL version
eapol_version=1
# Type de scan pour trouver le reseau (par le prog/par la carte/les 2)
ap_scan=2
# EAP fast re-authentication
fast_reauth=1
# Adapter la configuration à partir de l'interface graphique
update_config=1

Il faut ensuite s'ajouter au groupe wifi (on peut également utiliser adm ou wheel à la place :

usermod -a -g wifi MonLogin

On lance alors wpa_supplicant :

  • Sous gentoo : indiquer dans le /etc/conf.d/net :
modules=( "wpa_supplicant" )
wpa_supplicant_wlan0="-Dwext -iwlan0"
config_wlan0=( "dhcp" )
dns_servers_Polytechnique=( "129.104.201.53 129.104.201.51" )
dns_search_Polytechnique=( "eleves.polytechnique.fr polytechnique.fr" )

Puis relancer l'interface : /etc/init.d/net.wlan0 restart

  • Manuellement, il faut le lancer via :
wpa_supplicant -Dwext -iwlan0 -B -c/etc/wpa_supplicant.conf

Enfin, il suffit de lancer wpa_gui pour pouvoir afficher les réseaux disponibles et se connecter sur celui que l'on souhaite. L'option update_config permet à WPA Supplicant de mettre à jour le fichier directement.


Avec wicd

Là encore, il vous faut wpa_supplicant, mais pas besoin d'éditer le fichier de configuration : wicd a son propre fichier de configuration.

Pour se connecter au wifi, il faut d'abord créer un template, c'est-à-dire un nouveau fichier /etc/wicd/encryption/templates/eap-ttls dont le contenu est le suivant :

name = EAP-TTLS
author = Binet Réseau
version = 1
require identity *Identity password *Password
-----
ctrl_interface=/var/run/wpa_supplicant
network={
	ssid="$_ESSID"
	key_mgmt=WPA-EAP
	eap=TTLS
	identity="$_IDENTITY"
	password="$_PASSWORD"
	pairwise=TKIP
	group=TKIP
	priority=2
	phase2="auth=PAP"
}

Ajoutez une ligne eap-ttls dans le fichier /etc/wicd/encryption/templates/active

Ensuite, on relance le démon wicd et on lance wicd-client, on sélectionne le réseau Polytechnique et on édite les préférences. Vous pouvez renseigner des DNS statiques (reportez-vous à la configuration du réseau filaire dans l'infoBR). Choisissez l'authentification EAP-TTLS et entrez vos identifiant et mot de passe de salle d'info. Validez et connectez-vous.

Configuration non graphique

Configuration de Wpa_supplicant

Il faut installer le package wpa_supplicant (http://hostap.epitest.fi/wpa_supplicant/, en natif sur toutes les bonnes distribs).

Le fichier de configuration est le suivant :

#######################################
#  Config de /etc/wpa_supplicant.conf #
#######################################
# Fichier d'interface pour contrôle du démon
ctrl_interface=/var/run/wpa_supplicant
# Contrôle d'accès à l'interface (ici root)
ctrl_interface_group=0
# IEEE 802.1X/EAPOL version
eapol_version=1
# Type de scan pour trouver le reseau (par le prog/par la carte/les 2)
ap_scan=2
# EAP fast re-authentication
fast_reauth=1

###############################
# Config spécifique au réseau #  
###############################
network={
   ssid="Polytechnique"
   key_mgmt=WPA-EAP
   eap=TTLS
   identity="jean.dupont" # login de salle info
   password="monpetitponey" # mot de passe de salle info
   pairwise=TKIP
   group=TKIP
   priority=2
   phase2="auth=PAP"
}

Connexion au réseau wifi

On considère que l'interface wlan0 est l'interface wifi

Lancer wpa_supplicant en démon (-B) (-D driver pour spécifier un driver de carte wifi (wext pour les pilotes du noyau), -d pour le débug, -c pour indiquer le fichier de configuration)

sudo wpa_supplicant -Dwext -i wlan0 -B -c /etc/wpa_supplicant.conf

Une fois la connection établie, lancer une requete dhcp

sudo dhclient wlan0

Et voilà, ça devrait marcher. Pour avoir les DNS élèves, il faut remettre le /etc/resolv.conf aux valeurs indiquées dans l'infoBR :

search eleves.polytechnique.fr polytechnique.fr
nameserver 129.104.201.53
nameserver 129.104.201.51

Script

On peut aussi créer un script de connexion pour ne pas avoir à se rappeler des commandes :

#!/bin/sh
wpa_supplicant -Dwext -i wlan0 -B -c /etc/wpa_supplicant.conf
dhclient wlan0
# pour avoir la dns élève
echo "search eleves.polytechnique.fr polytechnique.fr
nameserver 129.104.201.53
nameserver 129.104.201.51" > /etc/resolv.conf

Puis on rend le fichier exécutable par

chmod a+x le_script

Ensuite, il suffit de le lancer en root :

sudo ./le_script # dans le répertoire du script