🚀 ¿Qué es Ngrok y cómo usarlo? Guía completa con ejemplos

🌐 ¿Qué es Ngrok?

Ngrok es una herramienta que permite exponer un servidor local a internet de forma segura mediante un túnel. En otras palabras, te da una URL pública para acceder a una aplicación que está corriendo en tu computadora local (por ejemplo, en localhost:3000).

Es muy utilizada en desarrollo web, pruebas de APIs, webhooks y demostraciones de proyectos sin necesidad de desplegarlos en un servidor en producción.


🛠 ¿Cómo funciona Ngrok?

Ngrok crea un túnel seguro entre tu máquina local y una URL pública generada por sus servidores. Cuando alguien accede a esa URL, el tráfico se redirige hacia tu aplicación local.

Flujo básico:

  1. Ejecutas tu aplicación en localhost (ejemplo: puerto 3000).
  2. Inicias Ngrok apuntando a ese puerto.
  3. Ngrok genera una URL pública (ejemplo: https://abc123.ngrok.io).
  4. Cualquier persona con esa URL puede acceder a tu aplicación.

📦 ¿Cómo instalar Ngrok?

1️⃣ Crear una cuenta

Debes registrarte en el sitio oficial de Ngrok para obtener tu authtoken.

2️⃣ Descargar Ngrok

Disponible para Windows, macOS y Linux.

3️⃣ Configurar tu token

ngrok config add-authtoken TU_TOKEN_AQUI

4️⃣ Exponer un puerto local

Si tu app corre en el puerto 3000:

ngrok http 3000

Ngrok generará una URL pública como:

https://8f4d-123-45-67-89.ngrok-free.app

💡 Ejemplos de uso

🔹 1. Probar Webhooks (ejemplo con Stripe)

Si estás desarrollando una integración con Stripe, necesitas una URL pública para recibir eventos de pago.

En lugar de desplegar tu app:

ngrok http 3000

Luego colocas la URL generada en el panel de Stripe como endpoint del webhook.

✅ Ideal para desarrollo y pruebas.


🔹 2. Compartir tu proyecto con un cliente

Supongamos que estás desarrollando una app con Node.js y quieres que tu cliente vea avances sin subirla a producción.

Ejecutas:

ngrok http 3000

Envías la URL pública y listo 🎉


🔹 3. Probar APIs locales con dispositivos móviles

Si desarrollas una API con Express.js en tu computadora y quieres probarla desde tu celular, Ngrok te permite acceder a tu backend desde cualquier red externa.


🔹 4. Demos rápidas en entrevistas técnicas

Muchos desarrolladores usan Ngrok para mostrar proyectos funcionando en tiempo real sin necesidad de desplegar en servicios como Heroku o Vercel.


🔐 Ventajas de usar Ngrok

  • ✔ No necesitas servidor en producción
  • ✔ HTTPS automático
  • ✔ Fácil de configurar
  • ✔ Inspector web para ver las solicitudes HTTP
  • ✔ Ideal para desarrollo y testing

⚠ Consideraciones de seguridad

  • No expongas servicios sensibles sin autenticación.
  • Usa el panel de Ngrok para cerrar túneles cuando no los necesites.
  • En planes gratuitos, la URL cambia cada vez que reinicias el túnel.

🏁 Conclusión

Ngrok es una herramienta extremadamente útil para desarrolladores que necesitan exponer servicios locales de manera rápida y segura. Ya sea para probar webhooks, compartir avances con clientes o realizar pruebas desde dispositivos externos, Ngrok simplifica el proceso sin requerir infraestructura adicional.

Si estás desarrollando aplicaciones web o APIs, aprender a usar Ngrok puede ahorrarte mucho tiempo y facilitar tus pruebas y demostraciones.

Deja un comentario