Docker Swarm contenedor php-fpm infectado 100% CPU
Linux

Docker Swarm contenedor php-fpm infectado 100% CPU

08 Jul, 2025 • 3 min de lectura

Cómo Arreglar Docker Swarm Infectado con Malware PHP-FPM

¿Tu contenedor PHP-FPM está usando 100% de la CPU? Probablemente, tienes un problema de malware tipo minero. Te voy a mostrar cómo arreglar este problema paso a paso.

El Problema

Los contenedores Docker con PHP-FPM son blancos fáciles para el malware. Los atacantes instalan software de minería que usa toda tu CPU. El problema es que Docker no respeta UFW (tu firewall), así que tu servidor queda expuesto.

Por Qué Pasa Esto

Problema Causa
CPU al 100% Malware de minería instalado
Firewall inútil Docker bypasa UFW
Puertos abiertos Acceso directo a contenedores

La Solución

Necesitas configurar el firewall correctamente para que trabaje con Docker. Aquí está el script que funciona:

Paso 1: Abrir la Terminal

Abre tu terminal y conecta a tu servidor. Necesitas permisos de root para hacer estos cambios.

Paso 2: Crear el Script de Firewall

Copia este código y pégalo en tu terminal:

sudo tee -a /etc/ufw/after.rules >/dev/null << 'EOF'</p>

# BEGIN UFW AND DOCKER

\*filter
:ufw-user-forward - [0:0]
:ufw-docker-logging-deny - [0:0]
:DOCKER-USER - [0:0]
-A DOCKER-USER -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A DOCKER-USER -m conntrack --ctstate INVALID -j DROP
-A DOCKER-USER -i eth0 -j ufw-user-forward
-A DOCKER-USER -i eth0 -j RETURN
-A DOCKER-USER -j RETURN
COMMIT

# END UFW AND DOCKER

EOF

Paso 3: Reiniciar el Firewall

Después de agregar el script, reinicia UFW:

sudo ufw reload</p>

Paso 4: Verificar que Funciona

Revisa si el firewall está bloqueando conexiones no deseadas:

sudo ufw status</p>

Qué Hace Este Script

Línea Función
DOCKER-USER Crea cadena personalizada para Docker
RELATED,ESTABLISHED Permite conexiones ya establecidas
INVALID Bloquea paquetes malformados
ufw-user-forward Respeta reglas UFW

Cómo Prevenir Futuros Ataques

  1. Actualiza tus contenedores regularmente
  2. Usa versiones seguras de PHP-FPM
  3. Configura logs para monitorear actividad
  4. Limita acceso a puertos específicos

Verificar que el Malware Se Fue

Después de aplicar el firewall, revisa tu CPU:

htop

Tu uso de CPU debería volver a niveles normales. Si sigues viendo procesos extraños, puede que necesites recrear tus contenedores.

Consejos Adicionales

  • Respalda tus datos antes de hacer cambios
  • Documenta qué puertos necesitas abiertos
  • Monitorea tu servidor después del cambio
  • Considera usar un firewall adicional

Este script soluciona el problema donde Docker ignora UFW. Ahora tu firewall puede controlar el tráfico que llega a tus contenedores y bloquear ataques futuros.