帮助手册

在不同 Windows 服务器上配置 SNMP 代理

借助 SNMP 的支持,对您的 Windows 服务器进行无代理监控。只需在服务器上安装并配置 SNMP 代理,安装本地轮询器,然后添加服务器进行监控即可。

Windows 10 1803 及更高版本

在 Windows 10 1803 及更高版本上安装 SNMP 代理

在 Windows 10 的控制面板 Windows 功能列表中未列出 SNMP 服务。请使用以下三种方式之一直接从 Microsoft 服务器安装 SNMP 服务:

  • 可选功能图形界面
  • PowerShell
  • DISM

使用可选功能图形界面安装

  1. 转到 设置应用。在搜索栏中搜索管理可选功能
  2. 点击添加功能。在添加可选功能弹出窗口中,从列表中选择以下内容:简单网络管理协议 (SNMP) 和 WMI SNMP 提供程序(以获取所有 SNMP 服务配置选项卡)。
  3. 点击 添加

使用 PowerShell 安装

  1. 导航至 开始Windows PowerShell 文件夹Windows PowerShell
  2. 运行以下命令:
    Add-WindowsCapability -Online -Name "SNMP.Client~~~~0.0.1.0"

使用 DISM 安装

  1. 您还可以使用部署映像服务和管理 (DISM) 工具。转到 开始命令提示符
  2. 右键点击顶部结果,选择 以管理员身份运行
  3. 执行以下命令并按 Enter
    DISM /online /add-capability /capabilityname:SNMP.Client~~~~0.0.1.0

在 Windows 10 1803 及更高版本上配置 SNMP 代理

  1. 导航至 开始设置控制面板
  2. 在 管理工具下,点击 服务
  3. 在 详细信息窗格中,右键点击 SNMP 服务并选择 属性。如果已停止,点击 启动按钮启动服务,并将 启动类型更改为 自动
  4. 在 安全 选项卡下的 接受的社区名称中,点击 添加
  5. 在 社区权限下,为此主机选择处理所选社区 SNMP 请求的权限级别。
  6. 在 社区名称中,输入区分大小写的社区名称,然后点击 添加
  7. 选择是否接受来自主机的 SNMP 数据包:
    • 要接受来自网络中任何主机的 SNMP 请求(不考虑身份),点击 接受来自任何主机的 SNMP 数据包
    • 要限制接受 SNMP 数据包,点击 接受来自以下主机的 SNMP 数据包,然后点击 添加。接着输入适当的 主机名IP 或 IPX 地址,再点击 添加
  8. 点击 应用

在 Windows Vista、Windows 7、Windows Server 2008、Windows Server 2008 R2、Windows 8、Windows 8.1、Windows 10、Windows Server 2012、Windows Server 2012 R2 或 Windows Server 2016 及更高版本上配置 SNMP 代理

  1. 转到 控制面板。点击 程序程序和功能,然后点击 启用或关闭 Windows 功能。如果出现用户账户控制对话框,点击 继续 或 (因版本而异)。
  2. 在 启用或关闭 Windows 功能中,勾选 简单网络管理协议 (SNMP) 或 SNMP 功能(同样因版本而异)旁边的复选框,然后点击 确定
  3. 然后,按照上述 在 Windows 10 1803 及更高版本上配置 SNMP 代理中给出的步骤操作。

在 Windows NT 系统上配置 SNMP 代理

  1. 导航至 开始设置控制面板
  2. 在 管理工具下,点击 服务
  3. 在 详细信息窗格中,右键点击 SNMP 服务,然后选择 属性
  4. 在 接受的社区名称下,点击 添加
  5. 在 社区名称框中,输入用于验证 SNMP 请求的社区名称。
  6. 点击 添加,将社区名称移至已接受社区名称列表。
  7. 重复步骤 6 和 7 以添加更多社区名称。
  8. 选择是接受来自任何主机的 SNMP 数据包,还是仅接受指定主机的 SNMP 数据包:
    • 如果希望接受来自任何主机(无 IP 限制)的 SNMP 数据包,点击 接受来自任何主机的 SNMP 数据包
    • 如果希望仅接受特定主机的 SNMP 数据包,点击 仅接受来自以下主机的 SNMP 数据包。要输入所需主机,点击 添加;在 IP 主机 IPX 地址框中输入主机的 名称或 地址,然后点击 添加
  9. 重复步骤 9 以添加更多主机。
  10. 在 代理 选项卡中,指定有关用户、位置和服务的备注信息。
  11. 点击 确定以应用更改。

在 Windows NT 上运行的 SNMP 代理默认不响应主机资源数据。若要支持此功能,您可能需要 Windows NT Service Pack 6 或更高版本。在执行以下步骤之前,请检查您的 Service Pack 详情。
  
注意: Windows NT 4.0 Server 不附带主机资源 MIB。

如果您运行的是 Windows NT Service Pack 6a 并使用 Windows 2000 Server,请按以下步骤操作:

  1. 将 Windows 2000 Server 上的 %SystemRoot%\System32\hostmib.dll 文件复制到 Windows NT 4.0 Server 上的 %SystemRoot%\System32 文件夹。
  2. 运行 regedit 或 regedt32,并添加以下键和值:
    • 键: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HostMIB\CurrentVersion
    • 值名称: Pathname
    • 类型: REG_SZ
    • 数据: C:\WinNT\system32\hostmib.dll

    • 键: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents
    • 值名称: 3
    • 类型: REG_SZ
    • 数据: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HostMIB\CurrentVersion
  3. 若要使用 Microsoft REGSVR 工具注册 DLL,请按以下步骤操作:
    • 将文件复制到 C:\Windows\SysWOW64\(32 位)或 C:\Windows\System32\(64 位)
    • 要完成此步骤,您应以管理员身份运行 命令提示符
    • 将以下命令粘贴到打开的命令行窗口中,然后按 Enter
      %windir%\System32\regsvr32.exe hostmib.dll (32 位)
      %windir%\SysWoW64\regsvr32.exe hostmib.dll(64 位)
  4. 重启您的 Windows NT 计算机。

在 Windows XP、Windows 2000 和 Windows 2003 系统上配置 SNMP 代理

  1. 导航至 开始设置控制面板
  2. 在 管理工具下,点击 服务
  3. 在 详细信息窗格中,右键点击 SNMP 服务,然后选择 属性
  4. 在 接受的社区名称下,点击 添加
  5. 在 社区权限下,为此主机选择处理所选社区 SNMP 请求的权限级别。
  6. 在 社区名称中,输入区分大小写的社区名称,然后点击 添加
  7. 选择是否接受来自主机的 SNMP 数据包:
    • 要接受来自网络中任何主机的 SNMP 请求(不考虑身份),点击 接受来自任何主机的 SNMP 数据包
    • 要限制接受 SNMP 数据包,点击 接受来自以下主机的 SNMP 数据包,然后点击 添加。接着输入适当的主机名IP 或 IPX 地址,再点击 添加
  8. 点击 应用

在 Windows 上测试 SNMP

使用 MIB 浏览器测试 SNMP 可达性


基于 PowerShell 的 SNMP 配置

本节将介绍:

远程执行的先决条件

要创建远程会话并运行远程命令,本地和远程计算机必须满足以下要求。

  1. 系统要求
  2. 用户权限
  3. Windows 网络/防火墙权限
  4. 以管理员身份运行
1. 系统要求

以下是在远程计算机上执行脚本的系统要求。

  1. 要在 Windows PowerShell 3.0 上运行远程会话,本地和远程计算机必须具备:
    • Windows PowerShell 3.0 或更高版本。
    • Microsoft .NET Framework 4 或更高版本。
    • Windows Remote Management 3.0。
  2. 要在 Windows PowerShell 2.0 上运行远程会话,本地和远程计算机必须具备:
    • Windows PowerShell 2.0 或更高版本。
    • Microsoft .NET Framework 2.0 或更高版本。
    • Windows Remote Management 2.0。
2. 用户权限

默认情况下,当前用户需要是远程计算机管理员组的成员,或提供管理员凭据。

3. Windows 网络/防火墙权限

服务器端和客户端的远程连接不得被防火墙阻止。

4. 以管理员身份运行

启用和配置 SNMP 需要管理员权限。

使用 PowerShell 安装

    1. 导航至 开始 > Windows PowerShell 文件夹 > Windows PowerShell。
    2. 运行以下命令:Add-WindowsCapability -Online -Name "SNMP.Client~~~~0.0.1.0"

注意:

    1. 请确认已满足远程执行的先决条件
    2. 检查主机和客户端设备是否在同一网络域中。
    3. 在要执行此脚本的远程设备上启用 PSRemoting。可通过远程桌面连接执行此操作。

使用 PowerShell 在 Windows 设备上启用 SNMP 的步骤

  1. 下载 SNMPEnabler.ps1 脚本。
  2. 以管理员身份打开 Windows PowerShell 工具。
  3. 运行 SNMPEnabler.ps1 脚本并提供所需的输入参数
  4. 使用提供的输入执行脚本。它将自动在本地或远程设备上启用和配置 SNMP。

脚本执行的输入参数

以下输入参数可由脚本执行处理。

输入参数 用法 默认值 是否必填? 示例
h 需要启用 SNMP 服务的主机名。 - 必填(若未提供 -f) -h ben-3515
f 包含多个主机的文件路径。文件格式:(XXXXX.txt) s24x7-dev1 localhost 192.21.23.1 ben-3515.zohocorpin.com - 必填(若未提供 -h) -f D:\SNMP\hostlist.txt
username 用于远程访问的账户用户名。 - 远程计算机必填,本地主机可选。 -username workgroup\administrator
pass 用于远程访问的账户密码。 -

本地主机可选。远程:可作为参数提供。远程执行时将提示输入密码。

-pass password@987
onlyConfigure

用于在已启用 SNMP 的机器上配置 SNMP 设置。

可能的值为 “true” 或 “false”。如果为 “true”,脚本将仅执行配置。

false 可选 -onlyConfigure true
communityName 脚本执行后将添加的 SNMP 社区字符串。 public 可选 -communityName networkcommunity
snmpType

从社区字符串添加的权限。允许的整数值:“1” - NONE “2” - NOTIFY “4” - READONLY “8” - READWRITE “16” - READCREATE

4 可选 -snmpType 4
permittedHost 需要从远程计算机获取 SNMP 访问权限的主机。 执行脚本的默认本地主机名称。 可选 -permittedHost s24x7-dev7
debug

用于调试。可能的值为 “true” 或 “false”。

false 可选 -debug true

脚本命令与用法

1. 针对特定主机启用

使用默认或自定义选项启用和配置单个主机的选项。

命令

1.1 在本地计算机上使用默认选项启用和配置 SNMP:

执行:.\SNMPEnabler.pst1 -h localhost

1.2 在远程计算机上使用默认选项启用和配置 SNMP:

执行:.\SNMPEnabler.ps1 -h -username

1.3. 在本地计算机上使用自定义输入选项启用和配置 SNMP:

执行: .\SNMPEnabler.ps1 -h localhost -communityName -snmpType -permittedHost

1.4. 在远程计算机上使用自定义输入选项启用和配置 SNMP:

执行:.\SNMPEnabler.ps1 -h -username -communityName -snmpType -permittedHost

1.5. 在已启用 SNMP 的本地计算机上配置社区和允许的主机:

执行.\SNMPEnabler.ps1 -h localhost -onlyConfigure true -communityName -snmpType -permittedHost

1.6. 在已启用 SNMP 的远程计算机上配置社区和允许的主机:

执行.\SNMPEnabler.ps1 -h -username -pass -onlyConfigure true -communityName -snmpType -permittedHost

2. 批量启用(使用包含主机的输入文件)

通过传递包含主机列表的文件路径,您可以为多台服务器启用和配置 SNMP。

命令

2.1 在多台本地或远程计算机上使用默认选项启用和配置 SNMP:

执行:.\SNMPEnabler.ps1 -f -username

2.2 在多台本地或远程计算机上使用自定义选项启用和配置 SNMP:

执行:.\SNMPEnabler.ps1 -f -username -communityName -snmpType -permittedHost

2.3 在已启用 SNMP 的本地或远程计算机上配置社区和允许的主机:

执行:.\SNMPEnabler.ps1 -f -username -onlyConfigure true -communityName -snmpType -permittedHost


相关文章

本文档对您有帮助吗?

您愿意帮助我们改进文档吗?请告诉我们哪些方面可以做得更好。


很抱歉本文档未能让您满意。我们希望了解可以从哪些方面改进您的体验。


感谢您抽出时间分享反馈。我们将利用您的反馈来改进在线帮助资源。

短链接已复制!