RealDroidES

Configurar no-ip para Raspberry Pi y de paso, qué es no-ip

internetDespués de instalar el SO y asignar una IP estática a nuestra Raspi, ha llegado la hora de abrirle la puerta al mundo exterior, dejarla libre para que corra a sus anchas y pueda dar de si todo lo que tiene. Ha llegado la hora de configurar no-ip.

Qué es no-ip

Empecemos con un poco de teoria: para acceder a una página web estamos acostumbrados a escribir un nombre, por ejemplo www.realdroid.es, pero detrás de eso se “esconde” una dirección numérica (IP), que es la dirección real a la cual accedemos, y se consigue gracias a una gran base de datos que tiene un registro de todos los dominios de Internet, la dirección que le corresponde, y hace la traducción por nosotros. A esto se lo conoce como DNS (Domain Name System), y seguro que al menos os sonará gracias al ataque que sufrió hace unos días la empresa Dyn, y que tumbó a medio Internet como quien dice. Aunque realmente no dejaron inaccesible a medio Internet, sino que dejaron inaccesible ese registro de traducciones (salvo que el ataque fuera a más gran escala y atacaran a otras empresas directamente). ¿Y qué tiene que ver esto con mi Raspi? Más de lo que crees. Sigamos.

how-dns-works

Estas direcciones IP públicas son limitadas (de hecho ya se han acabado), y todos nosotros tenemos una para poder salir a Internet (seria como nuestra matrícula o DNI, para hacer un símil), y que podemos conocer visitando por ejemplo http://www.cualesmiip.com/, entre muchas otras páginas que hacen lo mismo. La gracia de esto es que esta IP no es fija, y puede que hoy tengamos una y mañana otra. A esto se le llama IP dinámica, y es como los ISP gestionan las direcciones que ofrece a sus clientes.

Ahora, con estos dos conceptos, podemos atar cabos: si cada dominio necesita una IP, y esas IP van cambiando… ¿Cómo sé qué tiene IP www.realdroid.es? Ahí entran empresas como DynDNS o, en nuestro caso, no-ip: son los encargados de mantener en todo momento la IP actual que corresponde a cada dominio.

Espero que con este resumen tan resumido os haya quedado un poco más claro como va esta parte de Internet, y que entendáis la necesidad de configurar no-ip en nuestra Raspi para poder acceder a ella desde fuera de casa. Ahora pasemos a registrar nuestro propio dominio para acceder a nuestra Raspi.

Registro en no-ip

El registro en no-ip es gratuito, y tiene ciertas limitaciones, aunque no son ningún inconveniente para nuestras necesidades: puedes usar como máximo 3 dominios y requiere de una “activación” mensual para cada uno de ellos, pero no es más que darle a un botón.

Una vez registrados tendremos un panel de control similar a este:

noip1

En el menú de la izquierda vemos Dynamic DNS [Free]. Pulsamos y nos llevará a la siguiente página:

noip3

Aquí será suficiente con pulsar sobre Add Hostname, elegir un nombre y una extensión de dominio de las que nos ofrece y pulsar aceptar. Yo uso ddns.net porque es la que más fácil me es de recordar.

noip2

Ya hemos acabado con la web de no-ip. Ahora vamos a configurar nuestra Raspi.

Configurar no-ip en la Raspi

Accedemos a la Raspi mediante ssh (si no sabes como hacerlo, aquí tienes el tutorial que os hicimos), y antes que nada tenemos que actualizarla. Lo hacemos tecleando:

sudo apt-get update && sudo apt-get upgrade

Esto actualizará primero los repositorios del sistema y posteriormente lo actualizará. Dependiendo de cuánto haga que no se haya actualizado, o si es la primera vez, puede tardar un rato, así que no os desesperéis.

Una vez actualizada, es hora de instalar no-ip. Para ello:

wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz

Extraemos el archivo con:

tar -zxvf noip-duc-linux.tar.gz

Y accedemos a la carpeta usando:

cd noip-2.1.9-1

Imagino que no han cambiado la versión, pero en caso de que sí, tecleáis “ls” para ver el nombre de los archivos y carpetas que tenéis, y sustituís noip-2.1.9-1 por la que corresponda. Una vez dentro, procedemos a la instalación:

sudo make

sudo make install

Ahora nos va a preguntar el nombre de usuario y contraseña de no-ip y, una vez introducido, ya cogerá automáticamente en dominio que hemos creado antes (supongo que solo habéis creado uno). Luego nos quedará elegir el tiempo de refresco, que lo podemos dejar por defecto, y a la siguiente pregunta respondemos “NO” (n). Ya tenemos no-ip configurado.

Ahora nos quedan unos pequeños pasos para que arranque automáticamente al encender la Raspi. Para ello creamos un nuevo archivo:

sudo nano /etc/init.d/noip2

Y copiamos dentro lo siguiente:

sudo /usr/local/bin/noip2

Ahora añadimos permisos de ejecución con:

sudo chmod +x /etc/init.d/noip2

Modificamos el fichero update-rc:

sudo update-rc.d noip2 defaults

Y lo ponemos en marcha:

sudo /usr/local/bin/noip2

Y ya está, tan solo nos falta probar que funciona. El problema es que es posible que no podamos hacerlo estando conectados a nuestra propia red, por lo que será necesario acceder desde otra red, o desde el móvil, pero antes debemos preparar el router. No os asustéis, que no es para tanto.

Abrir los puertos del router

Para ello accedemos desde el navegador a 192.168.1.1, que suele ser la dirección por defecto de la mayoría de routers. En caso de que el vuestro no lo sea, tendréis que averiguar cual es (Google es tu amigo). Nos pedirá usuario y contraseña, que normalmente es admin, admin, o, en los routers nuevos de Movistar, introducir la contraseña que encontramos debajo del router.

Una vez dentro, buscamos alguna parte donde ponga puertos. Con la nueva interfaz de Movistar, está en el menú principal:

puertos_router

En la siguiente pantalla rellenamos los campos como sigue:

puertos_router_

El nombre es puramente informativo, pero la dirección IP debe ser la que le hemos asignado a nuestra Raspi (de ahí la importancia de que la pusiéramos estática), y los campos de puerto ponemos el 22 (el puerto por defecto de las conexiones ssh). Añadir y listo.

Lo único que nos quedaría es probar desde fuera de casa si podemos hacer ssh, usando:

ssh pi@midominio.ddns.net

Y con esto ya tenemos nuestra Raspi más cerca de interactuar con el exterior de una forma mucho más madura. De momento solo por ssh, pero llegará el momento de configurar nuestro servidor de Torrent, o incluso nuestra propia nube, que este cacharro da para mucho más de lo que aparenta.