如何设置流量过滤规则(包括 WAF 规则)

了解​ 如何设置 ​流量过滤规则(包括 WAF 规则)。阅读有关创建、部署、测试和分析结果的信息。

设置

设置过程包括以下内容:

  • 使用适当的 AEM 项目结构和配置文件来​ 创建规则
  • 使用 Adobe Cloud Manager 的配置管道来​ 部署规则
  • 使用各种工具生成流量的​ 测试规则
  • 使用 AEMCS CDN 日志和仪表板工具​ 分析结果

在 AEM 项目中创建规则

要创建规则,请按照以下步骤操作:

  1. 在 AEM 项目的顶层,创建一个名为 config 的文件夹。

  2. config 文件夹中,创建一个名为 cdn.yaml 的新文件。

  3. 将以下元数据添加到 cdn.yaml 文件:

kind: CDN
version: '1'
metadata:
  envTypes:
    - dev
    - stage
    - prod
data:
  trafficFilters:
    rules:

查看 AEM Guides WKND Sites 项目中的 cdn.yaml 文件示例:

WKND AEM 项目规则文件和文件夹 {width="800" modal="regular"}

通过 Cloud Manager 部署规则 deploy-rules-through-cloud-manager

要部署规则,请按照以下步骤操作:

  1. my.cloudmanager.adobe.com 上登录到 Cloud Manager 并选择适当的组织和项目。

  2. 导航到​ 项目概述 ​页面中的​ 管道 ​信息卡,并单击 +添加 ​按钮,然后选择所需的管道类型。

    Cloud Manager 管道信息卡

    在上述示例中,由于使用的是开发环境,因此出于演示目的,选择了​ 添加非生产管道

  3. 在​ 添加非生产管道 ​对话框中,选择并输入以下详细信息:

    1. 配置步骤:

      • 类型:部署管道
      • 管道名称:Dev-Config

      Cloud Manager 配置管道对话框

    2. 源代码步骤:

      • 要部署的代码:有针对性的部署
      • 包括:配置
      • 部署环境:您的环境名称,例如 wknd-program-dev。
      • 存储库:管道应从哪个 Git 存储库检索代码;例如,wknd-site
      • Git 分支:Git 存储库分支的名称。
      • 代码位置/config,对应于上一步中创建的顶级配置文件夹。

      Cloud Manager 配置管道对话框

通过生成流量来测试规则

为了测试规则,市面上有各种第三方工具可供选择,而您的组织可能也有偏好的工具。为了进行演示,我们将使用以下工具:

  • 使用 Curl 进行基本测试,如调用 URL 和检查响应代码。

  • Vegeta 将执行拒绝服务 (DOS)。按照 Vegeta GitHub 中的安装说明进行操作。

  • 使用 Nikto 来查找潜在问题和安全漏洞,如 XSS、SQL 注入等。请按照 Nikto GitHub 上的安装说明进行操作。

  • 通过运行以下命令,验证工具是否已安装且可在终端中使用:

    code language-shell
    # Curl version check
    $ curl --version
    
    # Vegeta version check
    $ vegeta -version
    
    # Nikto version check
    $ cd <PATH-OF-CLONED-REPO>/program
    ./nikto.pl -Version
    

使用仪表板工具分析结果

在创建、部署和测试规则后,您可以使用 CDN 日志和 AEMCS-CDN-Log-Analysis-Tooling 来分析结果。该工具提供了一组仪表板,用于可视化 Splunk 和 ELK(Elasticsearch、Logstash和Kibana)堆栈的结果。

该工具可以从 AEMCS-CDN-Log-Analysis-Tooling GitHub 存储库中克隆。然后,按照说明为您首选的可观察性工具安装并加载 CDN 流量仪表板 ​和 WAF 仪表板

在本教程中,我们使用的是 ELK 堆栈。请按照用于 AEMCS CDN 日志分析的 ELK Docker 容器说明来设置 ELK 堆栈。

  • 加载示例仪表板后,您的 Elastic 仪表板工具页面应如下所示:

    ELK 流量过滤规则仪表板

NOTE
由于尚未摄取 AEMCS CDN 日志,因此仪表板为空。

下一步

示例与结果分析章节中,使用 AEM WKND Sites 项目,学习如何声明包括 WAF 规则在内的流量过滤规则。

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69