FreeBSD/SNMP のバックアップの現在との差分(No.1)
- 追加された行はこの色です。
- 削除された行はこの色です。
*&SIZE(15){''SNMP''}; [#j813eb7c]
Net-SNMPとはSNMP(Simple Network Management Protocol)を使用してルータやホストを管理するためのデーモンやパッケージの集合です。~
ルータにSNMPで情報を取得したい場合、ルータの設定変更を一括で行う場合、トラップを生成したい場合等にとても役立つでしょう。~
SNMPでトラフィックやディスクの情報を取り出して、[[MRTG>FreeBSD/MRTG]]などでグラフィカルに表示したりします。~
+[[''環境''>#A]]
+[[''インストール''>#B]]
+[[''/etc/rc.confの編集''>#C]]
+[[''snmp設定ファイル編集''>#D]]
+[[''確認''>#E]]
+[[''初期設定''>#F]]
#contents
**''環境''&aname(A); [#pcc5c313]
FreeBSD 6.0~
net-snmpd 5.2.2
~
**''インストール''&aname(B); [#c834ef0d]
# cd /usr/ports/net-mgmt/net-snmp
# make install
**''/etc/rc.confの編集''&aname(C); [#oc5fee5c]
■下記を追加
#SNMP
snmpd_enable="YES"
snmptrapd_enable="YES"
snmpd_conffile="/usr/local/etc/snmpd.conf"
**''snmp設定ファイル編集''&aname(D); [#c97fb964]
■snmpの設定ファイルは何故か「/usr/local/share/snmp/snmpd.conf」です。
# vi /usr/local/share/snmp/snmpd.conf
■snmpの設定ファイル「/usr/local/share/snmp/snmpd.conf.example」をコピーして利用
# cp /usr/local/share/snmp/snmpd.conf.example /usr/local/etc/snmpd.conf
# vi /usr/local/etc/snmpd.conf
下記のような感じでコミュニティ名とネットワークを設定する。
コミュニティー名とはパスワードみたいなものです。
# sec.name source community
com2sec local localhost PRIVATE
com2sec mynetwork 192.168.0.0/24 PUBLIC
***追加***
proc httpd #httpプロセス監視の為
disk /var #diskの容量を取得する為
disk /home
disk /usr
***追加***
**hosts.allowの設定 [#n3bd60be]
■snmp接続したいIPを通るようにしておく
# vi /etc/hosts.allow
snmpd : 192.168.1. : allow
snmpd : 127.0.0.1 : allow
**''確認''&aname(E); [#u1796e66]
■snmpdプロセスを立ち上げて確認
# /usr/local/etc/rc.d/snmpd.sh start
# /usr/local/etc/rc.d/snmptrapd.sh start
# snmpwalk -v 1 -c PUBLIC 192.168.0.1
MIB情報がいっぱい出てくれば正常です。~
MRTGでのグラフ表示は ⇒ [[こちら>FreeBSD/MRTG]]
**MIB情報の検索 [#cfcad27f]
$ snmpwalk -c <コミュニティ名> <ホスト名> [ 検索範囲 ]
例
$ snmpwalk -v1 -c public localhost
**MIB情報の名前変換 [#fdc93e94]
$ snmptranslate -On UCD-SNMP-MIB::memTotalReal.0
.1.3.6.1.4.1.2021.4.5.0
$ snmptranslate .1.3.6.1.4.1.2021.4.5.0
UCD-SNMP-MIB::memTotalReal.0
**MIBシンボル名/オブジェクトIDの詳細を表示 [#gc54cd6b]
$ snmptranslate -Td .1.3.6.1.4.1.2021.4.5.0
UCD-SNMP-MIB::memTotalReal.0
memTotalReal OBJECT-TYPE
-- FROM UCD-SNMP-MIB
SYNTAX Integer32
UNITS "kB"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The total amount of real/physical memory installed
on this host."
::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) ucdavis(2021) memory(4) memTotalReal(5) 0 }
**MIBシンボル名/オブジェクトID以下のツリー構造を表示 [#ob4a1d51]
$ snmptranslate -Tp .1.3.6.1.4.1.2021.4
+--memory(4)
|
+-- -R-- Integer32 memIndex(1)
+-- -R-- String memErrorName(2)
| Textual Convention: DisplayString
| Size: 0..255
+-- -R-- Integer32 memTotalSwap(3)
+-- -R-- Integer32 memAvailSwap(4)
+-- -R-- Integer32 memTotalReal(5)
+-- -R-- Integer32 memAvailReal(6)
+-- -R-- Integer32 memTotalSwapTXT(7)
+-- -R-- Integer32 memAvailSwapTXT(8)
+-- -R-- Integer32 memTotalRealTXT(9)
+-- -R-- Integer32 memAvailRealTXT(10)
+-- -R-- Integer32 memTotalFree(11)
+-- -R-- Integer32 memMinimumSwap(12)
+-- -R-- Integer32 memShared(13)
+-- -R-- Integer32 memBuffer(14)
+-- -R-- Integer32 memCached(15)
+-- -R-- Integer32 memUsedSwapTXT(16)
+-- -R-- Integer32 memUsedRealTXT(17)
+-- -R-- EnumVal memSwapError(100)
| Textual Convention: UCDErrorFlag
| Values: noError(0), error(1)
+-- -R-- String memSwapErrorMsg(101)
Textual Convention: DisplayString
Size: 0..255
*ソースからインストール [#g95e7b73]
[[http://www.net-snmp.org/]] ここから、ソースをダウンロード
# tar zxvf net-snmp-5.4.2.1.tar.gz
# cd net-snmp-5.4.2.1
# ./configure
# make
# make install
*起動時にエラー [#dffedc67]
こんなエラーが出て起動できてなかった・・・。
# /usr/local/etc/rc.d/snmpd start
Starting snmpd.
/libexec/ld-elf.so.1: Shared object "libperl.so" not found, required by "snmpd"
/usr/lib以下にシンボリックリンクを張ってやる。
# ln -s /usr/local/lib/perl5/5.8.9/mach/CORE/libperl.so /usr/lib/libperl.so
再度起動
# /usr/local/etc/rc.d/snmpd start
Starting snmpd.
起動できた。
たぶん、snmpdを再インストールしてやっても普通に起動できるのだと思う。
# portupgrade net-mgmt/net-snmp