
bunkerweb v1.6.14-rc2
🛡️ Firewall de aplicaciones web (WAF) de código abierto y nativo en la nube.
El plugin General proporciona el marco de configuración principal para BunkerWeb, permitiéndote definir los ajustes esenciales que controlan cómo se protegen y entregan tus servicios web. Este plugin fundamental gestiona aspectos básicos como los modos de seguridad, los valores predeterminados del servidor, el comportamiento de los registros y los parámetros operativos críticos para todo el ecosistema de BunkerWeb.
Cómo funciona:
- Cuando BunkerWeb se inicia, el plugin General carga y aplica tus ajustes de configuración principales.
- Los modos de seguridad se establecen de forma global o por sitio, determinando el nivel de protección aplicado.
- Los ajustes predeterminados del servidor establecen valores de respaldo para cualquier configuración multisitio no especificada.
- Los parámetros de registro controlan qué información se graba y cómo se formatea.
- Estos ajustes crean la base sobre la que operan todos los demás plugins y funcionalidades de BunkerWeb.
Modo Multisite {#multisite-mode}
Cuando MULTISITE se establece en yes, BunkerWeb puede alojar y proteger múltiples sitios web, cada uno con su propia configuración única. Esta característica es particularmente útil para escenarios como:
- Alojar múltiples dominios con configuraciones distintas
- Ejecutar múltiples aplicaciones con diferentes requisitos de seguridad
- Aplicar políticas de seguridad personalizadas a diferentes servicios
En el modo multisitio, cada sitio se identifica por un SERVER_NAME único. Para aplicar ajustes específicos a un sitio, antepón el SERVER_NAME principal al nombre del ajuste. Por ejemplo:
www.example.com_USE_ANTIBOT=captchahabilita el CAPTCHA parawww.example.com.myapp.example.com_USE_GZIP=yeshabilita la compresión GZIP paramyapp.example.com.
Este enfoque asegura que los ajustes se apliquen al sitio correcto en un entorno multisitio.
Ajustes Múltiples {#multiple-settings}
Algunos ajustes en BunkerWeb admiten múltiples configuraciones para la misma característica. Para definir múltiples grupos de ajustes, añade un sufijo numérico al nombre del ajuste. Por ejemplo:
REVERSE_PROXY_URL_1=/subdiryREVERSE_PROXY_HOST_1=http://myhost1configuran el primer proxy inverso.REVERSE_PROXY_URL_2=/anotherdiryREVERSE_PROXY_HOST_2=http://myhost2configuran el segundo proxy inverso.
Este patrón te permite gestionar múltiples configuraciones para características como proxies inversos, puertos u otros ajustes que requieren valores distintos para diferentes casos de uso.
Orden de ejecución de plugins {#plugin-order}
Puede ajustar el orden con listas separadas por espacios:
- Fases globales:
PLUGINS_ORDER_INIT,PLUGINS_ORDER_INIT_WORKER,PLUGINS_ORDER_TIMER. - Fases por sitio:
PLUGINS_ORDER_SET,PLUGINS_ORDER_ACCESS,PLUGINS_ORDER_SSL_CERTIFICATE,PLUGINS_ORDER_HEADER,PLUGINS_ORDER_LOG,PLUGINS_ORDER_PREREAD,PLUGINS_ORDER_LOG_STREAM,PLUGINS_ORDER_LOG_DEFAULT. - Semántica: los plugins listados se ejecutan primero en esa fase; el resto se ejecuta después en su secuencia normal. Separe los IDs solo con espacios.
Modos de Seguridad {#security-modes}
El ajuste SECURITY_MODE determina cómo BunkerWeb maneja las amenazas detectadas. Esta característica flexible te permite elegir entre monitorizar o bloquear activamente la actividad sospechosa, dependiendo de tus necesidades específicas:
detect: Registra las amenazas potenciales sin bloquear el acceso. Este modo es útil para identificar y analizar falsos positivos de una manera segura y no disruptiva.block(predeterminado): Bloquea activamente las amenazas detectadas mientras registra los incidentes para prevenir el acceso no autorizado y proteger tu aplicación.
Cambiar al modo detect puede ayudarte a identificar y resolver posibles falsos positivos sin interrumpir a los clientes legítimos. Una vez que estos problemas se resuelvan, puedes volver con confianza al modo block para una protección completa.
Ajustes de Configuración
=== "Ajustes Principales"
| Parámetro | Valor por defecto | Contexto | Múltiple | Descripción |
| --------------------- | ----------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `SERVER_NAME` | `www.example.com` | multisite | No | **Dominio Principal:** El nombre de dominio principal para este sitio. Requerido en modo multisitio. |
| `BUNKERWEB_INSTANCES` | `127.0.0.1` | global | No | **Instancias de BunkerWeb:** Lista de instancias de BunkerWeb separadas por espacios. |
| `MULTISITE` | `no` | global | No | **Múltiples Sitios:** Establécelo en `yes` para permitir el alojamiento de múltiples sitios web con diferentes configuraciones. |
| `SECURITY_MODE` | `block` | multisite | No | **Nivel de Seguridad:** Controla el nivel de aplicación de la seguridad. Opciones: `detect` o `block`. |
| `SERVER_TYPE` | `http` | multisite | No | **Tipo de Servidor:** Define si el servidor es de tipo `http` o `stream`. |
=== "Ajustes de la API"
| Parámetro | Valor por defecto | Contexto | Múltiple | Descripción |
| ------------------ | ----------------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `USE_API` | `yes` | global | No | **Activar API:** Activa la API para controlar BunkerWeb. |
| `API_HTTP_PORT` | `5000` | global | No | **Puerto de la API:** Número de puerto de escucha para la API. |
| `API_HTTPS_PORT` | `5443` | global | No | **Puerto HTTPS de la API:** Número de puerto de escucha (TLS) para la API. |
| `API_LISTEN_HTTP` | `yes` | global | No | **Escucha HTTP de la API:** Habilita el listener HTTP para la API. |
| `API_LISTEN_HTTPS` | `no` | global | No | **Escucha HTTPS de la API:** Habilita el listener HTTPS (TLS) para la API. |
| `API_LISTEN_IP` | `0.0.0.0` | global | No | **IP de Escucha de la API:** Dirección IP de escucha para la API. |
| `API_SERVER_NAME` | `bwapi` | global | No | **Nombre del Servidor de la API:** Nombre del servidor (host virtual) para la API. |
| `API_WHITELIST_IP` | `127.0.0.0/8` | global | No | **IP de la Lista Blanca de la API:** Lista de IP/redes permitidas para contactar con la API. |
| `API_TOKEN` | | global | No | **Token de Acceso a la API (opcional):** Si se establece, todas las solicitudes a la API deben incluir `Authorization: Bearer <token>`. |