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 publiccom2sec
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

