一个防火墙入口,多个业务源站
EdgeAegis 在请求流入业务前执行原生 OWASP CRS。内部业务函数、VPS 和负载均衡主机名统一写入一份回源配置,不同信任边界使用独立密钥。
真实终端与 HTTP 响应
EdgeAegis VM terminal<img src="/images/previews/edgeaegis-routing.3d240e2bb6009766.gif" alt="EdgeAegis VM terminal" width="640" height="400" />
隔离虚拟机录像使用 curl 访问两个业务函数和三个带身份验证的 HTTPS 源站。SQL 注入返回 403,源站访问日志没有增加;演示用的五秒临时封禁随后到期恢复。五秒 TTL 仅供实验,不是生产默认值。
规则和回源分别配置
rules/config.yml 选择原生规则、策略和白名单;origin/config.yml 将公开主机名与路径映射到业务;secret/credentials.yml 存放独立回源密钥,只保留在私有部署库。
npm exec --package=edgeaegis -- edgeaegis init my-firewall
cd my-firewall
npm install
routes:
- pattern: api.example/shop/*
origin: function:shop
- pattern: api.example/orders/*
origin: https://192.0.2.10
key: orders-vps
- pattern: api.example/search/*
origin: https://lb.example
key: search-lb
内部业务也经过安全检查
配置 function:<业务名> 后加载 origin/<平台>/<业务>/index.js。统一入口先检查请求,再调用业务,并检查业务响应。外部源站必须验证自己对应的密钥。
把验证范围说清楚
规则更新前需要完成完整 CRS 编译和执行检查,未知语义会明确报错。平台资源限制仍然适用;升级后的 WebSocket 消息不受 SecLang 内容检查,单 Worker 计数也不是全网共享计数。
欢迎 Vibe Coding 与 Agent 安全报告。上传代码前先运行相关测试;敏感问题通过私密渠道报告,附受影响版本、脱敏复现、影响和真实测试证据。