[英]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.