文档首页/ Web应用防火墙 WAF/ 最佳实践/ 使用LTS分析WAF日志/ 使用LTS查询并分析WAF访问日志
更新时间:2024-12-19 GMT+08:00

使用LTS查询并分析WAF访问日志

应用场景

开启WAF全量日志功能后,您可以将攻击日志、访问日志记录到云日志服务(Log Tank Service,简称LTS)中,通过LTS记录的WAF日志数据,快速高效地进行实时决策分析、设备运维管理以及业务趋势分析。

本实践以日志组“lts-waf”的访问日志流“lts-waf-access”为例,说明如何通过LTS快速查询分析日志。

资源与成本规划

表1 资源和成本规划

资源

资源说明

每月费用

云日志服务

  • 计费模式:按需计费
  • 每天新增日志量:10GB/天
  • 日志存储时长:7天

具体的计费方式及标准请参考计费说明

Web应用防火墙

云模式-标准版:

  • 计费模式:包年/包月
  • 域名数量:10个防护域名
  • QPS配额:2,000QPS业务请求
  • 支持带宽峰值:云内100Mbps/云外30Mbps

具体的计费方式及标准请参考计费说明

步骤一:购买云模式标准版

以购买WAF云模式标准版为例进行介绍。

  1. 登录华为云管理控制台
  2. 在控制台页面中选择安全与合规 > Web应用防火墙 WAF,进入Web应用防火墙控制台。
  3. 在页面右上角,单击“购买WAF实例”,进入购买页面,“WAF模式”选择“云模式”

    • “区域”:根据防护业务的所在区域就近选择购买的WAF区域。
    • “版本规格”:选择“标准版”
    • “扩展包”“购买时长”:根据具体情况进行选择。

  4. 确认参数配置无误后,在页面右下角单击“立即购买”
  5. 确认订单详情无误后,阅读并勾选《Web应用防火墙免责声明》,单击“去支付”,完成购买操作。
  6. 进入“付款”页面,选择付款方式进行付款。

步骤二:将网站信息添加到WAF

此处以云模式-CNAME接入为例进行介绍。

  1. 在左侧导航树中,选择“网站设置”,进入网站设置列表。
  2. 在网站列表的左上角,单击“添加防护网站”
  3. 选择“云模式-CNAME接入”并单击“开始配置”
  4. 根据界面提示,配置网站信息,如表2所示。

    图1 基础信息配置
    表2 重点参数说明

    参数

    参数说明

    取值样例

    防护域名

    需要添加到WAF中防护的域名。

    • 域名已完成备案
    • 支持单域名(例如,一级域名example.com,二级域名www.example.com等)和泛域名(例如,*.example.com)。

    www.example.com

    防护端口

    需要防护的域名对应的业务端口。

    标准端口

    服务器配置

    网站服务器地址的配置。包括对外协议、源站协议、源站地址、源站端口和权重。

    • 对外协议:客户端请求访问服务器的协议类型。包括“HTTP”“HTTPS”两种协议类型。
    • 源站协议:Web应用防火墙转发客户端请求的协议类型。包括“HTTP”“HTTPS”两种协议类型。
    • 源站地址:客户端访问的网站服务器的公网IP地址(一般对应该域名在DNS服务商处配置的A记录)或者域名(一般对应该域名在DNS服务商处配置的CNAME)。
    • 源站端口:WAF转发客户端请求到服务器的业务端口。
    • 权重:负载均衡算法将按权重将请求分配给源站。

    对外协议:HTTP

    源站协议:HTTP

    源站地址:IPv4 XXX .XXX.1.1

    源站端口:80

    是否使用七层代理

    在WAF前是否使用了七层代理产品。

    根据实际情况进行选择。

  5. 单击“下一步”,根据界面提示,完成WAF回源IP加白本地验证修改域名DNS解析设置的操作。

    图2 添加域名完成

步骤三:将防护日志配置到LTS

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域或项目。
  3. 单击页面左上方的,选择安全与合规 > Web应用防火墙 WAF
  4. 在左侧导航树中,选择“防护事件”,进入“防护事件”页面。
  5. 选择“全量日志”页签,开启全量日志,并选择日志组和日志流,相关参数说明如表3所示。

    图3 配置全量日志
    表3 全量日志配置参数

    参数

    参数说明

    取值样例

    选择日志组

    选择已创建的日志组,或者单击“查看日志组”,跳转到LTS管理控制台创建新的日志组。

    lts-group-waf

    记录攻击日志

    选择已创建的日志流,或者单击“查看日志流”,跳转到LTS管理控制台创建新的日志流。

    攻击日志记录每一个攻击告警信息,包括攻击事件类型、防护动作、攻击源IP等信息。

    lts-topic-waf-attack

    记录访问日志

    选择已创建的日志流,或者单击“查看日志流”,跳转到LTS管理控制台创建新的日志流。

    访问日志记录每一个HTTP访问的关键信息,包括访问时间、访问客户端IP、访问资源URL等信息。

    lts-topic-waf-access

  6. 单击“确定”,全量日志配置成功。

    您可以在LTS管理控制台查看WAF的防护日志。

步骤四:通过LTS查询并分析WAF访问日志

  1. 单击页面左上方的,选择管理与监管 > 云日志服务,进入“日志管理”页面。
  2. “日志组名称”列,单击访问日志流所在的日志组名称(例如,“lts-waf”),进入日志流页面。
  3. “日志流名称”列,单击访问日志流名称(例如,“lts-waf-access”),如图4所示,进入“日志流”页面。

    图4 进入访问日志流页面

  4. 在日志流详情页面,单击右上角,在弹出页面中,选择“云端结构化解析”页签,进入日志结构化配置页面。
  5. 选择“JSON”日志结构化方式,如图5所示。

    图5 选择JSON格式

  6. 在“步骤1 选择示例”日志区域,单击“从已有日志中选择”,在弹出“选择已有日志”对话框中任选一条日志后,单击“确定”

    图6 选择已有日志

  7. 在“步骤2 字段提取”区域,单击“智能提取”,开启需要快速分析的字段(例如,“remote_ip”),如图7所示。

    “remote_ip”:访问请求的客户端IP地址。

    图7 选择快速分析日志字段

  8. 单击“保存”,LTS将对周期内的日志进行快速分析、统计,如图8所示。

    图8 快速分析访问日志

  9. 在左侧导航树中,选择“可视化”,在页面右侧选择日志查询时间段,在搜索框中输入SQL语句后单击“执行查询”,查询指定日志。

    您可以在搜索框中输入如下SQL语句,查询指定IP的日志:

    select * where remote_ip = 'xx.xx.xx.xx' 或者select * where remote_ip like 'xx.xx.xx%'