Encore ENUWI-G2 (RTL8187b) en Debian

21 09 2008

/me pone música porque se viene para largo…

En el transcurso del fin de semana estuve peleando con la placa de red USB Encore ENUWI-G2, pero al final conseguí hacerla funcionar y de la forma que pretendía hacerlo.

Hace algunos meses que tenía ganas de comprarme una placa de red wifi para estudiar algunos conceptos y ver la forma de analizar paquetes con encriptación. Algunas de estas cosas las vimos muy por arriba en la facu y me quedó picando el bichito de ver como es esto de las redes wifi.

En aquél momento averigué por todos lados sobre placas PCI, que suponía que eran más barata y que además me daba la impresión de que tenían más alcance al tener una antenita por afuera. Después de esta recorrida no decidí comprarme nada porque estaban un poco caras, algo así como $100 o más. No quería gastar esa plata para algo que no necesitaba ya que era sólo por investigación.

Pasó cierto tiempo, empecé a trabajar, me pelié con muchas placas wifi en el trabajo y mi ignorancia me mataba frente a este tipo de redes. Me dí muchas veces la cabeza contra la pared cuando quería conectarme a un AccessPoint: me mataba depender de un entorno gráfico para poder conectarme (estaba usando el KWifiManager), asique me decidí a aprender todo este tipo de cosas.

El viernes por la tarde, me fui a promocionar la 3ra Jornada de Python en Santa Fe con un amigo al centro en busca de sponsors y de paso aprovechaba para preguntar sobre una placa wifi en algunos lugares que quedaban por el centro. Me fui de casa con la idea de comprar una TP-Link que estoy seguro que funciona ya que es la que pudimos configurar en el trabajo: mediante ndiswrapper.

Los precios que manejaban las casa de computación eran al rededor de los $80 para arriba y todas eran placas que no conocía, asique no me gustaba para nada. Igualmente le preguntaba si sabían que estas funcionen en linux para luego ir a averiguar si en alguna me decían que si. La mayoría no tenía ni idea, asique seguía mi camino.

Por último fui a un lugar que venden DVD’s, CD’s y un montón de accesorios pero… Por las dudas fui igual. Me encontré con la placa del título de este post a un precio de $60, anoté el modelo porque era interesante este precio y le dije que iba a averiguar si funcionaba en Linux y que si era así volvía a comprarla. Antes de irme le pregunté si sabía si funcionaba y me dijo: “Anda!”, nada más.

Encore ENUWI-G2

Encore ENUWI-G2

Cuando me estoy yendo mi amigo me dice: “¿Y porqué no la llevás si sabés que anda?”, a lo cual le contesto delante de los vendedores: “Me quiero asegurar”. Salimos de ahí y nos estábamos volviendo para casa, para supuestamente volver al día siguiente (Sábado) a comprarla luego de buscar en internet. Se me ocurrió ir a un cyber para verificar esto y comprarla ese mismo día.

Lo primero que encontré es que muchos la habían hecho funcionar con ndiswrapper, tal y como yo sabía que funcionaba la TP-Link, asique ya estaba dicho: “La tenía que comprar”. Salí del cyber y la compré.

Cuando llegué a mi casa seguí buscando información sobre cómo instalarla y por todos lados estaba la misma descripción del que había encontrado en el cyber asique me puse a hacerlo de esta forma. Esto era instalar ndiswrapper, cargar el driver de Windows XP y levantar el módulo del kernel de ndiswrapper, pero… Oh! sorpresa me encuentro que el módulo del kernel no levanta. Buscando en Google encontré que tenía que compilar el módulo para la versión específica de mi kernel (2.6.24-amd64) ya que no venía precompilado.

Manos a la obra entonces. Instalé los paquetes necesarios y compilé el paquete:

 apt-get install module-assistant ndiswrapper-source
 m-a a-i ndiswrapper

Una vez que tenía esto andando, pude hacer modprobe ndiswrapper y que carge correctamente este módulo, aunque en los logs (/var/log/message) me estaba indicando que tenía un driver para 32bit y que yo tenía un kernel de 64bit. ¡Qué mala suerte!. Busqué por todo el CD los drivers para XP64bit y no los encontré, asique los bajé la página oficial de encore y estos sí funcionaron.

Luego investigué como hacer para conectarme a mi AccessPoint, busqué por internet e hice muchas pruebas antes de lograrlo. Lo primero que me fijé en realidad era el comando iwlist (del paquete wireless-tools) que entre otras cosas sirve para escanear las redes y ver los essid’s que exportan los AccessPoint. Por suerte veía el mío, y la calidad de la señal era de 60 más o menos estando a 1,5 metros de distancia. Esto no me sorprendío porque calidad de la señal que teníamos en el trabajo con las otras placas era más o menos igual.

En poco tiempo logré configurar la conexión sin encriptación y funciona sin problemas. Luego probé hacerlo con WEP y también funcionaba. Asique quise pasar al siguiente paso: sniffear la red utilizando la placa en el modo Monitor. Cuando intento cambiar el modo de la interfaz, el mismísimo driver me dice que la placa esta no soporta este modo, nah!. Me fui a la página oficial y efectivamente dice que sólo funciona en Ad-Hoc (punto a punto) y en modo Managed (contra un AccessPoint).

Seguí buscando por todos lados, no me podía dar por vencido. Encontré por todos lados un proyecto de drivers libres para el modelo rtl8187, que aunque esa página no está muy completa, tiene unos links que resultaron interantes. Y como siempre sucede, uno nunca lee la página completa, lee un poquito y se va directamente a ejecutar los comando :) , luego me encontré con que el chipset rtl8187b no estaba soportado por ese driver :(

También encontré una modificación a este driver que parece funcionar con este modelo de chipset. Mmm… vamos a probar. Me pelié mucho para compilarlo, hice un poco de magia negra y salió andando. Me lo detectaba y todo lindo, pero cada 2 o 3 minutos recibía un hermoso Kernel Panic, lo cual me llevó a hacer algunas pruebas más y descartarlo por completo si quería que mi sitema siga funcionando :) .

Ya eran las 2 de la mañana de anoche y yo seguía dando vueltas con mi placa de red wifi, no encontraba la solución que buscaba. Sí tenía la placa funcionando con ndiswrapper, pero no la podía sniffear ni tampoco me gustaba que los drivers no sean libres (lo único que tengo no-libre son los de NVIDIA porque no encontré solución aún :( ). Me fui directo al código fuente del kernel y me puse a leer los ChangeLogs, vi que se estaba trabajando para el chipset rtl8187 y me volvieron las esperanzas nuevamente. También vi que Linus Torvalds hizo un commit el 23 de Diciembre de 2007: ¡Que capo!

A todo esto me dijo: “¿Y porqué no?, ya estoy en el baile. Me compilo el kernel y lo saco andando”. Me bajé el kernel (2.6.27-rc6) de la página oficial y seguí una guía muy buena que explica como hacerlo a la manera Debian, esto sería creando un paquete .deb y luego instalándolo.

Por supuesto que lo primero que hice cuando hay que configurar las opciones fue verificar que estaba tildada la opción de mi placa de red wireless :) . Además tuve que cambiar unas cositas en esa guía, primero, el comando fakeroot por fakeroot-sysv porque el primero comando me decía que no lo tengo. Segundo, me saltié el paso de crear un ramdisk (el paso 8) de la guía. Al terminar la instalación completa me daba este error al intentar bootear con el nuevo kernel:

Kernel panic - not syncing VFS: Unable to mount root fs on unknown - block (0,0)

Esto tengo entendido que es por ese paso que me saltié, pero no lo hice porque no me gustaba nada tener que bajar un paquete que no conocía de un lugar que no fueran los repositorios de debian, además era una versión del kernel muy vieja y decía que era algo novedoso la forma en que se trataba el RamFS. Quizás una maña mía nomás. Al final lo terminé haciendo de otra forma:

update-initramfs -c -v -k 2.6.27-rc6-rtl8187b-1

Esto me generó el archivo /boot/initrd.img-2.6.27-rc6-rtl8187b-1 el cual tuve que agregar a la entrada del nuevo kernel el archivo /boot/grub/menu.lst para que funcione correctamente.

Reinicié la máquina, bootié con este kernel y me fijé si se había detectado la placa wifi: perfecto. Me conecté al router, hice algunas pruebas, intenté switchear sobre los distintos modos (Managed, Monitor, etc) y funcionaba. Wiiii!

Pero todo no se puede, no tenía X porque los drivers de NVIDIA no estaban funcionando en este kernel :) . Igualmente lo que me importaba era testear a full este nuevo driver y pude hacerlo. Cuando hice un iwlist scan me detectó la red de mi casa con una señal de 100. Wow!! Nada que ver a los drivers que estaba usando con ndiswrapper, y cada tanto veo que oscila entre 90 y 100.

El próximo paso fue investigar como hacer para que funcionen correctamente los drivers de NVIDIA en el kernel 2.6.27-rc6 que es en dónde me está funcionando la placa wifi… Tema para otro post.

Update: Martes 23 de Septiembre

NOTA: la primer parte (instalación con ndiswrapper) fue probada en un Live-CD (32bit y 64bit) de Ubuntu también. La compilación de los kernel’s no, pero debe ser exactamente lo mismo. Mejorando esto, lo que conviene hacer es bajarse los drivers Beta de NVIDIA ya que no tienen ningún problema para instalarse.


Acciones

Información

20 respuestas

21 09 2008
Matías

Excelente!! Eso también me da esperanzas a mí que tengo una placa Encore rtl8185 y hace 3 ó 4 kernels reventaron la compatibilidad con el driver OpenSource que había dando vueltas así que no me quedó otra que usar ndiswrapper.

En cuanto a hacer andar los drivers de nvidia con tu kernel, de la misma forma que hiciste andar ndiswrapper: module assistant

Yo uso mucho la interfaz ncurses de m-a (ejecutando m-a directamente) que te hace todo, te actualiza los paquetes que le hacen falta, baja los sources que necesita y te compila para tu kernel. También le podés pasar opciones para hacer cross-compiling a una versión de kernel distinta de la que estás corriendo (siempre que tengas los headers instalados).

Suerte con eso, si necesitás una mano sabés dónde encontrarme :P

22 09 2008
humitos

Subí el paquete .deb al servidor de grulicueva.homelinux.net. Si no quieren compilarlo lo pueden descargar desde ahí. Los pasos a seguir son:

1. Descargar el .deb [click]
2. dpkg -i linux-2.6.27-rc6-rtl8187b-1_2.6.27-rc6-rtl8187b-1-1_i386.deb
3. update-initramfs -c -v -k 2.6.27-rc6-rtl8187b-1
4. update-grub

23 09 2008
humitos

Corregí el comentario anterior intercambiando los pasos 3 y 4 para que no haya que insertar unas líneas en el menu.lst

También compilé el paquete para AMD64 Bit DualCore, aunque el Kernel es de 32 bit. Click aquí para descargar.

25 09 2008
Nacho

bien Manuel!
yo tengo una placa interna en la laptop que utiliza el mismo chipset, y me resigné a utilizar los drivers con ndiswrapper. Es una Realtek. Voy a probar con todo esto que decís a ver si me anda, ya que la vez que tengo que conectarme es una historia (incluso no se que carajo hace que congestiona “el aire” a veces y desconecto al resto que tengo cerca jeje)

8 10 2008
davgon

oye, yo tambien tengo esa targeta, pero no la puedo hacer funcionar, puedes subir un manual o algo asi porfavor…

8 10 2008
humitos

davgon: ¿Cuál es el problema que tenés? ¿Cuál el error? ¿Qué no te anda? Sé más explícito por favor y te ayuda, pero si no sé que pasa no puedo ayudarte.

Saludos,

9 10 2008
davgon

claro, m ira mi [problema es el siguiente....

Kiero hacer funcionar la targeta antes mencionada en linux backtrack, como se sabe, no trae ese controlador....y por tanto no me reonoce el dispositivo...

Al ponerle lsusb, si me aparece como dispositivo conectado..

Pero cuando le pongo iwconfig, no aparece....

E intente instalar un controlador de la siguiente manera:

wget http://www.datanorth.net/~cuervo/rtl8187b/rtl8187b-unmodified-realtek.tar.gz
tar xzf rtl8187b-unmodified-realtek.tar.gz
cd /root/rtl8187B_linux_24.6.1024.0822.2007
makedrv
wlan0up

y cuando puse el makedrv... me marco el siguiente error:

rm -fr *.mod.c *.mod *.o .*.cmd *.mod.* *.ko *.o *~
make -C /lib/modules/2.6.21.5/build M=/root/rtl8187B_linux_24.6.1024.0822.2007/ieee80211 CC=gcc modules
make: *** /lib/modules/2.6.21.5/build: No such file or directory. Stop.
make: *** [modules] Error 2
rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
make -C /lib/modules/2.6.21.5/build M=/root/rtl8187B_linux_24.6.1024.0822.2007/rtl8187 CC=gcc modules
make: *** /lib/modules/2.6.2

despues me dijeron que bajara el controlador de la siguiente pagina:

http://www.aircrack-ng.org/doku.php?id=r8187b

Pero sinceramente soy nueo, y no supe como instalarlo…

Crees poderme ayudar???

10 10 2008
humitos

davgon: yo justamente no pude compilar ese driver que mencionás al principio, es por eso que me compilé mi propio kernel (la versión 2.6.27) para que soporte esta placa wifi. Igualmente el driver es EXPERIMENTAL, aunque funciona bien.

Te diría que intentes compilar el kernel siguiendo el tutorial al cual linkeo desde mi blog.

Con respecto a lo de aircrack, eso es un programa para sniffear la red, no tiene nada que ver con drivers.

22 11 2008
Lorenzo

Buenas, primero aclaro que no me dedico a esto, soy un simple usuario de windows desde el 3.11 hasta xp por ahora, y estoy pasando demaciado tiempo buscando algun tutorial para “auditar wireless” bajo xp, en principio necesitaria algún driver para hacer funcionar la ENUWI-G2 Encore 8187L, no “B”como tienes tu, en modo monitor, alguna idea??? gracias

23 11 2008
humitos

Lorenzo: la verdad que sobre windows no tengo mucha idea, te diría que nada en realidad. Te puedo decir que con los drivers que trae mi placa: la “B”, no se puede poner en modo monitor en Windows XP. De hecho en la página oficial del producto dice que dicho modo no está soportado por la placa, asique no tengo idea como se podría hacer.

24 11 2008
Mosiño

solo basta con bajar el driver que mensionas e instalar lo para que quieres todo un fin de semana en diez minutos esta este es el que me funciona
r8187b-2.6.25-hirte.tar.bz2
http://hirte.aircrack-ng.org/r8187b-2.6.25-hirte.tar.bz2
solo instalalo con make y listo

2 12 2008
darkblacklife

Hola, desearia saber si los clientes torrent te han funcionado bien con este kernel, yo tengo debian etch para 64 bits y desde el kernel 2.6.23 pude hacer andar el enuwi-g2 usb pero siempre que corrí los clientes de torrents se me termina colgando la conexion (y no habiendo descargado casi nada y a re-baja velocidad)… por cierto el router es un netgear WGT624v3

Aca te dejo la web donde platie el problema:
http://www.esdebian.org/foro/19635/problemas-clientes-torrent-debian-etch

12 12 2008
chugue1

Tengo una tarjeta Encore ENLWI-G2, no sé cómo pasarla a modo monitor en Windows XP, si alguien supiera qué programa descargar o cuál chip pueda utilizar para su funcionamiento, enbuenahora. Les dejo mi msn para que me den la respuesta: chugue1@hot…

21 12 2008
robert0502

hola que tal yo tengo instalado ubuntu 8.10(con el nuevo kernel 2.6.27) tengo una rtl8187b y instale todas las actulizaciones requeridas y me funciona bien la wireless pero instale aircrack y al momento de ponerlo en modo monitor no me captura paquetes y cuanto quiero inyectar se pasma la maquina y tengo que reiniciar en la paquina de aircrack hay dos parches para el kernel 2.6.27 un parche sirve para inyectar y otro dice mac80211 pero no se como utilizarlos alquien me puede ayudar. GRACIAS

22 12 2008
humitos

El driver de esa versión del kernel se encuentra en estado EXPERIMENTAL por lo que no es muy confiable el resultado del driver. Cuando probé aircrack con ese kernel y con mi placa, me funcionó: pude obtener una clave WEP pero me fue imposible inyectar paquetes a la red, siempre que lo hacía me daba Kernel Panic. Supongo que habrá que esperar a una nueva versión del driver para ver si esto funciona o no. Saludos,

23 12 2008
robert0502

hola que tal tengo unas preguntas: lograste obtener la clave WEP con un chipset rtl8187b y que controlador utilisaste fue este (r8187b-2.6.25-hirte.tar) yo lo utilice en ubuntu 8.04 parcheando el kernel pero me capturaba muy pocos paquetes y me iba a tardar mucho tiempo asi que decerte en el intento.

si es este (r8187b-2.6.25-hirte.tar) lo voy a instalar en ubuntu 8.10(con el nuevo kernel 2.6.27) pero como desistalo el controlador que ahora esta funcionando o solo pongo airmon-ng stop wlan0
y compilo e instalo el nuevo controlador y levanto la wireless
y listo? y preciento que me va asalir algun error de que se sale del directorio jejeje

11 02 2009
Configurar una placa wifi Airlive wmm3000pci en Debian « Humitos

[...] Configurar una placa wifi Airlive wmm3000pci en Debian 11 02 2009 Resulta que siempre que me hablan de placas wifi y GNU/Linux se me pone la piel de gallina. Existen muchas placas wifi en el mercado que actualmente no están soportadas por GNU/Linux, como por ejemplo la plaquita USB que intenté configurar hace un tiempo atrás y lo comenté en otro post. [...]

18 03 2009
seba

hola humitos, me estoy metiendo un poco en el tema de la auditoria wireless, y tambien en linux, ahora tengo instalado un mandriva en un maquina virtual, (windows seven en la principal) pero no doy pie con bola con el linux me esta volviendo loco, quiero auditar cuan fuerte son las claves wep-wpa-wpa2 q tiene un cliente, pero ni siquiera puedo instalar la placa wireless rtl8187b de realteck en este sistema operativo… estoy a punto de tirar el linux al diablo, tendras algun instructivo paso a paso para instalar la placa y otro para auditar/crackear las claves wep wpa? saludos y muy bueno el bloq! sebastian.

18 03 2009
humitos

seba: Hola, acá hay varias cosas. Decís que tenés un Linux Mandriva instalado en una máquina virtual, por lo tanto, sinceramente no creo que puedas instalar el driver de la placa wifi en esta máquina ya que el emulador que estés usando debería soportar esta placa y hacer la emulación correspondiente, lo cual no creo que haga :(

Por otro lado está el tema de la auditoría de wifi. He visto hace un tiempo atrás que estuve pensando el tema, una distribución en modo LiveCD que sirve para hacer esto. La verdad que no la he probado, pero parece que está muy buena. Es un derivado de Slax. Te paso el link:

http://www.remote-exploit.org/backtrack.html

9 04 2009
Qfito

Hola que tal humitos una pregunta veo que tu post lo hiciste en el 2008 y quería preguntarte si con el Kernel que mencionas es con el que solo funciona esta guia, en este momento veo que hay una versión en http://www.kernel.org que es esta linux-2.6.27-rc9 crees que con esta funcione o cómo puedo saberlo.
Agradecería tu respuesta

Deja un comentario