Docker se salta las reglas de ufw al publicar puertos
Has bloqueado un puerto con ufw, pero el contenedor Docker sigue accesible desde la red.
Por qué pasa (diagnóstico)
- Según la documentación de Docker, al exponer puertos de contenedores estos esquivan las reglas de ufw/firewalld.
- Docker solo es compatible con iptables-nft e iptables-legacy.
Solución paso a paso
- No publiques puertos que no necesites (
-p/ports:). - Si solo lo usas en local, publica en localhost:
-p 127.0.0.1:PUERTO:80. - Lee la guía oficial «Docker and ufw» antes de confiar en el cortafuegos.
- Comprueba desde otro equipo con
nmap IP_LOCALqué puertos quedan abiertos.
Requisitos
- Docker Engine
- ufw
Compatibilidad
- Debian
- Raspberry Pi OS
- Ubuntu
Verificación
Documentado: pasos tomados de la fuente oficial citada (leída el 15-oct-2026). No lo hemos probado aún en nuestro laboratorio, por eso no está marcado VERIFICADO.
Fuentes
Guías relacionadas
- Docker: «permission denied … docker.sock» sin sudo
- Disco lleno por Docker (imágenes, caché y logs)
- Un contenedor no arranca solo tras reiniciar
- «docker-compose: command not found» (Compose v1 vs v2)
- Un contenedor Docker se come toda la RAM del servidor
- Montar un disco USB al arrancar sin que bloquee el arranque
Más guías de Linux y Docker.