pysnmp 自定义MIB编写SNMP代理 (python 开发 snmp)

pysnmp 自定义MIB编写SNMP代理 (python 开发 snmp),第1张

PySNMP是一种跨平台的纯 Python SNMP 引擎实现。它具有功能齐全的SNMP引擎,能够以代理/管理器/代理角色运行,通过IPv4 / IPv6和其他网络传输来讨论SNMP v1 / v2c / v3协议版本。

尽管它的名字,SNMP并不是一个简单的协议。例如,它的第三个版本引入了复杂的开放式安全框架,多语言功能,远程配置和其他功能。PySNMP实施紧密遵循复杂的系统细节和功能,为用户带来最大的功能和灵活性。

———— pysnmp官网

这将导出一个名为的新文件 MY-MIB.py 。如果要查询我们的代理,您需要将MIB的副本添加到 net-snmp搜索MIB的位置我添加了MY-MIB文件 /usr/lib/python2.7/site-packages/pysnmp/smi/mibs

启动

测试

使用snmp远程调用获取设备信息注意点(使用前提):

1. 被管理设备上snmp服务正常,且可以被远程调用(修改/etc/snmp/snmpd.conf配置文件,大概在15行,将下面一行注释掉:agentAddress udp:127.0.0.1:161)>>>不要配置这个

2. SNMP默认只能查看两个设备节点,要想查看所有节点还需要进行一些配置。打开/etc/snmp/snmpd.conf,配置mibs,使其所有设备信息都可以被获取到

3. 保证被管理设备将161端口和162端口设置通过防火墙设置

经过对比,linux安装netsnmp,python使用Easysnmp包,

Net-snmp版本:rpm -qa|grep snmp 5.7.2

配置:

装好之后修改/etc/snmp/snmpd.conf对其进行配置:

A、修改默认的“community”   string com2sec     notConfigUser     default     public 将public修改为你才知道的字符串另default字符串如果想指定特定的服务器采集数据的话,将此字段替换成允许采集服务器的IP地址。(默认的话跳过此步)

B、把下面的#号去掉 #view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc

C、把下面的语句access notConfigGroup” ” any noauth exact systemview none none 改成: access notConfigGroup ” ” any noauth exact mib2 none none

D、service snmpd restart

E、48服务器snmp可以开机自启:设置snmp的开机启动项,运行vi /etc/rc.local,将以下写入,/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11900273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存