手当たり次第に書くんだ

飽きっぽいのは本能

CentOS 5 Net-SNMP SNMP 設定

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
CentOS 5 Net-SNMP SNMP 設定

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る