【AWS征文】用 Kibana 来替换 AWS WAF Dashboards

AWS WAF 的默认 dashboard 数据显示的不实时,也不是特别明了,没有一些聚合指标,因此看起来就比较费力,那有没有第三方能够来展现 AWS WAF 呢?本文就教你如何使用 Kibana 来实时展现 AWS WAF 的状态。linux

1、描述

AWS WAF Dashboards 已经准备好使用仪表板 (基于 Amazon Elasticsearch Service 和 Kibana) ,能够快速链接到已经存在的 AWS WAF 配置,并容许使用可视化图表中的多个构建对 AWS WAF 日志进行可视化。bash

要开始使用 AWS WAF 仪表板,你不须要有任何与 Elasticsarch 或甚至 AWS WAF 的经验,只须要最低限度的 AWS 知识。我这里提供了 CloudFormation template,全自动的为你们把所须要的服务建立好,你只需配置 WAF 把数据导入到 ES 便可,整个建立过程大约持续 30 分钟。架构

image-20200902113429496

WAF 是附加在 ELB 上面的,WAF 的日志传送给 Kinesis,经过 Kinesis 传递给 Elasticsearch,当用户登录 Kibana 查询数据的时候,须要通过 Cognito 的认证经过,整个架构大体如此。dom

2、安装

一、启动模版

由于我在 eu-west-1 已经有业务,而且也已经配置了 WAF,因此我在这个 region 启动 CloudFormation,下面咱们打开 Console,找到 CloudFormation,输入下面的模版:ide

https://s3.amazonaws.com/code.wzlinux.com/wzlinux-dashboard.yaml

image-20200902103908932

二、配置模版

咱们点击下一步以后,会有一些参数须要咱们填写,以下:日志

image-20200902104501765

  • DataNodeEBSVolumeSize: Elasticsearch cluster 的存储大小,能够不进行修改。
  • ElasticSerchDomainName: Elasticsearch luster domain,也能够不修改。
  • NodeType: Elasticsearch cluster 实例类型,能够不修改。
  • UserEmail: 邮箱这里要填写,由于随后会给送给你登录 kibana 的登录帐户和密码。

而后点击建立,等待建立完成便可。code

三、配置 WAF log

建立完成以后,咱们打开 WAF 界面,找到咱们的 Web ACL,修改 logging,把数据传递到 CloudFormation 建立的 Kinesis 里面,以下:orm

image-20200902113953570

3、查看 Kibana

在 CloudFormation 的 Outputs 输出结果里面,咱们能够看到 Kibana 的地址:blog

image-20200902122208665

登录框中输入咱们邮件收到的帐户密码便可。it

登录以后,咱们点击 Dashboard 查看。如今,您的 WAF 日志将经过 Kinesis Firehose 直接从 WAF 服务发送到 ElasticSearch 集群,并使用 Kibana 仪表板提供给您。几分钟后,您应该开始看到仪表板上有数据。

image-20200902123128657

image-20200902123210929

image-20200902123337797

Dashboard 大体展现了这些数据,固然你也能够按照本身的需求进行定制化更改。

演示完成以后,咱们能够把 WAF 的日志取消注入 Kinesis,删掉 CloudFormation 便可。

关于每一个视图是如何制做的,你们能够编辑 Visualize 查看:

image-20200902123752069

欢迎你们扫码关注,获取更多信息

【AWS征文】用 Kibana 来替换 AWS WAF Dashboards

相关文章
相关标签/搜索