Configuración del túnel en Raspberry Pi

Cloudflare Tunnel en Raspberry Pi para servidor doméstico siempre activo

Usa esta guía cuando una Raspberry Pi o mini PC debe mantener cloudflared activo con un hostname real. Incluye configuración, systemd, comprobaciones y cuándo GhostlyShare o ghs CLI son opciones más ligeras.

El objetivo es un conector estable saliente, no anonimato mágico. Los visitantes no necesitan acceso al router, pero Cloudflare, tus cuentas y hábitos siguen siendo importantes.

Mejor uso: servicio pequeño que debe estar accesible.

Una Raspberry Pi es útil para que el túnel sobreviva a suspensión del portátil, cierre de sesión o trabajo diario. GhostlyShare también sirve para compartir a largo plazo si prefieres app o CLI en vez de archivos de servicio manuales.

Respuesta breve: usa Raspberry Pi si el túnel debe estar siempre activo

Una Raspberry Pi es un buen conector para Cloudflare Tunnel cuando web, panel, webhook o servicio de laboratorio deben estar accesibles sin depender del portátil diario. No es la única opción para ejecución prolongada; GhostlyShare puede ser un flujo de túnel más sencillo.

NecesidadUsarPor qué
Hostname siempre activo para servicio domésticoCloudflare Tunnel en Raspberry PiLa Pi puede estar siempre conectada, reiniciarse de forma predecible y ejecutar cloudflared como servicio Linux.
Vista previa, callback webhook o compartición gestionadaGhostlyShareGhostlyShare mantiene el flujo del túnel en app o CLI, más sencillo que gestionar manualmente la configuración de cloudflared.
App en producción con mayor aislamientoVPS o hosting gestionadoUn servidor público suele ser más fácil de monitorizar, respaldar y separar de la red doméstica.

Arquitectura sencilla: visitante, Cloudflare, Pi, servicio local

Cloudflare Tunnel mantiene la conexión saliente del origen. La Raspberry Pi abre conexiones a Cloudflare, que asigna tu hostname público a un servicio local como localhost:3000 o una dirección LAN.

Visitante

El visitante accede a tu nombre de host público y al borde de Cloudflare, no a un puerto del router de tu conexión doméstica.

Cloudflare

Cloudflare controla el borde público, la zona DNS, el mapeo del túnel y la ruta de la solicitud para el nombre de host.

Raspberry Pi

cloudflared se ejecuta en el Pi y mantiene abiertas las sesiones de conexión salientes hacia Cloudflare.

Servicio local

La aplicación real puede permanecer en localhost, otro puerto o en un host LAN accesible desde el Pi.

No consideres esto como un muro de privacidad contra todos. Principalmente evita que visitantes y escaneos aleatorios accedan a tu router doméstico o descubran el origen directamente.

Prepara el Raspberry Pi antes de instalar cloudflared

La mayoría de los problemas con túneles no son causados por Cloudflare. Provienen de un dispositivo inestable, una dirección local cambiante o un archivo de configuración inaccesible para el usuario del servicio.

Usa una base Linux estable

Comienza con Raspberry Pi OS o Debian, aplica actualizaciones y prefiere 64 bits si el dispositivo lo soporta.

Estabiliza la red local

Proporciona al Pi una ruta de red fiable, preferiblemente Ethernet por cable o una reserva DHCP si el servicio accede a hosts LAN.

Verifica primero la app local

Asegúrate de que la app funcione localmente antes de involucrar Cloudflare, DNS o systemd.

Decide qué debe mantenerse privado

No expongas paneles de administración por accidente. Protege herramientas privadas con Cloudflare Access o mantenlas locales.

Elección de hardware: opta por un kit Raspberry Pi 5, no solo la placa

Para un conector de túnel, un kit Raspberry Pi 5 es la opción más segura que solo la placa suelta. Necesitas la placa, una fuente USB-C estable, refrigeración o ventilador, y almacenamiento fiable antes de culpar a Cloudflare por desconexiones aleatorias.

Kit Raspberry Pi 5 usado como pequeño servidor doméstico con Cloudflare Tunnel
Hardware recomendado

Kit Raspberry Pi 5 para un pequeño servidor doméstico con Cloudflare Tunnel

Busca un kit Raspberry Pi 5 con fuente USB-C fiable, refrigeración, carcasa y almacenamiento. 4 GB son suficientes para cloudflared; 8 GB ofrecen más espacio si el Pi también ejecuta la app.

Ver en Amazon
Como Afiliado de Amazon, obtengo ingresos por las compras adscritas que cumplen los requisitos aplicables.
Lista de compra

Prefiere la fuente oficial Raspberry Pi 27W USB-C o equivalente 5V/5A, y no omitas la refrigeración. Potencia débil y calor pueden parecer inestabilidad del túnel aunque la configuración de cloudflared sea correcta.

Guía de configuración Cloudflare Tunnel en Raspberry Pi

Usa el panel de Cloudflare o la documentación oficial para el comando actual del paquete según la arquitectura de tu Pi. Considera los comandos siguientes como un orden seguro de trabajo, no como garantía de que las URLs de los paquetes no cambien.

1

Paso 1: actualiza el Pi y confirma la arquitectura

Instala primero las actualizaciones y luego verifica la arquitectura para copiar el comando correcto del paquete cloudflared desde Cloudflare.

ShellTerminal Linux
sudo apt update
sudo apt upgrade -y
dpkg --print-architecture
2

Paso 2: instala cloudflared con el comando oficial actual

Consulta el panel de Cloudflare o la documentación para obtener el comando Linux actual que se adapte a tu arquitectura. Verifica el binario tras la instalación.

ShellTerminal Linux
# Paste the current official Cloudflare install command for your Pi here.
cloudflared --version
3

Paso 3: autentica y crea un túnel con nombre

Autoriza la zona de Cloudflare, crea un túnel con nombre y copia el UUID del túnel que aparece en la salida.

ShellTerminal Linux
cloudflared tunnel login
cloudflared tunnel create home-pi
4

Paso 4: crea un config.yml explícito

Sustituye el UUID del túnel, el nombre de host, el servicio local y la ruta de credenciales antes de ejecutarlo. La regla de reserva debe quedar al final.

ShellTerminal Linux
mkdir -p ~/.cloudflared
nano ~/.cloudflared/config.yml
ShellTerminal Linux
tunnel: <tunnel-uuid>
credentials-file: /home/pi/.cloudflared/<tunnel-uuid>.json

ingress:
  - hostname: app.example.com
    service: http://localhost:3000
  - service: http_status:404
5

Paso 5: valida, enruta DNS y ejecuta en primer plano

Valida las reglas de entrada, crea la ruta DNS y mantén el túnel en primer plano mientras pruebas desde otra red.

ShellTerminal Linux
cloudflared tunnel ingress validate
cloudflared tunnel route dns home-pi app.example.com
cloudflared tunnel run home-pi

Ejecuta cloudflared como servicio Linux con la ruta de configuración correcta

El detalle clave en Linux es la ruta de configuración. Si instalas el servicio con sudo, el directorio home puede ser el de root, y el servicio no encontrará la configuración que probaste como usuario pi.

1

Paso 1 del servicio: instala el servicio con una ruta de configuración explícita

Esto evita el error común de desajuste entre el directorio home de sudo y la configuración probada como usuario pi y la cuenta del servicio.

ShellTerminal Linux
sudo cloudflared --config /home/pi/.cloudflared/config.yml service install
2

Paso 2 del servicio: activa el servicio y comprueba su estado

Inicia cloudflared con systemd y verifica que use la configuración esperada y se mantenga activo.

ShellTerminal Linux
sudo systemctl enable --now cloudflared
systemctl status cloudflared
3

Paso 3 del servicio: lee los logs y prueba a reiniciar

Usa los logs para detectar errores en la ruta de configuración, credenciales, DNS y servicio local antes de depender de la ruta.

ShellTerminal Linux
journalctl -u cloudflared -f
sudo systemctl restart cloudflared
systemctl status cloudflared

Lista de comprobación para un túnel pequeño siempre activo

Un túnel doméstico solo es fiable cuando el reinicio, las actualizaciones, los logs y las reglas de acceso también son fiables. Prueba estas partes antes de compartir la URL ampliamente.

Prueba de reinicio

Reinicia el Pi y confirma que el nombre de host funciona sin abrir antes una sesión SSH.

Reglas de acceso

Protege las apps privadas con Cloudflare Access, un inicio de sesión fuerte o un límite de red local.

Actualizaciones

Actualiza el sistema operativo y cloudflared regularmente y verifica el servicio tras las actualizaciones.

Mantenimiento de logs

No publiques logs ni capturas con IDs de túnel, correos de cuenta, nombres de host o servicios privados.

Copias de seguridad

Haz copias de seguridad de la configuración de forma intencionada, pero protege las credenciales del túnel como secretos.

Límite de privacidad

Esta configuración oculta el origen a los visitantes; no oculta tu cuenta de Cloudflare, el historial del dominio ni la actividad administrativa.

Dónde encajan GhostlyShare y la CLI ghs

GhostlyShare es la opción más sencilla para compartir localmente como Cloudflare sin gestionar directamente la configuración de cloudflared. Sirve para previsualizaciones rápidas, callbacks de webhook, flujos automatizados y comparticiones prolongadas con gestión intencionada del tiempo activo.

Usa el túnel del Pi para control manual; usa GhostlyShare para un flujo de túnel gestionado.

Esa división es sobre control, no duración. Raspberry Pi junto con cloudflared te ofrece systemd, rutas de configuración explícitas, propiedad DNS y un servicio de bajo nivel. GhostlyShare ofrece un flujo más sencillo con app o CLI que puede ser temporal o prolongado según cómo lo uses.

Solución de problemas: fallos que suelen ser prioritarios

SíntomaCausa probablePrimera comprobación
Página de error de Cloudflare en lugar de la appEl túnel está caído, la URL del servicio es incorrecta o la app local no está escuchando.Ejecuta systemctl status cloudflared, journalctl y curl al servicio local en el Pi.
El servicio funciona en primer plano pero no tras la instalaciónsystemd está usando un directorio home o ruta de configuración diferente.Instala el servicio de nuevo con la ruta --config explícita a /home/pi/.cloudflared/config.yml.
El nombre de host no llega al túnelLa ruta DNS, el nombre de host o la zona Cloudflare no están conectados al túnel nombrado.Confirma el nombre de host público en Zero Trust y ejecuta cloudflared tunnel info home-pi.
La página de administración es accesible públicamenteLa regla de ingreso apunta a una herramienta privada sin capa de acceso.Colócalo detrás de Cloudflare Access o mantén ese servicio solo local.

Documentación oficial que vale la pena revisar antes de confiar

Mantén abiertas las docs oficiales de Cloudflare mientras configuras el Pi. Nombres de producto, comandos, pantallas y límites pueden cambiar.

Preguntas frecuentes sobre Raspberry Pi y Cloudflare Tunnel

Preguntas frecuentes

¿Es un Raspberry Pi adecuado para Cloudflare Tunnel?

Sí, si buscas un conector siempre activo para un servidor doméstico pequeño o servicio de laboratorio. Consume poco, es predecible y más fácil de mantener online que un portátil diario.

¿Necesito redirección de puertos en el router?

No. Cloudflare Tunnel usa conexiones salientes de cloudflared a Cloudflare, por lo que los visitantes no necesitan una ruta directa entrante a tu router.

¿Debería usar GhostlyShare CLI en su lugar?

Usa GhostlyShare o la CLI ghs para compartir localmente con gestión desde la app, vistas previas, webhooks, scripts o compartidos prolongados que mantienes online. Usa Raspberry Pi con cloudflared si quieres control total sobre archivos de servicio, configuración de ingreso y el sistema operativo.

¿Hace esto que mi servidor doméstico sea anónimo?

No. Puede ocultar el origen a los visitantes, pero los datos de la cuenta de Cloudflare, registros de dominio, pagos, registros, contenido y la actividad del administrador aún pueden vincular el proyecto contigo.