Installation d'une carte réseau wifi avec ndiswrapper sous linux debian

Date de publication : 24.12.2006

Ashgenesis : ashgenesis[at]gmail[dot]com

I. Introduction

La configuration d'un réseau wifi n'est pas aussi compliquer que l'on pourrait le penser. Il y a 2 étapes, d'abord la configuration du point d'accès et ensuite celle de la carte réseau. Le point d'accès étant souvent simple à configurer, nous passerons rapidement dessus pour nous attarder plus spécifiquement sur la configuration de la carte wifi.

II. Le point d'accès

On vous demande de prendre en compte plusieurs paramètres.

Le ssid :
Il représente le nom du réseau.
Le canal :
C'est une bande de fréquence utilisé pour le transfert de données, Si vous n'êtes pas sur la même fréquences les données ne pourront pas transiter.
Le mode :
Il correspond au débit de transfert des données. Il en existe plusieurs comme b ou g, mais ici nous ne nous occuperons que du g.
La sécurité :
C'est le mode de cryptage qui va être utilisé ici de sera WPA-PSK mais il en existe d'autre comme le WEP ou encore le WPA-802.1x
La clé :
Ben, c'est le mot de passe pour l'accès à la connection. Pour un cryptage WPA-PSK, la clé doit contenir entre 8 et 63 caractère.

Maintenant qu'ils ont été décrit on va les remplir histoire d'avoir une base pour travailler. Nous allons reprendre chaque paramètre et lui attribuer une valeur

III. La carte Wifi

Pour la carte wifi, nous avons besoin de 2 choses, le module pour gérer la carte wifi et le paquet nécessaire pour la gestion du cryptage WPA-PSK. Nous allons utiliser module-assistant pour l'installation des drivers il nous faut donc aussi ce paquet. On installe donc ce dont nous avons besoin :

sudo aptitude install wpasupplicant module-assistant
ndiswrapper-source ndiswrapper-utils-1.8

Surtout faites attention d'avoir les bons dépots dans votre fichier sources.list

III-A Installation de ndiswrapper et reconnaissance de la carteWifi

Maintenant, que tout les paquets nécessaires sont installés nous passons à la compilation du module ndiswrapper. Surtout vérifiez bien d'avoir les sources ou les headers de votre kernel actuel avant de continuer. Si ce n'est pas le cas installez-les.

sudo aptitude install linux-headers-`uname -r`

Le module est très simple à compiler, on prépare d'abord et on install ensuite avec

m-a prepare
m-a a-i -f ndiswrapper

Il arrive quelques fois d'avoir des problème apres l'installation du module de reconnaissance de la carte réseau et ceci peut venir de prism54, si vous avez des soucis pensez à le désactiver et si vous recompiler votre kernel manuellement et que vous etes sur de ne pas en avoir besoin retirez-le.

modprobe -r prism54
modprobe ndiswrapper

Une fois ndiswrapper d'installé il faut lui dire quel driver utilisé pour votre carte wifi, et c'est en général les drivers fournis pour windows. Décompressez les drivers et entrer dans le répertoire les contenants puis il faut les installer avec

ndiswrapper -i fichier_inf

Afin de vérifier si le driver est correctement installé

ndiswrapper -l

Si c'est le cas vous devriez obtenir une ligne spécifiant votre driver sinon un problème est survenue et il est inutilie d'aller plus loin. Vérifiez bien ce que vous avez fait. Si tout va bien on rajoute un alias wlan0 pour la carte wifi dans la configuration du module par

ndiswrapper -m

Pour être sur que tout fonctionne lancez

iwconfig

Si il détecte votre carte wifi en wlan0 c'est gagné reste plus qu'a configurer le réseau :D

III-B Configuration de la carte wifi dans le fichier interfaces

La configuration du cryptage WPA-PSK se fait souvent dans le fichier /etc/wpa_supplicant.conf. Mais il est aussi possible de tout combiner dans le fichier interfaces. D'abord, il nous faut récupérer la clé crypter car il y a des problèmes de connection si on met la clé en clair. Donc, pour récupérer la clé crypter, il nous faut utiliser wpa_passphrase compris dans le paquet wpasupplicant. La syntaxe de cette commande est

wpa_passphrase <ssid> [passphrase]

Ayant définis déjà les paramètre au début nous allons les utilisers ce qui revient à

ash@seal:~$ wpa_passphrase ashgenesis password
network={
        ssid="ashgenesis"
        #psk="password"
        psk=e6aed3c5be3d59343833537d3a877e628aad60014b20a06105cf5013c5287d38
}

Nous avons maintenant le nécessaire pour remplir le fichier /etc/network/interfaces. Voici maintenant 2 types de configuration, la première utilise le serveur dhcp pour les adresses alors que la deuxième a été définis completement utilisé celle dont vous avez besoin en la modifiant si nécessaire.

# Config avec le serveur DHCP
auto wlan0
iface wlan0 inet dhcp
	wpa-conf managed
	wpa-ap-scan 1
	wpa-scan-ssid 1
	wpa-ssid ashgenesis
	wpa-key-mgmt WPA-PSK
	#wpa-psk password ## A de forte chance de ne pas fonctionner
	wpa-psk e6aed3c5be3d59343833537d3a877e628aad60014b20a06105cf5013c5287d38
# Config en static
auto wlan0
iface wlan0 inet static
	address 192.168.0.2
	netmask 255.255.255.0
	network 192.168.1.0
	broadcast 192.168.1.255
	gateway 192.168.0.1
	wpa-conf managed
	wpa-ap-scan 1
	wpa-scan-ssid 1
	wpa-ssid ashgenesis
	wpa-key-mgmt WPA-PSK
	#wpa-psk password ## A de forte chance de ne pas fonctionner
	wpa-psk e6aed3c5be3d59343833537d3a877e628aad60014b20a06105cf5013c5287d38

Il vous suffit donc maintenant de relancer le réseau de manière à ce qu'il prenne en compte les changements effectués.

/etc/init.d/networking restart