Exponer Localhost a Internet
Aqui veremos diferentes formas de exponer nuestro servidor local a internet publico.
NGROK
Ngrok es un servicio que nos permite crear nuestro servidor local en un subdominio para poder visualizarlo fuera de la LAN.
primero necesitaras crear una cuenta, es gratis (tambien hay una version de paga), desde podras generar tu token e cual te servira para poder usar ngrok.
Instalacion
Descargas el binario para tu sistema operativo, lo guardas en algun directorio, para mayor comodidad puedes agregarlo a tu PATH.
(Windows)
En windows puedes instalar con el comando choco (administrador de paquetes parecido a APT o PKG en linux), tambien ya vimos como instalarlo en windows, ya que no viene de forma nativa.
pagina de descarga : https://dashboard.ngrok.com/get-started/setup/windows
choco install ngrok
Iniciamos ngrok solo la primera vez
ngrok config add-authtoken $YOUR_AUTHTOKEN
Esto creara un archivo con las siguintes caracteristicas, ngrok.yml, donde tambien puedes personalizar a tu manera con mas detalles de tunneling.
agent:
authtoken: <your-authtoken>
Publicamos
A partir de este momento ya podemos publicar nuestro localhost:8080 a internet
ngrok http http://localhost:8080
cree mi servdor local con python
python -m http.server 8000
Puedes ver toda la documentacion.
https://dashboard.ngrok.com/get-started/setup/windows
BORE
Un túnel TCP moderno y simple en Rust que expone los puertos locales a un servidor remoto, evitando los firewalls de conexión NAT estándar. Eso es todo lo que hace: ni más ni menos. gracias a Erik Zhang
Github: https://github.com/ekzhang/bore
Instalacion
En el github hay binarios para todas las plataformas, yo como utilizo windows voy poe exe. lo descargas desde su releases.
https://github.com/ekzhang/bore/releases/tag/v0.5.2
# binario para windows
wget https://github.com/ekzhang/bore/releases/download/v0.5.2/bore-v0.5.2-x86_64-pc-windows-msvc.zip
una vez descargado, lo extraigo del zip, si quiero puede agregarlo a mi PATH, y ejecutarlo. antes ya debemos tener nuestro servidor localhost, para las pruebas yo utilizo python -m http.server 8000, pero bien puedes usar XAMPP u otro similar
.\bore local 8000 --to bore.pub
El resultado en nuestro navegador desde internet publico
Localtunnel Pinggy
Si buscas algo mas simple, y no quieres instalar nada en tu sistema, puedes usar este servicio, solo tienes que pegar este comando y redirigir tu puerto local hacia 443 por ejemplo.
Pagina: https://pinggy.io/blog/local_tunnel/
$ ssh -p 443 -R0:localhost:8000 qr@a.pinggy.io
Redirigimos nuestro localhost al publico
Resultado nuestra pagina web en internet.
localhost.run
Otro servicio parecido al anterior, sin necesidad de registrarse o instalar algo en el sistema.
Todo en un solo comando pasale tu puerto localhost y expongalo hacia internet.
Toda la documentacion en : https://localhost.run/
$ ssh -R 80:localhost:8000 localhost.run
listo !!
authenticated as anonymous user
8d9891ffd6ac33.lhr.life tunneled with tls termination, https://8d9891ffd6ac33.lhr.life
Nuestro tunneling funcionando.
Ademas te comparte un QR para que la envies, y la URL es dinamica va cambiando cada 15 minutos aproximado.
y tu que tunels conoces?…
Tambien puedes verlo en mi canal Youtube
¿Te ha gustado este artículo? Si quieres, puedes ayudarme a escribir el siguiente artículo. invitándonme a un rico café.