检查 ufw 状态并在未激活时发送 Prometheus 警报

Posted

技术标签:

【中文标题】检查 ufw 状态并在未激活时发送 Prometheus 警报【英文标题】:Check ufw status and send Prometheus alert if not active 【发布时间】:2021-11-01 22:51:21 【问题描述】:

我需要检查 ufw 状态是否处于活动状态,否则会向 Slack 频道发送警报。

我发现以编程方式检查 ufw 是否处于活动状态的唯一方法是检查 sudo ufw status | grep -w active 的退出代码(参见此处:https://askubuntu.com/questions/533269/how-to-check-if-ufw-is-running-programmatically)

拥有 Prometheus/Alert Manager 系统,我想创建一个警报,以防 ufw 状态为非活动状态。 是否可以使用 PromQL 查询来实现?

感谢您的帮助。

【问题讨论】:

【参考方案1】:

您可以使用textfile collecter in the node_exporter 读取您通过运行ufw | grep 命令的systemd 计时器/服务更新的.prom 文件

更新Textfile 的服务应创建如下文件:

# HELP ufw_is_up A flag to indicate if ufw is active. 
# TYPE ufw_is_up gauge
ufw_is_up 1

将您的 systemd 计时器设置为比 Prometheus 设置的更频繁地运行它,您将获得任何您想要的命令的指标!

我对@9​​87654326@ 一无所知,但您可能能够避免文本文件的复杂性或运行 ufw 命令,而只需使用选择的 systemd/service manager collector 作为节点导出器。

【讨论】:

以上是关于检查 ufw 状态并在未激活时发送 Prometheus 警报的主要内容,如果未能解决你的问题,请参考以下文章

debian ufw简单使用

Android - 以编程方式检查互联网连接并在未连接时显示对话框

ubuntu 默认防火墙安装启用查看状态

ubuntu 默认防火墙安装启用查看状态

Ubuntu默认防火墙安装启用配置端口查看状态相关信息

UFW 会阻止大多数端口,直到禁用并在重启后重新启用