(WMI),中文名字叫Windows管理规范。从Windows 2000开始,WMI(Windows 管理规范)就内置于操作系统中,并且成为了Windows系统管理的重要组成部分。WMI不仅可以获取想要的计算机数据,而且还可以用于远程控制。最近很多勒索病毒都是由wmi服务入侵的。这时就需要wmi服务,那么,wmi服务有什么常见问题来?接下来,小编就来分享下wmi服务的常见问题及解决方法。
WMI是什么服务?
(WMI),中文名字叫Windows管理规范。从Windows 2000开始,WMI(Windows 管理规范)就内置于操作系统中,并且成为了Windows系统管理的重要组成部分。所以大家很容易就能见到它的,因为我们至少也应该是个Windows 2000的使用者了。下面我将详细介绍它的每个细节,让你从不认识它到喜欢上它。
WMI能做什么?
WMI不仅可以获取想要的计算机数据,而且还可以用于远程控制。远程控制计算机可是大家都喜欢的东西。很多远程监视控制类软件通常的做法是:在远程计算机上运行服务端后台程序,在本地计算机上运行一个客户器端控制程序,通过这二个程序的勾结来实现对计算机的远程控制。这种作法的缺点是十分明显的,当服务端程序关了,这种远程监控就无法实现了,因为没有内线了。而WMI实现的远程监视和控制完全不需要另外装什么服务端的东西,系统默认就将WMI服务给开了。具体说来,WMI的本领如下:
1、获取本地和远程计算机的硬件软件信息。
2、监视本地和远程计算机的软件和服务等运行状况。
3、控制本地和远程计算机的软件和服务运行。
4、高级应用。
一. 常见问题及解决方法
1. 当通过WMI添加服务器、Microsoft .NET、Exchange服务器时,提示“验证失败。请确认用户名和密码”。
解决方法: 请以格式输入用户名
注意: OpManger中对于本地WMI验证,不需要输入用户名和密码。
2. 当以WMI模式监控Windows服务器时,内存利用率数据显示错误。
解决方法:
在WMI中,我们使用Win32_OperatingSystem获取Windows2003服务器的内存数据。在系统内存超过4GB时,则不能报告准确的信息。这是Windows 2003 SP1的一个问题。请参阅 http://support.microsoft.com/kb/906868/ 了解更多信息,并安装补丁。
3. 如何重建WMI类?
解决方法:
MOF (受管理对象格式)文件是一个机制,通过它关于WMI类的信息进入WMI存储库。存储库中的类定义可能损坏,这种情况下, 重新编译MOF文件,用最初安装操作系统时的类定义将其复写和替换。
在命令提示符执行以下命令:
Windows 2003/XP
* c:windowssystem32wbemMofcomp.exe c:windowssystem32wbemcimwin32.mof
* c:windowssystem32wbemMofcomp.exe c:windowssystem32wbemcimwin32.mfl
Windows 2000
* c:winntsystem32wbemMofcomp.exe c:winntsystem32wbemcimwin32.mof
* c:winntsystem32wbemMofcomp.exe c:winntsystem32wbemcimwin32.mfl
如果提示未找到路径,请使用%windir% (Windows目录名)替换掉windows (如果系统是Windows 2003/XP)或 winnt(如果系统是windows 2000)。
参考以下链接,了解更多信息
http://www.microsoft.com/technet/scriptcenter/topics/help/wmi.mspx#ECIAC
4. 当通过WMI模式监控Windows机器时,哪些服务应该在远程Windows计算机运行?
以下服务应该在远程Windows机器运行:
1) Remote Procedure Call (RPC)远程过程调用 -- 端口: 135
2) Windows Management Instrumentation (WMI) Windows管理规范-- 端口: 445
如果启用防火墙,应在防火墙开放这些端口。
5. 当试图通过WMI模式添加服务器监视器时,提示“验证失败或访问被拒绝”。
1) 域名和IP地址问题
将 域名用户名作为用户名
如: ADVENTNETadmin
若用户名不是域名帐号,尝试使用主机名用户名。
如:adminadmin
如果不知道域名或用户名,请通过控制面板 --> 用户帐户确认。您可以查看系统中的用户以及用户所属的域和工作组。
- 使用 wbemtest 找到当连接远程系统时出现的错误信息
点击开始 --> 运行 --> wbemtest
打开Windows管理规范测试器。点击连接按钮。在第一个文本框(rootdefault) ,输入输入用户名和密码。点击连接按钮,如果提示错误,请在主机名处输入IP地址。
如果正常,您只能通过IP地址访问机器。可能是因为文件中的hosts文件中有错误项。移除文件中的错误项,尝试用主机名访问。
2)DCOM设置
在远程计算机:
检查在远程计算机是否启用DCOM
点击开始 --> 运行 --> 输入dcomcnfg,打开组件服务控制台。
点击组件服务 --> 选择计算机 -->点击我的电脑(右击选择属性)。
点击默认属性标签,检查属性是否配置如下:
a) 选择"在此计算机上启用分布式COM"
b)默认身份验证级别为连接
c)默认模拟级别是模拟或标识
如果以上属性有改动,请按以上进行配置,再检查在Applications Manager是否可以添加。
然后要确认在注册表也作更改。
开始 --> 运行 --> 输入regedit,打开注册表编辑器控制台。
点击我的电脑 -> HKey_Local_Machine ->Software -> Microsoft -> OLE -> EnableDCOM, 设置为 'Y'。
3)检查 COM安全
点击开始--> 运行 --> 输入dcomcnfg,打开组件服务控制台。
点击组件服务 --> 选择计算机 -->点击我的电脑(右击选择属性)。
点击COM安全标签,检查属性是否配置如下:
点击访问权限中的编辑默认值。然后检查SELF和SYSTEM是否启用远程访问。
再点击我的电脑,点击DCOM配置,选择Windows Management Instrumentation。然后右击选择属性,检查身份验证级别是否设置为默认。
4) WMI 安全
在远程计算机:
检查指定用户是否有足够的权限从远程计算机访问WMI。
点击开始--> 运行 --> 输入,wmimgmt.msc打开Windows管理体系结构控制台。
右键点击WMI控制,选择属性 -> 安全 -> 安全设置。
然后检查用户所属的组是否具备全部权限,例如远程启用。如果不具备,选择检查框允许,并保存更改。
然后尝试在Applications Manager添加服务器。
如果您不想更改组的权限,请创建一个具备Guest 角色的用户。
进入控制面板 --> 用户帐户
添加一个具备Guest 角色的用户。然后进入Windows 管理控制台,点击添加按钮。在Windows 2000中,将列出最新添加的用户。您可以选择,添加并授予全部权限。
在Windows XP中,在"Enter the Object names to select" 文本框中输入用户名machinenameusername。点击确定,将添加用户并授予权限,保存。
再尝试添加服务器。
5)验证用户权利
在远程计算机
点击开始 --> 运行 --> 输入 gpedit.msc. 打开组策略控制台。
点击本地计算机策略 -- > 计算机配置 -- > Windows设置 -- > 安全设置 -- > 本地策略 -- > 用户权利指派 -- > 身份验证后模拟客户端。
添加用户后,再尝试添加服务器。以WMI模式添加Windows监视器,要求用户具有管理员权限。