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.

9 comentarios:

Andres dijo...

me causo un deja vu cuando leia "El ladrón desactiva la electricidad"

Gracias por compartir tu sistema, quizas me anime...

Skinner dijo...

Menudo freak.
¡Un aplauso! :D

Héctor dijo...

Ahora ya se donde robar!!

Cuando encuentre un pisito por Eterbeek, me planteare seriamente hacer algo igual. Entre todos, me habeis metido el miedo en el cuerpo... =8P

Anónimo dijo...

Sabía que teníamos un genio en la family, pero no dejas de sorpenderme primitxu! y eso que de estos post entiendo un 10% ;)... Cuidate mucho (bueno, ya veo que lo haces bien!) Betsos!

Izas

Anónimo dijo...

Muy buenas!
No he conseguido tu email por ningun sitio, no lo tienes publicado en el blog?
Queria tu email para hacerte unas preguntillas, resulta que en unas semanas voy a ir a trabajar tambien a bruselas y queria preguntarte un poco por las zonas para vivir.
Puedes esplicarme un poquillo que zonas tiene en las que me recomendarias para vivir?
Cualquier cosa que se te ocurra que pueda serme util, será bien venida.

Muchas gracias y felicidades por el blog!!!!
mi email es aaron_fd@yahoo.es

Risto Mejode dijo...

¿Qué opinas de añadir un detector de movimiento (tipo infrarrojo, ultrasonidos, etc)? ¿No podría mejorar bastante el sistema?

Álvaro dijo...

Unos post fantásticos, llevo tiempo queriendo hacer algo así en casa y como tengo un eeepc con la pantalla jodida igual me animo y te cuento :)

sobre el tema nocturno se me ocurre que podrías quitar el filtro de infrarojos a la cámara que está tirado de hacer y con unos leds infrarojos todo listo, que no gastan prácticamente nada y se ve de vicio. Yo lo he hecho con algunas webcams y es muy sencillo.
si es por no gastar nada de nada tengo leds ir de sobre, te mando algunos :)
salujdo.

Bultza dijo...

alvaro esa es una idea genial, sé como quitar el filtro IR de mi webcam porque lo hice varias veces para sacar fotos con el telescopio con ella pero jamás de los jamases se me hubiese ocurrido convinarlo con un led infrarojo!, voy a investigarlo!

David dijo...

Creo q tengo tu solucion a tu problema en la oscuridad...

Solución: pon en la pared un led (o varios) infrarrojo. Y tu camara lo vera como un punto blanco. El ojo humano no percibe la luz infrarroja con lo cual tu no notaras cambio algun.

Razón: Las camaras digitales (webcams tambien) perciben las luces infrarrojas, aun q tengan filtro, lo que hace el filtro es bajar la intensidad de la luz infrarroja, pero no las anula completamente. Con lo cual tu camara (aun que tenga filtro) persibirá la luz infrarroja, o sea, q veras un punto blanco con lo cual tu camara de noche ya no sera todo negro...sino negro con un punto blanco :D suficiente como para q no te lleguen alarmas cada 5 minutos. Hay algunos experimentos q le han sacado el filtro de infrarrojo, pero tu camara se convierte en blanco y negro, olvidate del color. A menos que tengas 2 camaras, una a color y la otra (sin filtro) a blanco y negro q capta en la noche (debes iluminar con una lampara infrarroja)

Uffff...me canse de escribir :D

Es que yo tambien estoy intentando levantar algun servidor de vigilancia pero la pc que ahora dispongo es muy lenta y no lo hace en tiempo real y tiene mucho delay para detectar movimientos. Hoy lo probe y tenia que estar 1 minuto para que me cache!!! ajajajajaja Para el q quiera saber, uso un Pentium 1 200mhz con 80mb de ram. Tendre q conseguir otra pc mas potente!

Suerte