Contents
Overview
CentOS 5 上で Net-SNMP を設定する手順を解説します。
インストール
net-snmp-utils
をインストールします。
[root@centos-5 ~]# yum -y install net-snmp-utils
/etc/snmp/snmpd.conf
/etc/snmp/snmpd.conf
をバックアップし、エディターで開きます。
[root@centos-5 ~]# cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig
[root@centos-5 ~]# vim /etc/snmp/snmpd.conf
/etc/snmp/snmpd.conf
を編集します。
com2sec mysecurity 127.0.0.1 public
com2sec mysecurity 10.0.0.161 public
group mygroup v2c mysecurity
view all included .1
access mygroup "" any noauth exact all none none
disk / 10%
disk /var 10%
disk /home 10%
trap2sink 10.0.0.162 public
com2sec
com2sec
コマンドは、特定のセキュリティ名と IP アドレスをコミュニティ名に関連付けます。この例ではコミュニティ名に public
を使用していますが、プロダクション環境では、セキュリティの観点から推測が困難なランダムな文字列の使用を推奨します。
com2sec mysecurity 127.0.0.1 public
: ローカルホストからの公開アクセスを許可します。com2sec mysecurity 10.0.0.161 public
: 指定された IP アドレスからの公開アクセスを許可します。
group
group
コマンドは、アクセス制御を行うグループを定義します。この例では SNMP バージョン v2c を使用していますが、よりセキュアな SNMP v3 の使用も検討する価値があります。v3 は認証や暗号化の面で優れています。
group mygroup v2c mysecurity
:mygroup
グループに対して、SNMP v2c を使用し、mysecurity
の設定を適用します。
view
view
コマンドは、アクセス可能な SNMP 情報の範囲を定義します。
view all included .1
: all という名前のビューを作成し、そのビューが含む情報の範囲を指定しています。.1
は MIB ツリーの最上位を指し、ここから始まる MIB のすべてのサブオブジェクトが含まれます。.1
で始まる範囲には、インターフェイスの状態、トラフィックの量、デバイスの構成と性能データなど、ネットワークの管理と監視に必要なほぼ全ての情報が含まれています。
access
access
コマンドは、特定のグループのアクセス制御を定義します。
access mygroup "" any noauth exact all none none
:mygroup
グループに読み取り専用アクセスを許可し、認証なしで全情報へのアクセスを可能にします。
disk
disk
コマンドは、特定のディスクの使用状況を監視します。この例では、各パーティションに 10% を指定しており、残り容量が 10% になった場合に SNMP トラップを送信します。SNMP トラップは後述の trap2sink を参照して下さい。
disk / 10%
: ルートパーティションdisk /var 10%
:/var
パーティションdisk /home 10%
:/home
パーティション
trap2sink
trap2sink
は SNMPトラップを指定したサーバーに送信します。トラップは、特定のイベントや条件が発生した際に、管理者や監視システムへ自動的に通知を送るために使われます。
trap2sink 10.0.0.162 public
: この例では、IP アドレス10.0.0.162
のサーバーに、コミュニティ名public
を使用してトラップを送信するように設定しています。トラップは、ディスク容量が閾値に達した場合や、通信エラーが発生した場合などに送信されます。
/etc/sysconfig/snmpd
/etc/sysconfig/snmpd
をバックアップし、エディターで開きます。
[root@centos-5 ~]# cp /etc/sysconfig/snmpd /etc/sysconfig/snmpd.orig
[root@centos-5 ~]# vim /etc/sysconfig/snmpd
/etc/sysconfig/snmpd
を編集します。
OPTIONS="-Lf /var/log/snmpd.log -p /var/run/snmpd.pid -a"
-Lf /var/log/snmpd.log
: SNMP デーモンのログファイルを/var/log/snmpd.log
に出力するためのオプションです。-p /var/run/snmpd.pid
: SNMPデーモンのプロセス ID (PID) を/var/run/snmpd.pid
ファイルに保存するためのオプションです。このファイルを通じて、デーモンの動作状態を監視したり、デーモンを制御する際に使用します。-a
: SNMP デーモンが全てのインターフェイスでリクエストを受け付ける (listen) オプションです。具体的には、0.0.0.0:161
で SNMP のリクエストを待ち受けるように設定します。
サービス起動設定
snmpd
サービスを起動し、システムの起動時に有効になるように設定します。
[root@centos-5 ~]# service snmpd start && chkconfig snmpd on
[root@centos-5 ~]# chkconfig snmpd --list
正常性確認
前述までの設定に問題がなければ、snmpwalk
コマンドを使用して SNMP 情報を取得できます。出力は長いため省略しますが、ネットワークインターフェイスの状態やトラフィック量などを確認できます。
[root@centos-5 ~]# snmpwalk -v 2c -c public localhost