lunes, abril 28, 2008

Estado de sitio en Bruselas

El otro día nos levantamos en la ciudad con unos nuevos carteles por toda la ciudad (o por lo menos en mi barrio). Nos han prohibido la salida de la ciudad bajo multa de 150€ y quién sabe qué más. Aquí os pongo un par de fotos para que veáis que no estoy de broma:


moroso
El cartél está a 50m de mi casa, en una calle normal y corriente (por lo menos al estilo de bélgica)

moroso
Aquí en detalle, arriba en flamenco (¿Entiéndes algo?) y abajo en francés, y aunque los carteles son nuevos ya tienen una pintada (probablemente del movimiento revolucionario para la liberación de Bruselas).

Como podéis leer en el cartél dice en traducción literal para un paleto del francés como yo: "Salir de la villa es un delito, blablabla mínimo 150€, sitio bajo vigilancia".

Cuando vi el mensaje por primera vez se me herizó el pelo y lo primero que pensé era que Epi había vuelto a usar su máquina del tiempo (ver su teoría, ver su primer viaje en el tiempo) y me había llevado a plena guerra mundial, o tal vez incluso más al pasado. Ahora que ya he comprobado que seguimos en el presente, esperaré a que la CNN se entere y alguien mande algo para rescatar la ciudad porque tengo que coger un vuelo este miercoles ¡y no lo quiero perder!

PD: ¡¡SALIR en francés significa ENSUCIAR!! ;) Aunque no sé que narices quieren decir con esto sobretodo viendo lo sucio que está toda la ciudad, pero bueno...

viernes, abril 25, 2008

Moroso en Bruselas...

... y la gran ineficiencia de los belgas.

Hace ya un par de meses os dejaba caer que me había convertido en un moroso en este país, sin embargo quería que se acabase toda la historia antes de escribiros nada, aquí va con pelos y señales la ineficiencia de las instituciones/empresas/aparatos belgas. Tal vez no debería generalizar pero de verdad, en este país las cosas que parecen triviales llevan semanas de trabajo y los belgas no ayudan para nada y menos si saben que eres extranjero.

El 30 de noviembre del año pasado me mudaba a una nueva casa, por consiguiente un mes y medio antes avisé a mi proveedor de Internet que dejaba la casa y que acababa el contrato. Las idas y venidas de la vecina, el tamaño del piso, el pesado del dueño, y una nueva compañera de piso hizo que los 24m2 de mi antigua casa se nos quedasen pequeños a Epi y a mí.

Por tanto todo quedó en que el 30 de noviembre me cortaban Internet y la televisión.

Dos semanas antes de la fecha clave, me llegó una carta a casa. Mi proveedor de Internet desaparecía el mismo 30 de noviembre y el 1 de diciembre me mudaban automáticamente la conexión de Internet a otra compañía (llamada Telenet). Les llamé para preguntarles qué pasaba porque yo ya incluso tenía en mis manos la carta que confirmaba mi desconexión para siempre el 30 de noviembre a las 23:59:59.99. Me tranquilizaron y me dijeron que era una carta que se había enviado a todos y que a mi me desconectaban y no pasaría nada más. Esto solo era la punta del iceberg.

Así pues llegó la fecha señalada y me mudé a otro piso, que por cierto las pasé canutas transportando sobre la bici el microondas... :D

Después de navidades me llamó una antigua vecina para decirme que me pasase a recoger el correo que me había llegado por allí, me preocupé de informar a todas las compañías e instituciones de que me actualizasen la dirección, pero en Bélgica, que hay miles de personas que como yo de renta en renta nos cambiamos de piso pues les da absolutamente igual, ley del mínimo esfuerzo por favor.


moroso
Esta foto me la sacaron cuando les llamaba por teléfono la 7ima vez.

Entre todas esas cartas había dos de Telenet (la proveedora de Internet de la cual nunca he sido cliente), una que me decía que tenía que pagar diciembre y otra que me amenazaba por cobrarme intereses por no haber pagado todavía diciembre. La verdad es que hice un poco caso omiso porque ya tenía suficientes papeleos con otras miles de cosas con el nuevo piso y el nuevo contrato del trabajo así que pasé de ellos, pensé que ya se darían cuenta. Claro... si soy de listo...

En febrero me llegó una tercera carta, esta vez la cifra a pagar era mayor y me amenazaban con insertarme en la lista de morosos en Bruselas, y yo pensé, ¿de verdad eso existe?. Y por lo tanto les llamé, les pregunté que qué pasaba, que yo nunca he sido cliente de sus servicios que qué son todas estas amenazas, ¡já! La mujer en el teléfono me dijo que no había problema, les enviaba una carta con una copia del documento que dice que yo había acabado Internet y ya está. Y así lo hice....


moroso
¡Aitor que vienen!.

Y llegó Marzo, otra carta que ya había aumentado todavía más la cifra y que era el último aviso antes de registrarme en la lista de morosos, además me remitían también el recibo de Enero y me amenazaban con cortarme Internet (¡nunca he tenido internet con ellos! ¿cómo es posible?). Os podéis imaginar mi enfado, les llamé inmediatamente y me dijeron lo siguiente agarraros: "que quieres cortar Internet con nosotros hoy mismo? No hay problema, pero tienes que pagar dos meses más de multa por no avisar con antelación, hacen un total de 50€ por mes, diciembre, enero, febrero, marzo y abril." :-O. Efectivamente les dije que no que eso estaba mal que yo nunca he tenido Internet con ellos, y pum pam pim me dijo que veía mi carta y que entonces era cierto y que cerraba el grifo y que no tenía que pagar nada.

La semana siguiente me llegó a casa la confirmación de que estaba oficialmente registrado en la lista de morosos de Bruselas, eso sí, usaban palabras muy finas, no sé si podéis entender el francés pero es bastante fácil entenderlo en las siguientes fotos (he emborronado un poco las cosas porque no sé si es muy legal poner esta información y resaltado lo importante).


moroso
A la derecha la factura, a la izquierda la carta de bienvenida a la lista de morosos.

moroso
Detalle de la carta, Base données significa base de datos, está en francés pero creo que se entiende el contexto si no habláis francés.

Con todo mi enfado les volví a llamar y me dijeron lo de siempre, que tenía que pagar pero que veía que había enviado la carta de fin de contrato con la otra empresa y que no tenía que pagar nada y que me lo arreglaba.

Y a la semana siguiente como sabía que era todo mentira les volví a llamar y me dijeron que ya estaba todo pagado pero que faltaba Enero por pagar antes, que si no pagaba enero no me reactivaban Internet, que tenían un registro en el que ponía que quería Internet con ellos, les dije que ni hablar que qué pasaba ahí, blablabla me dijo que lo arreglaban y que me quitaban Internet de forma definitiva, pero que tenía que llamar a la compañía vieja de Internet y quejarme a ellos para que lo solucionen ellos, les llamé y solo sale una maquina hablando en Flamenco diciendo que si quiero Internet que llame a la otra compañía y adiós muy buenas...

Y otra vez les llamé la semana siguiente ya en Abril porque llegó otra carta de Enero pero me dijeron que ya estaba solucionado que eso debió de ser un error... Y les volví a llamar a la semana siguiente y me confirmaron que ya no debía nada de dinero y que me habían quitado del registro de morosos belgas.

La semana siguiente llegó una carta diciendo que habían borrado mi registro de la base de datos de morosos y que ya no había registro alguno de mi paso por esta lista tan selecta, ahora bien, ¿si mis datos no están allí cómo narices han sabido a donde enviarme la carta? Y hoy me ha llegado por fin el recibo de la compañía de Internet diciendo que no debo pagar nada, por eso doy por zanjado el tema, después de 15 llamadas, 10 cartas, 6 meses y un registro en la lista de morosos, para desregistrarme de una compañía de Internet de la cual nunca he utilizado sus servicios. ¿Os lo podéis creer? Yo todavía no.

Y es que esto es Bélgica y si cuela, cuela, sobretodo a los extranjeros porque saben que no estamos en nuestro país, que nos sentimos incómodos leyendo su letra pequeña y porque se consideran un país más barato (es ligeramente más caro que España)

Y ahora otros ejemplos de ineficiencia que hoy no puedo resistirme a postear, la verdad es que no os lo podéis imaginar pero incluso el Tax man me ha llamado a la puerta dos veces (sí los de hacienda) con multas y cosas de retrasos, precisamente ninguna había sido mi culpa, yo todo lo hice bien, pero a la empresa belga a la que yo había pagado para hacerme la declaración se le olvidó entregar los documentos y su factura para que les pagase por sus servicios llegó el mismo día que el Tax man, eso sí que fue divertido.

Y hay más, en Bélgica los cajeros automáticos quedan fuera de servicio desde las 10 de la noche hasta por la mañana durante viernes y sábado, cuando la gente precisamente necesita dinero suelto para pagar en los pubs, no es broma y esto es y ha sido así durante los 2 años y medio en los que he vivido aquí.

¿Y para ir en autobús? Nunca voy porque siempre voy en bici, pero para ir al aeropuerto no me queda otra, en Bruselas hay una norma desde el año pasado, si compras el ticket en una máquina el billete te cuesta lo que valga (3 euros para ir al aeropuerto) pero si se lo compras al conductor te cuesta un euro de más (4€!). Pero si además viajas mucho al aeropuerto puedes comprarte el billete de 10 viajes que te viene a salir a 2 euros por viaje. Y por supuesto, llegas a la máquina para comprarte el billete y como todo en este país, pasen y vean la foto:


Ineficiencia belga
Que bonita máquina para sacar un billete para el autobus.

Ineficiencia belga zoom
Zoom sorpresa, fuera de servicio, como todo en este país, te toca pagar el doble...

Así que me toca pagar 4€ en vez de 2 para ir al aeropuerto. A la vuelta agarraros, voy a comprar el billete de 10 viajes y el tipo me dice que ese día no aceptan tarjeta porque no funcionaba el aparato y miro y veo cables sueltos al lado de la ventanilla, así que lo dejo pasar y me compro el de 3€, a la vuelta en el parque del otro día voy a pagar con tarjeta a la máquina y me dice que pagar con tarjeta está ese día fuera de servicio, y por supuesto lleva así toda la semana.

Tengo mil quejas más, como el hecho de que me hayan perdido dos paquetes en correos este año, o que hayan tardado 3 meses en enviar unos DVDs a mi hermana (que al final dárselos en mano fue más rápido), o el hecho de que en el ayuntamiento sólo te responden si hablas en francés, o que la policía no vaya cuando les llamas por un problema y tengas que ir tu a comisaría (por suerte no fui yo pero por mi acompañante), o que hayan tardado 12 meses en darme mi DNI belga que ha CADUCADO antes de que la policía viniese a entregarmelo a casa. (Sí, la policía te lleva el DNI a casa para comprobar que es verdad que existes).

En fin, ahora desde Euskadi o España, el que se queje delante mío diciendo algo como "esto solo podría pasar en este país" se queda sin ojos.

jueves, abril 17, 2008

Una vueltecita a casa

Esta noche me toca viajar a Bilbao (por un fin de semana) una vez más para ver a los míos :-). Mis compañeros de piso también se van a ir de vacaciones a sus respectivos lugares (véase Epi y Sarah), y será el momento clave para probar la versión definitiva del sistema de seguridad durante cuatro días consecutivos. Además aprovecho este breve post para dedicárselo a ellos que tanto tienen que aguantarme en casa con este tipo de … experimentos.


sarah y eeepc
Sarah que ya ha aprendido a usar el sistema de seguridad (pulsa aquí y se enciende en 1 minuto, pulsa aquí y se apaga en 5 minutos) y en esta foto con el eeepc que por supuesto me quiere quitar :-D

Cuadro de sarah
Sarah tiene sus momentos frikis (a su forma) también, el pasado sábado lo tuvo tan intenso que de sus manos y pinceles le salió esto, que me quiere hacer cambiar por el eeepc, pero claro, por supuesto que no he accedido, sería deshonrar su gran talento porque un cuadro así debería ser cambiado por 7 macbook airs como mínimo :-D

martes, abril 15, 2008

Sistema de seguridad casero. (Parte IV, el código fuente)

Con un poco de retraso, pero aquí llega el último capítulo:

En anteriores posts os he explicado con un poco de detalle mi pequeño proyecto, ahora os paso ya directamente los fuentes y una pequeña explicación de cada uno de los archivos. Está todo escrito en bash linux scripts para el sistema de seguridad en casa y en php scripts en el servidor para la página Web de control. Están todos escritos de forma un poco precipitada, mi nivel de scripting es muy limitado pero creo que puede servir de punto de partida para los que quieran replicar el sistema. O por lo menos de ejemplo para vuestros proyectos. Si alguno se llega a animar a implementar algo parecido y se mete de lleno en los scripts se va a dar cuenta del potencial que uno puede sacar de una cosa así, empezando por la mismísima domótica. :-).

Los fuentes os los bajáis de aquí.

Tiene dos carpetas:

  • /base : donde están todos los scripts que yo he instalado. Los he archivado siguiendo la estructura de los directorios así que no necesitáis hacer preguntas de donde poner cada archivo.
  • /www : donde están todos los scripts php que deben instalarse en el servidor.

Configuración del sistema de seguridad casero:

Sistema operativo Debian GNU/Linux 4.0. La instalación que yo elegí es la hiperbásica, sin configuración de ventanas, pero entiendo que no sólo te interese esto. Necesitas usar el 'apt-get install' para los paquetes motion (servidor de seguridad), nano (o el editor de texto que más te guste), awk (para scripting), anacron (para las tareas programadas), less (etc todas las herramientas con las que te sientas cómodo.

Los archivos incluidos en el paquete son:

  • /etc/motion/motion.conf : Archivo de configuración del sistema motion. Hay que echarle un vistazo y meter tus propias necesidades y tal vez características de tu webcam
  • /etc/rc0.d/S01touch-SITE.com.sh : Script (permisos de ejecución o nunca funcionará) que se conecta a el servidor externo avisando de que el sistema se está apagando.
  • /etc/rc0.d/S01touch-SITE.com.sh : Lo mismo que el anterior pero avisando de que el sistema se está reiniciando.
  • /usr/bin/upload-pictures.sh : Script que copia las imágenes que han sido tomadas cuando se ha detectado movimiento y las pone en una carpeta de salida y las sube por FTP a tu servidor externo. (se podría haber hecho más simple usando wput pero lo hice así porque fue la primera solución que encontré y me funciona aunque sea un código un poco guarrete ;-) ). Si lo usas tienes que cambiar tu nombre de usuario etc y las carpetas donde se guardan las imágenes.
  • /usr/bin/touch-SITE.com.sh : Script que se conecta a tu servidor externo mandando las constantes vitales de tu servidor en casa. (Este script es multipropósito y se usa normalmente 1 vez a la hora más cuando ocurren cosas como detección de movimiento, inicio del sistema, apagado o reinicio. Tiene dos parámetros, el primero los segundos de retraso para ejecutar el script y el segundo una palabra que defina la razón por la cual se conecta al servidor.
  • /usr/bin/motion_test.sh : Script que se conecta al servidor preguntando qué debe hacer con el sistema de seguridad (apagarlo, encenderlo, etc)
  • /usr/bin/shutdown_test.sh : Script que se conecta al servidor preguntando qué debe hacer con el servidor (apagarlo, reiniciarlo, etc)

También hay que configurar el crontab para añadirle las tareas programadas. Para editarlo, con la cuenta root crontab -e

y añadir las siguientes lineas:


0 * * * * /usr/bin/touch-SITE.com.sh 0 control >/dev/null 2>&1
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/bin/motion_test.sh >/dev/null 2>&1
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/bin/shutdown_test.sh >/dev/null 2>&1
@reboot /usr/bin/touch-SITE.com.sh 30 booting >/dev/null 2>&1
@reboot /usr/bin/motion_delay.sh >/dev/null 2>&1

Un crontab -l te dará los cambios (hay que reiniciar el servicio para que funcionen los cambios).

Configuración del servidor externo:

Lo primero es tener una dirección Web y no meter nada en el directorio principal. Y por favor, poner las cosas bajo password, por lo menos las fotos y los scripts de configuración para que nadie os vea como dios os trajo al mundo por la webcam y para que nadie encienda y apague todo tu sistema cuando le venga en gana ;-)


Panel de control de seguridad
Este es una foto del panel de control. ¡Con un montón de alarmas encendidas! Alarmas de que el sistema está apagado, el servidor apagandose y de que hace más de 1 hora que no se recibe información del servidor (porque está apagado claro).

Los archivos incluidos en el paquete son:

  • /control/ : En esta carpeta se guardan los comandos de seguridad. Ponla bajo password!
  • /control/index.php : Panel de control para ver el último estado del servidor casero y para configurar y enviar cualquier comando al servidor.
  • /control/motion.php : Script para cambiar el estado del sistema de seguridad (apagado, encendido, etc)
  • /control/shuthdown.php : Script para cambiar el estado del servidor (reiniciar, apagar, etc)
  • /snapshots/ : En esta carpeta se guardan todas las fotos del sistema. Ponla bajo password!
  • /snapshots/cleanme.php : Borra todas las imágenes del servidor
  • /snapshots/cleanme_old.php : Borra todas las imágenes del servidor que tengan más de 24 horas
  • /snapshots/seesnapshots.php : Muestra todas las imágenes obtenidas en una única página
  • /devices/ : En esta carpeta se guarda la última información obtenida y el historial de tu servidor de seguridad en casa. Ponla bajo password!
  • /devices/cleanme.php : Borra los historiales
  • /devices/device_TUMAQUINA.html : Historial de tu maquina
  • /devices/latest_status : Último status de tu servidor
  • /index.php : Este archivo es el que guarda los datos de tu servidor de seguridad y los guarda en el servidor externo
  • /motion_test.php : Este archivo es el encargado de enviar la respuesta a tu servidor de seguridad sobre si debe o no desactivar la seguridad
  • /shutdown_test.php : Este archivo es el encargado de enviar la respuesta a tu servidor sobre si debe apagarse o reiniciarse etc
  • /motion_status : En este archivo se guarda lo que el usuario quiere hacer, no se edita manualmente, el panel de control se encarga
  • /shutdown_status : En este archivo se guarda lo que el usuario quiere hacer, no se edita manualmente, el panel de control se encarga
  • /shutdown_time : Un poco más de información para apagados retardados, no se edita manualmente el panel de control se encarga

Y por último, agradecer todos vuestros comentarios y emails que me habéis mandado con ideas y demás. Este sistema de seguridad no es muy serio pero puede ayudar a mantener a uno tranquilo de una forma muy barata. Sin ir más lejos ayer la Web sondasespaciales.com se quedó 5 horas caída por problemas en el hosting, no suele pasar muy a menudo (3 veces al año?), pero durante esas 5 horas mi sistema quedó totalmente inhabilitado, y eso es algo que no se puede permitir en un sistema de seguridad medianamente serio si es que te has llegado a plantear de esto de forma realmente seria. ;-). A mi, me vale y me sobra.


Aquí parte del panel otra vez, (En riguroso directo) ;) ACTUALIZACIÓN: El panel de control ya no es "en directo" por temas de seguridad

Todo el proyecto está bajo la licencia GNU del software libre ;-). Agradecería comentarios futuros si algún loco se anima a usar este sistema.

viernes, abril 11, 2008

Sistema de seguridad casero. (Parte III ¿Cómo funciona el sistema?)

Ayer os comentaba el tipo de problemas me encontré para el diseño del sistema y probablemente si tenéis un poco de experiencia en cosas de estas ya os habréis imaginado como funciona el sistema más o menos. Ahora voy un poco más en detalle, funcionamiento y utilidades:


epi fuera!
Lo malo de tener un compañero de piso es que de vez en cuando él solito hará saltar las alarmas...

En casa necesitamos:

  • Hardware:
    • Servidor: En mi caso un portátil de 3 años (pero lo voy a cambiar por una placa base de eeepc que no tenga partes móviles y no meta ruido).
    • Cámara web: En mi caso una Philips toucampro II(cualquiera con soporte en Linux vale pero cuanto mayor calidad, mejor saldrán tus fotos)
  • Software (todo gratuito ¡viva el software libre!):
    • Sistema operativo estable: en mi caso un Linux debian stable. Intenta recargarlo lo menos posible o dejará de ser estable.
    • Software de detección: motion, un software completísimo, soporta multiples webcams a la vez
    • Software extra: paquetes por defecto para control remoto como ssh, o paquetes necesarios para los scripts que montes, wget, wput, acpitool, blabla (lo comentaremos en el proximo post).

Un servidor Web externo (10€ al año o gratis) (En españa todos los proveedores de internet te ofrecen espacio web gratuito, llamales!):

  • Que tenga acceso FTP (lo recomendable claro).
  • Que tenga soporte para php (prácticamente por defecto hoy en día).

Ahora vamos a lo complicado (super básico)

  • Resumen de funcionamiento:

El servidor de casa (el portátil) arranca automáticamente en Linux. Lo primero que hace es conectarse a mi servidor Web externo (bultza.com) para dejar constancia de su dirección IP y sus constantes vitales (véase estado de la batería, temperaturas, y si el programa de seguridad está funcionando normalmente como os enseñe aquí). A partir de este momento contactará automáticamente con el servidor Web cada hora, o cuando detecte movimiento o cuando se intente apagar el ordenador o cuando se encienda o se apage el programa "motion" (llamo normalmente Sistema de seguridad al programa motion".


Esquema del sistema
Una foto vale más que millones de palabras ¿verdad?. Ni qué decir que en bultza.com la parte de seguridad está escondida y bajo password.

A continuación el servidor de casa se vuelve a conectar a dos páginas de mi servidor en bultza.com y a los cuales devuelven un valor numérico (hay que minimizar el tráfico Web o mi proveedor se enfada). Estos dos valores numéricos indicarán al servidor de casa si el usuario quiere

  • Apagar el servidor
  • Apagado retardado del servidor
  • Reiniciar el servidor
  • Continuar funcionando de forma normal
  • Desactivar el sistema de seguridad sin apagar el servidor
  • Activar el sistema de seguridad.

Esta comunicación ocurrirá una vez cada 5 minutos y es muy básica. El servidor Web (bultza.com) se caerá muchas veces si tienen incidencias (el servicio de dreamhost.com es una basura no os lo recomiendo), hay que programar bien los scripts para que el servidor (el portátil) continúe funcionando sin cambios ante estas situaciones, no se nos vaya a apagar el sistema por una tontería y nos quedamos en bragas a 1000km de distancia.


luz luz luz
No hay que alarmarse si salta alguna alarma de movimiento, en días de nubes y claros se generan como unas 40 alarmas durante el día (12 horas) debido al cambio repentino de luz. Sinembargo si un ladrón entra en casa se generan 4 imágenes por segundo, por tanto si tengo más de 100 imágenes en el servidor (10 segundos) sé que es cuando tengo que preocuparme. En días sin nubes y claros, se genera una imagen de control cada 2 horas, y la alarma salta digamos que un par de veces por el amanecer y atardecer, no más de 10 imágenes en el servidor.

  • Donde cojea el sistema

Hecho el sistema de seguridad, hecho el ladrón listillo :-D. La mejor forma de estar contento con tu propio sistema y de no llevarte malas sorpresas es saber sus puntos débiles. Mi sistema tiene fallos de seguridad muy gordos, si alguien que me quiera robar sabe que existe hay muchas formas de desactivarmelo sin que me entere. Ningún sistema de seguridad es perfecto, simplemente es más o menos bueno. Vamos poniendo los ejemplos:


donde está la webcam?
Una webcam pasa mucho más desapercibida que una cámara de seguridad, así que cuando el ladrón se de cuenta de que le están grabando será demasiado tarde... Si te cansas de buscar la mía, está justo en el centro y arriba de la foto.

  1. El ladrón desactiva la electricidad: En este caso el router y el cable modem se apagarán y el sistema de seguridad perderá la conexión a Internet, aunque siga registrando los movimientos de la casa se puede llevar el servidor con las imágenes sin haberme enterado. OUCH! No pienso comprarme un sistema UPS para esto, podría alimentar los dos aparatos desde el portátil pero el tiempo-coste no me parece aceptable. Es fácil encontrar la electricidad en mi edificio, y si no lee mi aventura de hace 4 meses.
  2. El ladrón corta los cables de mi proveedor de Internet que por supuesto están accesibles en la fachada del edificio y luego me roba. Demasiado cantoso, solo lo haría la TIA o el FBI, no un ladrón de poca monta que son los más peligrosos.
  3. El ladrón entra por la ventana y desconecta los cables de Internet sin pasar por delante de la cámara. Creo que sigue siendo demasiado cantoso escalar a un segundo piso y romper una ventana que da a una calle principal para entrar.
  4. El ladrón entra por la puerta y sabe donde está mi sistema de seguridad y es capaz de correr hasta el router en menos de 2 segundos. (si tarda más de 2 segundos ya es demasiado tarde para él) ¡Comprobado empíricamente! Puedes verlo en la animación que postee ayer.
  5. El ladrón me hackea la clave WPA de mi red WiFi, o me hackea el servidor Web o encuentra mi password ssh y me apaga el servidor, después entra en casa y se lo lleva todo. (Necesita varios años para encontrar mis claves... a menos de que alguien encuentre nuevos métodos de seguridad que solo estarían en manos de... la TIA y el FBI...)

La verdad es que la única opción real con la cual el usuario podría entrar en casa sin que me diese cuenta es que desactive la electricidad y se lleve el servidor, pero las probabilidades de que hagan esto también son bastante pequeñas a menos de que lea este blog...

¿Y si me entran a robar qué hago? Probablemente las imágenes de poco servirán, sobretodo conociendo a los policías belgas que pasan absolutamente de todo (como los belgas mismos vaya). Pero es que mi sistema no lo quiero para pillar a los ladrones, ójala nunca pase!, lo quiero para estar tranquilo y para saber que la casa está bien cuando me voy lejos y por largas temporadas, así no tendré malas sorpresas al volver de viaje.

  • Problemas de implementación:
  1. Por la noche el sistema se vuelve loco debido al ruido de la cámara, por tanto hay que dejar una pequeña luz encendida en casa (por favor, que sea de bajo consumo!!!) Todavía estoy estudiando otras posibilidades pero no me gusta la idea de apagar la seguridad por la noche cuando no estoy en casa porque es cuando más posibilidades hay de que entren a robar. Este es sin duda el problema más gordo que me he encontrado...

  2. ruido nocturno
    Cuando es de noche, sin luz sólo detecta ruido (los electrones moviendose por el sensor CCD). El problema es que de un frame a otro como podeis ver en esta imagen puede cambiar mucho y la alarma salta continuamente. Una pequeña luz resolvería el problema.

  3. Incomodidad de desconexión. He optado por desconectarlo remotamente y con retardo, es decir, estoy en el curro y cuando salgo para casa lo último que hago es conectarme a mi Web e indicarle que se apague en 20 minutos, así cuando llego a casa han pasado 25 minutos y el sistema ya no va a saltar cuando yo llegue. Lo ideal sería tener una llave inalámbrica o algo así, lo iré pensando pero no estoy por la labor de comprar nada para el sistema. Tampoco lo he hecho para el uso diario, solo para las ausencias largas, aunque después de 3 semanas me estoy acostumbrando a usarlo a diario... :)

Ahora ya sabéis como implementar vuestro sistema de seguridad gratuítamente, seguro, segurísimo que os podéis hacer con una webcam (esa que no usas) y con un ordenador viejo y descuidado de alguien para implementarlo vosotros mismos.

Mañana subiré mis scripts y el código fuente de la página web para que todos podáis empezar "con algo" si os interesa la idea del sistema de seguridad, es todo muy simple y básico, la primera piedra.

jueves, abril 10, 2008

Sistema de seguridad casero. (Parte II, los problemas a hacer frente)

En el anterior post os explicaba un poco el concepto y las razones para la creación de un sistema de seguridad casero. Ahora vamos con los problemas que hay que hacer frente en el diseño del sistema.

Para las explicaciones asumo que el lector tiene un nivel básico de redes y Linux. Si te pierdes, ¡pregúnta!. Tampoco voy a entrar en detalles demasiado profundos todavía pero mi familia seguro que pierde el hilo ;-).

  • Primer problema, elección de sistema operativo:

Las opciones que me planteaba eran dos, Linux y Windows. Nunca he tenido Debian en mi ordenador (Sarge daba error de kernel en el mismísimo programa de instalación y por su culpa fui de Fedora durante 2 años y medio) y puesto que siempre me había quedado esa espina, pues no me lo pensé mucho más, al fin de al cabo estoy haciendo esto para aprender. Linux es mucho más fácil de administrar remotamente como servidor y te da muchas más posibilidades en modo comando. Tener un Windows XP o Server abierto 24 horas al día no es demasiado mala elección, pero en este ordenador uso también un Windows recargado para temas del trabajo... (.net, borland...) y cuando configuras un Windows para que funcione como estación de trabajo, olvídate de que sea un sistema totalmente estable (ojo, la misma advertencia para Linux). Al fin de al cabo sólo se necesita un programa mal hecho para hacer que tu SO se vaya al garete. No me puedo ni plantear la posibilidad de que por hacer algo un poco especial el sistema se me cuelgue y tenga que quedarme sin sistema de seguridad hasta que vuelva a casa. (si tuviese un sistema UPS que se pudiese administrar remotamente la cosa sería diferente, pero la idea es gastarse 0€ ¿no? :-D).

Resumen: Dual boot, un SO para estación de trabajo para cuando esté en casa y otro SO para servidor (que será el que arrancará por defecto porque normalmente tenemos más prisa por salir de casa (presionar un botón y salir de casa sin pensar).


Yo robandome!
Esta es la puerta de mi casa vista por el sistema de seguridad. Genera una imagen de control cada 2 horas para estar seguro de que todo funciona correctamente. En cada imagen hay una pequeña marca con la hora y la fecha. (haz click en la imagen para zoom y ver mejor todo). Reconoces el sitio mirando las fotos panorámicas de mi casa?

  • Segundo problema, control remoto:

Principalmente ssh (modo comando), linux tiene mucha flexibilidad en modo comando y usar el servidor remotamente por Internet y por ssh es tan rápido como tenerlo en casa. VNC, aunque más inseguro a veces es útil tener acceso gráfico, por ejemplo para cuando remotamente configuro por Web el router (podría usar lynx lo sé) o simplemente para lo que sea.

Como la IP desde la que me voy a conectar al servidor es dinámica, el firewall es un "poco inútil" (nunca lo es pero entiéndase), el router ya me hace todo el trabajo de firewall en redes externas menos para los puertos que quiero (VNC, ssh, torrent). Aunque es muy recomendable, mi servidor en casa no tiene firewall, no soy un loco de la seguridad, con saber por donde me cojea y pueda mejorarlo me vale, tal vez en el futuro lo implemente de forma que solo acepte peticiones del router y para los 3 puertos específicos, pero es que si alguien consigue encontrar la clave WPA de mi WiFi seguro que no es para robar en mi casa (hay formas mucho más fáciles de entrar en mi casa y no necesitas calcular mi clave durante años) y en el servidor no hay absolutamente nada de información realmente importante. El VNC está desactivado por defecto y lo activo desde ssh cuando lo necesito, creo que con esto vale.

Además hay que considerar que en la mayoría de los ordenadores desde los cuales voy a conectarme a mi ordenador no van a tener clientes ssh o VNC, ¿qué es lo que cualquier SO operativo va a tener por defecto? Efectivamente, un explorador de Internet (el que más te guste o el que te toque). Por lo tanto control por Web es una opción más que recomendable.

  • Tercer problema, ip dinámica.

La ip de mi conexión a Internet cambia con el tiempo como es normal y como la de casi todos, al de dos días de vacaciones pierdo la dirección del servidor y me encuentro con que no puedo encontrar mi servidor en la enmaraña red de Internet. Hay varias soluciones para esto. La más común es usar DynDNS, un programa que se conecta periódicamente desde tu servidor a un servidor de Internet y así tienes allí la "última dirección de tu servidor". Sin embargo yo me he ido un poco más allá porque... porque puedo. Tengo un dominio para mi mismo (bultza.com) en Internet para mis cosas, fotos, etc. Porqué no hacerme mi propio DynDNS?. Bueno, no es ni parecido, pero usando el crontab de Linux y un pequeño script, el servidor se conecta a Internet cada hora y así ya no pierdo la dirección de mi servidor, además así no hay un nombre único en Internet que siempre apunte a mi servidor :-D, el desconocimiento siempre es el mejor método de seguridad.

  • Cuarto problema, si me entran a robar se llevan el servidor (y las fotos).

Hay que suponer el peor de los casos. Mi ordenador es una patata, pero es portátil y las probabilidades de que se lo lleven si entran en casa son del 99%. Por lo tanto, en cuanto mi portátil (siempre el servidor) detecta movimiento en casa, se pone a gravar las imágenes como loco en el disco duro, así cuando la próxima vez que me conecte al servidor veo quién a entrado, ¡OUCH!, pero si se llevan el servidor ¿cómo narices me voy a conectar a él para ver las imágenes del ladronzuelo?

Mi solución ha sido crearme una página Web en mi dominio, bajo un subdominio o subdirectorio el cual no voy a nombrar aquí por seguridad (aunque tiene control de acceso y no podríais ver nada sin mi password). El servidor en cuanto detecta movimiento sube las imágenes al servidor Web inmediatamente (sí, sí, el desconocimiento es el mej....). De esta forma aunque mi casa se quede vacía las fotos las seguiré teniendo accesibles. Si por casualidad tú quieres implementar lo mismo, no necesitas tener un dominio Web, con tener espacio Web gratis (tu proveedor de Internet seguro que te lo da) o en esos portales donde te dan posting gratuito a cambio de meterte mil banners te vale para tu sistema.

Para aquellos que tengáis el servidor Web motado en casa... Efectivamente no sirve de nada guardaros las imágenes en ese servidor porque se supone que el ladrón va a vaciar tu casa ;-)


Yo robandome!
En esta animación lo que podéis ver es a mi mismo haciendo una prueba de robarme el ordenador 5 segundos después de haber entrado en casa. Como podéis ver algunas imágenes están cortadas, esto es porque desenchufé el cable durante la retransmisión de las imágenes, y como la conexión de Internet es por paquetes, algunas imágenes más tardías han llegado completas antes que otras más tempranas. Con esto queda probado que aunque el ladrón entre en casa y tarde dos segundos en desenchufar el ordenador o el router, ya hay algunas imágenes en lugar seguro que me van a decir qué ha pasando. Ahora ya no me preocuparé si el sistema casca y deja de responder sin razón alguna (que seguro que pasará más de una vez), sólo si hay alguna imagen sospechosa en Internet tendré que preocuparme, esto es tremendamente importante para no preocuparme sin sentido. La animación la he reducido a más de la mitad para que no ocupe mucho espacio ni se pase de ancho el formato del blog.

  • Quinto problema, comodidad.

Si el sistema no es cómodo, al de una semana lo voy a dejar de usar. No me sirve controlarlo sólo por ssh. Muchas veces no voy a tener acceso a un cliente ssh, o como desde el trabajo, detrás de un Proxy es casi imposible conectarme a mi servidor ssh si no es con algún truco. Necesito que el sistema me cree informes periódicos y me los ponga muy bonitos en una página Web, donde con un par de clicks además pueda desactivar la seguridad para que la alarma no salte cuando voy a casa.

  • Sexto problema, El software de detección

Este era el punto más difícil, tenía pensado desarrollar mi propio programa, sabía que iba a ser una patata y me iba a llevar meses hacerlo, pero... como siempre el mundo del software libre me dio otra lección y ya hay un paquete bastante profesional que implementa todo esto y mucho más, se llama "motion" y dí con él por casualidad en el blog del asuse3. Este descubrimiento hizo que se acelerase todo el proceso de instalación de mi sistema de seguridad, que me ha llevado 3 tardes completas de cacharreo y 3 semanas de pruebas.

En el siguiente capítulo explicaré el hardware y software que utilizo, el funcionamiento básico de mi sistema y por supuesto por dónde cojea (hecha la ley, hecha la trampa dice mi aita). Dentro de dos capítulos os prepararé un par de paquetes con los scripts y la página Web que me he creado para que el que quiera trastear o montarse su sistema.

miércoles, abril 09, 2008

Sistema de seguridad casero. (Parte 1,5 Ejemplo)

ACTUALIZACIÓN: El panel de control ya no es "en directo" por temas de seguridad

A continuación podéis ver un trozo del panel del control de mi sistema "EN TIEMPO REAL" (para ir haciendoos caer la baba ;-)). Todo lo que véis aquí es real. Tiempos en UTC (ahora dos horas menos que en España).


Lo hice en inglés, la verdad es que no se porqué, será la costumbre de la oficina... No es que se vea muy bien pero bueno, os haceis una idea de lo que veo desde el trabajo. A lo largo de las horas veréis cambios ;-).

A partir de las 18.00 de la tarde lo veréis desactivado (tal vez hoy no precisamente), aunque el servidor seguirá encendido, y por la noche estará todo apagado con lucecitas rojas ;-)

En días con nubes y claros el sistema suele detectar movimiento. Aquí eso ya no os lo pongo pero en el resto del panel me pone imágenes y el número de imágenes para no alarmarme con falsas alarmas. Aunque aquí seguro que veis saltar la alarma en algún momento. En el mejor de los casos y si no hay incidencias el panel se actualiza una vez a la hora.

Sistema de seguridad casero. (Parte I El concepto y los hechos)

Hace unos posts os comentaba acerca de un sistema de seguridad que andaba pensando en crearme. Le he dado muchas vueltas al tema y he escrito un documento acerca de lo que he hecho. Es bastante largo así que lo voy a publicar día a día por partes para que lo dijerais mejor y para que a mi no se me atragante el trabajo.

Bruselas es una ciudad que para el cual ha vivido más de un año es difícil que no le hayan robado algo en algún sitio. No hablo de entrar en casa, tal vez cosas pequeñas y simples, a continuación os pongo una lista de las cosas que me han robado en Bruselas:

  • Verano 2006: Tarjeta de crédito de Bruselas (por suerte solo salgo de fiesta con dinero y la tarjeta)
  • Diciembre 2006: Candado de la bici (para una vez que no pongo los dos candados…)
  • Verano 2007: La bici completa con sus tres candados
  • Noviembre 2007: Guardabarros de la bici
  • Febrero 2008: Disco duro portátil por correo
  • Marzo 2008: Memoria usb por correo

Además me han entrado en casa:

  • En el primer piso la dueña sin permiso para apagarme la calefacción varias veces.
  • En el segundo piso el dueño dos veces para revisar cosas sin mi permiso.
  • En el tercer y actual piso sospecho que entró el dueño pero no tengo pruebas. Y no tengo más que sospechas.

Además de todos mis conocidos aquí, los que tienen coche sin alarma a un 80% les han roto ya la ventana para robar dentro y he visto a gente por la calle probando a abrir puertas de coches. Han robado la cartera a varias personas. Han robado la bici a absolutamente todo el mundo que tiene por lo menos (y al que menos) una vez. Han entrado a robar a casa y que lo hayan comentado (porque muchos prefieren no contarlo) conozco a poca gente de primera mano, de segundas a bastante.

Supongo que esto es lo que tiene vivir en una ciudad.


La webcam
Ésta es la protagonista del sistema de seguridad. La Toucam Pro II que la compré por sus geniales características para poderla usar como cámara CCD en astronomía (Este link no tiene desperdicio). Pero no la he llegado a usar nunca con tal propósito. Es ahora cuando por fin la he encontrado una tarea útil más allá de ocupar espacio en el cajón.

Por otra parte planeo largas ausencias en Bruselas. Cuando vuelvo de vacaciones siempre me corroe la misma pregunta, ¿Cómo se encontrará mi casa? Y si llego y resulta que lo han dejado vacío, o ¿si ni siquiera existe?

Y por último, las puertas de las casas en Bruselas, sobretodo de los pisos de alquiler son de risa, bien sé yo que puedo derribar la puerta de mi casa de una patada.

Mi proyecto fin de carrera estuvo relacionado con control remoto y adquisición de imágenes (entre muchas otras cosas), por lo tanto algo de experiencia ya tenía como para idear con cabeza algunas cosas.

Decidí crearme un servidor en casa que monitorease periódicamente la casa

Sin embargo esto tiene un gran problema de concepto. Si dejo en casa un ordenador encendido y saca una foto digamos que cada hora o cada quince minutos, si me encuentro a 1000km de mi casa y quiero ver lo que está ocurriendo, si el sistema falla por alguna causa del ordenador (que será el 99% de las ocasiones) dejaré de recibir imágenes y de poder controlar el ordenador, y sin respuesta alguna de porqué ha pasado. Puede ser que alguien ha entrado en casa y se ha llevado todo incluyendo el ordenador, que ha caído el Hubble en la casa o que ha caído una bomba nuclear en Bruselas. Por tanto al final este sistema me haría sentirme más intranquilo que si no lo tuviese.

Así que tenía en mente crearme un programa que de verdad monitorease la casa y tan pronto como hubiese movimiento me avisase. Pero mis requerimientos eran gastarme 0 euros, usar lo que ya tengo y pasar unas tardes “disfrutando” creando y aprendiendo a generar un sistema así. Sin embargo hay muchos problemas que resolver... (para el siguiente capítulo)

miércoles, abril 02, 2008

Algunas imágenes de la Semana Santa

Como siempre las fotos del viaje. Cada vez me cuesta más volverme a Bruselas, he pasado momentos muy especiales esta Semana Santa. He tenido momentos de júbilo, de hacer el gamberro, momentos de desesperación perdiendo algún partido, momentos en familia, y ... muchísimos momentos frikis, y los momentos frikis sólo los tengo cuando me encuentro feliz. Pasen y vean:

Por desgracia no hice más fotos de (la fiesta de mi cumpleaños con la familia, yo levantandome a ver la F1 de madrugada, yo reparando el ordenador de 3 personas diferentes, mis amigos de la uni con los cuales comí el finde... y mil cosas más...)


Mis sobrinos
¡Mis dos sobrinit@s y yo! Aimar a la izquierda está enorme con casi seis meses, está siempre riéndose y agarrando todo lo que pilla. Jone a la derecha que dice muchas parrafadas, entiende casi todo lo que se le diga en Euskera-Castellano y hace mezclas muy curiosas. Siempre jugando, un juguete más.

Mar
El mar revuelto con un tiempo horroroso todos los días… menos dos.

Mar2
Una pequeña esperanza de buen tiempo con fondo negro…

Mar3
Y por supuesto metí los pies en el agua estas vacaciones, y me dio el extraño deseo de sacar una foto lo más cerca del agua posible…

Torre dominó
Mi sobrina junto a una de mis construcciones con fichas de dominó. Esta alcanzó el metro 75cm, hace 15 años me pasaba horas jugando con estas fichas… Estas vacaciones he metido un montón de horas con ellas otra vez después de tanto tiempo.

Torre dominó2
Gran momento friki, la estructura de la torre era impresionante, aquí la veis con detalle, son fichas sin encajar por eso es tan impresionante, un poco de viento y todo al traste

Amigos
¡Mis amigos de fiesta!

Amigos2
Y más fiesta, haciendo de cocinitas y tocando mucha guitarra (mis amigos tienen un grupo de música). Me han dado muuuchas y renovadas ganas de seguir tocando la guitarra. :)

Tarjeta de sonido desmontada
Mikel me dio para arreglar una tarjeta de sonido externa muy muy buena, ahora es mía, en la foto veis la imagen del momento en el que revivió.

EEEPC 16G
Volví a abrir el eeepc para quintuplicarle el disco duro.

EEEPC 16G
No se me ocurrió otra cosa que hacer que el led que de actividad de la nueva memoria se viese a través del agujero de los auriculares, ¡ha tenido bastante éxito exitoso entre los modders por ser algo diferente a lo ya visto jaja! (Por supuesto los auriculares siguen funcionando correctamente)

Yo riendo
Y aunque sé que tengo un careto en esta foto, al menos véis que me lo pasé de miedo.