2011/06/16

Debian squeeze の snmpd

/etc/default/snmpd で、SNMPDOPTS の定義の最後に 127.0.0.1 という記述があり、このせいで127.0.0.1しかlistenしてなく、他のホストからsnmpd へ通らないというのが、lenny まで。

squeeze では、/etc/snmp/snmpd.conf がガラリとかわっていて、どこでlistenするかもこのファイルで設定する。

まずファイルの最初にある

#  Listen for connections from the local system only
agentAddress  udp:127.0.0.1:161
#  Listen for connections on all interfaces (both IPv4 *and* IPv6)
#agentAddress udp:161,udp6:[::1]:161

こうなっているのを最後の文を生かしつつ

agentAddress udp:161

とする。IPv6もオフにしているので後半はカット。これで、snmpd をrestart前後で、

# netstat -lnp | grep snmpd 

とかするとどうなったか確認できる。

もう一つ、今までのsnmpd.confの面倒な設定は、

#rocommunity public  localhost

このコメントを外して(もちろん外さなくてもいい)、リモートから見るホスト(cactiとか)用の設定を追加するだけ。

rocommunity public  localhost
rocommunity public  192.168.x.x

変更したらsnmpdを再起動。あとは、

# snmpconf -g basic_setup

でも設定できるけど、sysLocation や sysContact など適当に。

更にこの状態でsnmpdを起動すると、/var/log/syslog に、

Jun 16 10:57:32 leda snmpd[11474]: trigger OID: dskErrorFlag
Jun 16 10:57:32 leda snmpd[11474]: /etc/snmp/snmpd.conf: line 145: Error: unknown monitor OID
Jun 16 10:57:32 leda snmpd[11474]: /etc/snmp/snmpd.conf: line 145: Error: unknown payload OID
Jun 16 10:57:32 leda snmpd[11474]: /etc/snmp/snmpd.conf: line 145: Error: Unknown payload OID

こんなエラーが大量に出るのは、 /etc/snmp/snmpd.conf 中の

defaultMonitors yes
を no にすると止まるようだ。ここは、よくわかってません。

と、こういうエントリをまめに書いてると結構書くことはあるんだけど。

0 件のコメント: