Showing posts with label linux. Show all posts
Showing posts with label linux. Show all posts

Sunday, August 10, 2008

Supervisión de procesos en UNIX

No sé si existe algo parecido para servidores windows, si lo hay, irremediablemente conllevará su paso por caja, aunque este no es el tema de hoy.

Me imagino que muchos de vosotros habréis sufrido la caída de servicios o procesos en vuestras máquinas Unix, ya sea en el trabajo o en vuestra casa, y hasta pasado un buen tiempo no os habréis dado cuenta, con lo que eso supone: usuarios enfadados, la peli que te estabas copiando por rsync parada, tu sistema de seguridad caído, tu mythtv parado obligándote a levantarte del sofá, un dns que administras parado, tu web caída....
Pues bien, daemontools se encarga de monitorizar los procesos que le indiques y los levantará automáticamente si estos han caído por algún motivo.

Si quieres aumentar la productividad de tus aplicaciones, es recomendable que utilices daemontools , este paquete, que no he conseguido encontrar en los repositorios de Ubuntu es tu salvación.

A continuación expongo los pasos a seguir para hacerlo funcionar en Ubuntu Hardy 8.04, aunque también puedes instalarlo en tu distribución preferida. Yo por ahora sólo lo he probado en Gentoo y Ubuntu.

apt-get install build-essential
mkdir -p /package
chmod 1755 /package
cd /package
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
gunzip daemontools-0.76.tar
tar -xpf daemontools-0.76.tar
rm daemontools-0.76.tar
cd admin/daemontools-0.76
touch /etc/inittab
package/install

Aquí seguramente te dará un error del tipo "/lib/libc.so.6: could not read symbols: Bad value"
para solucionarlo y poder compilar sin problemas sólo tienes que editar el fichero "error.h" y eliminar la línea "extern int errno;" sustituyéndola por "#include <errno.h>" Después de ésto ya podrás ejecutar sin errores package/install. Una vez instalado dentro del directorio /service/ deberás crear un directorio por cada proceso que necesites supervisar y dentro del mismo crear un fichero ./run donde indicar el proceso a ejecutar. Puedes incluir también variables de entorno creando un subdirectorio ./env y también generar logs.

Para ver todas las posibilidades de este paquete lo mejor es que vayas a tu frigorífico cojas una cerveza bien fría y te des un paseo por la web del autor.
http://cr.yp.to/daemontools.html

Tuesday, April 29, 2008

Como configurar una Hauppauge WinTV-HVR-4000 en Ubuntu Hardy 8.04

[Actualizado 21/11/2008]
El wiki de linuxtv.org para la HVR 4000 ha sido actualizado, y para hacer funcionar la tarjeta viene muy bien sin tener que parchear el driver de v4l-dvb con "patch". Funciona tanto para TDT como para Satélite, ojo la orientación de las antenas es importante, así que asegúrate que tus antenas se orientan a la estación base o satélite correspondiente :-)

Pruébalo antes de seguir este tutorial, si no te funcionara, que seguro que sí, sigue este método. En los comentarios de la entrada se encuentra un backup del patch, por si no funciona el wget.
Si quieres hacer funcionar el mando con kaffeine, mira la entrada que he escrito al respecto.

Hace ya algún tiempo que se me quedó clavada una espina al no poder hacer funcionar "completamente" sobre software libre mi tarjeta de televisión, concretamente el modelo que cito en el título.

Esta tarjeta, es una sintonizadora híbrida de Alta Definición con 5 formatos de TV: Televisión Satélite Alta Definición, TDT Alta Definición, TDT, Televisión Digital Satélite y TV Analógica, también permite la sintonización de canales de radio analógicos y digitales. Vamos un todo en uno cuyo único inconveniente es que sólo tiene un sintonizador, con lo que sólo puedes sintonizar y grabar un mismo canal, no puedes ver por ejemplo un canal en tdt y grabar otro en satélite.

El caso es que su desarrollo en linux está nunca mejor dicho en desarrollo y los drivers existentes son muy experimentales, aunque siguiendo los pasos correctos podrás hacerla funcionar en linux.
Partimos de una instalación limpia de el nuevo y flamante Ubuntu Hardy 8.04.



sudo apt-get install mercurial patch

Instalación del Firmware:
*************************
1) Primero guardamos el archivo : "wget ftp://167.206.143.11/outgoing/Oxford/88x_2_119_25023_WHQL.zip"

2) Descomprimimos lo necesario : "unzip -jo 88x_2_119_25023_WHQL.zip Driver88/hcw88bda.sys"

3) Ponemos el firmware en su sitio : "dd if=hcw88bda.sys of=/lib/firmware/tukernel/dvb-fe-cx24116.fw skip=81768 bs=1 count=32522"

Instalación del Driver:
***********************
En este caso yo he utilizado los de tipo multifrontend, que son los que nos permitiran seleccionar canales tanto de tdt como de satélite.

#puede que los modulos cx88 que vienen por defecto en ubuntu sirvan para otro modelo de tarjeta, ahora, lo que sé seguro es que para la hvr4000 no funcionan. Por eso borramos a continuación.

sudo rm -r /lib/modules/tukernel/ubuntu/media/cx88

#No todas las versiones de los drivers v4l-dvb funcionan a la hora de compilarlos para esta tarjeta, la versión que si funciona en Ubuntu Hardy 8.04 es la siguiente:
cd /usr/src/
hg clone -r 127f67dea087 http://linuxtv.org/hg/v4l-dvb

# nos bajamos el ultimo parche estable para el driver

wget http://dev.kewl.org/hauppauge/mfe-7285.diff

#aplicamos el parche
patch -d v4l-dvb -p1 <>

He probado con Kaffeine y funciona perfectamente tanto en tdt como en satélite, lastima que Hispasat no emita ningún canal abierto en HD. Todo será cuestión de buscar otro satélite ;-)

Actualización:

1.- Los soft links que creamos en el paso final, desaparecerán si reiniciamos, así que lo mejor es crearlos cuando nuestro linux se carga, para ello nk82 explica en los comentarios cómo crear un script de inicio en /etc/init.d/

2.- Si decides instalar Mythtv y añades todas las sintonizadoras de la tarjeta (tv analogica, tdt y satélite) cuando ubuntu carga el mythbackend dedsde /etc/init.d/ produce que nuestro kernel de errores con el firmware, puede que mythtv esté intentando acceder al firmware antes de que se haya cargado correctamente, no estoy seguro. El error es del estilo " kernel: [ 5001.194966] cx24116_readreg: reg=0x9d (error=-121)". Para pasarlo por alto lo que he hecho yo de primeras ha sido un sudo update-rc.d -f /etc/init.d/mythtv-backend remove , así no se cargará al inicio. Deberemos ejecutarlo manualmente.

3. Debido a las incompatibilidades de este driver con las webcam usb, de primeras no podrás hacer funcionar tu webcam y la tarjeta al mismo tiempo. Hace algún tiempo públique esta incompatibilidad en la lista de distribución de linuxtv-dvb y hasta la fecha nadie ha contestado. Parece que hay gente que lo ha conseguido, pero ha tenido que compilar de nuevo el kernel y hacer un make-kernel links, si quieres más información lee la información que envié a la lista de distribución de linux-tv.
También gracias a nk82 que me dió la idea, puedes salvar este pequeño inconveniente si utilizas la entrada analógica de la propia tarjeta!!, así deberás utilizar el cable conversor de s-video a RCA que viene con la propia tarjeta, no utilices otro porque puede que no te funcione y te vuelvas loco pensando cual es el problema. Este conector de s-video tiene 7 pines y captura en color, con uno de 4 pines conseguirás capturar en blanco y negro.
Busca alguna cámara que tenga salida de rca de vídeo y cuando configures tu programa con webcam configúralo con la entrada Composite, si no te funciona prueba con s-video.


Agradecimientos a:
Ian Bonham, Hagen Schöbel, nk82 y demás colaboraciones de la lista de distribución linux-dvb at linuxtv.
También a la documentación existente en el wiki de linuxtv.org
y a lo que fue mis inicios y peleas con esta tarjeta en el post de Vicente Navarro sobre la hvr-3000

Tuesday, October 09, 2007

Recuperar la fonera y ponerla en modo repetidor

Todo esto empezo por culpa de mi amigo Vicente, el cual me regaló una fonera hace ya algún tiempo.

Después de mis experiencias con fon intenté (por eso de la seguridad) cambiar el firmware de la fonera abriendo el acceso ssh mediante un hack para una versión temprana del firmware de fon. Pasados dos o tres días de juguetear con firmwares y configuraciones conseguí inutilizara y convertirla en un ladrillo (fonera brick).

Por fín pude comprar los componentes electrónicos que necesitaba para conectarme mediante cable serie al mini router de fon y poder así sacar a la fonera de su estado de completo bloqueo. Esta conexión serie la he descubierto gracias al blog de Iván López.
Así, para poder sacar a la fonera de su colapso necesitaremos montar un circuitillo sobre una placa de pruebas con los siguientes componentes:

- 4 condensadores electrolíticos de 1 uF.
- 1 condensador electrolítico de 10 uF.
- Un chip MAX232.
- Un cable serie.
- Cables varios paras las conexiones.

Para el cable serie corté uno que tenía por la mitad, ojo que hay que utilizar sólo tres conexiones del cable serie y los colores nos pueden marear un poco. Para saber exactamente cual es el color correspondiente a cada conector lo mejor es abrir el conector DB9. En mi caso resultó ser que el de color rojo correspondía con la toma de tierra.
Para realizar las conexiones en el circuitillo utilicé cables de altavoces antiguos que no usaba, no muy cómodos ya que el cobre estaba formado de muchos filamentos y tenía que tener mucho cuidado al conectarlo en la placa.

El circuito necesario para conectar el cable serie al ordenador viene explicado en sodoityourself.com. Básicamente consiste en realizar el circuito de la figura:


A mi me quedó lo que podéis ver en las fotos siguientes:







Una vez conectado todo, lo mejor es seguir este post dónde se explica cómo re-vivir al cacharro.
Y para instalar dd-wrt vía redboot lo mejor es seguir estas instrucciones de la web oficial dd-wrt. Una vez instalado dd-wrt ya podremos cambiar de firmware acudiendo al apartado correspondiente dentro de la interfaz web de configuración del router.

Así, teniendo la fonera operativa, fui corriendo a instalar Linux de nuevo, concretamente dd-wrt una distribución que tiene firmwares disponibles para nuestra fonera. Me quedé con ganas de probar open-wrt, pero ésta distribución no viene acompañada de una interfaz web desde la que poder realizar todas las configuraciones. Aunque seguramente la probaré en breve.
Dentro de la web de dd-wrt hay que elegir con precaución el firmware a instalar, los que aparecen como betas dan bastantes problemas con el modo client bridge y lo mejor es coger una "release candidates", en mi caso instalé el firmware DD-WRT v24 RC2 en su versión para la fonera.


Modo repetidor
El modo client bridge del punto de acceso es el que nos va a permitir utilizar la fonera como un repetidor de señal, muy útil para expandir la señal de nuestro router principal a partes de la casa separadas por paredes o muy alejadas, a las que no les llega señal suficiente del router principal, con lo que la navegación se hace muy lenta y la transmisión de vídeo se hace impensable.

Para configurar la fonera en modo client bridge lo mejor es seguir estos pasos y añadiendo que cada vez que pulsemos sobre save settings deberemos hacer un apply settings y esperar unos segundos para que aplique los cambios. Para comprobar que el bridge es correcto deberemos conectar un PC a la toma ethernet de la fonera y comprobar que llegamos con ping tanto al router principal (192.168.1.1 p.ej) como al router la fonera (192.168.1.2 p.ej) ojito con el firewall de windows, deberéis habilitar la solicitud de eco...
Una vez comprobado que el bridge es correcto procederemos a crear un interfaz virtual con el nombre y seguridad que queramos, pero en modo bridge también, para que pertenezca a la misma subred del router principal. Esta interfaz virtual será la señal wireless a la que nos conectaremos desde la zona alejada, así y a falta de configurar el dhcp deberemos indicar al PC la siguiente configuración wireless (para este ejemplo):

dir IP: 192.168.1.7
mask: 255.255.255.0
puerta enlace: 192.168.1.2
dns: 192.168.1.1

Una vez unidos a la red de la interfaz virtual y con esta configuración de IPs puedo disfrutar de una señal wireless excelente pasadas 5 paredes, cuando antes la señal era casi nula. También puedo acceder a los archivos del servidor p2p e incluso ver las películas con VLC en streaming

Los retardos de las señales son bastante buenos y no superan los 4 milisegundos. A continuación pego los retardos que estoy obteniendo mientras escribo este post desde mi habitación ;-)


Al router principal con la conexión ADSL:

Reply from 192.168.1.1: bytes=32 time=4ms TTL=254
Reply from 192.168.1.1: bytes=32 time=3ms TTL=254
Reply from 192.168.1.1: bytes=32 time=3ms TTL=254
Reply from 192.168.1.1: bytes=32 time=3ms TTL=254
Reply from 192.168.1.1: bytes=32 time=4ms TTL=254
Reply from 192.168.1.1: bytes=32 time=3ms TTL=254


Al router la fonera en modo repetidor:

Reply from 192.168.1.2: bytes=32 time=2ms TTL=64
Reply from 192.168.1.2: bytes=32 time=2ms TTL=64
Reply from 192.168.1.2: bytes=32 time=2ms TTL=64
Reply from 192.168.1.2: bytes=32 time=3ms TTL=64
Reply from 192.168.1.2: bytes=32 time=3ms TTL=64
Reply from 192.168.1.2: bytes=32 time=2ms TTL=64
Reply from 192.168.1.2: bytes=32 time=2ms TTL=64

Wednesday, August 22, 2007

Cómo llevar tu música siempre contigo

y además que no te pese...
hoy se me ocurrió no utilizar las redes p2p para descargar música, recordé que en España tenía una buena colección de temas y bien o no era viable copiarlos a mi portátil de UK o no me apetecía buscar todas las canciones y ponerlas otra vez a bajar.
De nuevo me encontraba con mi servidor windows en Alicante y mi Ubuntu en Londres.
Me puse a buscar alguna herramienta de código abierto que realizara algún tipo de streaming para comprobar su calidad en esta situación, así llegué hasta Firefly Media Server antes llamado mt-daapd, según cuentan en su web, el propósito de este proyecto es crear el mejor software servidor de música digital para Roku Soundbridge e iTunes; ser capaz de servir la más amplia variedad de música sobre el rango más amplio de dispositivos.
Para ello utiliza el protocolo daap, protocolo introducido por Apple en el software iTunes que proporciona una manera para compartir contenidos a través de una red de área local.
El software de Firefly está más optimizado para Linux, y la versión disponible para Windows es una beta (nightly snapshots) , era esta versión la que necesitaba, así que había que arriesgarse. Además de esto, es necesaria la instalación de Bonjour for Windows, software de Apple que permite el descubrimiento automático de dispositivos o PCs.

Desde Firefly configuraremos la ruta donde se encuentra la música, así como el puerto del servidor que vamos a utilizar.




Hasta aquí ya estaría todo montado si quisieramos acceder a la biblioteca musical desde una red de area local. Para poder "anunciar" el servicio de streaming daap a través de subredes es necesario instalar también RendezvousProxy, esta aplicación nos preguntará por la dirección IP del servidor de música, el nombre con el que queremos anunciar la biblioteca y el protocolo que queremos utilizar, en nuestro caso utilizaremos _daap._tcp.local. Así nuestro servidor Firefly media server estará sirviendo contenidos desde la IP 192.168.1.22 (por ejemplo) y por el puerto 3689 a toda nuestra red de area local. Además estará anunciando el servicio vía daap en esa misma IP.



Bien, una vez terminada la parte del servidor tenía que conectar mi portátil constipado por la lluvia de Londres en pleno agosto.
Para ello establezco una conexión ssh de la siguiente manera:

ssh -L 3689:localhost:3689 usuario@maquina.dominio -N -f


tunelizando el puerto donde se anuncia el servicio del servidor.

Desde la parte de cliente he utilizado el reproductor de música Amarok, seguramente se podrá realizar con alguno más, pero en este caso a parte de ser un excepcional reproductor, es compatible con el protocolo daap. Para poder conectarnos al servidor desde Amarok, entraremos en la pestaña devices y desde allí pulsaremos la opción de List music from a remote host, nos pedirá dirección IP y puerto, aquí deberemos introducir como IP la 127.0.0.1 y puerto el 3689.
Una vez hecho esto, ya tendremos acceso a toda nuestra biblioteca de música a distancia.



Aún no me ha dado tiempo a investigar configuraciones del montaje, tal cual funciona bastante bien y desde Londres se escucha perfectamente con un caudal de unos 20 kbytes por segundo.
Me queda por probar una conexión parecida desde la PDA...

Friday, August 17, 2007

Los bits no entienden de fronteras

los bits, al igual que la luz, las nubes o el viento, fluyen y no es posible mantener un férreo control sobre ellos.
Una de las cosas que no entiendo es por qué se limita la televisión a ciertos territorios de la red, véase países, con la de ventajas que tendría dar una externacionalización a los canales de un país. Las cadenas podrían llegar a una audiencia mucho más amplia, los anunciantes por tanto también y los proyectos de inversión de capital en ese país podrían aumentar en gran medida.
Bien es verdad que la televisión en España deja mucho que desear a excepción de algún que otro programa, pero que pasa si al igual que otras muchas personas te ves en la necesidad de emigrar y trabajar en otro país. ¿Ya no tienes derecho a ver tu televisión?, la tele de toda la vida, la de tu casa...

A día de hoy empiezan a moverse todos estos temas en Internet, hace poco que Zattoo da servicio de televisión por países(sólo algunos), esto es, te bajas un programita de esta empresa y puedes ver los canales públicos de televisión desde el país que te conectas. Esta innovadora idea por parte de Zattoo empieza a reportarle problemas por neandertales que no lo ven con buenos ojos.
No sé si éstas personas ancladas en el pasado piensan que es más fácil controlar las señales de televisión PAL sobre UHF y sus receptores Yagui repartidos por toda la geografía Española. Es más, que levante la mano el que conozca a alguien que tenga un cacharrito de esos de medida de audiencia que manda a Mordor el canal que está viendo en cada momento. ¿de verdad existen? y si existen cómo se puede medir de forma tan fiable las audiencias de los programas. Me hace mucha gracia cuando leo algo relativo a tal programa tiene una audiencia de no se cuantos mil y un televidentes.

Hace poco hablaba de que en breve comenzará it crowd en Reino Unido y enlazaba con un buen artículo en el cual, gracias a la tecnología, podemos saltar las vallas del IP, y hacer creer a cualquier proveedor de contenidos que nos estamos conectando desde otro país al que realmente estamos. El artículo en cuestión puede servir a algunos cuantos, pero a mí no me funcionó todo lo bien que en un principio pensé. Los anchos de banda que manejaba no eran lo suficientemente buenos como para ver nada con una calidad aceptable.

Así que se me ocurrio otra cosa. Hace unos años utilizabamos el VHS para grabarnos los programas de la tele y verlos luego, actualmente hay grabadores de DVD o de disco duro que pueden servir en cierta medida, pero yo quería un sistema que no dependiera de un medio físico y fuera de bajo coste, por contra perderíamos un poquito de calidad en la imagen.

Gracias a que mis padres tienen en nuestra casa de Alicante una conexión a Internet y dos ordenadores conectados a ella, es posible ejecutar Zatto en uno de ellos y como si fuera una extensión de mis ojos, poder grabar mediante captura el informativo de las ocho y media de La2, para después enviarlo a mi PC en Londres.

Esto es posible realizarlo tanto en Linux como en Windows XP, no sé si en Vista es posible. Si utilizas Windows, que es el caso de mis padres(aunque tiempo al tiempo), necesitarás primero y obvio descargarte Zattoo y luego un capturador de vídeo y audio, como por ejemplo oRipa Screen Recorder. Para windows todo se hace más dificil, no sé si es posible programar la grabación de un canal, estuve mirando el Task Scheduler, pero no me ofrecía todo lo que yo necesitaba. Así, lo que hago es conectarme vía vnc tunelizado en ssh, encender zattoo y comenzar a capturar a mano. Una vez finalizada la captura envío por scp el vídeo a mi ordenador de Londres.

Aunque mi portátil sí utiliza Linux el ordenador que hace de servidor no lo hace, si el servidor fuera Linux también, programar la grabación sería posible, vía crontab sólo habría que indicar el script a ejecutar.
El programa que utilizo en Linux para capturar la pantalla es gtk-recordMyDesktop y la versión para Linux de Zattoo.
El script que se podría utilizar debería arrancar Zattoo y comenzar la grabación vía recordmydesktop cuyo man indica todas sus posibilidades por línea de comandos, cosa no posible de personalizar en oRipa Screen Recorder para Windows.

Un ejemplo de script sería este:

#! /bin/bash
#how to select automatic zattoo channel?,any zattoo programer could help us?
echo "loading zattoo..."
/usr/bin/zattoo_player
echo "saving file..."
recordmydesktop -width N -heigh N --no-cursor -channels N -freq N -device hw:0,0 -o outputfile-$(date +%d-%m-%Y)


En el crontab bastaría meter el script para que se ejecute a una hora y matar el proceso de captura a la hora que queramos por ejemplo con un

killall recordmydesktop

una vez matado el proceso y esperando un tiempo prudencial para que el vídeo sea renderizado podríamos enviarnos el fichero mediante scp al PC del país en el que estemos viviendo:

scp ArchivoOrigen usuario@host:directorio/ArchivoDestino

teniendo almacenadas las claves criptográficas de ambas máquinas ganaríamos en automatización.

Podríamos llamar a éste metodo algo así como regreso al futuro del VHS...

Monday, August 06, 2007

Fonera brick


después de la experiencia siendo FON, me decidí a dotar de una mayor seguridad al router de la fonera, ya que el firmware que en su momento venía con ella no estaba del todo optimizado. Había oído que en FON se habían basado bastante en estándares abiertos y que era posible instalar linux sobre ella concretamente dd-wrt or open-wrt. Estas distribuciones vienen de serie instalada en la segunda marca de Cisco, Linksys, la cual tengo entendido que se denominará en breve con la marca Cisco.

Mi idea rondaba la modificación de iptables con algo tipo rp_filters, pero mediante el firmware de FON no podía comprobarlo, así que instalé dd-wrt siguiendo un tutorial y se abrió un mundo de posibilidades para configurar el cacharrito, claro, también perdí la garantía, lo cual tampoco me importó mucho.

Una vez instalado probé la fonera como repetidor de señal wireless de otro router en modo client-bridge y funcionaba perfectamente. Me gusto tanto las posibilidades de mi nuevo cacharrito que olvidé lo del iptables. dd-wrt incluso te permite montar tu propio hotspot con página de acceso a internet pública, vamos montarte tu propio FON y encima poner tú las condiciones.
En fonera.info hay bastante gente discutiendo sobre sus posibilidades.

Finalmente me puse a re-actualizar el firmware, me equivoqué en algún paso, y la fonera se quedó en modo ladrillo, sólo encidende la luz de power, los leds wireless y wan piensa que no los necesita. Esta malita.
Pero como casi todo tiene solución, me falta pasar por la tienda de electrónica más cercana y comprar aquellos componentes que tanto utilicé en los primeros años de carrera, será lo que haga, aunque también hay circuitos hechos.

Con estos mini-apuntes seguiré en su momento...,

Sunday, April 08, 2007

Edición de vídeos en Linux

Llevaba algún tiempo con ganas de editar vídeo en Linux y aún no me había puesto por falta de tiempo. Cuando utilizaba Windows siempre lo hacía mediante Magix Video deluxe, ahora en el mundo del software libre descubro Cinelerra, una completa suite de edición de video con miles de opciones para juguetear, una pasada.

Sunday, March 11, 2007

Conectar linux a windows con vnc por ssh

Primero establecemos el túnel ssh entre los dos equipos para los que queremos establecer la conexión. En mi caso un linux de cliente y Windows XP de servidor separados miles de 1471.05 kilómetros.

ssh -L 5901:localhost:5900 -p 443 equipodestino

(sustituye equipodestino por la IP de tu servidor)

lo de establecer el ssh por el puerto 443 nos ayuda a saltarnos algún proxy de por medio, ésto nos obligará a configurar adecuadamente la parte de servidor y la redirección NAT.

Finalmente desde otra consola ejecutamos:

vncviewer localhost:1

Wednesday, March 07, 2007

Actualizando a Beryl 0.2.0

Añadiendo a las fuentes (sources.list) los repositorios de beryl "http://ubuntu.beryl-project.org" y realizando un update conseguimos actualizar la versión de beryl. En mi caso en un Ubuntu Edgy con gráfica Nvidia.
En el vídeo se puede observar el resultado, que aunque la captura del escritorio tiene alguna interferencia, en la práctica, el funcionamiento de beryl es perfecto, sin errores y con una buena velocidad.



Música: Dancoupe "Hoy a vuelto a suceder"

Wednesday, February 21, 2007

Cuídate de tu vecino (2)


Braveheart - Main theme


Dejé puesto el sniffer durante unas dos horas, mientras tanto iba paso a paso comprobando direcciones IPs y MACs. Observé la actividad que se realizaba tanto en red encriptada como en la red sin encriptar (pública). En la red encriptada no había ningún cliente conectado, pero en la pública aparecían dos! que exitazo de hotspot pensé yo, solamente hasta que miré un poco más allá y ví las direcciones MAC de los equipos allí presentes.
Por un lado teníamos la dirección (física e IP) de mi punto de acceso, luego otro cliente conectado, y por último un cliente con la misma dirección IP y MAC que la de mi punto de acceso. Habían envenenado el router, y también a cualquier equipo conectado a la red pública de la fonera.

"The implementation of the ARP protocol is so simple and straightforward that the receipt of an ARP reply at any time, even when there are no ARP requests outstanding, causes the receiving computer to add the newly received information to its ARP cache"

Así, mi cachondo vecino engañaba a los equipos que se conectaban a la red, les hacía creer que su propio ordenador era el router de acceso a Internet, y así todo el tráfico pasaría antes por él, con la posibilidad de analizar todo lo que enviara la víctima, y cuando digo todo es todo. Claves de correo, claves bancarias, conversaciones de messenger, telefonía IP... etc.,
En la actualidad, hay programas tanto para windows como para linux que permiten realizar éste ataque y dejar en bandeja toda intimidad de la victima, prefiero no enlazarlos pero los hay en buena medida.

¿Cómo reaccionaríais vosotros si os encontráis con esto? yo, después de repasar todos los insultos que me sabía, me calmé un poco y me puse a pensar qué datos habría podido enviar por la zona pública antes de darme cuenta del ataque. Pocos, muy pocos, pero importantes, como la contraseña del correo y la contraseña de acceso a Internet por Fon, algo más de tráfico pero sin importancia. Inmediatamente cambié las claves y resetee el router, por supuesto no apagué el ordenador y el modo monitor de mi tarjeta wireless seguía encendido...

Actualización: para los que les interese el tema he encontrado unos videos explicativos de ésta técnica de ataque, también llamada "Man in the middle", creados por Miggs.

Video1, Video2 y Video3

To be continued...

Tuesday, February 20, 2007

Cuídate de tu vecino (1)

Siéntense, cojan las palomitas y den al play, porque a continuación les voy a contar lo que me ha ocurrido ésta semana.




Hace unos días llegué a casa de trabajar y me dio por mirar las estadísticas de conexiones a mi punto de acceso FON, que hasta el momento sólo tenía conexiones mías.

Para que se entienda, un punto de acceso FON es un pequeño router inalambrico de un solo puerto que se conecta a alguno de los puertos libres del router con el que nos conectamos a Internet en nuestras casas. Así, este pequeño aparatito nos genera dos redes inalámbricas 802.11bg, una pública y otra privada con encriptación WPA, de manera que se puede utilizar la privada para que se conecte el dueño del router y otra pública para que se conecte la gente en general.

Pues bien, cuando ví las estadísticas, comprobé con alegría que alguien había comprado un bono y se estaba conectando gracias a mi conexión a Internet.
Los días siguientes comprobaba el uso que mi nuevo amigo hacía de la conexión de FON, miraba a qué horas se había conectado, cuánto tiempo, y qué cantidad de datos había descargado, todo ello indicado claramente desde la web de FON.

Sin pensar más allá, yo seguía haciendo un uso normal de mi conexión, seguía con mi portátil conectado por RJ45 y la pda conectándola a la señal pública de FON ya que la privada tiene encriptación WPA y no funcionaba del todo bien en la pocket pc. De buenas a primeras, empecé a observar cosas sospechosas. "Algo" había aumentado el ancho de banda disponible para la señal pública, estaba a "unlimited" cuando yo lo tengo siempre "a pachas" 50% para el público 50% para mí. También me fijé en que los niveles de señal de la fonera eran distintos para la parte pública y para la parte privada, cosa extraña, ya que éstas dos señales son generadas por la misma antena. Totalmente mosqueado probé a navegar desde la PDA por la señal pública de Fon, y joder, no funcionaba, ni siquiera había resolución DNS.
Al observar todas estas maravillas juntas supe que alguien estaba intentando algo con mi conexión.

Desenfundé portátil, cargue Linux, compilé drivers para mi adaptador ethernet en modo promiscuo, y puse en funcionamiento un sniffer para redes WIFI. En otras palabras, puse a mi ordenador en modo cotilla para que me dijera todo lo que se estaba haciendo en mi red de área local. Y allí estaba todo el pastel.

To be continued...

Sunday, February 11, 2007

Cómo utilizar emule de manera segura en Linux

Realmente este post puede servir para utilizar con una mayor seguridad cualquier tipo de programa p2p, además de proporcionar un firewall mucho más afinado que los que vienen por defecto instalados en cualquier sistema operativo.
En este mundo en el que vivimos, hay empresas que no tienen nada mejor que hacer, que espiarnos mientras nos dedicamos a navegar o compartir ficheros por Internet. A parte también, existe algún mal nacido que se dedica a escanear nuestras conexiones intentando meter mierda en nuestros ordenadores. Para evitar la mayor parte de éstas intrusiones existen programas que consiguen bloquear las direcciones IPs de ésta mala gente.
Muchos de vosotros conoceréis PeerGuardian, un programita para Windows que nos sirve para bloquear conexiones indeseadas y nos da una seguridad añadida a la hora de utilizar programas p2p (emule, kazaa, bittorrent...).
Para Linux no existe una versión de éste programa, pero podemos utilizar Moblock, el cual se alimenta de listas de IPs tipo ipfilter.dat o también tipo peerguardian:
Moblock resulta mucho más eficiente que peerguardian en la gestión de memoria, no satura la RAM tan a saco como lo hace peerguardian, y deja informes de todo su funcionamiento en el directorio /var/log/

user@machine:~$ moblock

MoBlock 0.8 by Morpheus
Syntax: MoBlock -dnp [-b] [-q 0-65535]

-d blocklist is an ipfilter.dat file
-n blocklist is a peerguardian 2.x file (.p2b)
-p blocklist is a peerguardian file (.p2p)
-q 0-65535 NFQUEUE number (as specified in --queue-num with iptables)

Bien, ahora nos faltan las listas de IPs a bloquear, ¿de dónde las sacamos? pues bien, un programa muy bueno que dicen puede llegar a ser el sucesor de peerguardian es Blocklist Manager, disponible para Windows. BlocklistManager es un gestor de listas de IPs que estructura las listas de indeseados para que nosotros elijamos a quién queremos bloquear, si a los que hacen spam, si a robots, si a empresas contrarias al p2p...
Ajá, pero yo tengo Linux, ya me cansé de Microsoft... Entonces lo que hay que hacer para ejecutar Blocklist Manager en tu distribución, es usar Wine. Wine es una capa de programacion que le permite a Linux ejecutar programas diseñados para Windows y no viceversa.
Pero antes de poder ejecutar Blocklist Manager con Wine, deberemos instalar y configurar con cuidado Wine. Si tienes tiempo te recomiendo que leas la documentacion de Wine y lo configures poco a poco tu mismo. Si lo quieres hacer de manera rápida puedes instalar las Winetools junto con una versión anterior de Wine siguiendo éste "how to" de los foros ubuntu. Si te decides a seguir el "how to" te recomiendo no realizar el último paso dónde especifica actualizar la versión de wine, ya que por lo menos en mi caso, si actualizamos a la última versión de Wine, una vez ejecutemos Blocklist manager desde wine, no conseguiremos descargar las fuentes de IPs. En cambio si dejamos wine en la versión 0.9.5, si que podremos descargar las fuentes.
Finalmente podremos genererar con Blocklist manager un fichero de IPs de tipo peerguardian que será el que utilizaremos para que Moblock bloquee todos los accesos indebidos, para ello habrá que colocar el fichero generado por Blocklist manager en el directorio /etc/moblock y asegurarnos de estar ejecutando moblock.
Pues eso, ya podéis intercambiar vuestras cartas de manera más segura, sobre todo si os encontráis en algún país donde se dediquen a perseguir a los internautas.

Thursday, January 04, 2007

Instalando Ubuntu en VMWare sobre un XP Home

Después de recibir mi portátil con su disco duro nuevecito, hay que empezar a darle caña...