调用wmic与本地用户从Linux框到Windows(NT_STATUS_ACCESS_DENIED)

这个问题已经以各种forms被提出,但没有任何解决scheme为我工作。

我试图从一个Linux机箱运行icinga和一个插件使用WMI查询。 这是失败的,所以我决定运行简单的wmic查询来find问题。 我使用以下查询:

 wmic -U locallogin%'localpass' //myserver.domain.net "select * from Win32_Bios" 

locallogin是本地pipe理员, localpass是密码。 不幸的是我得到以下错误:

[wmi / wmic.c:196:main()]错误:login到远程对象。
NTSTATUS:NT_STATUS_ACCESS_DENIED – 访问被拒绝

但是,当我使用域login时,我得到了一个成功的响应。 所以我的理论是,这与networking设置无关,但是是一个用户凭证/权限问题,但我不知道在哪里看。 我应该注意到,我已经在我的域上的另一台机器上成功地使用了本地pipe理员帐户,但是我找不到本地用户与其他机器上的本地用户之间的任何差异。

  • 我已经确认了防火墙设置等,我不认为是一个问题,因为我可以使用域名login。
  • 我已经尝试通过wmimgmt.msc明确地将locallogin添加到WMI安全性中(即使本地pipe理员已经可以执行此操作)。
  • 我已经进入DCOMCNFG – > Component Services – > Computers – > My Computer – > Properties – > COM安全下,并将用户添加到这两个部分。
  • 我已经尝试过,但它没有工作,因为我可以运行我的查询与域名login我不认为这是问题。
  • 我已经运行这两个(以防万一)从cmd提升的权限: netsh advfirewall firewall set rule group="remote desktop" new enable=Yeswinrm quickconfig

有什么我忘了吗? 我已经删除并重新添加本地用户,三重检查错别字等,但我一直坚持了2天。 任何帮助表示赞赏。

更多信息

我也尝试从同一个域内的另一个Windows盒子上的Powershell运行以下命令:

 Get-WmiObject -ComputerName myserver.domain.net -Class Win32_Process -Credential locallogin 

locallogin是远程服务器上存在的用户。 这失败了

Get-WmiObject:访问被拒绝。 (从HRESULTexception:0x80070005(E_ACCESSDENIED))

并在远程服务器上的事件日志中,我看到:

失败信息:失败原因:未知的用户名或错误的密码。 状态:0xC000006D子状态:0xC0000064

但是,我110%确定密码是好的,用户存在。

当然,我发布奖金后,立即开始工作。 我没有重新启动或改变任何东西。 我不知道为什么现在工作 。