宝塔WAF API教程_编程_山海自留地

山海自留地

宝塔WAF API教程

编程
2025-06-03 08:30:16

通过API,可以完全控制云WAF的所有功能 除了/api/config/下的接口


640.jpg


接口密钥

一定需要填写IP白名单 (不添加IP白名单则会被拒绝访问、如果没固定IP 则填写*号代表允许所有IP)

签名算法 通过Header 进行传递获取

__WAF_KEY = 接口密钥 (在WAF设置页面 - API 接口中获取)
waf_request_time = 当前请求时间的 uinx 时间戳 ( php: time() / python: time.time() )
waf_request_token = md5(string(request_time) + md5(api_sk))

注意事项:
1、请统一使用 POST 方式请求 API 接口
2、请求的参数为 Json 数据格式
3、为了安全考虑,请务必添加 IP 白名单 (不添加IP白名单则会被拒绝访问、如果没固定IP 则填写*号代表允许所有IP)
4、所有响应内容统一为 Json 数据格式



API 列表

1. 网站列表

1.1 获取网站列表

URL: /api/wafmastersite/get_site_list
METHOD: POST
Request:

{p: 1, p_size: 20, site_name: ""}

1.2 获取拦截记录

URL: /api/report/attack_report_log
METHOD: POST
Request:

{p: 1, p_size: 20, keyword: "", query_data: "", filters: []}

1.3 IP白名单列表

URL: /api/limit/get_ip
METHOD: POST
Request:

{p: 1, types: 1, p_size: 10, keyword: ""}

1.4 IP黑名单列表

URL: /api/limit/get_ip
METHOD: POST
Request:

{p: 1, types: 0, p_size: 10, keyword: ""}

1.4 URL 黑名单列表

URL: /api/limit/get_url
METHOD: POST
Request:

{types: 1, p: 1, p_size: 10, keyword: ""}

1.5 URL 白名单列表

URL: /api/limit/get_url
METHOD: POST
Request:

{types: 0, p: 1, p_size: 10, keyword: ""}

1.5 UA 黑名单列表

URL: /api/limit/get_ua
METHOD: POST
Request:

{p: 1, types: 1, p_size: 10, keyword: ""}

1.6 UA 白名单列表

URL: /api/limit/get_ua
METHOD: POST
Request:

{p: 1, types: 0, p_size: 10, keyword: ""}

其他的接口获取访问

  1. 打开WAF 后台F12 查看接口地址

  2. 复制接口地址到浏览器中访问

  3. 查看请求的参数

  4. 复制请求的参数到API 中

  5. 发送请求

  6. 查看响应内容