
bunkerity/bunkerwebBunkerWeb是下一代开源Web应用防火墙(WAF),基于NGINX构建,兼具Web服务器功能。其核心目标是实现"默认安全",通过内置的安全特性和灵活配置,无缝集成到现有环境中,保护Web服务免受常见***。支持Linux、Docker、Swarm、Kubernetes等多种部署环境,提供Web UI简化管理,并可通过插件系统扩展功能。
BunkerWeb提供预构建Docker镜像,支持多平台,通过环境变量配置,需配合scheduler容器管理配置和任务。
bash# 创建网络 docker network create bw-net # 启动scheduler(配置存储和任务管理) docker run -d \ --name bw-scheduler \ --network bw-net \ -v bw-data:/data \ -e DATABASE_TYPE=sqlite \ bunkerity/bunkerweb-scheduler:1.5.4 # 启动BunkerWeb docker run -d \ --name bw-web \ --network bw-net \ -p 80:8080 \ -p 443:8443 \ -v bw-data:/data \ -e SCHEDULER_HOST=bw-scheduler \ -e SERVER_NAME=www.example.com \ -e AUTO_LETS_ENCRYPT=yes \ -e USE_ANTIBOT=captcha \ bunkerity/bunkerweb:1.5.4
yamlversion: '3' networks: bw-net: services: bw-scheduler: image: bunkerity/bunkerweb-scheduler:1.5.4 volumes: - bw-data:/data environment: - DATABASE_TYPE=sqlite networks: - bw-net bw-web: image: bunkerity/bunkerweb:1.5.4 ports: - "80:8080" - "443:8443" volumes: - bw-data:/data environment: - SCHEDULER_HOST=bw-scheduler - SERVER_NAME=www.example.com - AUTO_LETS_ENCRYPT=yes - USE_ANTIBOT=captcha - REFERRER_POLICY=no-referrer - USE_GZIP=yes depends_on: - bw-scheduler networks: - bw-net volumes: bw-data:
BunkerWeb通过环境变量("设置")配置,常用参数示例:
| 参数名 | 说明 | 取值示例 |
|---|---|---|
SERVER_NAME | 服务器域名(多域名用空格分隔) | [***] |
AUTO_LETS_ENCRYPT | 自动申请Let's Encrypt证书 | yes/no |
USE_ANTIBOT | 反机器人机制 | captcha/hcaptcha |
USE_MODSECURITY | 启用ModSecurity WAF | yes/no |
MAX_CONCURRENT_CONNECTIONS | 最大并发连接数 | 100 |
RATE_LIMIT | 请求频率限制(次/分钟) | 60 |
完整参数列表可通过配置生成器获取。
多站点模式下,为特定域名配置参数需添加域名前缀:
bash# 为www.example.com启用验证码反机器人 www.example.com_USE_ANTIBOT=captcha # 为app.example.com禁用GZIP app.example.com_USE_GZIP=no
多组配置通过数字后缀区分(如反向代理规则):
bashREVERSE_PROXY_URL_1=/api REVERSE_PROXY_HOST_1=http://backend-api:3000 REVERSE_PROXY_URL_2=/admin REVERSE_PROXY_HOST_2=http://backend-admin:4000
BunkerWeb提供Web UI管理界面,功能包括:
访问演示视频:Web UI演示
BunkerWeb支持插件扩展功能,官方插件包括:
| 插件名 | 版本 | 描述 |
|---|---|---|
| ClamAV | 1.2 | 扫描上传文件是否含***软件 |
| Coraza | 1.2 | Coraza WAF集成(ModSecurity替代方案) |
| CrowdSec | 1.2 | CrowdSec联动,拦截威胁情报中的***IP |
| *** | 1.2 | 发送安全通知到***频道 |
| Slack | 1.2 | 发送安全通知到Slack频道 |
| VirusTotal | 1.2 | 通过VirusTotal API扫描上传文件 |
| WebHook | 1.2 | 发送通知到自定义HTTP端点 |
默认配置已确保基础安全,建议根据需求调优:
SECURITY_HEADERS强化HTTP安全头(如CSP策略)MODSECURITY_RULES自定义WAF规则,减少误报IP_BLACKLIST阻止已知***IP段RATE_LIMIT和MAX_CONCURRENT_CONNECTIONS详细调优指南见安全调优文档。
项目采用GNU Affero General Public License (AGPL) v3许可协议。






探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务