FAQ & Solución de problemas
Respuestas a las preguntas más frecuentes sobre instalación, VPN, firmware, panel local y monitorización.
Instalación y registro
El dispositivo muestra estado PROVISIONING en rud1-es
El agente ha arrancado correctamente pero el código de registro aún no se ha introducido en rud1-es. Para completar el registro:
- Obtén el código de registro del dispositivo (ver pregunta siguiente)
- En rud1-es, ve a Dispositivos → Añadir dispositivo
- Introduce el código y asigna un nombre al dispositivo
- El estado cambiará a ONLINE en unos segundos
No encuentro el código de registro
Hay dos formas de obtenerlo:
Opción 1 — Logs del agente:
journalctl -u rud1-agent -f | grep registration_code # Salida: registration_code="RUD1-ABCD-1234"
Opción 2 — Panel local:
Accede a http://[ip-del-dispositivo] desde tu red local. El código aparece en la pantalla principal del panel rud1-app.
El registro falla con error 404
El código de registro introducido en rud1-es no coincide con el generado por el agente. Causas comunes:
- Copiaste el código incorrectamente (es sensible a mayúsculas)
- No incluiste el prefijo
RUD1- - El agente se reinició y generó un nuevo código
Obtén el código actual de los logs con el comando de arriba y vuelve a intentarlo.
El agente no inicia (systemd)
Diagnostica el problema con estos comandos:
# Ver estado del servicio systemctl status rud1-agent # Ver logs recientes journalctl -u rud1-agent --since "5 minutes ago"
Causas habituales:
api_secretfaltante o vacío enconfig.yaml- Sintaxis inválida en el archivo YAML (indentación incorrecta)
- Permisos incorrectos en los directorios
/var/lib/rud1-agent - El binario no tiene permisos de ejecución
Conectividad y VPN
El dispositivo muestra OFFLINE inmediatamente después de registrarse
- Verifica que
cloud.api_secretestá correctamente configurado enconfig.yaml - Comprueba la conectividad a internet desde el dispositivo:
ping 8.8.8.8 - El intervalo de heartbeat por defecto es 60 segundos. El dispositivo puede aparecer OFFLINE hasta que envíe su primer heartbeat. Espera 60-90 segundos.
- Revisa los logs:
journalctl -u rud1-agent -f | grep heartbeat
La VPN no conecta
Sigue este proceso de diagnóstico:
# 1. Verificar que WireGuard está instalado which wg-quick # 2. Ver el estado actual de la interfaz sudo wg show # 3. Comprobar el archivo de configuración cat /etc/wireguard/wg0.conf # 4. Intentar conectar manualmente sudo wg-quick up wg0 # 5. Verificar que el servidor es alcanzable (cambia el puerto si usas otro) nc -uzv vpn.tuservidor.com 51820
# Verificar que WireGuard está corriendo en el servidor sudo wg show # Verificar que el puerto UDP 51820 está abierto sudo ufw status
Pierdo la conexión VPN frecuentemente
Esto suele ocurrir cuando el dispositivo está detrás de un NAT estricto. Añade PersistentKeepalive = 25 en la sección [Peer] del archivo /etc/wireguard/wg0.conf del dispositivo:
[Peer] PublicKey = <SERVER_PUBLIC_KEY> Endpoint = vpn.tuempresa.com:51820 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 25
Después recarga la configuración: sudo wg-quick down wg0 && sudo wg-quick up wg0
Panel local
No puedo acceder al panel local (rud1-app)
Comprueba en orden:
- Verifica que nginx (o el servidor que sirve rud1-app) está corriendo:
systemctl status nginx - Verifica que el puerto 80 no está bloqueado por el firewall del dispositivo:
sudo ufw allow 80 - Intenta acceder directamente con la IP:
http://192.168.x.x - Asegúrate de que tu navegador y el dispositivo están en la misma red local (o conectados via VPN)
- Prueba desde el propio dispositivo:
curl http://localhost
El panel local muestra "Connection error"
rud1-app no puede conectarse al agente rud1-fw en el puerto 7070. Diagnostica el agente:
# Ver estado del agente
systemctl status rud1-agent
# Probar la API local directamente
curl http://localhost:7070/health
# Respuesta esperada: {"status":"ok"}Si el agente no responde, reinícialo: sudo systemctl restart rud1-agent
Firmware
La actualización de firmware falla
# Ver logs relacionados con firmware journalctl -u rud1-agent | grep firmware # Verificar espacio en disco df -h / # Verificar que el directorio temporal es escribible ls -la /tmp/
Causas comunes:
- El checksum SHA256 no coincide (archivo descargado corrupto) — el agente reintentará automáticamente
- Disco lleno — libera espacio y reinicia el agente
- Permisos incorrectos en el directorio de instalación
- Conexión a internet interrumpida durante la descarga
El dispositivo no recibe la actualización de firmware
La comprobación de firmware se realiza cada 10 minutos. Espera hasta 10 minutos desde que creaste el rollout. Si transcurrido ese tiempo no hay actualización:
- Verifica que el dispositivo está ONLINE en rud1-es
- Reinicia el agente para forzar una comprobación inmediata:
sudo systemctl restart rud1-agent - Comprueba que el rollout está activo y dirigido al dispositivo correcto en rud1-es → Firmware → detalle del rollout
- Verifica en los logs:
journalctl -u rud1-agent | grep "firmware"
Monitorización y alertas
Las alertas no se envían por webhook
- Verifica que la URL del webhook es correcta en la configuración de la regla de alerta
- Comprueba que la URL es accesible desde los servidores de rud1-es (no puede ser localhost ni una IP interna de tu red)
- Prueba el webhook desde Configuración → Webhooks → Probar
- Verifica que la regla de alerta está habilitada
- Comprueba los logs de entrega del webhook en el historial de alertas
Las métricas del dashboard no se actualizan
El intervalo de heartbeat por defecto es 60 segundos. Las métricas se actualizan con cada heartbeat. Si transcurrido 90+ segundos las métricas siguen sin cambiar:
- Verifica que el dispositivo está ONLINE
- Comprueba que los heartbeats se están enviando:
journalctl -u rud1-agent | grep heartbeat - Recarga la página del dashboard (puede haber un problema de caché del navegador)
General
¿Cómo actualizo rud1-fw a una nueva versión?
La forma recomendada es usar el sistema de gestión de firmware de rud1-es (subir versión + crear rollout). Consulta la guía de gestión de firmware.
Para actualización manual de emergencia:
sudo systemctl stop rud1-agent # Sustituye el binario: sudo cp nuevo-rud1-agent /usr/local/bin/rud1-agent sudo chmod +x /usr/local/bin/rud1-agent sudo systemctl start rud1-agent
¿Cómo hago un factory reset del dispositivo?
Un factory reset elimina el token de dispositivo guardado, lo que fuerza al agente a generar un nuevo código de registro:
sudo systemctl stop rud1-agent sudo rm /var/lib/rud1-agent/device.json sudo systemctl start rud1-agent # El agente generará un nuevo código de registro
El dispositivo antiguo en rud1-es quedará marcado como OFFLINE y puedes eliminarlo manualmente desde Dispositivos → [dispositivo] → Eliminar.
⚠️ Tras el factory reset necesitarás registrar el dispositivo de nuevo en rud1-es con el nuevo código de registro.
¿Cuántos dispositivos puedo registrar?
- Plan Free: hasta 3 dispositivos
- Plan Pro: hasta 25 dispositivos
- Plan Enterprise: dispositivos ilimitados
Puedes ver y cambiar tu plan en Configuración → Facturación.
¿Necesito una IP pública en el dispositivo?
No. El agente rud1-fw solo realiza conexiones salientes mediante HTTPS hacia rud1-es. El dispositivo puede estar detrás de NAT, CGNAT o cualquier firewall que permita tráfico saliente por el puerto 443.
La VPN WireGuard sí requiere que el servidor VPN (hub) tenga una IP pública y el puerto UDP 51820 accesible. El dispositivo en sí no necesita IP pública para la VPN.
¿Cómo contacto con soporte?
Si no encuentras respuesta en esta documentación, contacta con nuestro equipo:
- Email: support@rud1.es
- Para reportar bugs o problemas de seguridad, por favor incluye los logs del agente y los pasos para reproducir el problema.