CrowdSec: Firewall Colaborativo con IA para Homelab (Guía Completa 2026)
📋 TL;DR (Resumen Ejecutivo)
CrowdSec es un sistema de seguridad colaborativo de código abierto que detecta y bloquea amenazas en tiempo real usando inteligencia artificial y una red global de usuarios. A diferencia de fail2ban tradicional, CrowdSec comparte IPs maliciosas entre toda la comunidad, aprendiendo de ataques en tiempo real y protegiendo tu homelab antes de que las amenazas lleguen.
Lo que conseguirás:
- ✅ Protección automática contra ataques de fuerza bruta, DDoS y escaneo de puertos
- ✅ Dashboard visual con Metabase para monitorear amenazas en tiempo real
- ✅ Integración con Nginx, Traefik, iptables y más bouncers
- ✅ Sistema colaborativo que aprende de millones de ataques globales
- ✅ Configuración simple con YAML vs regex complejo de fail2ban
Tiempo de lectura: ~25 minutos | Nivel: Intermedio
—
📚 Tabla de Contenidos
- ¿Qué es CrowdSec y Por Qué Usarlo?
- CrowdSec vs Fail2ban: Comparativa Completa
- Arquitectura y Componentes
- Instalación con [Docker Compose](#instalacion)
- Configuración Básica: Collections, Scenarios y Parsers
- Integración con Servicios: Nginx, Traefik, SSH
- Dashboard y Monitoreo con Metabase
- Casos de Uso Avanzados
- Protección de Servicios Self-Hosted
- Troubleshooting Errores Comunes
- Mejores Prácticas de Seguridad
- Preguntas Frecuentes
- Conclusión y Próximos Pasos
—
> 📅 Última actualización: Enero 2026
> ✅ Verificado con: CrowdSec v1.6.0 – Enero 2026
> 🔄 Próxima revisión: Abril 2026
—
Introducción
Si tienes un homelab con servicios expuestos a internet (Vaultwarden, Nextcloud, Paperless-ngx, etc.), probablemente ya conoces fail2ban. Es una herramienta útil, pero tiene limitaciones: solo protege tu servidor local, requiere configuración compleja con regex, y no aprende de amenazas globales.
El problema: Cada día, millones de bots escanean internet buscando servicios vulnerables. Tu servidor está siendo atacado constantemente, y fail2ban solo reacciona después de que el ataque ya ocurrió en tu máquina.
La solución: CrowdSec es un sistema de seguridad colaborativo que combina lo mejor de fail2ban con inteligencia artificial y una red global. Cuando un bot ataca a cualquier usuario de CrowdSec, toda la comunidad se beneficia: esa IP se comparte anónimamente y se bloquea automáticamente en todos los servidores.
En esta guía completa aprenderás:
- Cómo instalar y configurar CrowdSec en Docker
- Integración con Nginx, Traefik y otros servicios
- Crear scenarios personalizados para detectar ataques específicos
- Configurar dashboard con Metabase para visualizar amenazas
- Proteger servicios self-hosted como Vaultwarden, Nextcloud y Paperless-ngx
- Troubleshooting común y mejores prácticas
Ya seas administrador de sistemas, entusiasta de homelab o profesional de seguridad, esta guía te dará un sistema de protección de nivel empresarial en tu servidor casero.
—
¿Qué es CrowdSec y Por Qué Usarlo?
CrowdSec: Seguridad Colaborativa con IA
CrowdSec es un sistema de detección y prevención de intrusiones (IDS/IPS) de código abierto que funciona de forma colaborativa. A diferencia de soluciones tradicionales que solo protegen un servidor individual, CrowdSec comparte información de amenazas entre todos sus usuarios de forma anónima y segura.
Características principales:
- ✅ Colaboración global: Comparte IPs maliciosas entre millones de usuarios
- ✅ Inteligencia artificial: Detecta patrones de ataque usando machine learning
- ✅ Arquitectura modular: Separación entre engine (detección) y bouncers (acción)
- ✅ Configuración simple: YAML en lugar de regex complejo
- ✅ Múltiples bouncers: Nginx, Traefik, iptables, Cloudflare, y más
- ✅ Dashboard visual: Metabase opcional para monitoreo en tiempo real
¿Por Qué Usar CrowdSec?
Casos de uso ideales:
- Homelab con servicios expuestos: Si tienes Vaultwarden, Nextcloud, o cualquier servicio accesible desde internet, CrowdSec te protege automáticamente
- Protección contra bots: Bloquea escaneos de puertos, intentos de fuerza bruta y ataques DDoS antes de que lleguen a tu servidor
- Compliance y seguridad: Para entornos que requieren logging y auditoría de amenazas
NO uses CrowdSec si:
- ❌ Tu servidor está completamente aislado de internet (no hay amenazas que detectar)
- ❌ Necesitas control granular extremo sobre cada regla (aunque CrowdSec es muy configurable)
—

CrowdSec vs Fail2ban: Comparativa Completa
| Característica | Fail2ban | CrowdSec | Suricata | Snort |
|---|---|---|---|---|
| Tipo | IDS/IPS básico | IDS/IPS colaborativo | IDS/IPS avanzado | IDS/IPS avanzado |
| Colaboración | ❌ Solo local | ✅ Hub global | ❌ Solo local | ❌ Solo local |
| IA/ML | ❌ Reglas estáticas | ✅ Detección inteligente | ⚠️ Limitado | ⚠️ Limitado |
| Configuración | ⚠️ Regex complejo | ✅ YAML simple | ⚠️ Reglas complejas | ⚠️ Reglas complejas |
| Bouncers | ⚠️ iptables, nginx | ✅ Múltiples (Nginx, Traefik, iptables, Cloudflare) | ⚠️ iptables | ⚠️ iptables |
| Dashboard | ❌ No incluido | ✅ Metabase opcional | ⚠️ ELK stack | ⚠️ ELK stack |
| Recursos | ⚠️ Medio | ✅ Bajo | ⚠️ Alto | ⚠️ Alto |
| Curva aprendizaje | ⚠️ Media | ✅ Baja | ❌ Alta | ❌ Alta |
| Actualización de reglas | ⚠️ Manual | ✅ Automática (Hub) | ⚠️ Manual | ⚠️ Manual |
Ventajas de CrowdSec sobre fail2ban:
- Protección proactiva: Aprende de ataques en otros servidores antes de que lleguen al tuyo
- Configuración más simple: YAML legible vs regex críptico
- Mejor escalabilidad: Maneja millones de eventos sin problemas
- Dashboard incluido: Visualización de amenazas sin configurar ELK stack
- Comunidad activa: Miles de scenarios y parsers mantenidos por la comunidad
—
Arquitectura y Componentes
Arquitectura de CrowdSec
Componentes Principales
- CrowdSec Engine: El núcleo que analiza logs, detecta patrones de ataque y toma decisiones
- Collections: Conjuntos pre-configurados de parsers y scenarios (ej:
crowdsecurity/nginx) - Parsers: Extraen información estructurada de logs no estructurados
- Scenarios: Reglas YAML que definen qué constituye un ataque (ej: 5 intentos fallidos de login = fuerza bruta)
- Bouncers: Módulos que ejecutan acciones (bloquear IPs, rate limiting, etc.)
- Hub: Plataforma colaborativa que comparte IPs maliciosas entre usuarios
—
Instalación con Docker Compose
Requisitos Previos
- Docker y Docker Compose instalados
- Acceso a logs del sistema (Nginx, SSH, etc.)
- Puertos disponibles: 8080 (LAPI), 3000 (Metabase opcional)
Docker Compose Completo
Crea un archivo docker-compose.yml:
Iniciar CrowdSec
Collections recomendadas para homelab:
crowdsecurity/nginx: Protección para Nginxcrowdsecurity/linux: Protección general del sistemacrowdsecurity/docker: Análisis de logs de contenedores
—
Configuración Básica: Collections, Scenarios y Parsers
Configuración de Adquisición (acquis.yaml)
El archivo config/acquis.yaml define qué logs analizar:
Verificar Parsers Activos
Scenarios Personalizados
Crea config/scenarios/custom-brute-force.yaml:
Parámetros del scenario:
capacity: Número de eventos antes de activarleakspeed: Tiempo para «vaciar» el bucketblackhole: Duración del bloqueogroupby: Agrupar por IP de origen
Instalar Scenarios Personalizados
—

Integración con Servicios: Nginx, Traefik, SSH
Integración con Nginx Bouncer
El bouncer de Nginx bloquea IPs directamente en Nginx:
Obtener API key del bouncer:
Integración con Traefik
Para Traefik, usa el bouncer específico:
Protección de SSH
Para proteger SSH, usa el collection crowdsecurity/ssh:
—
Dashboard y Monitoreo con Metabase
Acceder al Dashboard
Una vez iniciado el contenedor crowdsec-dashboard, accede a:
Credenciales por defecto:
- Usuario:
crowdsec@crowdsec.net - Contraseña:
CrowdsecMetabase2020!
Métricas Disponibles
El dashboard muestra:
- IPs bloqueadas: Total y por tipo de ataque
- Ataques por hora: Gráficos temporales
- Top países atacantes: Geolocalización de amenazas
- Scenarios más activos: Qué tipos de ataques se detectan más
- Decisions en tiempo real: IPs bloqueadas en vivo
Integración con Prometheus
CrowdSec expone métricas en el puerto 6060:
Métricas principales:
crowdsec_bucket_overflow_total: Buckets que excedieron capacidadcrowdsec_decisions_total: Total de decisiones tomadascrowdsec_parser_hits_total: Hits por parsercrowdsec_scenario_hits_total: Hits por scenario
—
Casos de Uso Avanzados
Protección de API REST
Crea un scenario para rate limiting de APIs:
Detección de DDoS
Scenario para detectar ataques DDoS:
Whitelist de IPs Confiables
—

Protección de Servicios Self-Hosted
Vaultwarden (Password Manager)
Problema: Intentos de fuerza bruta en login
Solución:
- Configurar parser para logs de Vaultwarden
- Crear scenario que detecte múltiples intentos fallidos
- Bloquear IPs automáticamente
Paperless-ngx (Document Management)
Problema: Abuso de API de upload
Solución: Rate limiting en endpoints de upload
Nextcloud (File Sync)
Problema: Bots escaneando archivos públicos
Solución: Detectar patrones de escaneo
—
Troubleshooting Errores Comunes
Problema: CrowdSec no detecta ataques
Solución paso a paso:
- Verificar que los logs están siendo leídos:
- Comprobar parsers activos:
- Verificar scenarios instalados:
- Ver logs en tiempo real:
Problema: Bouncer no bloquea IPs
Solución:
- Verificar conexión con LAPI:
- Comprobar API key:
- Revisar logs del bouncer:
- Verificar decisiones activas:
Problema: Falsos positivos
Solución:
- Crear whitelist temporal:
- Ajustar thresholds en scenarios:
– Aumentar capacity para requerir más eventos
– Aumentar leakspeed para dar más tiempo
- Revisar métricas en dashboard:
– Identificar scenarios que generan más falsos positivos
– Ajustar o desactivar scenarios problemáticos
Problema: Alto consumo de recursos
Solución:
- Limitar logs analizados:
– Editar acquis.yaml para incluir solo logs relevantes
– Excluir logs muy verbosos
- Optimizar scenarios:
– Desactivar scenarios no necesarios
– Ajustar capacity y leakspeed para reducir procesamiento
- Monitorear recursos:
—

Mejores Prácticas de Seguridad
1. Collections Recomendadas
Para homelab, instala estas collections:
2. Monitoreo Continuo
- Dashboard: Revisa Metabase regularmente para identificar patrones
- Alertas: Configura alertas en Prometheus/Grafana para decisiones críticas
- Logs: Revisa logs de CrowdSec semanalmente
3. Mantener Whitelist Actualizada
4. Backups de Configuración
5. Actualizar Collections Regularmente
6. Integración con Stack de Observabilidad
CrowdSec se integra perfectamente con Prometheus + Grafana:
—
Preguntas Frecuentes
¿CrowdSec es realmente seguro? ¿Comparte mis datos?
Respuesta: Sí, CrowdSec es seguro. Solo comparte IPs de atacantes de forma anónima. No comparte:
- ❌ Logs completos
- ❌ Información personal
- ❌ Contenido de requests
- ❌ Datos de usuarios
Solo comparte: IPs maliciosas y tipo de ataque detectado.
¿Puedo usar CrowdSec sin compartir datos con el Hub?
Respuesta: Sí, puedes desactivar el Hub y usar CrowdSec solo localmente. Sin embargo, perderás el beneficio principal de la colaboración.
¿CrowdSec consume muchos recursos?
Respuesta: No, CrowdSec es muy eficiente. En un homelab típico consume:
- CPU: <5% promedio
- RAM: ~200-500 MB
- Disco: ~100 MB (logs y datos)
¿Funciona con servicios en Docker?
Respuesta: Sí, CrowdSec puede analizar logs de contenedores Docker usando el collection crowdsecurity/docker.
¿Cómo actualizo CrowdSec?
Respuesta: Simplemente actualiza la imagen Docker:
¿Puedo crear scenarios personalizados?
Respuesta: Sí, puedes crear scenarios personalizados en YAML. Ver sección «Scenarios Personalizados» arriba.
¿CrowdSec reemplaza a un firewall?
Respuesta: No, CrowdSec complementa un firewall. El firewall bloquea tráfico no autorizado, CrowdSec detecta y bloquea comportamiento malicioso.
¿Funciona con Cloudflare?
Respuesta: Sí, existe un bouncer específico para Cloudflare que bloquea IPs directamente en Cloudflare.
¿Cómo veo qué IPs están bloqueadas?
Respuesta: Usa el dashboard Metabase o el CLI:
¿Puedo integrar CrowdSec con Prometheus?
Respuesta: Sí, CrowdSec expone métricas en el puerto 6060. Ver sección «Integración con Prometheus».
¿Qué hacer si bloqueo mi propia IP?
Respuesta: Añádela a whitelist:
¿CrowdSec funciona con IPv6?
Respuesta: Sí, CrowdSec soporta IPv6 completamente.
¿Necesito configurar cada scenario manualmente?
Respuesta: No, las collections incluyen scenarios pre-configurados. Solo necesitas instalar la collection correspondiente.
¿Cómo desactivo un scenario que causa problemas?
Respuesta:
¿CrowdSec es compatible con sistemas Windows?
Respuesta: CrowdSec funciona principalmente en Linux. Para Windows, puedes usar WSL2 o contenedores Docker.
¿Cómo configuro alertas cuando se detecta un ataque?
Respuesta: Puedes integrar CrowdSec con sistemas de alertas:
¿CrowdSec afecta el rendimiento de mi servidor?
Respuesta: No, CrowdSec es muy eficiente. El análisis de logs es asíncrono y no bloquea servicios. En servidores con alto tráfico, el impacto es mínimo (<1% CPU adicional).
¿Puedo usar CrowdSec en producción empresarial?
Respuesta: Sí, CrowdSec es usado por empresas de todos los tamaños. Es open source, escalable y tiene soporte comercial disponible.
¿Cómo migro desde fail2ban a CrowdSec?
Respuesta: Puedes ejecutar ambos en paralelo durante la transición. CrowdSec puede leer los mismos logs que fail2ban, así que no hay conflicto.
—
Conclusión y Próximos Pasos
CrowdSec es una evolución natural de fail2ban que lleva la seguridad de homelab al siguiente nivel. Con su sistema colaborativo, inteligencia artificial integrada y configuración simple, protege tu infraestructura de forma proactiva.
Lo que has aprendido:
- ✅ Cómo instalar y configurar CrowdSec en Docker
- ✅ Integración con Nginx, Traefik y otros servicios
- ✅ Crear scenarios personalizados para casos específicos
- ✅ Configurar dashboard con Metabase
- ✅ Proteger servicios self-hosted comunes
- ✅ Troubleshooting y mejores prácticas
Próximos pasos recomendados:
- Explorar el Hub: Visita hub.crowdsec.net para descubrir más collections y scenarios
- Integrar con Grafana: Crea dashboards personalizados con métricas de CrowdSec
- Automatizar whitelist: Crea scripts para mantener IPs confiables actualizadas
- Revisar logs regularmente: Identifica patrones de ataque y ajusta scenarios
📦 Descargar Ejemplos
Todos los ejemplos de código y configuraciones están disponibles en GitHub:
🔗 https://github.com/ziruelen/learningaiagents/tree/main/homelab/crowdsec-firewall
Artículos Relacionados
- AdGuard Home: [DNS Encriptado para tu Homelab](https://www.eldiarioia.es/2025/12/12/adguard-home-dns-encriptado-para-tu-homelab-guia-completa-2025/)
- Prometheus + Grafana + Loki: Stack de Observabilidad Completo
- Pi-hole: Bloquea Todos los Anuncios de tu Red con Docker
¿Tienes preguntas o quieres compartir tu experiencia con CrowdSec? Déjanos un comentario o únete a nuestra comunidad en Discord.
—
Última actualización: Enero 2026 | CrowdSec v1.6.0
