T01E25 - Tu viejo android es tu nueva camara IP

Entre la obsolescencia programada, nuestra torpeza y nuestro espíritu caprichoso, los mas geeks solemos cambiar bastante a menudo de móvil. Mucho mas de lo que debiéramos. Así que es fácil que te encuentres algún móvil Android antiguo en uno de tus cajones. Sin embargo, no tienes por que tirarlo. En este nuevo episodio del podcast, te cuento como puedes reutilizar tu viejo android como tu nueva cámara IP. Se trata de darle una segunda vida a tu móvil.

Todo viene a raíz de un comentario de Territorio fotográfico en el artículo sobre como utilizar tu Android como WebCam. En este artículo te explico como puedes utilizar ese viejo móvil como webcam en Ubuntu, para utilizarlo en aplicaciones como Cheese, Skype, VLC o Empathy.

Sin embargo, a raíz de esto, he pensado que le podemos dar un mejor uso. Lo podemos utilizar como cámara IP, y acceder a ella desde fuera de nuestra red local. Esto puede tener gran utilidad como video vigilancia, para controlar a tu mascota o para lo que consideres. En este episodio, te cuento, no solo puedes re aprovechar tu viejo Android como cámara IP, sino también como puedes acceder desde fuera de tu red local. Así que no te lo puedes perder.

Tu viejo android es tu nueva camara IP

Tu viejo android es tu nueva cámara IP

¿Que es una cámara IP?

Si nos ceñimos a lo que dice la wikipedia, y cito textualmente,

Una cámara de red, también llamada cámara IP, puede describirse como una cámara y un ordenador combinados para formar una única unidad. Los componentes principales que integran este tipo de cámaras de red incluyen una lente, un sensor de imagen, uno o más procesadores y memoria.

Yo, mas bien, lo veo simplemente como una cámara con conectividad IP. Es decir, desde tu navegador te puedes conectar directamente a ella, con solo acceder a esa IP.

¿Para que utilizar una cámara IP?

Las posibilidades que tiene una cámara IP son tantas como te puedas imaginar. Lo cierto, es que solo tienes que pensar la filmografía que hay al respecto, en lo relativo a espiar con cámaras. Que si como osito para vigilar a tus hijos, o a tu pareja, o lo que sea. Así, siendo un poco mas serios, a mi se me ocurren las siguientes,

  • Para tener vigilado a tu bebé. No solo se trata de oirlo, también puedes verlo en cualquier momento.
    • Además, con la detección de movimiento también te puede avisar
  • No solo de controlar a nuestros menores, también debemos pensar en nuestros mayores. Teniendo en cuenta, que la pirámide poblacional en España se ha invertido, creo que es casi mas importante que el primer punto
  • Vigilar lo que hacen nuestras mascotas cuando estamos fuera de casa, para evitar que nos haga una de las suyas.
  • Poder tener controlado el acceso a tu casa. Evidentemente cuando se abre la puerta de casa.

Estos son algunas cosas que se me ocurren a mi, pero estoy seguro que tu tienes mas ideas. Como bien sabes, cualquier idea, siempre es bien recibida.

¿Porque utilizar un viejo móvil como cámara IP?

Lo cierto es que no necesitas recuperar un viejo móvil, siempre puedes comprar una cámara IP, que podrás encontrar seguro en Amazon por menos de 30 €. Acabo de verla ahora mismo por 29,99 €. ¿Pero para que comprar la cámara si puedes reaprovechar el viejo móvil?. Aquí, si desde luego te gusta cacharrear, poder reutilizar el móvil te va a dar mucho juego, porque seguro que le sacas mas partido de lo que te voy a contar yo aquí.

En cualquier caso, parte lo que te voy a contar aquí seguro que te es de utilidad. Y es que no solo te voy a contar las aplicaciones que he utilizado para convertir mi viejo móvil en una cámara IP, si no que también, te contaré como puedes acceder a él desde fuera de tu red local.

El movil como cámara IP

Si finalmente te decides por utilizar el móvil como cámara IP, necesitarás instalar una aplicación. He estado probando de estas aplicaciones para este podcast. Algunas de las que he probado son las siguientes,

De estas me quedo claramente con IP Webcam y DroidCamX. En particular, me decanto por la segunda, DroidCamX, porque ya la tenía comprada y sobre todo, porque tiene un muy buen cliente para Linux. Se trata de un cliente que no solo es sencillo de configurar, sino que también lo es de utilizar.

Sobre las ventajas y un análisis mas en profunidad de IP Webcam, te recomiendo que le des un vistazo al artículo sobre como utilizar tu android como webcam. En el no solo te explico como lo puedes hacer, sino que además te explico como se instala y configura la aplicación, así como el cliente para Linux. Indicar que yo he probado solo la versión gratuita de IP Webcam. Precisamente una de las cosas mas molestas de esta aplicación son los anuncions, aunque no son invasivos. De cualquier forma, si vas a hacer un uso exhaustivo de la misma, te recomiendo que la compres, pues los anuncios, al final consumen batería.

Respecto a DroidCamX, te cito algunas ventajas de la misma,

  • Puedes utilizarla en aplicaciones en Ubuntu como puede ser Skype, Cheese, VLC, etc. Para esto, es necesario que instales y configures el cliente gratuito para Linux.
  • Permite conectividad tanto por WiFi como por cable USB.
  • Tiene modo 720p.
  • Te permite controlar determinados aspectos del móvil, como, el flash, el autofoco, el zoom y mucho mas.

Acceso desde internet

Para poder acceder desde cualquier parte del mundo a tu cámara IP, si en tu casa tienes IP dinámica te recomiendo que le des un vistazo al artículo sobre como acceder a tu Raspberry teniendo IP Dinámica. Si bien, este artículo se centra en la Raspberry, lo puedes aplicar en general.

El siguiente paso, es conseguir poder acceder pero utilizando una conexión cifrada. Para ello, podemos utilizar un certificado de Let’s Encrypt, tal y como te explico en el artículo acceder a tu Raspberry de forma segura. De nuevo, indicarte que aunque el artículo está pensado para la Raspberry, es de aplicación general. También podrías consultar el artículo sobre Let’s Encrypt en tu VPS.

Por último, lo que te puede resultar mas raro, es lo de utilizar Nginx como Proxy inverso. En este caso te recomiendo la lectura del artículo sobre LEMP con Nginx. Eso si, necesitarás algo de configuración. Pero nada complicado.

Configurar Nginx como proxy inverso para acceder a la camara IP

Para esto edita el archivo /etc/nginx/sites-available/default y añade el siguiente contenido,

location /webcam/ {
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header        X-Forwarded-Proto $scheme;

    proxy_pass              http://192.168.1.252:4747/;

    proxy_read_timeout      600s;
    proxy_send_timeout      600s;

    auth_basic              "Username and Password Required";
    auth_basic_user_file    /etc/nginx/.htpasswd;
}

Evidentemente tienes que cambiar la IP y el puerto por los que tu quieras. Evidentemente si tienes mas de una cámara IP, solo tienes que añadir la misma configuración con una IP distinta y en su caso con un puerto distinto. También tienes que cambiar la dirección donde apuntas, es decir, modifica /webcam/.

Además tienes que añadir una autenticación, para evitar que cualquiera pueda acceder a tu cámara IP. Para ello, tienes que añadir las dos líneas del final,

auth_basic              "Username and Password Required";
auth_basic_user_file    /etc/nginx/.htpasswd;

Añadir y quitar usuarios

Para añadir un usuario que también pueda acceder, simplemente tienes que ejecutar la siguiente orden,

sudo htpasswd /etc/nginx/.htpasswd nombre_del_usurio

Sustituyendo nombre_del_usuario por el valor que se considere. Al hacerlo, nos pedirá la contraseña del mismo. De la misma forma, para quitar a un usuario existente ejecutaremos la siguiente orden,

sudo htpasswd -D /etc/nginx/.htpasswd username

Una vez realizados todos estos cambios, es necesario reiniciar nuestro servidor Nginx para que surta efecto. Para esto, ejecutaremos la siguiente orden para comprobar que los cambios son correctos,

sudo nginx -t

Y en caso de que todo haya ido como esperas, ejecuta,

sudo systemctl restart nginx