11 使用主动检查监控 Windows 事件日志

简介

本指南介绍如何使用主动检查通过 Zabbix 监控 Windows 事件日志。借助 Zabbix 的 Windows 专用监控项键值,您可以实时收集和分析关键事件(例如登录失败尝试、系统错误等)。

本指南适用对象

本指南面向希望监控 Windows 事件日志的 Zabbix 新用户和网络管理员。如需了解高级配置选项,请参阅 Windows 专用监控项键值 文档。

前提条件

在继续阅读本指南之前,您需要根据您的操作系统说明下载并安装 Zabbix 服务器和 Zabbix 前端。您还需要在要监控的 Windows 机器上下载并安装 Zabbix agent。

为 Windows 事件日志监控配置 Zabbix agent

1. 在你的 Windows 主机上打开 zabbix_agentd.conf(默认路径为 C:\Program Files\Zabbix Agent\zabbix_agentd.conf),并确保 ServerActive 参数设置为你的 Zabbix 服务器的 IP 地址,且 Hostname 参数与将在 Zabbix 前端 中定义的主机名一致。这样可以使 agent 为其主机向指定的 Zabbix 服务器请求主动检查。例如:

ServerActive=192.0.2.1
Hostname=MyWindowsHost

2. 重启 Zabbix agent 服务以应用更改:

net stop "Zabbix Agent" && net start "Zabbix Agent"

3. 检查 Windows 主机是否正在运行:

  • 确保 Windows 主机上的 Zabbix agent 服务正在运行。
  • 检查 Windows 主机是否可以通过 10051 端口连接到 Zabbix 服务器。要从 Windows 主机测试连通性,请打开 PowerShell 并运行以下命令:
Test-NetConnection -ComputerName <Zabbix-server-IP> -Port 10051

配置 Zabbix 前端

1. 导航到 Data collection > Hosts创建主机

  • Host name 字段中,输入主机名称(例如,“MyWindowsHost”)。
  • Host groups 字段中,输入或选择一个主机组(例如,“Event log Monitoring”)。
  • 单击 Add 保存已配置的主机。

Templates 字段中,您可以添加 “Windows by Zabbix agent active” 模板,以便通过观察同一主机上的其他 active 监控项是否正在更新来帮助排查问题。

2. 使用以下参数创建一个新的监控项:

  • Name 字段中,输入一个描述性的监控项名称(例如,“Security log: failed logon events”)。
  • Type 下拉列表中,选择 “Zabbix agent (active)”(Event log 监控所必需)。
  • Key 字段中,使用 eventlog 监控项键。例如,要监控 Security 日志中的登录失败尝试(Event ID: 4625),并忽略早于该监控项上次检查时间的条目(使用 skip 参数),请输入以下监控项键:eventlog[Security,,,,4625,,skip]
  • Type of information 下拉列表中,选择 “Log”。

3. 单击 Add 保存该监控项。

测试并查看已收集的指标

恭喜!Zabbix 现已配置为收集您的 Windows 事件日志。 要验证事件日志是否正在被收集,您可以通过注销 Windows 账户,然后使用错误的凭据尝试登录,来测试“安全日志:登录失败事件”监控项。

然后,在 Zabbix 前端中查看已收集的日志:

1. 在 Zabbix 前端中,导航到 Monitoring > Latest data

2. 在 Name 字段中,按您的 “MyWindowsHost” 主机进行筛选。

3. 单击 History 以查看已记录的日志值。

4. 如果没有日志值,请继续阅读本指南的 故障排除 部分。

设置问题告警

本指南提供了发送电子邮件告警的基本配置步骤。

1. 导航到“数据采集 > 主机”,定义一个触发器,使其在您的事件日志监控项记录到您关注的模式时触发。例如,要捕获安全日志中的登录失败尝试,请使用 find() 函数:

find(/MyWindowsHost/eventlog[Security,,,,4625,,skip],10m,"like","Logon failed")

2. 导航到 用户设置 > 配置文件,切换到 介质 选项卡并添加您的电子邮件

3. 按照接收问题通知指南进行操作。

下次当 Zabbix 检测到问题时,您应该会通过电子邮件收到告警。

故障排查

如果您在收集或查看 Windows 事件日志时遇到问题,请使用以下提示来识别并解决常见问题:

1. 在 Zabbix 服务器(Linux)上,使用以下命令列出您的 iptables 规则:

sudo iptables -L -n

并确认存在一条针对 TCP 端口 10051 的 ACCEPT 规则。

2. 请确保您的 eventlog[...] 键使用了完全正确的日志名称(区分大小写)、事件 ID、模式(例如 skip)以及其他参数,并与 Windows-specific item keys 中显示的内容完全一致。

另请参阅: