我正在寻找一种从Linux机器(CentOS 6)远程访问Pythonscript的WMI(Windows Management Instrumantation)的方法
当然有python-wmi包,但它使用Linux上没有的Windows API。 我发现wmi-client-wrapper应该做那样的事情。但是没有文档,甚至这个例子也不适用于我。
我想要这样做的原因是因为我希望远程获取系统上的所有Useraccounts并将它们存储在数据库中。 也许你有任何其他的tipps如何做到这一点。
谢谢
答案 0 :(得分:4)
您可以使用在Python中实现WMI的Impacket(https://github.com/CoreSecurity/impacket)。
有两个可能有用的例子:
1)https://github.com/CoreSecurity/impacket/blob/master/examples/wmiquery.py:它允许发出WQL查询并获取对象的描述
2)https://github.com/CoreSecurity/impacket/blob/master/examples/wmiexec.py:与psexec类似的方法,但通过WMI执行命令
答案 1 :(得分:2)
wmi-client-wrapper软件包,如其名称所述,是wmic客户端的包装器。所以你首先需要安装wmic才能工作。要安装wmic,只需从你的linux机器运行:
sudo aptitude install wmi-client
安装了WMIC后,您的wmi-client-wrapper应该如示例中所述那样工作:
import wmi_client_wrapper as wmi
wmic = wmi.WmiClientWrapper(
username="Administrator",
password="password",
host="192.168.1.149",
)
output = wmic.query("SELECT * FROM Win32_Processor")
您可以在此链接中找到有关wmic的更多信息http://felimwhiteley.wordpress.com/2008/08/15/wmi-calls-from-linux/