SNMPの知識は有っても実際に使ったことがなかったので、MIBを取得するところまで実際に確認した。
環境
MacBook
OS: OS X El Capitan
snmpd: Version: 5.6.2.1
snmpwalk: Version: 5.6.2.1
snmpdを起動する
confを書き換える前にバックアップを作成。
$ sudo cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.original
$ sudo vi /etc/snmp/snmpd.conf
snmpd.confを書き換える。
#Allow read-access with the following SNMP Community String:
rocommunity public
# all other settings are optional but recommended.
# Location of the device
syslocation data centre A
# Human Contact for the device
syscontact SysAdmin
# System Name of the device
sysName SystemName
# the system OID for this device. This is optional but recommended,
# to identify this as a MAC OS system.
sysobjectid 1.3.6.1.4.1.8072.3.2.16
snmpdデーモンを起動。
$ sudo launchctl load -w /System/Library/LaunchDaemons/org.net-snmp.snmpd.plist
プロセスが起動している。
$ ps -ef | grep snmp
0 4999 1 0 9:25PM ?? 0:08.93 /usr/libexec/snmpd -f
501 5013 1356 0 9:36PM ttys002 0:00.00 grep snmp
SNMPの応答を確認する
$ snmpwalk -c public -v 1 localhost
SNMPv2-MIB::sysDescr.0 = STRING: Darwin butada-mac.local 15.4.0 Darwin Kernel Version 15.4.0: Fri Feb 26 22:08:05 PST 2016; root:xnu-3248.40.184~3/RELEASE_X86_64 x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.16
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (525) 0:00:05.25
SNMPv2-MIB::sysContact.0 = STRING: SysAdmin
SNMPv2-MIB::sysName.0 = STRING: SystemName
SNMPv2-MIB::sysLocation.0 = STRING: data centre A
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.0
<省略>
snmpdを停止させる
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.net-snmp.snmpd.plist
今後
サーバ等の管理のためにはSNMPは便利だが、OSデフォルトの状態では無効になっているので、管理対象を効率良く有効化する方法も併せて考えていきたい。
例えば以下の記事にあるようなWindowsのSNMP有効化は、実際にはスクリプトでしかもリモートからやれる方法を考えておかないと、数百台のサーバの管理にはなりませんので。
http://qiita.com/tukiyo3/items/7c53960b172d5a6cd31a
参考