Beats:使用 Heartbeat 来检查 TLS 证书是否将要过期

Posted Elastic 中国社区官方博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Beats:使用 Heartbeat 来检查 TLS 证书是否将要过期相关的知识,希望对你有一定的参考价值。

在许多时候,我们需要监控一个网站的 TLS 证书。如果快要过期了,我们希望能发出警报。这个需求我们可以使用 Heartbeat 并在 Kibana 中的 Uptime 应用中来实现。

首先,我们来安装好自己的 Heartbeat,并修改它的配资文件 heartbeat.yml 文件。在它的 heartbeat.monitors 下添加如下的配置:

heartbeat.yml

heartbeat.monitors:

# 一下是添加的部分
- type: http
  id: elastic-official
  name: elastic
  enabled: true
  schedule: "@every 5s"
  urls:
    - https://elastic.co

- type: http
  id: my-cluster
  name: my cluster
  schedule: '@every 5s'
  urls:
    - https://192.168.0.4:9200
  username: elastic
  password: password
  ssl.certificate_authorities: ['/Users/liuxg/elastic3/heartbeat-7.13.0-darwin-x86_64/ca.crt']  

在上面,我们使用两个 http 的监控。一个监控 Elastic 的官方网站 https://elastic.co,而另外一个是我的自己的 Elasticsearch 集群。

当我们配置完毕后,我们可以使用如下的方式来启动 Heartbeat:

./heartbeat -e

这样我们就可以看到数据被导入到 Elasticsearch 中。我们打开 Kibana 中的 Uptime 应用:

 在上面,我们可以清楚地看到 https://elastic.co 网站的  TLS 将在 2 个月后就会过期,而我自己的 Elasticsearch 集群的证书将会在 3 年后过期。

我们可以在 Uptime 应用中的 Status alert 中,点击开关,并打开 Alert:

关于如何配置 Alert,请参考我们在 “Elastic:菜鸟上手指南” 中的 “通知及警报” 章节 。这里就不再详述了。

以上是关于Beats:使用 Heartbeat 来检查 TLS 证书是否将要过期的主要内容,如果未能解决你的问题,请参考以下文章

Beats:为 Heartbeat 监控添加 geo 信息

Beats:为 Heartbeat 监控添加 geo 信息

Beats:使用 Autodiscover 监控 Docker 容器

Beats:使用 Autodiscover 监控 Docker 容器

部署Heartbeat--Elastic Stack之十一

Beats:使用 fingerprint 来连接 Beats/Logstash 和 Elasticsearch