En el siguiente artículo vamos a echar un vistazo a Localtunnel. Esta aplicación nos resultará útil en el caso de que creemos un sitio web en nuestro servidor de desarrollo local para un cliente. En algún momento este querrá ver como va el trabajo. Llegado el caso podríamos alojar el sitio web en un servidor en línea, para que el cliente pueda verlo. Otra opción seria realizar una captura de pantalla de cada página del sitio web y enviarlas al cliente. Pero todo esto ya no será necesario si utilizamos Localtunnel. Esta aplicación nos permitirá compartir fácilmente el servidor web de nuestro equipo de desarrollo local. Sin necesidad de ponerlo en línea o sin que interfiera con la configuración de DNS y firewall.
Hacer que nuestro servidor local esté disponible para quién nosotros queramos es probablemente la manera más rápida y efectiva de hacer frente a la situación anteriormente descrita. Especialmente si tenemos cientos de archivos a los que necesitaremos acceso. Con Localtunnel podremos crear un acceso seguro a nuestro servidor local, haciéndolo accesible desde cualquier lugar para quién nosotros queramos.
El programa le va a asignar una URL única accesible al público para que puedan acceder a nuestro servidor web que se ejecuta localmente. Para poner esto en términos simples, podemos exponer nuestro servidor de desarrollo en local al mundo real.
Instalar Localtunnel en Ubuntu
Para instalar Localtunnel en nuestro servidor local, necesitaremos tener instalado NodeJS instalado en Ubuntu. Si todavía no lo tenemos instalado, podremos realizar la instalación de manera sencilla abriendo una terminal (Ctrl+Alt+T) y escribiendo lo siguiente:
sudo apt install nodejs npm nodejs-legacy
He de decir que el paquete nodejs-legacy lo he tenido que instalar en la versión 17.04 de Ubuntu, pero cuando lo he probado en la versión 16.04 no tuve que hacer uso de el. Una vez terminada la instalación de NodeJS, podemos ejecutar ya el siguiente comando para instalar Localtunnel:
sudo npm install -g localtunnel
Para poder utilizar Localtunnel, es evidente que necesitaremos un servidor para compartir como podrían ser los que nos ofrecen XAMPP o Apache (por separado). Tanto uno como el otro nos van a proporcionar un servidor Apache para poder compartir el contenido desde nuestro servidor local.
Como utilizar Localtunnel
Suponiendo que la URL de nuestro servidor local sea http://localhost/ sin indicar el número de puerto, podremos escribir el siguiente comando utilizando 80 como número de puerto. Con la siguiente orden conseguiremos la URL única para que nuestro sistema local sea accesible desde cualquier lugar (suponiendo que el servidor local se esté ejecutando en el puerto 80). En la terminal (Ctrl+Alt+T) escribiremos lo siguiente:
lt --port 80
El resultado que obtendremos será algo como lo siguiente:
your url is: https://ojyzmpjoho.localtunnel.me
La URL que nos proporciona la terminal será la que permita a los usuarios remotos conectarse. Esta URL permanecerá activa durante toda la sesión. Mientras tanto podremos compartirlo con otros para probar el servicio web o simplemente compartir nuestro trabajo con quien queramos. También tendremos la posibilidad de reiniciar el servidor local si lo consideramos necesario. Localtunnel es lo suficientemente inteligente para detectar esto. Se volverá a conectar una vez que el servicio vuelve a estar levantado.
Esta es la manera sencilla en la que podremos acceder a nuestro servidor Ubuntu local desde Internet.
Evidentemente la URL que se genera es difícil que podamos recordarla. Para poder hacer esto mucho más fácil de recordar, tendremos la opción de utilizar un subdominio (si está disponible) como se muestra a continuación:
lt --port 80 --subdomain entreunosyceros
En este ejemplo, y tras utilizar el comando anterior se puede acceder al servidor local desde cualquier lugar. Solo habrá que utilizar una URL mucho más sencilla de recordar como sería https://entreunosyceros.localtunnel.me.
Para comprobar la versión de Localtunnel o solicitar la ayuda que nos puede mostrar el programa solo tendremos que ejecutar cualquiera de los dos comandos que se muestran en la siguiente captura:
Desinstalar Localtunnel
Para eliminar este programa de nuestro equipo, necesitaremos hacer uso de la opción “uninstall” de NodeJS. Para ello tendremos que escribir en la terminal (Ctrl+Alt+T) la siguiente orden:
npm uninstall -g localtunnel
Podremos consultar más características y el código fuente de este programa desde su página de GitHub.