|
1.
Introduction
Faire fonctionner le réseau sans fil est en général assez direct sur Linux. Il y a deux manières de le configurer : les clients graphiques ou la ligne de commande.
Le moyen le plus facile est d'utiliser un client graphique, une fois que vous avez installé un environnement de bureau. La plupart des clients graphiques tels que wicd et NetworkManager, sont d'usage assez évident. Ils offrent une interface simple qui vous permet de configurer votre réseau en quelques secondes.
Note :
wicd possède une fonctionnalité de ligne de commande en plus de l'interface graphique principale. Vous pouvez l'obtenir en installant wicd avec l'option USE
ncurses. Cet utilitaire wicd-curses est particulièrement utile pour ceux qui n'utilisent pas un environnement de bureau basé sur gtk, mais désirent néanmoins un outil en ligne de commande facile qui ne requiert pas d'éditer des fichiers de configuration.
|
Néanmoins, si vous ne voulez pas utiliser un client graphique, vous pouvez configurer le sans fil en ligne de commande en éditant quelques fichiers de configuration. Ceci prend un peu plus de temps, mais demande moins de paquets à télécharger et installer. Comme les client graphiques sont d'usage évident (avec des écrans d'aide en page d'accueil) nous nous focaliserons sur la configuration en ligne de commande.
Vous pouvez configurer le réseau sans fil en ligne de commande en installant wireless-tools ou wpa_supplicant. La chose importante à se rappeler, c'est que vous configurez les réseaux sans fil globalement et non pas par interface.
wpa_supplicant est le meilleur choix mais il ne gère pas tous les
pilotes. Pour une liste des matériels supportés, lisez le site web de
wpa_supplicant.
wireless-tools supporte pratiquement toutes les cartes et tous les
pilotes, mais il ne sait pas se connecter aux points d'accès qui ne font que du
WPA. Si vos réseaux n'offrent que le chiffrage WEP ou sont complètement ouverts, il se peut que vous préfériez la simplicité de wireless-tools.
Attention :
le pilote linux-wlan-ng n'est pas supporté par baselayout pour le
moment, à cause de sa mise en place et de sa configuration qui est complètement
différente de ce qui se fait ailleurs. Des rumeurs émanant des développeurs de
linux-wlan-ng affirmeraient que leur procédure de mise en place se
conformerait à celle de wireless-tools. Lorsque ceci sera effectif, vous
pourrez utiliser linux-wlan-ng avec notre baselayout.
|
1.
WPA Supplicant
WPA Supplicant est un
paquet qui vous permettra de vous connecter à un point d'accès WPA.
Exemple de code 1.1 : installer wpa_supplicant |
# emerge net-wireless/wpa_supplicant
|
Important :
vous devez activer CONFIG_PACKET dans votre noyau pour que
wpa_supplicant puisse fonctionner.Essayer la commande grep CONFIG_PACKET
/usr/src/linux/.config pour savoir si c'est activé dans votre noyau.
|
Note :
selon les options USE , wpa_supplicant peut installer une interface graphique écrite en Qt4, qui s'intégrera parfaitement dans KDE. Pour l'avoir, exécutez echo "net-wireless/wpa_supplicant qt4" >> /etc/portage/package.use en tant qu'administrateur
root avant d'installer wpa_supplicant.
|
Nous devons maintenant indiquer dans le fichier /etc/conf.d/net
que nous préférons utiliser wpa_supplicant plutôt que
wireless-tools (si les deux sont installés, wireless-tools est l'interface par défaut).
Exemple de code 1.1 : configuration de /etc/conf.d/net pour wpa_supplicant |
modules="wpa_supplicant"
wpa_supplicant_eth0="-Dmadwifi"
|
Note :
si vous utilisez le pilote host-ap, vous devez placer la carte en mode
Managed afin qu'elle puisse être utilisée correctement par
wpa_supplicant. Vous pouvez utiliser la commande iwconfig_eth0="mode
managed" dans /etc/conf.d/net pour ce résultat.
|
Plutôt simple, n'est-ce pas ? Pourtant, nous devons encore configurer
wpa_supplicant lui-même, ce qui peut devenir bien plus fastidieux selon
le niveau de sécurité demandé par le point d'accès auquel vous souhaitez vous
connecter. L'exemple ci-dessous est repris puis adapté depuis le fichier
/usr/share/doc/wpa_supplicant-<version>/wpa_supplicant.conf.gz fourni avec
wpa_supplicant.
Exemple de code 1.1 : un exemple de fichier /etc/wpa_supplicant/wpa_supplicant.conf |
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=1
network={
ssid="simple"
psk="une phrase super secrete"
priority=5
}
network={
ssid="second ssid"
scan_ssid=1
psk="phrase tres secrete"
priority=2
}
network={
ssid="exemple"
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
priority=2
}
network={
ssid="test-en-clair"
key_mgmt=NONE
}
network={
ssid="static-wep-test"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
}
network={
ssid="static-wep-test2"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
auth_alg=SHARED
}
network={
ssid="test adhoc"
mode=1
proto=WPA
key_mgmt=WPA-NONE
pairwise=NONE
group=TKIP
psk="une phrase secrete"
}
|
1.
Wireless Tools
Mise en place et mode « Managed »
Wireless
Tools fournit un moyen générique de configurer des interfaces sans fil
jusqu'au niveau de sécurité WEP. Bien que WEP soit une méthode faiblement
sécurisée, elle reste la plus répandue.
La configuration de Wireless Tools est contrôlée par quelques variables.
L'exemple de fichier de configuration ci-dessous devrait couvrir tous vos
besoins. Sachez simplement qu'en cas de non-configuration, nous essayons tout de
même de connecter l'interface au point d'accès le plus fort, quel qu'il soit.
Exemple de code 1.1 : installer wireless-tools |
# emerge net-wireless/wireless-tools
|
Note :
bien que vous puissiez stocker la configuration du réseau sans fil dans le
fichier /etc/conf.d/wireless, ce guide vous recommande de la placer
dans le fichier /etc/conf.d/net.
|
Important :
vous devrez consulter la (documentation sur les noms des
variables).
|
Exemple de code 1.1 : exemple de configuration /etc/conf.d/net avec iwconfig |
modules=( "iwconfig" )
key_ESSID1="[1] s:votrecle key [1] enc open"
key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted"
preferred_aps="'ESSID1' 'ESSID2'"
|
Réglagesfins pour la sélection de points d'accès
Vous pouvez éventuellement rajouter des options pour affiner la sélection des
points d'accès. Ceci n'est pas indispensable.
Vous pouvez décider si nous devons nous connecter uniquement aux points d'accès
préférés ou pas. Par défaut, si tout ce qui a été configuré a échoué
et si nous pouvons nous connecter à un point d'accès non chiffré, alors nous le
ferons. Ce comportement peut être contrôlé par la variable
associate_order. Voici une table qui présente les valeurs acceptables et
à quoi elles servent.
| Valeur |
Description |
| any |
Comportement par défaut. |
| preferredonly |
Nous nous connecterons uniquement à un point d'accès présent dans la
liste.
|
| forcepreferred |
Nous forcerons la connexion à un point d'accès dans l'ordre listé si
ceux-ci ne sont pas trouvés lors d'un scan.
|
| forcepreferredonly |
Ne lance pas le scan. Essaye simplement de se connecter à l'un d'entre eux
dans l'ordre indiqué.
|
| forceany |
Pareil que forcepreferred puis essaie n'importe quel autre point
d'accès si cela n'a pas marché.
|
Enfin, voici les variables blacklist_aps et unique_ap.
blacklist_aps fonctionne d'une manière similaire à preferred_aps.
unique_ap attend yes ou no pour savoir si une deuxième
interface peut se connecter sur le même point d'accès que la première.
Exemple de code 1.1 : exemples pour liste noire (blacklist)_aps et unique_ap |
blacklist_aps="'ESSID3' 'ESSID4'"
unique_ap="yes"
|
Modes Ad-Hoc et Master
Vous pouvez aussi vous déclarer comme nœud Ad-Hoc si vous n'arrivez pas à
joindre un point d'accès.
Exemple de code 1.1 : se replier sur le mode Ad-Hoc |
adhoc_essid_eth0="Mon noeud Adhoc"
|
Et pourquoi pas se connecter à des réseaux Ad-Hoc ou bien tourner en mode Master
pour devenir nous-même un point d'accès ? Voici la configuration qu'il vous
faut. Vous aurez peut-être à spécifier des clés WEP comme indiqué précédemment.
Exemple de code 1.1 : exemple de configuration Ad-Hoc/Master |
mode_eth0="ad-hoc"
essid_eth0="Mon noeud adhoc"
channel_eth0="9"
|
Important :
ce qui suit est repris en l'état de la documentation
NetBSD sur WaveLAN. Il y a 14 canaux possibles. Nous avons été informés
que les canaux 1 à 11 sont légaux en Amérique du Nord, 1 à 13 dans une grande
partie de l'Europe, 10 à 13 en France et uniquement le 14 au Japon. En cas de
doute, consultez la documentation fournie avec la carte ou avec le point
d'accès. Assurez-vous que le canal choisi correspond à celui du point d'accès
(ou de l'autre carte en réseau Ad-Hoc). Par défaut, ce canal est le numéro 3
sur les cartes vendues en Amérique du Nord et dans une grande partie de
l'Europe, 11 en France et 14 au Japon).
|
Problèmes et résolutions concernant Wireless Tools
Il existe quelques variables supplémentaires que vous pouvez utiliser pour vous
aider à résoudre les problèmes de pilote ou d'environnement pour faire
fonctionner votre réseau sans fil. Voici une table répertoriant ce que vous
pouvez essayer :
| Variable |
Valeur par défaut |
Description |
| iwconfig_eth0 |
|
Lisez man iwconfig pour savoir ce qu'il est possible d'indiquer à
iwconfig.
|
| iwpriv_eth0 |
|
Lisez man iwpriv pour savoir ce qu'il est possible d'indiquer à
iwpriv.
|
| sleep_scan_eth0 |
0 |
Le nombre de secondes à attendre avant de lancer un scan. Cette commande est
requise lorsque le pilote a besoin de temps supplémentaire pour compléter
son activation et pour devenir utilisable.
|
| sleep_associate_eth0 |
5 |
Le nombre de secondes permis à l'interface pour qu'elle réussisse à
s'associer avec le point d'accès avant de passer au suivant.
|
| associate_test_eth0 |
MAC |
Certains pilotes n'assignent pas une adresse MAC invalide pendant qu'ils
essayent de se connecter.
Certains pilotes ne remettent pas à zéro le niveau de qualité pendant qu'ils
essayent se se connecter.
Les valeurs autorisées sont MAC, quality ou all, pour
les deux.
|
| scan_mode_eth0 |
|
Certains pilotes doivent scanner en mode Ad-Hoc. Donc si le scan échoue
systématiquement, essayez de spécifier ad-hoc ici.
|
| iwpriv_scan_pre_eth0 |
|
Envoie des commandes iwpriv à l'interface avant le scan.
Veuillez lire man iwpriv pour les détails.
|
| iwpriv_scan_post_eth0 |
|
Envoie des commandes iwpriv à l'interface après le scan.
Veuillez lire le man iwpriv pour les détails.
|
1.
Spécifier une configuration réseau selon l'ESSID
Il se peut que lorsque vous vous connectez à ESSID1, vous ayez besoin
d'une adresse IP statique et que lorsque vous vous connectez à ESSID2,
vous vouliez du DHCP. En fait, on peut spécifier la plupart des variables selon
l'ESSID. Voici comment faire.
Note :
cela marche si vous utilisez WPA Supplicant ou Wireless Tools.
|
Important :
vous devrez consulter la (documentation sur les noms des
variables).
|
Exemple de code 1.1 : surcharger la configuration réseau selon l'ESSID |
config_ESSID1="192.168.0.3/24 brd 192.168.0.255"
routes_ESSID1="default via 192.168.0.1"
config_ESSID2="dhcp"
fallback_ESSID2="192.168.3.4/24"
fallback_route_ESSID2="default via 192.168.3.1"
dns_servers_ESSID1="192.168.0.1 192.168.0.2"
dns_domain_ESSID1="some.domain"
dns_search_domains_ESSID1="search.this.domain search.that.domain"
config_001122334455="dhcp"
dhcpcd_001122334455="-t 10"
dns_servers_001122334455="192.168.0.1 192.168.0.2"
|
|