Continuando y finalizando éste tutorial, voy a explicar el proceso que debemos seguir para poder conectarnos a nuestra Raspberry PI desde fuera de nuestra red local.
Para ello vamos a tener que realizar un par de acciones:

  • Abrir un puerto en nuestro router para poder acceder al servidor desde fuera de la red local
  • Instalar No-IP para solucionar el problema que se nos plantea con respecto a la IP dinámica

ABRIR PUERTOS

Como cada router es de su padre y de su madre, y por qué no de su tío abuelo y cuñado… no me voy a meter en faena de cómo abrirlos. Deberéis de buscar información sobre vuestro modelo de router y poneros manos a la obra.
Recomendación, no utilicéis puertos que puedan estar en uso por alguna otra aplicación.
Para facilitaros el trabajo un poco, os dejaré una lista bastante extensa PortForward, en donde os explica cómo abrir el puerto en vuestro modelo de router (el modelo y marca lo tendréis en una pegatina debajo de vuestro router o incluso en un lateral). Sólo tenéis que seleccionar la marca, el modelo y seguir los pasos.

CREANDO UN DOMINIO EN NO-IP

En primer lugar deberemos de crearnos una cuenta en No-IP. Una vez creada, accedemos a la cuenta y nos iremos al apartado “Dynamic DNS / Hostnames”.

noip_dashboard

Aquí aparecerán todos los dominios que tenemos creados en nuestra cuenta si tenemos, claro. Pulsaremos en el botón inferior que dice “Add A Hostname” para añadir uno nuevo.

noip_add_host

En la pantalla que nos aparecerá, podremos configurar varios ajustes, como ser el nombre de nuestro dominio, la extensión que va a tener (hay una cantidad decente de ellas completamente gratuitas), el tipo de host que queremos, nuestra dirección IP actual (para que se cree apuntando a una por defecto), etc…
Rellenaremos los datos, pulsaremos en “Add Hostname” y ya tenemos listo nuestro dominio.

noip_add_host2

Como nota aclaratoria, debo de comentar que si bien No-IP provee este servicio gratuitamente, tendremos que renovar el dominio cada 30 días y solo podemos tener un máximo de 3 dominios.
Poseen una suscripción premium, alrededor de 20$ al año, podríamos tener 25 dominios y te ahorrarías el incordio de tener que estar renovándolos cada mes. Si te interesa, puedes ver precios su web.

INSTALANDO NO-IP EN NUESTRA RASPBERRY PI

Una vez con nuestro dominio creado, procedemos a instalar el cliente de No-IP en nuestra RPi.
Como el sistema raspbian no posee ningún paquete para No-IP, lo tenemos que descargar e instalar a mano.

En primer lugar, debemos de crearnos una carpeta para proceder ordenadamente, y luego iremos a la carpeta recientemente creada:

mkdir noip
cd noip

Procedemos con las descarga del paquete noip:

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

Descomprimimos el archivo usando el comando tar:

tar vzxf noip-duc-linux.tar.gz

Y entraremos a la carpeta que acabamos de descomprimir (adapta el número de versión al tuyo):

cd noip-2.1.9-1

Y lo instalamos, deberemos de instalar previamente el paquete build-essential si no lo tenemos, cosa más que probable:

sudo apt-get install build-essential
make
sudo make install

Tras ejecutar el último comando nos pedirá una una serie de ajustes:

noip_service

  • Nuestro email / usuario de la cuenta de noip.com
  • La contraseña de la cuenta de noip.com
  • Si queremos sincronizar todos los dominios que tenemos en esta cuenta: NO.
  • Si queremos actualizar el dominio X de nuestra cuenta (le decimos que si escribiendo Y, en el dominio correspondiente, el resto N).
  • El tiempo de refresco, en minutos, del dominio (cada cuanto tiempo le vamos a decir a noip.com cual es nuestra IP). 15 ó 30 minutos parece un tiempo razonable.
  • Si queremos ejecutar algún comando cuando se realice el refresco, en nuestro caso NO.

Y con esto ya podemos arrancar no-ip ejecutando el comando:

sudo /usr/local/bin/noip2

Lo malo de ejecutarlo con ese comando, es que cada vez que arranquemos lo vamos a tener que ejecutar a mano. Vamos a hacer que se ejecute automáticamente cuando arranque el sistema para olvidarnos del tema

Para ello, debemos de editar el fichero de configuración /etc/rc.local de la siguiente forma, primero escribimos:

sudo nano /etc/rc.local

Luego, añadiremos la línea /usr/local/bin/noip2 antes del “exit 0” que aparece en el fichero, de nuevo pulsamos Ctrl+X, Y e Intro para guardar y sobre escribir el fichero. El archivo debería quedar más o menos de la siguiente forma:

noip_config_file

Por último, para comprobar que funciona, reiniciamos la RPi:

sudo reboot

y al volver a iniciar, comprobaremos que noip2 esté arrancado mediante el siguiente comando:

ps aux | grep noip2

Y obtendríamos la siguiente salida:

noip_check

Con ésto, ya podríamos comprobar tecleando en cualquier navegador, que al teclear la dirección de No-IP, nos derivaría a nuestro servidor.

Lo ideal para tener la RPi funcional al 100% sería contratar un nombre de dominio y dirigir el mismo a nuestra RPi, pero como cada servicio y servidor son diferentes en aspectos de configuración, no ahondaré más en esa parte por su extensión.
Con ésto, llegamos al éste macro tutorial compuesto de cuatro partes, espero que os haya servido de ayuda. Cualquier duda, podéis dejarme un comentario y os intentaré ayudar en lo posible.