Puerto 5000 (Flask / UPnP / Synology): para qué sirve y cómo protegerlo
El puerto 5000 TCP lo usan por defecto varias aplicaciones: el servidor de desarrollo de Flask, la interfaz web de los NAS Synology (DSM por HTTP), el registro privado de Docker y, en macOS, el receptor AirPlay. Si aparece abierto, lo primero es averiguar qué servicio lo ocupa.
Qué es el puerto 5000
En macOS Monterey y posteriores, "AirPlay Receiver" ocupa el 5000 y el 7000. Si tu aplicación Flask no arranca porque el puerto está en uso, desactívalo en Ajustes → General → AirDrop y Handoff, o usa otro puerto.
¿Es peligroso tener abierto el puerto 5000?
Riesgo medio: Solo expuesto con autenticación fuerte o limitado por IP.
- Servidor de desarrollo de Flask con el depurador activo: permite ejecutar código.
- Panel de Synology sin HTTPS.
Cómo proteger el puerto 5000
- No expongas el servidor de desarrollo de Flask; usa gunicorn detrás de nginx.
- En Synology, usa el 5001 (HTTPS) o mejor una VPN.
Comandos y configuración
Comprobar si el puerto 5000 está abierto
sudo ss -tlnp | grep ':5000 '
nc -zv 203.0.113.10 5000
sudo nmap -p 5000 203.0.113.10Flask en otro puerto
flask run --port 5050
# producción:
gunicorn -w 4 -b 127.0.0.1:8000 app:appTambién puedes comprobarlo desde fuera de tu red con nuestro escáner de puertos online.
Herramientas para comprobarlo
Preguntas frecuentes
¿Por qué el puerto 5000 está ocupado en mi Mac?
Por el receptor AirPlay de macOS. Desactívalo en los ajustes o arranca tu aplicación en otro puerto.