在 Elasticsearch 中收集 Fortigate LOG 并在 Grafana 中可视化它们

我们继续阅读另一个文档,我们将尝试将所有 LOG 集中在 Elasticsearch 中, 这一次轮到我们使用 Fortigate 防火墙了. 这个想法不仅是收集 LOT,而且还要直观地理解它们,并拥有在我们的日常生活中帮助我们的工具.

我说了什么, 目标如下, 首先收集我们在 Fortigate 防火墙中的 LOG, 将它们放在一个地方, 那将是我们心爱的 Elasticsearch. 一旦我们有了 LOG,我们就可以使用 Kibana 来八卦正在发生的事情, 谁访问了哪个网站, 哪些应用程序使用最频繁或它们产生的流量… 除了浏览它, 因为这个想法也是在 Grafana 中可视化它, 我们知道我们有很多类型的 Panel 来理解或理解我们在这些 LOG 中录制的内容.

我们可以制作奶酪型面板, 僵局, 条形图, 当然是 Sankey 类型, 或放置世界地图并对目的地或起点的 IP 地址进行地理定位, 以及了解谁以及何时访问我们的资源, 以及我们的用户使用 Internet 的目的.

最舒适的做法是从 Kibana 进行, 在那里,它还将指示我们将在下面看到的某些必要步骤, 从 Kibana 我们转到它的 “家” > “添加数据” > “Fortinet 日志”, 好消息是,这个向导将检查我们是否正确地遵循了步骤,并且它正在收集数据, 如果一切正常,它将创建索引.

安装 Filebeat,

我们必须在 Windows 或 Linux 计算机上安装 Filebeat,以便此服务在端口上侦听 (Fortigate 会将 LOG 发送到哪个), 然后 Filebeat 将 LOG 存储在我们感兴趣的 Elasticsearch 索引中. 所以如果你不知道在哪里安装它, ELK 自己的机器可以完全有效, 我们将遵循的步骤是如果我们从 Linux 收集, 所以, 我们安装了 Filebeat:

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.12.0-amd64.deb sudo dpkg -i filebeat-7.12.0-amd64.deb

我们首先像往常一样编辑 Filebeat 配置文件 “/etc/filebeat/filebeat.yml” 并至少指示与 Elasticsearch 和 Kibana 的连接数据:

...
输出.elasticsearch:
  主机: ["HTTP 协议://DIRECCION_IP:9200"]
...
setup.kibana:
  主机: "HTTP 协议://DIRECION_IP:5601"
...

接下来,我们将启用 Fortinet 模块:

Sudo Filebeat 模块启用 Fortinet

我们还编辑了 Fortigate 模块的配置文件 “/etc/filebeat/modules.d/fortinet.yml”, 我们启用了 'firewall' 的集合’ 如果我们有 Forticlients, FortiMail 或 FortiManager 以及 FortiMail, 否则, 我们禁用后者. 还要考虑选择哪些是 Internal (内部) 和 External (外部) 接口; & 当然,我们将拥有的侦听端口 (在此示例中, 9005):

- 模块: Fortinet 防火墙:
    启用: True Var.Input: UDP var.syslog_host: 0.0.0.0
    var.syslog_port: 9005
    var.internal_interfaces: [ "局域网 1" ]
    var.external_interfaces: [ "广域网" ]
    var.tags: [Fortinet 防火墙, 强化自己]
  client终端节点:
    启用: 伪 Fortimail:
    启用: 错误 FortiManager:
    启用: 假

我们测试了配置:

filebeat 测试配置 -c /etc/filebeat/filebeat.yml -e

我们加载 Kibana 的索引和控制面板, 我们开始服务, 我们使其自动启动并验证服务是否正确启动:

sudo Filebeat 设置 --pipelines --modules Fortinet sudo systemctl start filebeat sudo systemctl enable filebeat sudo systemctl status filebeat

在 Fortigate 中启用 LOG,

我们配置了 Fortigate,它将日志输出到 syslog 中, 最佳命令行, 因为 GUI 不允许我们指定端口, CLI 是:

config log syslogd setting set status enable set server "DIRECCION_IP_FILEBEAT"
    设置端口 9005
结束

玩 LOG,

我说了什么, 如果数据收集是正确的,并且索引已经正确创建,那么我们就没有什么可做的了 (如果我们不遵循我们提到的初始向导,我们可以手动创建索引). 从 Kibana 中,我们将能够发现它收集的内容, 添加或删除字段, 以 Lucene 格式或 KQL 格式搜索 (Kibana 查询语言).

例如,我们已经能够享受 Grafana 来解释收集的数据!! 我们将使用 Grafana 中 Elasticsearch 类型的数据源建立连接,并指示连接数据,然后使用我们在 Kibana 中执行的相同 Lucene 查询, 因为我们可以制作漂亮的仪表板.

我给你留下一个例子,说明如何用 Forti 发现的 Top consumption of Apps 制作甜甜圈或奶酪.

然后,是时候让您的想象力自由驰骋,添加我们想要的可视化效果了.

在博客上,您将看到不同的可视化示例, 如果为 Tree Map 格式…

表示例, 我们可以在 GUI 中进行过滤…

桑基图示例…

世界地图, 我们可以看到传入或传出连接, 接受或拒绝, 实时或过去 24 小时的历史记录, 7 日, 1 年…

我说了什么, 在其他文档中,您将看到如何制作您在本文中看到的每种类型的面板, 我希望你喜欢它,并一如既往地感谢你在社交网络上的点赞!

推荐文章

作者

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, 请随时与我联系, 我会尽我所能帮助你, 分享就是生活 ;) . 享受文档!!!