[英]Python Net-SNMP, Linux: gather usernames by IP
我想定义当前使用静态IP地址登录到远程主机的用户的用户名(或uid)。 当然,有很多方法可以解决该问题(例如-使用PKI和sshd),但是我更喜欢SNMP服务。
我已经看到了一些有关此问题的示例,如下所示( 从此处开始 ,用于ArubaOS):
snmpbulkwalk -v 2c -c secure 10.1.30.9 .1.3.6.1.4.1.14823.2.2.1.4.1.2.1.3
我正在尝试在Python上实现这种方法并出现错误:
In [33]: import netsnmp
In [34]: oid = netsnmp.Varbind("nUserName")
In [35]: result = netsnmp.snmpget(oid, Version = 2, DestHost="localhost", Community="public")
error: get: unknown object ID (nUserName)
我究竟做错了什么? 使用RHEL 6.4,Python 2.6。
谢谢。
即SNMP变量是企业专用(.1.3.6.1 4 0.1),并专门用于一个阿鲁巴SNMP代理(因此OID 14823)。
要针对您的特定情况执行此操作,您需要Linux SNMP代理返回相同类型的数据,并且应该检查相应的MIB。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.