首页/安全/安全加固速查/SNMP 服务安全(v3 与团体字)
服务与端口收敛50 条

SNMP 服务安全(v3 与团体字)

SNMP v1/v2c 的团体字等价明文口令:监控需求存在时改用 v3(认证+加密),并限制查询来源。

安全加固速查安全更新于 2026-10-13

SNMP 团体字就是明文口令

SNMP v1/v2c 用“团体字”做认证,它随报文明文传输,而 public、private 这两个默认值几乎是扫描器的必试项。拿到团体字后用 snmpwalk 就能读出接口列表、路由表、进程与设备型号,是内网踩点的第一步。监控需求真实存在时,正确解法是升级到 SNMPv3 并启用认证与加密,同时把查询来源限制到监控服务器地址,而不是简单地把服务关掉或不设口令。

基本信息

加固项管理协议收敛
适用平台Linux(net-snmp)、Windows、交换机与路由器等网络设备
权限要求root 或设备管理员
达标判据不使用 v1/v2c 团体字,改用 v3 的 authPriv
端口161/udp(查询)、162/udp(Trap)

典型使用场景

  • 等保测评中“管理协议安全”条款整改
  • 监控系统从 v2c 迁移到 v3 过程中的并行验证
  • 网络设备与打印机等品类繁多的资产统一清默认团体字
  • 应急排查中确认内网拓扑能否被 snmpwalk 批量枚举
  • 新增设备上线时把 SNMP 配置纳入标准模板

核查团体字与版本

核查团体字与版本
grep -RiE 'rocommunity|rwcommunity|com2sec' /etc/snmp/ 2>/dev/null   # 找团体字配置
snmpwalk -v2c -c public 127.0.0.1 1.3.6.1.2.1.1.1.0 2>&1 | head -3   # 本机自测:能通说明 v2c 可用
systemctl status snmpd --no-pager 2>/dev/null | head -5
ss -lunp | grep ':161'                        # 确认 161 的监听地址与进程

v3 配置要点(net-snmp)

v3 配置要点(net-snmp)
# 1) 先建 v3 用户(认证 + 加密),口令长度需满足本地口令策略
#    net-snmp-create-v3-user -ro -a SHA -A '<认证口令>' -x AES -X '<加密口令>' monitor
# 2) /etc/snmp/snmpd.conf 只保留 v3 授权行,删掉 com2sec 与 rocommunity
#    rouser monitor authpriv
# 3) 绑定内网管理地址,避免监听在所有接口
#    agentaddress udp:10.0.0.5:161
systemctl restart snmpd && ss -lunp | grep ':161'   # 重启后复核监听地址

版本安全对比

版本认证方式加密结论
v1团体字(明文)无禁用
v2c团体字(明文)无仅限隔离网临时使用并登记
v3 noAuthNoPriv用户名无风险等同 v2c,不推荐
v3 authPriv用户名加认证有(AES/DES)推荐,配合来源限制
迁移顺序很关键:先让监控系统按 v3 并行采集一段时间,确认数据完整后再关闭 v2c,否则会出现采集中断而告警并不明显的空窗。老设备的监控模板若只支持 v2c,需要在监控侧改造完成后再收敛设备配置。
可写团体字(rwcommunity)风险更高:它能修改设备配置,必须彻底清理并单独列出。另外仅靠防火墙限制来源不如在监听地址上加一层,agentaddress 或设备的管理地址配置把 161 限制在管理网段,更贴近数据源也更可靠。

易错点

  • 改 v3 后老监控模板不兼容,采集中断却无人发现,应先并行采集再停用 v2c
  • 网络设备只清了一半:服务器清完、交换机与打印机仍用 public,内网枚举依旧可行
  • 只改团体字不限制来源,换了个名字的明文口令仍在网络上传输
  • 忽略 rwcommunity 这类可写团体字,攻击者可借此改设备配置,处置清单必须单列

数据来源与参考

  • net-snmp 官方文档
  • CIS Benchmark:SNMP 条目
  • 等保 2.0:管理协议安全

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌