Encore ENUWI-G2 (RTL8187b) en Debian

/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.

25 pensamientos en “Encore ENUWI-G2 (RTL8187b) en Debian

  1. Matías dice:

    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😛

  2. humitos dice:

    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

  3. humitos dice:

    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.

  4. Nacho dice:

    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)

  5. davgon dice:

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

  6. humitos dice:

    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,

  7. davgon dice:

    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???

  8. humitos dice:

    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.

  9. Lorenzo dice:

    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

  10. humitos dice:

    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.

  11. Mosiño dice:

    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

  12. darkblacklife dice:

    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

  13. chugue1 dice:

    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…

  14. robert0502 dice:

    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

    • humitos dice:

      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,

  15. robert0502 dice:

    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

  16. […] 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. […]

  17. seba dice:

    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. humitos dice:

    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

  19. Qfito dice:

    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

  20. Aviator dice:

    Hola humitos, oye no aparece tu archivo .deb, lo podrias subir, porque yo tambien tengo esa tarjeta, y la verdad soy nuevo en linux, como para estar bajandome el kernel y hacer esas cosillas, uso ubuntu 8.4 y me instale el driver con ndiswrapper, pero al momento de intentarlo ponerlo en modo monitor me sale que el driver no lo soporta, y pues de ahi no puedo seguir.
    Si me ayudaras, de antemano gracias

    • humitos dice:

      Hace un tiempo que el driver para esta tarjeta de red ya viene en el Kernel de Linux, por lo que ahora no es necesario recompilar el kernel para tener soporte para esta tarjeta. Igualmente, no funciona muy bien, a veces falla y no se conecta a la red y cosas por el estilo.

  21. HOMERO dice:

    LA VERDA BATALLE MUCHO PERO CON BACKTRACK 4 BETA Y UNA ENCORE USB Encore ENUWI-G2 (RTL8187b
    BATALLE PARA INYECTAR TRAFICO CREO KE NO LO SOPORTA ESO PENSE
    ASI QUE INTENTE CON LOS PASOS DE BACTRACK 4 D EUN MANUEL BUSCADO EN GOOGLE AA POR SIERTO DURE DOS DIAS EN SACRA LA CLAVE PEOR BALIO LA PENA JAJAJA TUVE INTERNET AADEPSUES PONGO LOS PASO

    AA ESQUE ANDO CORTO DE TIME

    • jorge dice:

      HOMERO: porfavor podrás decirme que manual o qué pasos seguiste para lograr eso? te lo agradeceríamos cientos que estamos en la misma situación😀

  22. seba dice:

    flaco, me perdi unos minutos de mi vida leyendo tu experiencia.
    no se por que lo hice, normalmente no pierdo tiempo leyendo ni mucho menos contestando como lo estoy haciendo!
    te sugiero que busques info del backtrack. una vez que empieces a usar esto ya no pagas mas internet (obviamente, pasa a ser gentileza del vecino) y que no esta mal que inviertas en antenas potenciadoras de señal y todo el arsenal que puedas para aprender.
    Yo siempre digo: “aprender cuesta (tiempo y dinero)
    no saber cuesta mucho mas”

    si te parecio mucho $100 en una placa, saca la cuenta de cuanto gastas en una salida un fin de semana con tus amigos y ni hablar si te da bola una mina y tenes que pagar un telo!!
    en fin, pensalo. inverti.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: