Abr 2 2010

Modems 3G USB para banda ancha móvil en Linux

Gabolonte Blasfemus

image Hasta el año pasado nunca me había planteado la adquisición por separado de ese producto que ofrecen las compañías de telefonía celular conocido como banda ancha móvil, ya que lo poseía adquirido al mismo tiempo junto a mi netbook LG X110 con Movistar. Pero los vaivenes en la calidad del servicio que cada vez eran peores, sumado a un problema con mi tarjeta SIM que al día de hoy no sé si se debe a un fallo de la misma o del modem 3.5G incorporado en la netbook, lograron que finalmente pidiera la baja del servicio. Pero como no sólo de Wi-Fi prestado vive el moderno hombre computadoril cuando se desplaza por la ciudad, tuve que plantearme rápidamente la compra de uno de estos paquetes por separado, y preferentemente en modalidad prepaga para no clavarme pagando un costoso abono por un servicio que nunca se sabe cuándo ni por cuánto va andar decentemente. En cualquiera de los casos, y para asegurarse un amplio espectro de conectividad con cualquier computadora de hoy en día, el hardware ofrecido junto con el servicio suele ser un modem 3G USB con forma de pen drive grandote, de los cuales hay varios modelos, todos fabricados por compañías chinas, siendo comúnmente las más encontradas Huawei y ZTE. Y más allá de que podría haberme ahorrado el costo de uno de estos periféricos y tal vez pedir directamente la SIM para el modem 3G incorporado en mi netbook, me parecía una buena idea hacerme con uno de estos dispositivos para probarlo y tenerlo como una suerte de internet de emergencia para cualquier equipo donde hiciera falta y no existiese otra opción.

image Ahora bien, ¿cómo se instalan estos bichos? Aunque nunca había tenido uno en la mano, ya sabía que todos estos modems contenían sus propios drivers en una suerte de unidad USB virtual que permitía al fabricante ahorrarse la fabricación y distribución de los CD de instalación, y a nosotros evitar perderlos. Pero su funcionamiento es un poco más complicado que eso: Básicamente, cada uno de estos modems 3G USB tienen dos modos posibles, los cuales no pueden ser simultáneos. El primero es uno en el cual la computadora los reconoce como una unidad de CD USB virtual, la cual contiene el software a medida creado especialmente para la operadora celular en cuestión, que instalará los drivers en el sistema operativo y la aplicación que realizará la conexión en sí. Pero además, una vez instalada dicha aplicación, cada vez que se ejecute la misma se encargará de switchear el periférico a su modo real de funcionamiento como modem, con lo cual el sistema dejará de ver la unidad de CD virtual y comenzará a detectar el modem 3G, que será reconocido correctamente gracias a los drivers instalados en el sistema durante la modalidad anterior. Este tipo de funcionamiento, aunque visto en detalle es complicado, le hace fácil la vida al usuario a la hora de instalar el dispositivo para conectarse a internet lo antes posible. Pero claro, lo dicho es sólo válido para los sistemas operativos comerciales más populares: Windows en las PCs, y Mac OS X en… errr… las Macs. Y algunas netbooks a cuyos usuarios Steve Jobs le gustaría ver tras las rejas o con sus casas rematadas, claro. ¿Y qué pasa en Linux?

En el sistema operativo más amado por los geeks estos modems también funcionan, pero hace falta tener en cuenta un par de pasos. En primer lugar, y como vimos de lo explicado antes, se deduce que el modo de CD virtual con drivers es totalmente inútil en Linux, ya que en ningún caso se incluyen drivers para éste. Pero el problema es que la modalidad por defecto al enchufar al puerto USB el modem es la de CD virtual, por lo cual cualquier sistema Linux no preparado lo verá únicamente de esta forma.

image La solución a eso está en un paquete llamado USB_ModeSwitch. El mismo, una vez instalado, se encarga de reconocer y activar al modem en su segundo estado, el de modem propiamente dicho, y luego instalarlo en el sistema como tal para que figure apropiadamente como hardware de banda ancha móvil.

Para instalar USB_ModeSwitch podemos hacerlo por la vía tradicional y más fácil utilizando apt-get o el software de administración de paquetes por defecto de nuestra distro. Deberíamos encontrarlo, claro está, bajo el nombre usb_modeswitch. Si este no es el caso a no desesperar, pues ingresando a la página oficial de USB_ModeSwitch podremos descargar la última versión, descomprimirla, e instalarla con el tradicional make install. Si estamos en un sistema de 64 bits o deseamos recompilar, será necesario previamente invocar un make clean.

Una vez hecho esto, todo lo demás es automático, y si nuestro poronguito USB está en la lista de dispositivos reconocidos debería ser detectado y configurado automáticamente a los segundos de ser enchufado. En caso contrario, será necesario un poco más de trabajo para configurar manualmente nuestro modem que ya tantos problemas nos trae. Lo que habrá que hacer es editar el archivo /etc/usb_modeswitch.conf, tecleando por ejemplo:

sudo gedit /etc/usb_modeswitch.conf

En el mismo debemos pegar todos la parámetros necesarios para nuestro modem 3G USB en particular. ¿Y de donde los sacamos se preguntarán? Si a alguien ya le sucedió esto con el mismo modelo de modem y era más inteligente y/o laborioso que nosotros, es muy probable que lo haya resuelto y además haya sido tan bueno de subir la configuración correcta al foro de USB_ModeSwitch, por lo que solo debemos hacer una búsqueda en el mismo para nuestro cacharrito en particular. Si este no es el caso, y no cedemos a las ganas de escracharlo contra la pared o usarlo sólo en Windows/Mac, podemos seguir estos consejos sobre cómo obtener los parámetros específicos sniffeando la conexión USB cuando el modem está funcionando correctamente con sus drivers bajo Windows, para luego armarnos nuestro archivo de configuración.

Pero a no preocuparse que en la mayoría de los casos actuales no deberíamos tener mayores problemas. En mi situación, mi modem es un ZTE MF110, el cual además  incluye un lector de tarjetas microSD, por lo que si le colocamos una luego al switchear al modo de funcionamiento real como modem el sistema operativo también reconoce a su vez un mass storage USB del tamaño de la microSD insertada. En el caso de mi Linux Mint 7, al conectar el modem automáticamente veo la unidad USB montada gracias a la microSD que le puse, además de figurar el modem en la lista de conexiones de banda ancha móvil:

image

Como pueden ver, en mi caso en particular sucede algo extraño, apareciendo dos veces el modem en cuestión (el Ericsson es el modem incorporado de la netbook que ya no uso por el momento), algo que puede deberse a haber conectado el modem en dos puertos USB distintos, existiendo para cada uno una instancia de la configuración creada por mí para mi operador. Pero sin importar esto funciona en uno o en otro dependiendo de en que puerto lo conecte.

Y antes de desesperarse, un consejo importante: Conecten el modem y vayan a buscarse algo para tomar, y tarden al menos un minuto en volver; tarda un tiempo un poco más largo del esperado el aparecer el dispositivo de banda ancha móvil en la lista del administrador de conexiones de red de Gnome, con lo cual nos puede parecer que no funciona ante la incipiente ansiedad de que lo haga.

Más info al respecto en BlogDrake y Zona de Sistemas.


Feb 11 2010

Ping a un puerto TCP en Windows con tcping

Gabolonte Blasfemus

El omnipresente ping siempre está ahí para ayudarnos, no importa en que SO estemos, para ayudarnos a determinar problemas básicos en una red o la disponibilidad de un host. Pero este clásico comando trabaja bajo el protocolo ICMP, el cual sólo nos permite verificar conectividad a nivel IP. Habrán muchos momentos en los que, ante la necesidad de chequear rápidamente algún servicio determinado en otro host, tendremos el impulso de utilizarlo, para luego darnos cuenta que no podemos hacer ping a un puerto TCP. Por supuesto, para eso bien podemos utilizar alguno de los numerosos scanners de puertos TCP que se encuentran disponibles tanto en versiones gratuitas como comerciales, pudiendo recurrir sin dudarlo incluso al venerado Nmap, la herramienta de escaneo de redes preferida de Trinity. Pero esto desmerecería el mismo propósito se simplicidad y rapidez que deseamos del comando ping. La solución? Un ping para TCP!

En el caso de Windows, alguien más inteligente que yo sintió esta misma carencia y desarrolló tcping, el cual es exactamente lo que cualquiera desearía para la tarea: Una pequeña aplicación de consola a la que sólo hace falta colocarle, como segundo parámetro después de la dirección del host, el puerto TCP al cual deseamos pinguear.

image

Pero tcping permite casi tantas opciones a la hora de ejecutarlo como su equivalente original en ICMP. La sintaxis completa es:

tcping [-t] [-d] [-i intervalo] [-n veces] dirección-host [puerto-TCP]

Donde:

         -t : Hace que pinguee continuamente hasta que se presione control-c
         -n 5 : Permite enviar un número especificado de pings, en este ejemplo 5
         -i 5 : Ajusta el intervalo de tiempo en segundos entre cada ping, en el ejemplo 5
         -d : Incluye fecha y hora en cada línea
         -b 1 : Emite pitidos (1 para cuando el puerto cambia a fuera de línea, 2 para cuando pasa a estar en línea, 3 para cualquier cambio, 4 siempre)

Si no especificamos el puerto al invocarlo, tcping automáticamente testeará el puerto 80, el estándar para el servicio web, del host especificado.

tcping es una excelente y práctica herramienta creada por Eli Fulkerson y publicada bajo licencia GPL, por lo que también está disponible su código fuente, y funciona perfectamente en Windows XP o superior, y posiblemente también en los inferiores. Totalmente recomendable para copiarla en el directorio de nuestro Windows y tenerla siempre a mano desde la consola.

Actualización/Advertencia: Esta herramienta es detectada por algunos motores antivirus como un troyano, para entender mejor el por qué recomiendo leer este post y sacar tus propias conclusiones.


Ene 5 2010

Connectify, un hotspot Wi-Fi desde tu Windows 7

Gabolonte Blasfemus

connectify Poco a poco comienza a verse software que hace que migrar finalmente desde versiones anteriores a Windows 7, que no está nada mal comparado con lo que fue Vista, termine valiendo realmente la pena.

Connectify es uno de esos casos, una aplicación gratuita que permite levantar nuestro propio access point inalámbrico en nuestra portátil (o desktop con adaptador inalámbrico) para así poder establecer un canal de comunicación fácilmente con otros gadgets, o el uso más común, compartir la conexión a Internet con estos. Su uso es ideal para, por ejemplo, brindar conectividad desde un equipo conectado por 3G a Internet a PCs o dispositivos nuestros o de nuestros amigos.

La seguridad no está dejada de lado en absoluto en Connectify, ya que nuestro hotspot contará automáticamente con protección WPA2-PSK con cifrado AES. En caso de que nuestros gadgets no soporten tal especificación, es posible habilitar desde la misma aplicación el modo Ad-Hoc con el inseguro (pero únicamente disponible en tal caso) cifrado WEP.

La posibilidad que esta aplicación brinda de levantar nuestro propio AP inalámbrico y además totalmente gratis es fantástica, más aún así debemos tener en cuenta que recién está en sus comienzos y no funciona en todas las configuraciones. En su sitio podemos ver una lista de adaptadores inalámbricos compatibles y otros que se sabe que no funcionan correctamente o que sólo lo hacen en el modo Ad-Hoc. Es también probable que nuestro adaptador aparentemente incompatible a la primera salga funcionando con una actualización de drivers y/o firmware, o no.

En mis pruebas encontré que corriendo Connectify, por ejemplo, desde mi netbook LG X110, sólo pude conectarme al hotspot creado en la misma desde mi notebook Acer corriendo Ubuntu Karmic, no así desde el Windows 7 que también reside en la Acer o desde mi HTC Touch Viva con WinMo 6.1, en los cuales ocurría un error de IP no asignada. En cambio cuando lo probé en el Windows 7 de mi Acer, sí pude conectarme sin problemas desde el Windows 7 de la LG, pero seguía sin poder hacerlo desde WinMo. Como ven existe toda una gama algo ilógica de compatibilidad que nos hace ver que aún le falta a este innovador software para ser tomado en cuenta como una opción seria; aún así es posible que nos sea de mucha utilidad en algunos casos.

Como mencionaba al principio, y debido a características especiales incorporadas recién a partir de dicho SO, Connectify sólo funciona en Windows 7 y Windows Server 2008 R2 (la “versión server” de 7). Por último, si quisiera pedirle algo más a este buen software además de mayor compatibilidad, seguramente sería la opción de incluir como opcional el soporte para WPA-TSK con cifrado TKIP, de manera de poder conectar también dispositivos y/o software más antiguos que no soporten WPA2.


Oct 24 2009

Gnome SSH Tunnel Manager, gestionador gráfico de túneles SSH para Linux

Gabolonte Blasfemus

Lanzar una conexión SSH desde Linux no es algo verdaderamente difícil, una vez superado el prurito a recordar/lidiar con un par de argumentos de la línea de comandos; tal vez lo más molesto sea tener que tipear toda la sentencia cada vez que lo necesitamos (aunque podríamos crearnos un script). Una opción más que interesante que un VDLC (Vago de la CLI) como el que escribe puede utilizar en este caso es Gnome SSH Tunnel Manager, o gSTM para abreviar, una aplicación gráfica para el entorno Gnome que permite definir y gestionar la cantidad que se nos plazca de conexiones SSH y los túneles que usaremos en cada una.

image

Todas las opciones y controles son bastante simples y minimalistas, por lo que si sabemos como establecer un túnel SSH al menos desde Putty, no deberíamos tener problemas de hacerlo en gSTM.

Para instalarlo en nuestro sistema Linux podemos bien descargarnos los fuentes para compilar desde su sitio oficial en SourceForge.net o instalarlo directamente a través del administrador de paquetes de la distro que estemos usando; por ejemplo en el caso de Debian y sus derivados como Ubuntu y Mint bastará con un:

(sudo) apt-get install gstm

Una opción muy interesante que esta GUI para SSH presenta además es la posibilidad de marcar las conexiones que deseemos para que se inicien automáticamente, ideal para su uso continuo y rutinario como por ejemplo para navegar de manera segura desde redes Wi-Fi públicas.

No podía recordar donde lo había visto, y después de haber buscado infructuosamente en el buscador de blogs y en el Reader de Google recordé que me enteré gracias a este comentario en D3ny4all.


Oct 15 2009

Cuando Internet era un privilegio en la oficina

Gabolonte Blasfemus

Aunque cada vez se muera más gente por hambre, enfermedades y guerras en este loco, loco mundo, es curioso como en otros aspectos, al menos una pequeña parte de el, muestra avances en tecnología que nos podrían poner muy optimistas si, claro, viviésemos en una nube de pedo permanente. Uno de esos avances es la creciente omnipresencia de la conectividad a Internet, que lo podemos ver en ejemplos como los de zonas alejadas del interior de nuestro propio país donde es posible encontrar lugares con acceso Wi-Fi pero sin red eléctrica, o como la movida que está impulsando el gobierno finlandés, el cual definió como un derecho de cada uno de sus ciudadanos el contar con una conexión de banda ancha de al menos 1 Mbps. Y sin mirar tan lejos podemos observar como hoy en día hasta al que atiende un quiosquito se le instala una PC con acceso a Internet para que pueda trabajar, aunque seguramente se pase luego el 90% del tiempo pelotudeando en Facebook o en fotologs.

image Pero hoy nuevamente me puse bostálgico, y me acordé de esos años locos en los que la banda ancha era una promesa de un futuro  que todos añorábamos y nuestro triste presente era el dial-up. Una época en la que los accesos a Internet se medían con cuenta gotas, a base de discriminar computadoras por IP y usuarios por contraseñas, todo en pos de repartir de la forma más eficiente posible esas gotitas de conexión al mundo en una época de amplios desiertos entre redes. Y me acordé de dos vejestorios en particular con los que me tocó lidiar para cumplir con tales menesteres: Uno de software y el otro de hardware.

Continue reading