Observium配置WMIC

WMI 轮询器

要从装有 Windows 的设备获取高级统计信息,您需要安装 WMI 控制台应用程序。

可选功能

WMI 不需要轮询 Windows 设备,但有助于收集有关 Exchange 和 MSSQL 的一些附加数据。

安装 WMIC

在使用 WMI 轮询器之前,您需要将 WMIC 安装到您的 Observium 主机上。

WMI 源代码相当陈旧,许多包会导致 Python 依赖项出现问题,因此使用预编译的静态二进制文件是最简单的。下载以下文件,解压并将 wmic 二进制文件放入 /usr/bin

wget https://www.observium.org/files/wmic_1.3.16_static_64bit.tar.gz
tar zxvf wmic_1.3.16_static_64bit.tar.gz
mv wmic winexe /usr/bin

您可以通过 rtunning 测试它是否可以在您的系统上执行wmic --version

root@dev:~# ./wmic --version
Version 4.0.0tp4-SVN-build-UNKNOWN
root@dev:~#

配置 WMI 安全性以允许用户轮询 WMI

有几种方法可以解决这个问题:

  1. 创建一个域用户并将他们放在您希望使用 WMI 轮询的所有服务器的管理员组中
  2. 使用域管理员帐户
  3. 创建具有 WMI 读取权限的专用域用户

选择 (1) 或 (2) 是测试 WMI 的首选,因为它是最快的。默认情况下,WMI 安全性允许系统的任何管理员进行控制。如果您是域管理员,您可以测试以确保 WMIC 在安装后立即正常工作(说明如下)。

另一方面,选择 (3) 是更安全但更复杂的选项。建议您采取此路线以降低安全风险。

设置 WMI 用户访问权限

  1. 选择开始 > 运行
  2. 在“运行”对话框的“打开”字段中键入wmimgmt.msc 。
  3. 单击确定以显示 Windows 管理基础结构 (WMI) 控制面板。
  4. 在 WMI 控制面板的左窗格中,突出显示WMI 控制(本地)条目,单击鼠标右键,然后选择“属性”菜单选项。这将显示 WMI 控件(本地)属性对话框。
  5. 在 WMI 控件(本地)属性对话框中选择安全选项卡。
  6. 在 Security 选项卡内的命名空间树中,展开Root文件夹。此操作列出可用的 WMI 名称空间。
  7. 单击CIMV2命名空间以突出显示它。
  8. 单击安全以显示 ROOT\CIMV2 的安全对话框。
  9. 单击“ROOT\CIMV2 的安全性”对话框中的“添加”以显示“选择用户或组”对话框。
  10. 添加将用作您的代理数据收集用户帐户的域用户帐户。这应该是域帐户(不是本地计算机帐户),但它不需要是具有管理访问权限的帐户。
  11. 单击“确定”关闭“选择用户或组”对话框并返回“ROOT\CIMV2 的安全性”对话框。您选择的用户帐户现在应该列在对话框顶部的名称列表中。
  12. 选择新添加的用户(如果尚未选择)并启用以下权限:
    • 启用帐户
    • 远程启用。

      如果尚未检查该权限,请单击“允许”框启用该权限。应该已经选择了启用帐户权限,但需要选择远程启用权限。13. 单击“确定”关闭“ROOT\CIMV2 的安全性”对话框。

现在应该为代理数据收集用户帐户正确设置权限。

在您的一台服务器上尝试查询

wmic --domain=DOMAIN --user=USER --password=PASSWORD //SERVER.DOMAIN.COM "SELECT * FROM Win32_ComputerSystem"

仅适用于命令行:请注意,如果您的密码包含在 Ubuntu 命令行中使用的任何字符,则必须对其进行转义(即,如果您的密码是Bob!1000您需要输入的Bob\!1000)。

输出示例

当 WMIC 正确安装并且 WMI 用户具有正确的权限时,您应该会看到如下所示的有效输出:

$ /usr/bin/wmic  --user='user' --password='password' --workgroup='OBSERVIUM' --delimiter=## --namespace='root\CIMV2' //win.server "SELECT Name FROM Win32_ComputerSystem"
CLASS: Win32_ComputerSystem
Name
WIN

拒绝访问

如果 WMI 用户无权读取 WMI 监控参数,您将看到如下错误:

$ /usr/bin/wmic  --user='user' --password='password' --workgroup='OBSERVIUM' --delimiter=## --namespace='root\CIMV2' //win.server "SELECT Name FROM Win32_ComputerSystem"
[librpc/rpc/dcerpc_util.c:1290:dcerpc_pipe_auth_recv()] Failed to bind to uuid 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57 - NT_STATUS_NET_WRITE_FAULT
[librpc/rpc/dcerpc_connect.c:790:dcerpc_pipe_connect_b_recv()] failed NT status (c0000022) in dcerpc_pipe_connect_b_recv
[wmi/wmic.c:196:main()] ERROR: Login to remote object.
NTSTATUS: NT_STATUS_ACCESS_DENIED - Access denied

检查用户名、密码、域参数和 WMI 用户权限!

配置观察

全局配置

nano /opt/observium/config.php
// Enable default WMI Paramaters
$config['wmi']['domain'] = "domainname"; // NetBIOS Name Shorthand Domain/Workgroup (ie. notdomain.local.com)
$config['wmi']['user'] = "username";
$config['wmi']['pass'] = "passw0rd";

$config['poller_modules']['wmi'] = 1;

设备配置

如果您需要选择特定的 WMI 模块进行轮询或为设备传递特定的用户/密码,您可以在设备编辑页面上更改它。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值