Configuración de CrowdSec
Ajustes de la conexión a la Local API (LAPI) de CrowdSec y del filtrado de decisiones.
Conexión
Sección titulada «Conexión»crowdsec.api_url Obligatorio
Sección titulada «crowdsec.api_url »Env: CROWDSEC_URL · Por defecto: http://localhost:8080/
La URL de la Local API (LAPI) de CrowdSec. Incluye la barra final.
crowdsec: api_url: "http://localhost:8080/"crowdsec.api_key Obligatorio
Sección titulada «crowdsec.api_key »Env: CROWDSEC_BOUNCER_API_KEY · Por defecto: —
La API key del bouncer. Genera una con:
sudo cscli bouncers add cs-routeros-bouncercrowdsec.retry_initial_connect Opcional
Sección titulada «crowdsec.retry_initial_connect »Env: CROWDSEC_RETRY_INITIAL_CONNECT · Por defecto: true
Cuando está habilitado, el bouncer reintenta la conexión a la LAPI en el arranque si la conexión inicial falla. Útil cuando el bouncer arranca antes de que CrowdSec esté listo.
crowdsec.update_frequency Opcional
Sección titulada «crowdsec.update_frequency »Env: CROWDSEC_UPDATE_FREQUENCY · Por defecto: 10s
Con qué frecuencia se sondea la LAPI en busca de decisiones nuevas o expiradas. Usa el formato de duración de Go (p. ej., 10s, 1m, 30s).
crowdsec.reconciliation_interval Opcional
Sección titulada «crowdsec.reconciliation_interval »Env: CROWDSEC_RECONCILIATION_INTERVAL · Por defecto: 15m
Con qué frecuencia se obtiene de la LAPI una instantánea completa de las decisiones activas y se reconcilia con la pertenencia a las address-list de MikroTik. Esto repara la desviación cuando una entrada de address-list se elimina manualmente o expira en el router mientras CrowdSec sigue considerando activa la decisión.
crowdsec.reconciliation_interval / CROWDSEC_RECONCILIATION_INTERVAL usa el formato de duración de Go, como 1m, 15m o 1h.
Establécelo en 0 para deshabilitar la reconciliación periódica. Cualquier valor distinto de cero debe ser de al menos 1m.
crowdsec: reconciliation_interval: "15m"crowdsec.lapi_metrics_interval Opcional
Sección titulada «crowdsec.lapi_metrics_interval »Env: CROWDSEC_LAPI_METRICS_INTERVAL · Por defecto: 15m
Con qué frecuencia se envían métricas de uso al endpoint /v1/usage-metrics de la LAPI de CrowdSec. Establécelo en 0 para deshabilitarlo.
Cada envío incluye:
- Decisiones activas — por origen (p. ej.,
crowdsec,cscli,CAPI) y por tipo de IP (ipv4,ipv6) - Tráfico descartado — bytes y paquetes bloqueados por las reglas del firewall de MikroTik (delta desde el último envío)
- Tráfico procesado — bytes y paquetes evaluados por todas las cadenas del bouncer (delta desde el último envío)
- Metadatos del bouncer — tipo, versión, información del sistema operativo, tiempo de actividad
Estos datos aparecen en la CrowdSec Console y ayudan a hacer seguimiento de la eficacia del bouncer.
crowdsec: lapi_metrics_interval: "15m"Filtrado de decisiones
Sección titulada «Filtrado de decisiones»crowdsec.origins Opcional
Sección titulada «crowdsec.origins »Env: CROWDSEC_ORIGINS · Por defecto: [] (todos los orígenes)
Filtra las decisiones por su origen. Vacío significa que se procesan todas las decisiones.
| Origen | Descripción |
|---|---|
crowdsec | Decisiones del motor de detección de CrowdSec |
cscli | Decisiones manuales mediante cscli decisions add |
CAPI | Blocklists comunitarias de la Central API de CrowdSec |
lists:* | Orígenes de listas con nombre, como lists:<name> |
# Solo decisiones locales (sin blocklists comunitarias)crowdsec: origins: ["crowdsec", "cscli"]Cuando se define como variable de entorno, CROWDSEC_ORIGINS se separa con espacios:
CROWDSEC_ORIGINS="crowdsec cscli"Dejar origins vacío acepta todos los orígenes, incluidos CAPI y los orígenes de listas con nombre. Usa lists:* como patrón comodín para las entradas lists:<name> al definir origins o CROWDSEC_ORIGINS. Consulta Blocklists de CAPI para las recomendaciones de escala y dimensionamiento del router.
crowdsec.scopes Opcional
Sección titulada «crowdsec.scopes »Env: CROWDSEC_SCOPES · Por defecto: ["ip", "range"]
Ámbitos de decisión a procesar. Valores admitidos: ip, range.
crowdsec.supported_decisions_types Opcional
Sección titulada «crowdsec.supported_decisions_types »Env: CROWDSEC_DECISIONS_TYPES · Por defecto: ["ban"]
Solo se procesan las decisiones de estos tipos.
crowdsec.scenarios_containing Opcional
Sección titulada «crowdsec.scenarios_containing »Env: CROWDSEC_SCENARIOS_CONTAINING · Por defecto: [] (sin filtro)
Solo se procesan las decisiones de escenarios cuyo nombre contenga una de estas subcadenas literales. Vacío significa que no hay filtrado de inclusión.
crowdsec: scenarios_containing: ["ssh", "http"]Por ejemplo, "ssh" coincide con crowdsecurity/ssh-bf y con cualquier otro nombre de escenario que contenga ssh.
crowdsec.scenarios_not_containing Opcional
Sección titulada «crowdsec.scenarios_not_containing »Env: CROWDSEC_SCENARIOS_NOT_CONTAINING · Por defecto: [] (sin filtro)
Excluye las decisiones de escenarios cuyo nombre contenga una de estas subcadenas literales.
crowdsec: scenarios_not_containing: ["test", "honeypot"]Usa los filtros de inclusión y exclusión juntos cuando quieras un subconjunto reducido de decisiones. Si no aparece ninguna decisión, comprueba primero que las subcadenas coinciden con los nombres de escenario que muestra cscli decisions list -o json.
Autenticación TLS
Sección titulada «Autenticación TLS»Para la autenticación TLS mutua con la LAPI:
crowdsec.cert_path Opcional
Sección titulada «crowdsec.cert_path »Env: CROWDSEC_CERT_PATH · Por defecto: —
Ruta al certificado TLS de cliente (formato PEM).
crowdsec.key_path Opcional
Sección titulada «crowdsec.key_path »Env: CROWDSEC_KEY_PATH · Por defecto: —
Ruta a la clave TLS de cliente (formato PEM).
crowdsec.ca_cert_path Opcional
Sección titulada «crowdsec.ca_cert_path »Env: CROWDSEC_CA_CERT_PATH · Por defecto: —
Ruta al certificado de la CA (formato PEM) para verificar el certificado del servidor LAPI.
crowdsec.insecure_skip_verify Opcional
Sección titulada «crowdsec.insecure_skip_verify »Env: CROWDSEC_INSECURE_SKIP_VERIFY · Por defecto: false
Omite la verificación del certificado TLS en las conexiones a la LAPI.