Contenidos
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'
# 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
Paso 4: Verificar que Funciona
Revisa si el firewall está bloqueando conexiones no deseadas:
sudo ufw status
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
- Actualiza tus contenedores regularmente
- Usa versiones seguras de PHP-FPM
- Configura logs para monitorear actividad
- 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.
Te podría interesar
-
Ubuntu no aparece en el menú de arranque tras instalar junto a Windows 11: "grub-install error" solución
Has instalado Ubuntu junto a Windows 11 en dual boot, el instalador ha terminado sin errores visibles, pero al reiniciar el ordenador arranca directo a...
-
"Got permission denied while trying to connect to the Docker daemon socket unix:///var/run/docker.sock" en Ubuntu
Acabas de instalar Docker en Ubuntu, ejecutas tu primer docker run hello-world o docker ps, y te encuentras con esto:
-
Ubuntu 24.04 wifi no funciona tras actualizar: "iwlwifi failed to load firmware" solución
Si acabas de actualizar a Ubuntu 24.04 (o has hecho un apt upgrade que ha tocado el kernel) y de repente el wifi ha desaparecido,...
-
No se puede montar DATOS, Ubuntu 24.04, Error mounting /dev/sdc1 at /media/raul/DATOS1: mount(2) system call failed: No such file or directory
No puedo montar mi unidad DATOS en Ubuntu 24.04
-
Python3 netplan en Ubuntu, qué es y cuando se utiliza
Netplan