Drivers Wifi Ralink rt73, injection et WPA sous Ubuntu
24 février 2008 – 11:33Suite à une mise à jour critique du noyau de Linux (due à une faille de sécurité permettant de faire un local root), j’ai mis à jour mes machines, et donc installé la dernière mise à jour du noyau. Cela s’est passé sans problème sur mon ordinateur fixe, mais j’ai eu un petit soucis sur mon portable. En fait, ce portable possède une carte Wifi Ralink intégrée, et le driver de base fourni par Ubuntu est défectueux (on peut voir les réseaux Wifi, mais pas s’y connecter). J’avais donc utilisé les drivers fournis par Aircrack, qui permettent en plus de faire de l’injection de packets . Et comme il faut compiler ce module, une réinstallation du noyau nécessite de le recompiler une fois de plus. Ce n’est pas dur, mais il faut le savoir ! Après avoir expliqué comment (re)compiler le driver, je montrerai comment utiliser le cryptage WPA avec l’interface Wifi.
Compilation du driver
Voici donc la marche à suivre pour compiler et utiliser ces drivers. Tout d’abord, placez-vous en root dans le dossier /usr/src :
sudo -s
cd /usr/src
Assurez-vous d’avoir les outils pour la compilation (GCC et compagnie). Au cas où, installez le paquet build-essential :
aptitude install build-essential
Ensuite, téléchargez le driver, et décompressez-le :
wget http://homepages.tu-darmstadt.de/~p_larbig/wlan/rt73-k2wrlz-2.0.1.tar.bz2
tar jxvf rt73-k2wrlz-2.0.1.tar.bz2
Placez-vous dans le dossier du driver, compilez-le et installez-le :
cd rt73-k2wrlz-2.0.1/Module
make
make install
Si jamais vous obtenez un message d’erreur de ce type à la compilation (après « make ») :
!!! WARNING: Module file much too big (>1MB) !!! Check your kernel settings or use 'strip'
Dans ce cas (et dans ce cas seulement), il faut utiliser l’utilitaire « strip » et recompiler le driver :
strip -S rt73.ko
make
make install
Une fois que c’est fait, il faut bannir (blacklister) les modules Wifi de base d’Ubuntu en ajoutant ceci à la fin du fichier /etc/modprobe.d/blacklist, si ce n’est pas déjà fait :
blacklist rt73usb blacklist rt2570 blacklist rt2500usb blacklist rt2x00lib
Pour être sur que l’ancien driver ne provoque pas de conflit, déchargeons tous les modules susceptibles de causer des problèmes :
modprobe -r rt73usb
modprobe -r rt2570
modprobe -r rt2500usb
modprobe -r rt2x00lib
Testons maintenant le driver ! Allumez votre interface (si vous disposez d’un bouton Wifi sur votre machine), chargez le driver et testez l’interface :
modprobe rt73
ifconfig rausb0 up
Normalement, ça marche ! Au cas où ça ne serait pas le cas, une possibilité est de prendre une version antérieure du driver sur la page http://homepages.tu-darmstadt.de/~p_larbig/wlan/ (allez dans la section « RaLink RT73 USB Enhanced Driver« ) et réeffectuez les étapes précédentes (en adaptant le nom de l’archive).
Utiliser le WPA
Pour ceux qui sont toujours connectés en WEP, permettez-moi de vous rappeler que cette méthode d’encryption est depuis longtemps dépassée car trop facilement crackable ! Avec Aircrack et quelques connaissances, il faut environ 30min pour cracker une clé, et avec la dernière version (et un peut de chance) on peut même atteindre quelques minutes seulement. Si j’ai le temps, je montrerai dans un prochain billet comment utiliser Aircrack pour casser une clé WEP. Mais en attendant, passez donc au WPA !
Pour activer le WPA sur l’interface, ce n’est pas bien compliqué. Tout se passe dans le fichier /etc/network/interfaces. Il faut que vous ajoutiez des lignes de configuration basées sur ce modèle :
auto rausb0 iface rausb0 inet dhcp pre-up ifconfig rausb0 up # a enlever si ca marche pas pre-up iwconfig rausb0 essid Livebox-XXXX # le nom du réseau pre-up iwconfig rausb0 mode managed pre-up iwpriv rausb0 set AuthMode=WPAPSK pre-up iwpriv rausb0 set EncrypType=TKIP pre-up iwpriv rausb0 set WPAPSK="XXXXXXXXXXXXXXXXXXXXXXXXXX" # la clé WPA
Cette configuration est celle que j’utilise pour me connecter sur ma livebox en WPA. Adaptez-la si besoin. Et assurez-vous que le WPA est activé sur la borne… Attention toutefois pour les Livebox Inventel : il faut absolument prendre l’option « WPA seulement » et pas « WEP et WPA » dans le menu de configuration, sinon cela ne marche pas. Si votre borne Wifi nécessite l’appui sur une touche pour permettre l’association Wifi de nouveaux périphériques, appuyez dessus sinon vous ne pourrez pas vous connecter (c’est le cas pour les Livebox)
Ensuite, redémarrez les interfaces réseau :
/etc/init.d/networking restart
Et si tout va bien, vous devriez obtenir une adresse IP et vous serez alors connectés ! Si jamais cela ne marche pas, c’est probablement du à une erreur dans la clé, ou bien à un conflit avec une autre interface. En effet, n’essayez pas de vous connecter à la fois en filaire et en Wifi, car au niveau des adresses IP attribuées par le DHCP, il risque d’y avoir des problèmes (elles seront toutes les deux dans le même réseau). Essayez de désactiver votre interface réseau en tapant :
ifconfig eth0 down
Assurez-vous également qu’il n’y a pas de ligne du type « auto eth0″ dans le fichier /etc/network/interfaces, et redémarrez une nouvelle fois les interfaces.
Si vous obtenez un message du style
DHCPACK from 192.168.1.1 bound to 192.168.1.161 -- renewal in 32485 seconds.
alors vous êtes connectés !
Attention, le module installé ne fonctionnera pas avec les outils graphiques du style NetworkManager. Enfin, n’oubliez pas qu’à chaque mise à jour de noyau, il faudra le recompiler (refaire un « make » et « make install » dans le dossier des sources du driver).
Conclusion
J’espère que ce billet vous aura été utile, car trouver toute cette procédure m’aura demandé un certain temps de recherche. Voici quelques pages qui m’ont pas mal servi :
- La page des drivers rt73 sur Arcrack
- Les drivers Ralink supportant l’injection
- La page WPA sur la doc d’Ubuntu-fr (la partie intéressante est à la fin, nommée « Méthode alternative« )
9 réponses à “Drivers Wifi Ralink rt73, injection et WPA sous Ubuntu”
Salut,
As-tu levé un rapport de bug à ce sujet ?
« - ».
Par "-" le 28 février 2008
A vrai dire, j’avais trouvé cette méthode l’été dernier (avant Gutsy) et j’ai retrouvé les sources du driver que j’avais téléchargé à ce moment là, donc je me suis contenté de les mettre à jour et de recompiler.
Je n’ai pas posté de rapport de bug, car il me semblait avoir vu lors de mes recherches que le bug était déjà connu. Par contre c’est vrai que sur la doc d’Ubuntu, c’est carrément pas clair et ils proposent encore d’autres méthodes (dont une utilisant un driver serialmonkey). Je sais pas si depuis Gutsy ça c’est amélioré, et étant donné qu’il s’agit d’une carte interne à mon laptop, je peux pas faire le test sur un autre ordi avec une Gutsy fraîche. En plus je n’utilise le Wifi que quand je suis en vacances chez mes parents car à l’INSA je ne peux pas faire de tests…
Par Emilien Girault le 28 février 2008
as-tu essayé avec un dongle DWL-122 en revision 3 ?
Par saelyx le 10 mars 2008
Euh non, vu que je n’en ai pas
Par Emilien Girault le 11 mars 2008
bonjour,
j’ai suivit la procedure car je dispose d’un dongle D-link DWL-G122 ver.C1 F/W ver. : 3.10
que je souhaite utiliser avec aircrack
tout c’est bien passer et quand je fait ifconfig, j’ai bien une ligne avec WLAN0, cependant ma cle ne voit plus les resaux ( comme si y avait pas de signal)
auriez-vous une solution?? je suis debutant sous unbuntu
cordialement,
Par dje007 le 20 août 2008
Etes-vous sur d’avoir bien activé le dongle ? Et surtout que ce dongle est bien supporté par ce driver ? Car pour mon article je me suis basé sur ma carte intégrée à mon portable, qui est certes détectée comme dongle USB mais qui est bien interne au laptop. Je vous conseille d’aller sur le site de madwifi et de vérifier la compatibilité de votre carte : http://madwifi.org/wiki/Compatibility
Sinon, le site hébergeant les drivers que je cite dans l’article, ou même celui d’Aircrack devrait vous aider. Bonne chance !
Par Emilien Girault le 22 août 2008
bonjour,
merci pour cette reponse rapide
je suis aller voir sur le site mais mon dongle D-Link DWL-122 H/W ver.:C1 F/W Ver.:3.10 ni figure pas…
pourtant avec votre methode, le mode monitor est accessible !
a l’installation des drivers serial monkey quand je fais : sudo mkdir /lib/modules/$(uname -r)/extra
puis
sudo cp rt73.ko /lib/modules/$(uname -r)/extra/rt73.ko
la console me dit impossible de creer le fichier car le fichier existe deja serait-ce le probleme?
d’avance merci et bonne continuation !!
Par dje007 le 26 août 2008
Si le fichier existe déjà, soit il s’agit déjà de la bonne version, dans ce cas là rien à faire, sinon la version est obsolète, dans ce cas supprimez le fichier cible et relancez la commande de copie.
Si le mode monitor marche et que vous captez bien des données, airodump & compagnie devraient marcher. Maisvous ne pouvez pas simultanément être en mode monitor et être connecté à un réseau Wifi (mode managed) car la carte ne le supporte pas. Si vous êtes en mode monitor, c’est normal que vous soyez considéré comme « déconnecté ». Pour vous connecter à un réseau, passez en mode managed en tapant : sudo iwconfig rausb0 (ou wlan0) mode managed
Si ca ne marche toujours pas, désactivez l’interface (sudo ifconfig rausb0 down) puis le module (sudo modprobe -r rt73), débranchez le dongle et réactivez tout (sudo modprobe rt73 && sudo ifconfig rausb0 up).
De plus, je tiens à signaler que j’ai publié un article plus récent sur le sujet donc essayez de jongler entre les deux si ça ne marche pas très bien. Je sais, ce genre de problèmes est assez pénible car une même solution ne marche pas toujours sur toutes les machines…
Par Emilien Girault le 26 août 2008