Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:reseau:wpasupplicant [09/09/2013 20:50] captnfab créée |
doc:reseau:wpasupplicant [14/09/2018 16:45] Beta-Pictoris |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Configuration d'un réseau WPA avec WPA Supplicant ====== | + | ====== wpa-supplicant : configuration wifi ====== |
* Objet : Configuration d'un réseau WPA avec WPA Supplicant | * Objet : Configuration d'un réseau WPA avec WPA Supplicant | ||
- | * Niveau requis : {{tag>débutant}} | + | * Niveau requis : {{tag>avisé}} |
* Commentaires : //Vous êtes en ligne de commande et voulez vous connecter à un réseau Wifi WPA. // | * Commentaires : //Vous êtes en ligne de commande et voulez vous connecter à un réseau Wifi WPA. // | ||
- | * Débutant, à savoir : [[manuel:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]], [[:manuel:wifi|les bases du WiFi]] :-) | + | * Suivi : {{tag>à-tester,à-compléter}} |
- | * Suivi : {{tag>en-chantier à-tester}} (Pour choisir, voir les autres Tags possibles dans [[tuto:travaux|l'Atelier]].) | + | * Création par [[user>captnfab]] le 09/09/2013 |
- | * Création par **captnfab** 09/09/2013 | + | |
* Testé par <...> le <...> | * Testé par <...> le <...> | ||
- | * Commentaires sur le forum : [[//url// | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | + | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=7404|ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
===== Introduction ===== | ===== Introduction ===== | ||
+ | |||
+ | Vous avez un ordinateur portable, et vous connectez souvent de WiFi en WiFi. Le matin, c'est le WiFi de la maison, puis y'a le wifi de la station de métro, le wifi de la gare, le wifi du train (pour les veinards qui en ont un), le wifi du boulot, le wifi des clients, etc. Dans ce cas, vous faîtes déjà certainement du roaming, i.e. de l'itinérance, entre les différents points d'accès qui vous irradient au fil de votre route. | ||
+ | |||
+ | En mode graphique, on connaît bien NetworkManager et Wicd qui sont tous les deux capables de faire du roaming, c'est à dire de détecter les réseaux présents et de se connecter à ceux connus. | ||
+ | |||
+ | NetworkManager peut également être utilisé en mode console. Mais aujourd'hui, nous allons étudier ''wpasupplicant'' qui permet déjà de faire cela. | ||
+ | |||
+ | ==== Avertissement ==== | ||
+ | |||
+ | <note important>WPA Supplicant et NetworkManager peuvent entrer en conflit s'ils tentent tous deux de gérer la même interface.</note> | ||
===== Installation ===== | ===== Installation ===== | ||
- | <code bash>apt-get install wpasupplicant</code> | + | <code root>apt-get install wpasupplicant</code> |
===== Utilisation ===== | ===== Utilisation ===== | ||
- | ==== Configuration initiale ==== | + | ==== Tester le programme wpa_supplicant ==== |
- | <file bash> | + | Le but est de vérifier que **wpa_supplicant** contrôle bien l'interface wifi. |
+ | |||
+ | On supposera que ''wlan0'' est votre interface wifi. | ||
+ | |||
+ | On commence par tuer tous les processus **wpa_supplicant** tournant : | ||
+ | <code root>pkill wpa_supplicant</code> | ||
+ | |||
+ | On va, ensuite, lancer **wpa_supplicant** dans un terminal : | ||
+ | <code root>wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf</code> | ||
+ | <code>Successfully initialized wpa_supplicant</code> | ||
+ | Si **wpa_supplicant** ne vous rend pas la main après avoir affiché le message, au-dessus, c'est que tout va bien. | ||
+ | |||
+ | Sinon, vous pouvez lancer **wpa_supplicant** en mode debug pour comprendre ce qui ne va pas : | ||
+ | <code root>wpa_supplicant -d -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf</code> | ||
+ | |||
+ | ==== Scanner les points d'accès disponibles ==== | ||
+ | |||
+ | Dans un autre terminal, on va lancer l'interface commande **wpa_cli** : | ||
+ | <code root>wpa_cli -i wlan0</code> | ||
+ | <code>wpa_cli v2.4 | ||
+ | Copyright (c) 2004-2015, Jouni Malinen <j@w1.fi> and contributors | ||
+ | |||
+ | This software may be distributed under the terms of the BSD license. | ||
+ | See README for more details. | ||
+ | |||
+ | Interactive mode | ||
+ | |||
+ | ></code> | ||
+ | <note warning>A partir d'ici, on se retrouve dans l'**interface commande de wpa_cli**.\\ | ||
+ | Le prompt ''>'' doit être affiché.</note> | ||
+ | Lancer un scan des points d'accès : | ||
+ | <code>> scan</code> | ||
+ | <code>OK | ||
+ | > | ||
+ | <3>CTRL-EVENT-SCAN-STARTED | ||
+ | > | ||
+ | <3>CTRL-EVENT-SCAN-RESULTS | ||
+ | > | ||
+ | <3>WPS-AP-AVAILABLE</code> | ||
+ | Afficher le résultat du scan : | ||
+ | <code>> scan_results</code> | ||
+ | <code>bssid / frequency / signal level / flags / ssid | ||
+ | 42:03:81:d1:d4:53 2457 -16 [WPA-EAP-CCMP][ESS] FreeWifi_secure | ||
+ | 42:03:81:d1:d4:50 2457 -16 [WPA-PSK-CCMP][ESS] | ||
+ | 42:03:81:d1:d4:51 2457 -17 [WPA2-PSK-CCMP][ESS] | ||
+ | f4:ca:e5:92:3f:58 2422 -64 [WPA-PSK-CCMP][ESS] Freebox-59C501 | ||
+ | f4:ca:e5:92:3f:5a 2422 -64 [WPA2-EAP-CCMP+TKIP][ESS] FreeWifi_secure | ||
+ | 00:19:70:7c:1e:d5 2437 -85 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] Livebox-9a79 | ||
+ | 42:03:81:d1:d4:52 2457 -16 [ESS] FreeWifi | ||
+ | f4:ca:e5:92:3f:59 2422 -64 [ESS] FreeWifi | ||
+ | 06:19:70:7c:1e:d5 2437 -87 [ESS] orange</code> | ||
+ | Quitter **wpa_cli** : | ||
+ | <code>> quit</code> | ||
+ | Arrêter **wpa_supplicant** en faisant un //CTRL-C// dans le terminal où il tourne. | ||
+ | |||
+ | ==== Ajouter un profil wifi ==== | ||
+ | |||
+ | <code root>wpa_passphrase votre-ssid votre-mot-de-passe >> /etc/wpa_supplicant/wpa_supplicant.conf</code> | ||
+ | en remplaçant ''votre-ssid'' par le nom de votre réseau Wifi et ''votre-mot-de-passe'' par votre mot de passe. | ||
+ | |||
+ | Ceci va ajouter l'entrée suivante à la fin de votre ''/etc/wpa_supplicant/wpa_supplicant.conf'' : | ||
+ | <file text /etc/wpa_supplicant/wpa_supplicant.conf>network={ | ||
+ | ssid="votre-ssid" | ||
+ | #psk="votre-mot-de-passe" | ||
+ | psk=360b2c805ecd920b79a370af532d2f7636bab7049ed2dc068c2dae17f5e1c38e | ||
+ | }</file> | ||
+ | |||
+ | Pensez à effacer la ligne avec votre mot de passe en clair ! | ||
+ | <note tip>A partir d'ici, si vous installez le paquet **dhcpcd5**, la connexion réseau wifi devrait être fonctionnelle à condition qu'aucune interface réseau ne soit configurée dans ''/etc/network/interfaces''</note> | ||
+ | |||
+ | ==== Configuration du réseau wifi par la méthode traditionnelle ==== | ||
+ | |||
+ | === Associer un identifiant au profil wifi === | ||
+ | |||
+ | Dans le fichier ''/etc/wpa_supplicant/wpa_supplicant.conf'' : | ||
+ | <code text /etc/wpa_supplicant/wpa_supplicant.conf>network={ | ||
+ | ssid="wifi-maison" | ||
+ | psk=123456789... | ||
+ | # Cet id_str indiquera à /sbin/wpa_action de faire un 'ifup maison' | ||
+ | id_str="maison" | ||
+ | }</code> | ||
+ | |||
+ | La directive **id_str** va associer l'identifiant ''maison'' au profil wifi.\\ | ||
+ | Cet identifiant pourra, alors, être utilisé comme interface réseau wifi dans le fichier ''/etc/network/interfaces''. | ||
+ | |||
+ | === Demander à l'interface réseau wifi d'utiliser wpa supplicant === | ||
+ | |||
+ | Dans le fichier ''/etc/network/interfaces'' : | ||
+ | <file text /etc/network/interfaces> | ||
+ | allow-hotplug wlan0 | ||
iface wlan0 inet manual | iface wlan0 inet manual | ||
wpa-driver wext | wpa-driver wext | ||
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf | wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf | ||
</file> | </file> | ||
+ | <note>Si vous n'arriviez pas à faire fonctionner votre carte avec le driver ''wext'', vous pouvez essayer avec le driver ''nl80211'' à la place.</note> | ||
+ | |||
+ | === Configuration du réseau en dhcp === | ||
+ | |||
+ | Dans le fichier ''/etc/network/interfaces'' : | ||
+ | <file text /etc/network/interfaces> | ||
+ | # L'identifiant 'maison' est utilisée comme interface wifi. | ||
+ | iface maison inet dhcp | ||
+ | </file> | ||
+ | |||
+ | === Configuration du réseau en ip statique === | ||
+ | |||
+ | Dans le fichier ''/etc/network/interfaces'' : | ||
+ | <code text /etc/network/interfaces># id_str="maison" | ||
+ | iface maison inet static | ||
+ | address 192.168.0.20 | ||
+ | netmask 255.255.255.0 | ||
+ | network 192.168.0.0 | ||
+ | broadcast 192.168.0.255 | ||
+ | gateway 192.168.0.1 | ||
+ | </code> | ||
+ | |||
+ | === Redémarrer le wifi et chercher à se connecter à un réseau connu === | ||
+ | |||
+ | Tapez la comande suivant dans un terminal root : | ||
+ | <code root>wpa_cli reconfigure</code> | ||
- | ==== Ajouter un réseau ==== | + | Vous devriez alors lire un message semblable à celui-ci : |
- | Dans un terminal root : | + | Selected interface 'wlan0' |
- | <code bash>wpa_passphrase SSID >> /etc/wpa/wpa_supplicant.conf</code> | + | OK |
+ | ===== Sources ===== | ||
- | ==== Se connecter à un réseau voisin ==== | + | * ''/usr/share/doc/wpasupplicant/README.Debian.gz'' |
- | <code bash>wpa_cli reconfigure</code> | + | * #debian@oftc.net (irc anglophone) |