Snmpd
SNMP はネットワークデバイスの管理と監視のために作られたツールです。Net-SNMP パッケージは Arch Linux で利用できる SNMP の実装の1つになります。この記事では Arch の net-snmp パッケージに入っている snmpd デーモンの設定とテストについて解説します。
インストール
snmpd デーモンと付属のユーティリティが入っている net-snmp パッケージをインストールしてください。
設定
設定ファイル (特に /var/net-snmp/snmpd.conf
) を編集するときは snmpd サービスが動いていないことを確認してください。
デーモン
デーモンを有効化:
# systemctl enable snmpd
SNMP 1 and 2c
net-snmp でサポートされている SNMP には3つのバージョンがあります: 1, 2c, 3。バージョン 1 と 2c は /etc/snmp/snmpd.conf
を使って同一の基本設定で起動します:
# mkdir /etc/snmp/ # echo rocommunity read_only_user >> /etc/snmp/snmpd.conf
上記のコマンドで監視用のユーザーが追加されます。任意で、管理用のユーザーも追加してください。ただし特別の理由がないかぎりは推奨されません。
# echo rwcommunity read_write_user >> /etc/snmp/snmpd.conf
SNMP 3
SNMP v3 ではセキュリティと暗号化認証/通信が追加されています。/etc/snmp/snmpd.conf
の異なる設定スキームを使用し /var/net-snmp/snmpd.conf
に別の設定が必要です。
# mkdir /etc/snmp/ # echo rouser read_only_user >> /etc/snmp/snmpd.conf # mkdir -p /var/net-snmp/ # echo createUser read_only_user SHA password1 AES password2 > /var/net-snmp/snmpd.conf
snmpd を再起動すると /var/net-snmp/snmpd.conf
が書き換えられ、入力した平文のパスワードが暗号化されます。snmpd が実行している間にこのファイルに変更を加えても、デーモンが停止したときに全ての変更がリセットされてしまいます。従って、ファイルを変更するときは snmpd が実行中でない必要があります。
デーモンを起動
デーモンを設定したら起動してください:
# systemctl start snmpd
テスト
SNMP 1 または 2c を使用するときは、以下のどちらかのコマンドを使って設定をテストしてください:
# snmpwalk -v 1 -c read_only_user localhost | less # snmpwalk -v 2c -c read_only_user localhost | less
SNMP 3 を使用するときは、以下のコマンドを使って設定をテストしてください:
# snmpwalk -v 3 -u read_only_user -a SHA -A password1 -x AES -X password2 -l authNoPriv localhost | less
どちらのコマンドでも、以下のようなデータが表示されるはずです:
SNMPv2-MIB::sysDescr.0 = STRING: Linux myhost 2.6.37-ARCH #1 SMP PREEMPT Sat Jan 29 20:00:33 CET 2011 x86_64 SNMPv2-MIB::sysObjectID.0 = OID: ccitt.1 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (307772) 0:51:17.72 SNMPv2-MIB::sysContact.0 = STRING: root@localhost SNMPv2-MIB::sysName.0 = STRING: myhost ...SNIP...