snmpd配置

最近在看snmp相关的知识,在centos上安装的snmpd进行测试。

执行如下三条指令

# 查看所有OID
snmpwalk -v 2c -c public localhost

# 查看系统基本信息
snmpwalk -v 2c -c public localhost .1.3.6.1.2.1.1.1.0

# 查看网络接口数目
snmpwalk -v 2c -c public localhost .1.3.6.1.2.1.2.1.0

当遍历所有OID信息时候,最后一行会出现“No more variables left in this MIB View”的信息。

而要获取网络接口数目时候,则返回”No Such Object available on this agent at this OID

这其实是由于默认的snmpd配置,只允许用户查看基本系统信息(.1.3.6.1.2.1.1 与 .1.3.6.1.2.1.25.1.1的子节点)。其他OID信息无权查看。

# 配置可见节点组systemview,只允许查看.1.3.6.1.2.1.1 与 .1.3.6.1.2.1.25.1.1的子节点
#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1

####
# 配置notConfigGroup用户组的可见节点组为systemview
#       group          context sec.model sec.level prefix read   write  notif
access  notConfigGroup ""      any       noauth    exact  systemview none none

所以要想给默认用户开通查看所有节点的权限,应该修改snmpd.conf文件。添加allview可见节点组

#       name           incl/excl     subtree         mask(optional)
# 配置allview可见组,允许查看.1下的所有节点
view    allview       included   .1
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1

#       group          context sec.model sec.level prefix read   write  notif
access  notConfigGroup ""      any       noauth    exact  allview none none
# 注意,一个用户组只有第一条access节点组生效。
# 所以如果这里还保留systemview并放在allview上面的话,那第二条access就无效了。

然后重启snmpd之后,就能查看到所有OID的信息了。

 

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top