domingo, mayo 06, 2007

Seguimiento del portátil por Internet

La idea se me ocurrió al recordar esta noticia sobre el caso de un programador de EE.UU. al que le robaron su ordenador portátil y pudo recuperarlo gracias a que ejecutaba el SETI@Home y este se conectó para devolver resultados, haciendo así posible averiguar la IP del equipo robado y la dirección del ladrón (está mucho mejor explicado en el enlace anterior).

El feliz propietario del portátil tuvo suerte, dió la casualidad de que tenía instalado ese programa y tuvo la idea de aprovecharlo, así que ¿por qué no hacer algo parecido con ese fin y con toda intención? Existen desde hace tiempo programas que se instalan en el portátil y se puede hacer un seguimiento del mismo y eventualmente recuperarlo en caso de robo, pero es un servicio por el que hay que pagar (más información).

¿Cómo podría hacerse algo más casero y que no cueste dinero? Muy sencillo: todos los que tenemos un blog o una página web usamos contadores de estadísticas para saber cuánta gente nos visita, desde dónde y muchas más cosas. Se trataría de que cada vez que se enciende el ordenador este accediera a una página nuestra especialmente preparada, es decir, que contenga uno de estos contadores de estadísticas y no esté enlazada desde ningún otro sitio, para que solo reciba las visitas generadas por nosotros. Así que solo se necesitan tres cosas:

1. Estadísticas web

Hay que crear una página web sencilla e insertarle un contador de estadísticas que se activará cada vez que la visitemos. Para este blog y alguna otra página que tengo utilizo StatCounter, que no está mal. He creado un contador nuevo, y además he visto que tiene una opción para que sea "HTML only" y que no utilice JavaScript, lo cual viene muy bien para el apartado que vendrá luego. Después de configurarlo al final obtengo un código en HTML para insertar en la web, que lo que hace es llamar a una página de StatCounter con unos parámetros especiales, que son los que hacen que se cuente la visita con cada petición.
Seguramente con otros servicios gratuitos de estadísticas podrá hacerse algo similar.

2. Acceder a la página

Se trata de que al encender el ordenador siempre se acceda a la página de forma automática y sin intervención nuestra. ¿Cómo hacerlo? Muy sencillo, con la utilidad wget, que se utiliza habitualmente para descargar ficheros y páginas web desde la línea de comandos o en scripts automatizados. Simplemente indicando la dirección del contador de estadísticas creado en el apartado anterior ya habremos hecho un acceso a él. Aquí cobra importancia lo que comentaba antes de que sea "HTML only", ya que de lo contrarío sería necesario interpretar código JavaScript, que es algo que los navegadores hacen desde hace año, pero que wget todavía no (que yo sepa). El comando a ejecutar sería simplemente algo así:

wget "http://c25.statcounter.com/counter.php?sc_project=XXXX&java=0&security=XXXX"

(he puesto X en vez de los numeros que salen realmente). Por cierto, no es necesario insertar el código en una página web y llamar a esta como decía en el apartado anterior, se puede llamar directamente al código del contador.

3. Ejecutarlo al inicio

Solo queda hacer que lo anterior se ejecute siempre al cargar el sistema operativo. Y para mejorarlo más, estaría bien esperar uno o dos minutos a cargar la página, para dar tiempo a que se habilite la conexión a la red (por cable o wifi). En Linux podemos añadir la siguiente línea al fichero /etc/rc.local o /etc/rc.d/rc.local (según la distribución):

(sleep 60; get "http://direccion_del_contador") &

La razón de ponerlo entre paréntesis y con el & detrás es para que los dos comandos se ejecuten secuencialmente uno detrás del otro en background o como tareá de fondo, ya que si no es posible que el arranque se detuviera en ese punto hasta terminar.

En Windows también se podría hacer, lo primero sería descargar el wget para ese sistema (que existir, existe) y preparar un archivo .bat con las dos instrucciones anteriores. La pega es que la orden sleep no existe en Windows, así que sería necesario también buscar alguna equivalente o usar un truco que leí el otro día para hacer pausas. Consiste en hacer un ping a una dirección inexistente y esperar la respuesta durante N milisegundos. Así que el archivo bat quedaría:

ping -w 60000 -n 1 12.34.56.78
wget.exe "http://direccion_del_contador"


Para ejecutarlo al encender el ordenador podemos crear un acceso directo en la carpeta de inicio automático del menú de Windows, o si nos lo trabajamos más ponerlo en el registro en HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run


A partir de ese momento podremos ver en las estádisticas una conexión por cada vez que encendamos el ordenador, su dirección IP y a que hora se hacen. Lo que no aparecen son datos como el sistema operativo o el navegador, debido a limitaciones de wget y del contador HTML. En caso de que nos robaran el equipo y lo conectaran a Internet sin formatearlo antes sabríamos desde donde lo hacen y quizás podríamos recuperarlo como en la noticia del SETI@Home. Es mucho suponer, pero independientemente de eso ¡es también muy geek! :-)

Idea: Si además de hacer la conexión al inicio la programamos cada hora (con el crontab o el programador de tareas), obtendremos una gráfica del número de horas aproximado que usamos el ordenador al cabo del día, que seguro que son demasiadas. Válido también para ordenadores fijos.

4 comentarios:

Javitronz dijo...

En efecto, es muy geek...

Ya puestos, haces que la IP la muestre en un mapa:

http://www.ip-adress.com/

Y así ya sabes si tu portatil ha salido de tu ciudad o no y en cual está en el momento que lo han encendido... :P

Anónimo dijo...

Buenos días

Alguien me puede decir donde está la tecla supr en el a100 999?? O como se saca esa letra? que combinacion de teclas?

Gracias y un beso.

OS_C dijo...

Meloncita, la tecla 'supr' (suprimir) es la tecla 'del' (delete), y está en la esquina superior derecha del teclado.

Un saludo.

Anónimo dijo...

aY....... suponía...

Gracias!!

He estado en la euskal party (ver info) y me he bajado de todo. Claro que al bajarme el nero, creo que me he cargado el dvd maker...

en fin...

un beso.