3.9 KiB
title: BunkerWeb created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, firewall, app-marathon3-batch-c] confidence: high contested: false sources: [https://selfh.st/apps/?tag=firewall&app=bunkerweb]
🔒 BunkerWeb
Le Web Application Firewall (WAF) NGINX nouvelle génération, avec interface moderne et machine learning.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | bunkerweb.io |
| GitHub | bunkerity/bunkerweb |
| License | AGPL-3.0 |
| Langage | Python / NGINX |
| Étoiles GitHub | 6k ⭐ |
| Catégorie | [[cat-firewall |
📝 Description
BunkerWeb est un WAF (Web Application Firewall) open source construit comme un wrapper autour de NGINX embarqué, offrant une protection applicative couche 7 moderne. ModSecurity OWASP CRS, anti-bot avec challenge JS, rate-limiting, antibot, anti-DDoS L7, anti-scan, antibruteforce. UI web d'administration complète, API Python, autoconfiguration via ENV/labels Docker. Différence vs ModSecurity classique : intégration NGINX native (pas de sidecar Apache), UI admin moderne, plugins Python, intégration Docker native, configuration déclarative. Pour qui : hébergeurs web, sites exposés, équipes sécurité, devops voulant un WAF clé-en-main derrière Traefik/Nginx.
🚀 Installation
Docker Compose (recommandé)
version: '3.8'
services:
bunkerweb:
image: bunkerity/bunkerweb:1.6.0
container_name: bunkerweb
restart: unless-stopped
ports:
- "80:8080"
- "443:8443"
- "443:8443/udp"
environment:
SERVER_NAME: "example.com"
ADMIN_EMAIL: "admin@example.com"
USE_CROWDSEC: "yes"
USE_MODSECURITY: "yes"
USE_BAD_BEHAVIOR: "yes"
USE_LIMIT_REQ: "yes"
USE_BLACKLIST: "yes"
BLACKLIST_COUNTRY: "RU CN"
WORKERS: "4"
volumes:
- bw-data:/data
depends_on:
- bw-scheduler
labels:
- "traefik.enable=false"
bw-scheduler:
image: bunkerity/bunkerweb-scheduler:1.6.0
container_name: bw-scheduler
restart: unless-stopped
volumes:
- bw-data:/data
environment:
DATABASE_URI: "sqlite:///data/db.sqlite3"
MULTISITE: "yes"
USE_CROWDSEC: "yes"
CROWDSEC_API: "http://crowdsec:8080"
bw-ui:
image: bunkerity/bunkerweb-ui:1.6.0
container_name: bw-ui
restart: unless-stopped
environment:
ADMIN_USERNAME: admin
ADMIN_PASSWORD: ${BW_ADMIN_PASSWORD}
DATABASE_URI: "sqlite:///data/db.sqlite3"
depends_on:
- bw-scheduler
labels:
- "traefik.http.routers.bwui.rule=Host(`bw-admin.example.com`)"
- "traefik.http.routers.bwui.tls.certresolver=letsencrypt"
volumes:
bw-data:
🔄 Alternatives
Open Source
- ModSecurity — WAF historique (Apache/NGINX/IIS), CRS OWASP
- CrowdSec — fail2ban collaboratif, peut compléter
- Coraza — WAF Go, compatible ModSecurity
- Naxsi — WAF NGINX natif, basé sur scores
- HAProxy Enterprise — LB + WAF commercial open
Propriétaires
- Cloudflare WAF — WAF SaaS leader mondial
- AWS WAF — WAF managé Amazon
- Imperva WAF — enterprise legacy
- F5 BIG-IP AWAF — appliance enterprise
🔐 Sécurité
- ModSecurity OWASP CRS 4.x : protection contre Top 10 OWASP
- CrowdSec intégration : blocage IPs basé sur réputation collective
- HTTPS durci : TLS 1.2/1.3, HSTS, OCSP stapling
- Auto-ban : antibot, antibruteforce, anti-DDoS L7
- Audit logs : traçabilité complète des requêtes bloquées
📚 Ressources
Pages Liées
- cat-firewall — Catégorie Firewall
- app-opnsense — Pare-feu réseau L3/L4
- app-vector — Agrégation logs BunkerWeb