original in cn Wang Xu
cn to en Wang Xu
en to fr Laurent RICHARD
Wang Xu est doctorant � l'Universit� des Postes et T�l�communications de P�kin en Chine et s'int�resse plus particuli�rement aux communications sans fil. Il est une fervent adepte de Linux depuis 1999 alors qu'il n'�tait encore qu'un lyc�en. A c�t� de Linux, il s'adonne �galement � TeX, C/C++, Perl, etc.
Les r�seaux sans-fil (IEEE 802.11b/a/g) deviennent de plus en plus populaires � mesure que les p�riph�riques sans-fil deviennent bon march� et que de plus en plus d'organisations fournissent un acc�s sans-fil � leur personnel ou au public. Quasiment tout nouvel ordinateur portable poss�de une carte sans-fil int�gr�e et les plus anciens ont une carte r�seau sans-fil PCMCIA. M�me les ordinateurs de bureau peuvent avoir des cartes r�seaux sans-fil USB, voire des cartes r�seaux sans-fil int�gr�es. D'autre part, les points d'acc�s (Access Point en anglais ou AP) sans-fil sont d�ploy�s sur les campus universitaires, les b�timents contenant des bureaux, les h�tels, les habitations, etc. Le r�seau sans-fil facilite le d�ploiement de r�seaux locaux et permet l'informatisation mobile/nomade, laquelle est une autre r�volution de notre vie professionnelle et quotidienne.
De ce fait, dans le monde Linux, il est d�s lors tout aussi essentiel de pouvoir avoir acc�s aux r�seaux sans-fil. Le reste de cet article sera organis� de la fa�on suivante. Tout d'abord, attardons-nous � voir comment les cartes fonctionnent. Ensuite, essayons d'acc�der aux r�seaux en utilisant l'authentification et donnons une br�ve introduction sur les outils pour la configuration de l'interface sans-fil. Nous terminerons par une conclusion sur ce que nous aurons appris.
Une fois que vous avez une carte r�seau sans-fil install�e sur votre ordinateur, la premi�re �tape est d'installer le pilote et de le faire fonctionner. Une carte r�seau sans-fil impl�mente les fonctions de la couche physique (PHY) et la sous-couche de contr�le d'acc�s aux m�dias (MAC) comme sp�cifi� dans au moins une des s�ries de protocoles IEEE 802.11 pendant que le pilote contr�le la carte et fournit d'autres interfaces de gestion sp�cifiques du r�seau sans-fil.
Il n'existe pas une m�thode unique pour installer les pilotes �tant donn� la multitude de vendeurs et de cartes se trouvant sur le march�. Cependant, la plupart d'entre elles peut fonctionner au travers de 3 m�thodes :
Veuillez notez que m�me si vous utilisez une des deux derni�res m�thodes, vous devez vous assurer que le support du r�seau sans-fil a bien �t� activ� dans la configuration du noyau :
gnawux@APTITUDE:~$ grep CONFIG_NET_RADIO /boot/config-`uname -r` CONFIG_NET_RADIO=ySi ce n'est pas le cas, vous devriez reconfigurer le noyau et activer l'option � Wireless LAN (non-hamradio) Drivers and Wireless Extensions �.
Les pilotes qui sont assez aboutis et qui n'ont pas de probl�mes de licences sont introduits dans le noyau Linux. Ainsi, la liste des cartes r�seaux sans-fil d�pend de la version du noyau et il est donc conseill� de v�rifier si le nouveau noyau a un meilleur support de votre carte avant d'installer le pilote.
Dans cette section, l'auteur va illustrer comment utiliser le pilote pour les cartes r�seaux sans-fil bas�es sur les chipsets Intersil Prism (ISL38xx). La liste des cartes support�es peut �tre trouv�e � l'adresse http://prism54.org [2].
Pour utiliser une carte bas�e sur le chipset Prism, vous aurez besoin du dernier noyau 2.6 et d'activer l'option � Intersil Prism GT/Duette/Indigo PCI/Cardbus � dans la section � Wireless LAN driver � de la configuration du noyau et recompiler le noyau.
Si vous lisez le texte d'aide du module avec attention lorsque vous configurerez le noyau, vous pourrez trouver que vous allez avoir besoin d'un firmware du site Internet du projet prism54.org [2]. Cela provient du fait que la carte n'a pas d'EPROM pour stocker son firmware. D�s lors, il faudra t�l�charger le firmware lorsque le pilote initialisera la carte. Le firmware ne peut pas faire partie du noyau pour des raisons de conflit de licence. Apr�s avoir r�cup�r� le firmware et l'avoir mis dans � /usr/lib/hotplug/firmware/ �, relancer votre ordinateur et vous remarquerez que vous avez une interface ethernet suppl�mentaire provenant de votre carte r�seau sans-fil.
Beaucoup de nouvelles cartes, comme d'autres nouveaux composants, ne poss�dent pas de pilotes compatibles GPL qui soient fournis par les vendeurs ou les pilotes d�velopp�s par la communaut� open-source ne sont pas encore assez aboutis pour �tre inclus dans le noyau. D�s lors, ces pilotes sont fournis en tant que modules et certains d'entre eux seront �ventuellement ajout�s dans les prochains noyaux quand ils seront termin�s.
Un de ces pilotes les plus c�l�bres est le ipw2100 [3] pour la carte Intel Pro/Wireless 2100 faisant partie de la technologie Intel Centrino� qui est install�e sur beaucoup d'ordinateurs portables. Dans cette section, l'auteur va faire une introduction � l'installation du pilote ipw2100.
D'abord, vous aurez besoin de t�l�charger le paquet source du pilote ainsi que le firmware sur le site Internet du projet, http://ipw2100.sourceforge.net. Apr�s vous �tre assur� que votre noyau est assez r�cent et l'avoir recompil� avec le support des modules, du firware hotplug et du r�seau sans-fil comme dit plus haut, d�compressez le paquet source :
APTITUDE:/usr/src# tar -zxvf ipw2100-1.0.1.tgzEnsuite, allez dans le r�pertoire source pour le compiler et l'installer :
APTITUDE:/usr/src/ipw2100-1.0.1# make APTITUDE:/usr/src/ipw2100-1.0.1# make installApr�s avoir install� les modules, il vous indique que vous devrez installer le firmware :
Don't forget to copy firmware to /usr/lib/hotplug/firmware/ and have the hotplug tools in place.Comme le dit si bien le message : d�compressez le firmware dans le r�pertoire hotplug et la proc�dure d'installation sera termin�e. Maintenant, vous pouvez activ� le module ipw2100 en faisant :
APTITUDE:/usr/src/ipw2100-1.0.1# modprobe ipw2100Vous pouvez aussi ajouter ici certains arguments pour vos diff�rentes configurations. Par exemple, l'argument ifname permet de sp�cifier le nom de l'interface :
APTITUDE:/usr/src/ipw2100-1.0.1# modprobe ipw2100 ifname=wlan0Ainsi, l'interface sera nomm�e wlan0. Pour les autres arguments, vous pouvez lire les documents inclus dans le paquet source du pilote ipw2100.
Malheureusement, certaines cartes ne poss�dent pas de pilote pour Linux ou celui-ci ne fonctionne pas pour diff�rentes raisons. Cependant, cela ne veut pas dire que vous ne pouvez pas l'utiliser sous Linux. Au moins, vous avez la sous-couche adaptatrice NDIS [1].
La plupart des cartes r�seaux sans-fil pour les ordinateurs de bureau ou les ordinateurs portables supportent Windows 2000/XP, lequel g�re le support du r�seau sans-fil via une interface standard appel�e NDIS. Ainsi, les pilotes pour de telles cartes supportent g�n�ralement le NDIS. D�s lors, nous pouvons cr�er une sous-couche adaptatrice pour le pilote et le faire ainsi fonctionner sous Linux comme si il �tait sous Windows 2000/XP, ce qui nous m�ne au projet ndiswrapper.
Dans cette section, l'auteur va installer la sous-couche adaptatrice ndis pour une carte r�seau sans-fil Netgear 121 par exemple. D'abord, nous allons t�l�charger la sous-couche adaptatrice ndis depuis le site Internet du projet http://ndiswrapper.sourceforge.net et pr�parer le pilote NDIS pour Windows. La sous-couche adaptatrice ndis consiste en un module du noyau ainsi qu'en quelques outils. Vous devez la compiler et l'installer :
APTITUDE:/usr/src/ndiswrapper-0.11# make installEnsuite, vous pouvez charger le pilote Windows dans la sous-couche adaptatrice
APTITUDE:/usr/src/ndiswrapper-0.11# ndiswrapper -i ../wg121/WG121V200/ndis5/netwg121.info� le fichier .inf est le pilote NDIS pour Windows. Apr�s avoir install� le pilote NDIS, vous pourrez voir
APTITUDE:/usr/src/ndiswrapper-0.11# ndiswrapper -l Installed ndis drivers: netwg121 driver present
F�licitations ! La proc�dure d'installation est termin�e.
Si vous acc�dez � un r�seau sans-fil dans un espace public, le r�seau sans-fil peut requ�rir que vous vous identifiiez pour des raisons de s�curit�. La plupart des m�thodes d'authentification pour les r�seaux sans-fil sont bas�es sur l'IEEE 802.1x (EAP) et l'IEEE 802.11i. Les m�thodes bas�es sur l'EAP sont actuellement les plus populaires.
Il y a beaucoup de m�thodes d'authentification bas�es sur l'EAP, comme par exemple EAP-MD5, EAP-TLS, EAP-TTLS, EAP-SIM, LEAP, etc. Les utilisateurs Linux peuvent utiliser xsupplicant fourni par le projet Open1x [4] afin d'acc�der � un r�seau n�cessitant une authentification bas�e sur le 802.1x. Dans cette section, l'auteur va utiliser le protocole LEAP qui est fourni par Cisco corp. comme exemple. Note: le fait de savoir si le protocole peut �tre support� d�pend de la carte et du pilote, par exemple m�me si votre xsupplicant est correctement install� et configur�, vous serez incapable d'acc�der au r�seau car votre carte ou le pilote ne le supporte pas.
Vous pouvez t�l�charger xsupplicant depuis le site Internet du projet, http://open1x.sourceforge.net, et l'installer. Ensuite, modifiez le fichier de configuration /etc/xsupplicant/xsupplicant.conf. Voici un exemple pour LEAP.
#example of /etc/xsupplicant/xsupplicant.conf #for LEAP protocol network_list = all #the list of networks to access default_netname = default #the default access network first_auth_command = <BEGIN_COMMAND>dhclient %i<END_COMMAND> #The command before authentication, which is usually used to get some info from #the network logfile = /var/log/xsupplicant.log #log file myssid #here is your network id, may be listed in the network list { type = wireless ssid = <BEGIN_SSID>myssid<END_SSID> allow_types = all identity = <BEGIN_ID>aptitude<END_ID> eap-leap { username = <BEGIN_UNAME>aptitude<END_UNAME> password = <BEGIN_PASS>passwd<END_PASS> }#setup for leap }LEAP est une m�thode simple d'authentification mais il existe beaucoup d'autres configurations pour les autres m�thodes. Veuillez donc vous r�f�rer aux exemples et au document de xsupplicant.
Comme vous le savez, les r�seaux sans-fil fournissent une interface identique � celle d'ethernet et vous pouvez l'utiliser comme une autre interface ethernet. D'un autre c�t�, une carte r�seau sans-fil offre bien plus de possibilit�s qu'une carte ethernet gr�ce au m�dia sans fil. Ainsi, il y a quelques outils pour configurer le r�seau sans-fil et obtenir des renseignements sur son �tat. Vous pourrez trouver les outils sans-fil sur http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html [5] dont le contributeur est Jean Tourrilhes.
L'outil le plus utile est iwconfig lequel peut �tre utilis� comme ifconfig. La commande iwconfig sans argument affichera le statut de fonctionnement actuel de la carte :
gnawux@APTITUDE:~$ /sbin/iwconfig wlan0 wlan0 unassociated ESSID:off/any Nickname:"ipw2100" Mode:Managed Channel=0 Access Point: 00:00:00:00:00:00 Bit Rate=0 kb/s Tx-Power:off Retry:on RTS thr:off Fragment thr:off Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0Avec l'argument � mode �, vous pouvez changer le mode de fonctionnement de la carte r�seau sans-fil :
APTITUDE:/home/gnawux# iwconfig wlan0 mode 1 APTITUDE:/home/gnawux# iwconfig wlan0 wlan0 unassociated ESSID:off/any Nickname:"ipw2100" Mode:Ad-Hoc Channel=0 Cell: 00:00:00:00:00:00 Bit Rate=0 kb/s Tx-Power:off Retry:on RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0Ici, nous changeons la carte r�seau sans-fil en mode � Ad Hoc �. Nous pouvons �galement changer le nom du r�seau au travers de l'argument � essid �:
APTITUDE:/home/gnawux# iwconfig wlan0 essid gnawux APTITUDE:/home/gnawux# iwconfig wlan0 wlan0 IEEE 802.11b ESSID:"gnawux" Nickname:"ipw2100" Mode:Ad-Hoc Frequency:2.412 GHz Cell: 02:0C:F1:0F:11:2A Bit Rate=0 kb/s Tx-Power:off Retry:on RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality=60/100 Signal level=-83 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0Vous avez peut-�tre remarqu� que nous avons maintenant plus d'informations sur l'�tat du fait que nous avons un ESSID valide. Pour les autres arguments de iwconfig, reportez vous � iwconfig(8).
Un puissant outil est iwlist avec lequel vous pouvez obtenir la liste des ressources disponibles. Avec l'argument � scanning �, nous pouvons obtenir la liste des points d'acc�s disponibles :
gnawux@APTITUDE:~$ /sbin/iwlist wlan0 scanning wlan0 Scan completed : Cell 01 - Address: 00:0D:BD:6F:B4:48 ESSID:"<hidden>" Protocol:IEEE 802.11b Mode:Master Channel:6 Encryption key:on Bit Rate:11 Mb/s Extra: Rates (Mb/s): 1 2 5.5 11 Extra: Signal: -70 dBm Extra: Last beacon: 59ms ago Cell 02 - Address: 86:CF:C1:34:12:06 ESSID:"gnawux" Protocol:IEEE 802.11b Mode:Ad-Hoc Channel:11 Encryption key:off Bit Rate:11 Mb/s Extra: Rates (Mb/s): 1 2 5.5 11 Extra: Signal: -37 dBm Extra: Last beacon: 2ms ago </hidden>Et avec l'argument � frequency � (freq), nous pouvons obtenir la liste des fr�quences :
gnawux@APTITUDE:~$ /sbin/iwlist wlan0 freq wlan0 14 channels in total; available frequencies : Channel 01 : 2.412 GHz Channel 02 : 2.417 GHz Channel 03 : 2.422 GHz Channel 04 : 2.427 GHz Channel 05 : 2.432 GHz Channel 06 : 2.437 GHz Channel 07 : 2.442 GHz Channel 08 : 2.447 GHz Channel 09 : 2.452 GHz Channel 10 : 2.457 GHz Channel 11 : 2.462 GHz Channel 12 : 2.467 GHz Channel 13 : 2.472 GHz Channel 14 : 2.484 GHz Current Channel=1Et bien s�r, vous pouvez vous r�f�rer � iwlist(8) pour les autres arguments.
A cot� des deux ci-dessus, il existe d'autres utilitaires comme iwevent, iwgetid, iwpriv ou iwspy pour vous permettre d'obtenir l'�tat de fonctionnement de votre carte r�seau sans-fil et de le g�rer.
L'auteur nous montrer l'installation du pilote pour diff�rentes cartes r�seaux sans-fil et nous montre comment s'authentifier. Les puissants utilitaires pour les cartes r�seaux sans-fil sont aussi introduits dans cette article.
Merci � la contribution de la communaut� open-source gr�ce � laquelle nous somme capables d'acc�der au r�seaux sans fil sous Linux mais �galement d'en profiter pleinement !