操作指南(管理控制台)
本文档面向 管理团队(主账号),介绍 JXWAF 云 WAF 管理控制台的操作。用户控制台的定制开发请参考 用户控制台定制开发指南。
菜单结构
管理控制台主菜单:
| 一级菜单 | 二级菜单 | 说明 |
|---|---|---|
| 用户资源管理 | 子账号(业务部门)的创建与管理 | |
| 全局防护 | 名单防护 / 防护组件 / SSL协议防护 | 全局生效的防护功能 |
| 运营中心 | 业务数据统计 / Web安全报表 / 流量安全报表 / 攻击事件 / 日志查询 / 模型训练记录 / 网络封禁IP名单 / 节点状态 | 安全运营与监控 |
| 系统管理 | 基础配置 / 网站接入配置 / 日志传输配置 / 日志查询配置 / WebTDS分析配置 / 拦截页面配置 / 配置备份&加载 | 平台级配置 |
从 用户资源管理 进入某个子账号后,可管理该部门的:域名管理、防护配置、高级配置、SSL 证书、缓存配置。
规则引擎配置
规则引擎是通用的请求匹配机制,各防护功能模块均基于此机制定义规则触发条件。
请求内容例子
POST /waf/waf_get_domain_list?test=a&test2=b HTTP/1.1
Host: demo.jxwaf.com:8000
Content-Length: 10
Accept: application/json, text/plain, */*
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.6367.118 Safari/537.36
Content-Type: application/json;charset=UTF-8
Cookie: sessionid=ie7l7u89zeqf93syv4jvolhr0ljgngn5
{"page":1}
匹配参数
| 匹配参数选项 | 获取数据说明 |
|---|---|
| http_args:path | /waf/waf_get_domain_list |
| http_args:query_string | test=a&test2=b |
| http_args:method | POST |
| http_args:src_ip | 1.1.1.1 |
| http_args:raw_body | {"page":1} |
| http_args:version | 1.1 |
| http_args:scheme | HTTP |
| http_args:raw_header | 获取原始 header 内容 |
| header_args:host | demo.jxwaf.com:8000 |
| header_args:cookie | sessionid=ie7l7u89zeqf93syv4jvolhr0ljgngn5 |
| header_args: | 获取指定的 header 值,例如 header_args:Accept-Encoding 返回 "gzip, deflate, br" |
| cookie_args: | 获取指定的 cookie 值,例如 cookie_args:sessionid 返回 "ie7l7u89zeqf93syv4jvolhr0ljgngn5" |
| uri_args: | 获取指定的查询字符串参数的值,例如 uri_args:test 返回 "a" |
| post_args: | 获取指定的请求体参数的值,例如 post_args:number 返回 "2" |
| json_post_args: | 获取指定的 JSON 请求体参数的值,例如 json_post_args:page 返回 "1" |
| ctx_args: | 获取防护组件中用户自定义参数值 |
| global_name_list_result: | 获取名单防护功能中名单的匹配结果 |
参数处理
| 参数处理选项 | 处理说明 |
|---|---|
| 不处理 | 不做处理,获取数据为 "a",则返回 "a" |
| 小写处理 | 获取数据为 "AbcdEf",则返回 "abcdef" |
| BASE64 解码 | 获取数据为 "QWJjZEVm",则返回 "AbcdEf",如果解码失败,则返回 nil |
| 长度计算 | 获取数据为 "AbcdEf",则返回 "6" |
| URL 解码 | 获取数据为 "test%3Da%26test2%3Db",则返回 "test=a&test2=b" |
| UNICODE 解码 | 获取数据为 "\u0073\u0073\u0073\u0061\u0061",则返回 "sssaa" |
| 十六进制解码 | 获取数据为 "\x61\x61\x61\x62\x62\x62",则返回 "aaabbb" |
匹配方式
| 匹配方式选项 | 匹配说明 |
|---|---|
| 正则匹配 | 使用正则表达式进行匹配 |
| 前缀匹配 | 获取数据为 "AbcdEf",前缀匹配 "Abcd" 成功 |
| 后缀匹配 | 获取数据为 "AbcdEf",后缀匹配 "cdEf" 成功 |
| 包括 | 获取数据为 "AbcdEf",包括匹配 "cdE" 成功 |
| 不包括 | 获取数据为 "AbcdEf",不包括匹配 "aaaa" 成功 |
| 等于 | 获取数据为 "AbcdEf",等于匹配 "AbcdEf" 成功 |
| 不等于 | 获取数据为 "AbcdEf",不等于匹配 "dEf" 成功 |
| 数字大于 | 获取数据为 "6",数字大于匹配 "10" 成功 |
| 数字小于 | 获取数据为 "6",数字小于匹配 "4" 成功 |
| 数字等于 | 获取数据为 "6",数字等于匹配 "6" 成功 |
| 数字不等于 | 获取数据为 "6",数字不等于匹配 "5" 成功 |
| 参数存在判断 | 判断参数是否存在,只有「参数存在」和「参数不存在」两个选项 |
执行动作说明
以下为各模块通用的执行动作,具体可用动作因模块而异:
- 阻断请求
拦截请求,返回默认拦截页面。可以在 系统管理 → 拦截页面配置 中配置自定义拦截页面。
- 拒绝响应
服务器不返回任何数据给客户端。适合 CC 防护场景,可以避免出口带宽被打满。
- 观察模式
仅记录日志不拦截,日志可以在 运营中心 → 日志查询 中查看详情。
- 人机识别
无交互认证:无需用户交互,通过人机识别算法快速识别当前环境是否为正常浏览器环境(可理解为 5 秒盾)。 滑块认证 / 拼图认证 / 选字认证:在无交互认证的基础上,增加对应验证交互。
- 安全防护全加白
跳过所有安全防护模块(Web 和流量),不做检测和处置。
- Web安全防护加白
仅跳过 Web 安全防护模块的检测。
- 流量安全防护加白
仅跳过流量安全防护模块的检测。
- 网络封禁
在网络层封禁攻击 IP,需设置封禁持续时间(秒)。封禁 IP 可通过 运营中心 → 网络封禁IP名单 查看。
用户资源管理(子账号管理)
新增子账号
| 配置项 | 说明 |
|---|---|
| 子用户名 | 必填,部门登录用户控制台的账号名 |
| 密码 | 必填,部门登录密码 |
| OTP认证 | 选填,可开启部门账号的 OTP 二次验证 |
| 网站接入配置 | 必填,选择该部门使用的接入配置(DNS 服务商凭据),需提前在 系统管理 → 网站接入配置 中创建 |
创建后,系统为该子账号分配独立的 waf_auth,部门使用该账号登录 用户控制台 即可自助管理。
子账号列表操作
子账号以卡片形式展示,卡片头部提供编辑、删除入口,卡片底部提供管理入口:
| 操作 | 说明 |
|---|---|
| 编辑(账号管理) | 进入账号管理弹窗,可修改密码、绑定接入配置,并查看子用户名与 WAF 认证密钥(waf_auth) |
| 重置 waf_auth | 在账号管理弹窗中重新生成子账号认证密钥 |
| 重置 OTP | 在账号管理弹窗中重置已绑定的 OTP 密钥(需重新绑定) |
| 删除 | 删除子账号(需先解除其绑定的资源) |
子账号管理入口
点击卡片底部的入口进入该部门的管理空间:
| 入口 | 说明 |
|---|---|
| 查看网站 | 管理该部门的域名列表(新增/编辑/删除域名) |
| 防护配置 | Web 防护(引擎/规则/防篡改/白名单)、流量防护(引擎/规则/IP区域封禁/白名单) |
| 高级配置 | 自定义回源地址、自定义请求头、自定义响应头、自定义响应内容 |
| SSL 证书 | 证书上传、泛域名证书自动申请 |
| 缓存配置 | 缓存策略、不缓存策略、缓存绕过策略、缓存预热、缓存刷新 |
各防护配置模块的操作方式与用户控制台部门自助配置一致,本文不再重复,以下重点介绍管理团队独有功能。
网站接入配置
网站接入配置用于管理域名接入所需的 DNS 服务商凭据,实现域名 CNAME 自动接入。
新增接入配置
| 配置项 | 说明 |
|---|---|
| 配置名称 | 必填,唯一标识,需与用户控制台配置的接入配置名一致 |
| 配置描述 | 必填,配置用途说明 |
| DNS 服务商 | 必填,阿里云 / 腾讯云 / Cloudflare |
| API Key / Secret | 必填,DNS 服务商 API 凭据(Cloudflare 仅需 API Token,需 Zone.DNS 编辑权限) |
| 接入域名 | 必填,部门 CNAME 记录使用的接入域名,例如 acc.jxwaf.com |
| IP 列表 | 必填,接入节点 IP 列表 |
| DNS 记录 TTL | 必填,DNS 记录生存时间(秒,默认 600) |
| 启用资源配额 | 必填,是否对该接入配置下的子账号启用资源配额 |
配置完成后可点击「连接测试」验证 DNS 凭据是否有效。
域名接入流程
- 管理团队创建接入配置,并绑定到子账号
- 部门在用户控制台配置 DNS 服务商凭据,开启自动接入
- 部门在用户控制台添加域名
- 系统自动在部门 DNS 服务商创建 CNAME 记录,域名接入完成
资源配额模板
通过环境变量 RESOURCE_QUOTA_TEMPLATE 定义配额项(默认 8 项),按子账号启用后,部门使用的资源将受配额限制:
| 配额项 key | 说明 | 分组 |
|---|---|---|
| website_count | 网站数量 | 网站资源 |
| website_total_rpm_limit | 网站总 RPM 限制 | 网站资源 |
| web_protection_rule_count | Web防护规则数量 | Web防护 |
| web_tamper_protection_rule_count | 网页防篡改规则数量 | Web防护 |
| web_whitelist_rule_count | Web白名单规则数量 | Web防护 |
| traffic_protection_rule_count | 流量防护规则数量 | 流量防护 |
| traffic_whitelist_rule_count | 流量白名单规则数量 | 流量防护 |
| ip_list_entry_count | IP名单条目数量 | 名单管理 |
接入配置可开启
resource_quota_enable启用配额,部门可在用户控制台查看配额使用情况。
全局防护
全局防护作用于平台内所有部门。
名单防护
- 名单名称:名单的唯一标识
- 名单描述:名单用途说明
- 过期时间:默认永久生效,可自定义过期时间(秒)
- 匹配参数:支持与防护规则相同的匹配参数,支持多个组合。例如封禁特定 IP 访问特定域名,可设置
header_args:host + http_args:src_ip - 执行动作:阻断请求 / 拒绝响应 / 人机识别 / 网络封禁 / 观察模式 / 安全防护全加白 / Web安全防护加白 / 流量安全防护加白
名单条目支持添加、搜索、删除操作。
防护组件
自定义组件系统,支持编写代码实现自定义检测逻辑。
- 组件名称 / 组件描述
- 组件代码:自定义检测代码
- 组件配置:JSON 格式,传入组件的配置参数
模板如下:
local _M = {}
function _M.check(conf_data)
if conf_data == nil then
return
end
return
end
return _M
SSL协议防护
全局生效的 SSL 协议层攻击防护,防御 SSL Flood、SSL 重协商攻击 等协议层攻击:
| 配置项 | 说明 |
|---|---|
| SSL协议防护状态 | 开启/关闭 |
| 统计时间(秒) | 统计窗口,例如 60 |
| 统计阈值(次) | 窗口内握手次数超过阈值判定为攻击,默认 10000 |
| 封禁时长(秒) | 对攻击 IP 的封禁持续时间 |
高级配置(子账号维度)
自定义回源地址
按匹配条件将请求转发到指定的上游服务器地址,实现灵活的流量调度。
- 规则名称 / 规则描述 / 规则匹配
- 回源地址:指定的上游服务器地址
- HTTP回源端口:默认 80
- HTTPS回源端口:默认 443
自定义请求头
在转发请求到源站前,按匹配条件为请求添加指定的请求头。
- 请求头名称:例如
Content-Type - 请求头字段值:例如
application/json
自定义响应头
在返回响应给客户端前,按匹配条件为响应添加指定的响应头。
- 响应头名称:例如
X-Frame-Options - 响应头字段值:例如
DENY
自定义响应内容
按匹配条件直接返回自定义内容,不做回源。
- Content-Type:返回的 Content-Type
- 响应码:返回的 HTTP 状态码
- 响应内容:返回的页面内容
缓存配置(CDN 功能)
管理团队可为部门配置缓存策略,部门也可在用户控制台自助管理。
缓存策略
- 缓存策略状态:开启/关闭
- 缓存规则匹配:匹配 URL 规则,如静态资源后缀(js/css/png 等)或指定路径
- 缓存时间:缓存有效期
不缓存策略
对指定 URL 排除缓存,即使命中缓存策略也不缓存。
缓存绕过策略
对指定 URL 绕过缓存读取,直接回源获取最新内容。
缓存预热
将热点资源提前缓存,提升首次访问速度。新建任务时填写任务名和 URL 列表(每行一个,最多 100 个),支持查看任务详情与删除。
缓存刷新
按规则刷新缓存,支持三种匹配类型:
| 匹配类型 | 说明 |
|---|---|
| 精确 | 精确匹配完整 URL |
| 前缀 | 匹配指定前缀的 URL |
| 正则 | 正则表达式匹配 URL |
可设置有效期(1-168 小时,默认 24h),到期后刷新规则自动失效。
运营中心
业务数据统计
按域名维度统计业务运行数据(近 1h / 6h / 24h / 7d / 自定义),包含:
- 请求量:总请求数与平均 QPS
- 带宽:入/出方向带宽(Mbps)
- 时延:请求时延、回源时延(ms)
- 状态码分布:2xx - 5xx 状态码分布
Web 安全报表
提供 Web 攻击的多维度分析报表:
- Web攻击次数、接口数、IP 数、来源地区数量(含环比变化率)
- Web攻击来源地区(地理分布地图)
- Web攻击趋势、来源地区 TOP5、防护策略 TOP5、接口 TOP5、IP TOP5
流量安全报表
提供流量攻击的多维度分析报表,指标与 Web 安全报表一致(攻击次数/接口/IP/地区、趋势、TOP5 等)。
攻击事件
按攻击 IP 维度汇总攻击行为,列表字段:
- 攻击IP:发起攻击的 IP 地址
- 攻击详情:攻击次数、拦截次数、攻击接口数量、拦截接口数量
- 防护策略:触发拦截的防护模块
- 时间:开始攻击时间、最新攻击时间
- 操作:查看行为轨迹 / 查看攻击详情
日志查询
提供全量请求日志的检索与分析,支持多维度组合过滤,用于安全事件追溯、攻击行为分析和故障排查。
查询条件:
- 时间范围:快速选择(1天 / 7天 / 30天)或自定义时间段
- 高级筛选:支持来源IP、域名、请求路径、请求方法、Cookie、查询参数、请求体、状态码、UA、国家代码、WAF动作/模块/策略、SSL指纹、响应头/响应体等字段组合查询
- 匹配方式:包含 / 前缀 / 后缀 / 等于 / 不等于
日志详情 包含请求元信息、请求内容、客户端特征(来源IP、UA、国家代码、SSL指纹等)、响应信息、WAF 处理结果(动作/模块/策略/节点ID/处理耗时)、上游转发信息、请求 UUID 等完整字段。
模型训练记录
查看 AI 分析记录,包含:域名、接口、请求内容、攻击类型、AI 分析结果(正常请求 / 攻击请求)。支持人工判定修正分析结果,也可管理 AI 模型的 Token 白名单。
网络封禁 IP 名单
展示被网络层封禁的 IP 地址列表,支持按 IP 搜索。页面顶部显示全局封禁状态(封禁/解封)和配置同步时间,可通过「新增IP名单」手动添加。
| 配置项 | 说明 |
|---|---|
| IP地址 | 要封禁或加白的 IP |
| 过期时间(秒) | 1天 / 7天 / 30天 / 自定义 |
| 状态 | 封禁 / 加白 |
节点状态
展示各节点的运行状态:
- 节点:节点唯一标识
- 主机名称:节点主机名
- IP地址:节点 IP 地址
- 时间:心跳时间、配置同步时间
- 健康状态:正常 / 异常(超过 10 分钟无心跳则为异常)
- 操作:支持删除离线节点
系统管理
基础配置
查看主账号的 waf_auth(通信认证密钥),支持重新生成。
waf_auth是管理控制台的认证令牌,节点和用户控制台接入时需要使用,请妥善保管。
网站接入配置
见上文 网站接入配置。
日志传输配置
| 配置项 | 说明 |
|---|---|
| 远程日志记录 | 开启/关闭,开启后节点将日志传输到日志服务器 |
| 日志服务器地址 | jxlog 日志服务器 IP |
| 日志服务器端口 | 默认 8877 |
| 全流量日志记录 | 开启后记录所有请求日志,关闭时仅记录处置请求 |
日志查询配置
| 配置项 | 说明 |
|---|---|
| 日志查询配置 | 开启/关闭(报表功能开关) |
| 服务器地址 | 日志数据库服务器 IP |
| 服务器端口 | 默认 9004 |
| 用户名 / 密码 | 数据库用户与密码 |
| 数据库名称 / 数据库表名 | 数据库与数据表 |
配置完成后可点击「测试」验证连接。
WebTDS 分析配置
| 配置项 | 说明 |
|---|---|
| WebTDS分析 | 开启/关闭,对接 WebTDS 做深度分析 |
| 分析节点IP | WebTDS 节点 IP |
| 分析节点端口 | WebTDS 节点端口 |
拦截页面配置
| 配置项 | 说明 |
|---|---|
| 自定义拦截页面 | 开启/关闭,开启后可自定义阻断请求动作拦截时返回的页面内容 |
| 拦截响应码 | 拦截页面响应码,默认 403 |
| 拦截页面HTML | 拦截时返回的内容(可选择无响应内容或 HTML 响应内容) |
| 自定义404页面 | 开启/关闭,开启后可自定义未接入网站时返回的页面内容 |
| 404响应码 | 404 页面响应码,默认 404 |
| 404页面HTML | 返回的内容(可选择无响应内容或 HTML 响应内容) |
配置备份与加载
支持将平台全部 WAF 配置导出为 JSON 备份文件,也可从备份文件恢复配置,方便迁移或灾备。
