Scripts et logiciels pour se connecter en WIFI
Cette page présente un moyen de se connecter aux réseaux wifi ouverts (pas de code d'accès). Pour cela, il faut un fichier wpa_supplicant valide, et 2 scripts pour se connecter puis se déconnecter. Cette page est inspirée du wiki anglophone :http://wiki.openmoko.org/wiki/Wifi
Sommaire |
Scripts
fichier wpa_supplicant.conf
Ce fichier doit se trouver ici : /etc/wpa_supplicant/wpa_supplicant.conf Pour se connecter à l'un des réseaux ouvert automatiquement, il doit contenir :
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1
# Open:
network={
key_mgmt=NONE
priority=99
}
Je vous conseille de créer ce fichier sur votre carte SD, puis de le copier ensuite dans le répertoire /etc/wpa_supplicant/ . Ainsi, il ne sera pas perdu à chaque flash.
Script shell pour lancer la connexion
Je crée un fichier wifiup.sh. Par exemple avec nano
nano wifiup.sh
Voici le contenu de ce fichier
#!/bin/sh ifconfig eth0 up wpa_supplicant -i eth0 -c /etc/wpa_supplicant/wpa_supplicant.conf -B udhcpc eth0
Une fois ce fichier enregistré (avec nano, faire CTRL+x puis y pour yes puis Entrée pour valider), il faut lui donner les droits d'execution
chmod +x wifiup.sh
Je conseille aussi de faire un backup de ce fichier sur la carte SD
Script pour arrêter le wifi
nano wifidown.sh
Le contenu:
#!/bin/sh killall wpa_supplicant ifconfig eth0 down
Les droits
chmod +x wifidown.sh
Ne pas oublier de faire une copie sur la carte.
Fonctionnement
D'abord, on peut lister les réseaux wifi voisins :
iwlist eth0 scan
Cela liste tous les réseaux, même les cryptés. Si un des réseaux n'est pas crypé et a un signal au moins supérieur à 20, on peut tester de se connecter
Pour lancer la connexion, ouvrir un terminal et faire
./wifiup.sh
Cela affiche plusieurs messages, et on a réussi à se connecter lorsqu'on revient à l'invite de commande. Si le script tourne en boucle, c'est qu'aucun réseau n'est disponible ou que le signal est trop faible
Pour arrêter, lancer le script d'arrêt:
./wifidown.sh