Windows启用SNMP服务需先安装再配置安全参数,方法包括:一、通过设置启用WMI SNMP供应商;二、控制面板中启用SNMP功能;三、PowerShell脚本一键部署;四、手动配置团体名与IP白名单;五、验证端口与响应。
如果您需要在Windows系统中启用SNMP服务以支持网络设备监控与管理,则可能是由于默认状态下SNMP未安装或未配置安全参数,导致网络管理系统(如Zabbix、PRTG、SolarWinds)无法采集主机指标。以下是多种可操作的启用与配置方法:
一、通过Windows设置启用SNMP(适用于Windows 10/11)
该方法利用系统内置的“可选功能”机制安装SNMP协议栈,无需第三方工具,兼容性高且操作直观。
1、按下
Win + X组合键,选择【设置】。
2、进入【应用】→【可选功能】→点击【添加可选功能】旁的【查看功能】。
3、在搜索框中输入
WMI SNMP 供应商,勾选该项。
4、点击【下一步】,确认安装内容后点击【安装】。
5、安装完成后,打开【服务】(services.msc),找到
SNMP Service,右键选择【启动】。
二、通过控制面板启用SNMP(适用于Windows Server 2003–2019及旧版桌面系统)
此方式调用传统Windows组件安装路径,适用于组策略受限环境或需精确控制SNMP代理行为的场景。
1、打开【控制面板】→【程序】→【启用或关闭Windows功能】。
2、展开【管理工具】节点,勾选
简单网络管理协议 (SNMP)。
3、点击【确定】,系统自动部署SNMP服务组件。
4、安装完毕后,运行
services.msc,定位SNMP Service,右键【属性】→【启动类型】设为【自动】→点击【启动】。
三、使用PowerShell脚本一键启用并预配置SNMP(适用于批量部署)
该方法通过自动化脚本完成SNMP服务启用、团体名注册、访问控制列表(ACL)设定及服务启动,适合运维人员在多台服务器上快速实施。
1、下载官方验证脚本
SNMPEnabler.ps1至本地目录。
2、以管理员身份启动
Windows PowerShell。
ClawUsage Windows Hardlock通过聊天(Telegram / 飞书)执行本地 `clawusage` 监控命令。当用户输入 `/clawusage ...`,或提出“查看 Codex 用量”、“开启/关闭自动…”等请求时触发使用。
下载
3、执行命令:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser,解除脚本执行限制。
4、运行脚本:
.\SNMPEnabler.ps1 -CommunityName "public" -AllowedHosts "192.168.1.100"。
5、脚本将自动启用SNMP服务、添加只读团体名、配置单IP访问白名单,并重启服务。
四、手动配置SNMP安全参数与访问控制
仅启用服务不足以保障监控可用性;必须配置团体名(Community String)与允许主机列表,否则SNMP请求将被拒绝。
1、运行
services.msc,右键【SNMP Service】→【属性】。
2、切换至【安全】选项卡,在【接受的社区名称】中点击【添加】,填入public(或其他自定义名称),权限选择【只读】或【读写】。
3、在【接受来自这些主机的SNMP数据包】区域点击【添加】,输入网管服务器IP地址,例如
10.0.5.20
。
4、切换至【代理】选项卡,勾选【启用代理】(如需转发子代理MIB信息)。
5、点击【确定】保存,右键服务选择【重新启动】使配置生效。
五、验证SNMP服务响应能力
配置完成后需验证本地SNMP服务是否响应标准OID查询,排除防火墙或监听绑定问题。
1、确保Windows防火墙已放行UDP端口
161(SNMP查询)和162(Trap接收)。
2、在本地或网管主机执行命令:
snmpwalk -v 2c -c public 127.0.0.1 system。
3、若返回类似
SNMPv2-MIB::sysDescr.0 = STRING: "Hardware: x86 Family 6 Model 158 Stepping 10..."的输出,表明SNMP服务已正常响应。
4、若提示超时或no response,检查SNMP服务状态、UDP 161端口监听情况(netstat -anu | findstr :161)及Windows Defender防火墙规则。
