我需要使用 WMI 从我的服务器获取一些信息。但我的服务器位于 DMZ 中,因此我需要在防火墙中打开一个端口。我搜索了一下,发现 WMI 使用随机端口。如何修复这个问题?
答案1
以下步骤是自动设置,以允许 WMI 拥有固定端口。此过程使用 winmgmt 命令行工具。为 WMI 设置固定端口
- 在命令提示符下,键入 winmgmt -standalonehost
- 通过输入命令 net stop "Windows Management Instrumentation" 来停止 WMI 服务
- 通过键入 net start "Windows Management Instrumentation" 在新的服务主机中重新启动 WMI 服务
- 通过键入 netsh Firewall add portopening TCP 24158 WMIFixedPor 为 WMI 服务建立新的端口号
答案2
在回应机器... 第一步:设置 DCOM 配置以使用静态端口.... 基本上,从命令提示符运行“dcomcnfg”。导航到树状图到我的电脑 > DCOM 配置 > Windows 管理和仪表,选择该文件夹的属性。转到“端点”选项卡 选择面向连接的 TCP/IP 的属性按钮使用静态端点,设置端口。第二步:配置 WMI 以使用固定端口 http://msdn.microsoft.com/en-us/library/bb219447(v=VS.85).aspx在命令提示符下,输入 winmgmt -standalonehost 通过输入命令 net stop "Windows Management Instrumentation" 停止 WMI 服务 通过输入 net start "Windows Management Instrumentation" 在新的服务主机中重新启动 WMI 服务 通过输入 netsh Firewall add portopening TCP 24158 WMIFixedPort 为 WMI 服务建立一个新端口号 我自己仍在测试这个,所以不能 100% 确定它是否有效。
其他评论中有更多信息
答案3
为了能够通过 WMI 从远程主机收集信息,您需要执行以下操作:
1.启用远程 WMI 请求
1.1. 在目标服务器上,转到Administrative Tools
-> Computer Management
。
1.2. 展开'Services and Applications'
。
1.3. 右键点击特性在'WMI Control'
。
1.4. 选择安全标签。
1.5. 按安全按钮。
1.6. 添加监控用户(如果需要),然后一定要检查远程启用将请求 WMI 数据的用户/组的复选框。
2.允许 WMI 通过 Windows 防火墙
这只能在命令提示符下完成。如果目标计算机运行 Windows 防火墙,请在目标计算机上运行以下命令:
在 Windows Server 2003 计算机上
netsh firewall set service RemoteAdmin enable
在 Windows Server 2008 计算机上
netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes