Raspberry Pi 2でCactiを導入する(サーバの登録)

Mon Jan 9, 2017 in server using tags raspberrypi , home-network , homenas1 , homemon1 , homemon2 , homepxy1 , homepot1

FortiGate 60DとRaspberry Piを使用して家庭内インターネット接続環境を構築します。 最終的には以下のような構成を想定しています。

前回はCactiを導入しました。 今回はCactiにhomenas1homemon1homemon2homepxy1homepot1を登録していきます。SNMPv3を使用してSNMPの値を取得します。



$ sudo -E apt-get install snmpd snmp
パッケージリストを読み込んでいます... 完了
状態情報を読み取っています... 完了
  libperl5.20 libsensors4 libsnmp-base libsnmp30
  lm-sensors snmp-mibs-downloader snmptrapd
  libperl5.20 libsensors4 libsnmp-base libsnmp30 snmp snmpd
アップグレード: 0 個、新規インストール: 6 個、削除: 0 個、保留: 1 個。
3,836 kB のアーカイブを取得する必要があります。
この操作後に追加で 7,088 kB のディスク容量が消費されます。
続行しますか? [Y/n] y
取得:1 http://mirrordirector.raspbian.org/raspbian/ jessie/main libperl5.20 armhf 5.20.2-3+deb8u6 [1,354 B]
取得:2 http://mirrordirector.raspbian.org/raspbian/ jessie/main libsensors4 armhf 1:3.3.5-2 [48.9 kB]
取得:3 http://mirrordirector.raspbian.org/raspbian/ jessie/main libsnmp-base all [1,544 kB]
取得:4 http://mirrordirector.raspbian.org/raspbian/ jessie/main libsnmp30 armhf [2,040 kB]
取得:5 http://mirrordirector.raspbian.org/raspbian/ jessie/main snmp armhf [145 kB]
取得:6 http://mirrordirector.raspbian.org/raspbian/ jessie/main snmpd armhf [56.8 kB]
3,836 kB を 2秒 で取得しました (1,283 kB/s)
パッケージを事前設定しています ...
以前に未選択のパッケージ libsensors4:armhf を選択しています。
(データベースを読み込んでいます ... 現在 32914 個のファイルとディレクトリがインストールされています。)
.../libsensors4_1%3a3.3.5-2_armhf.deb を展開する準備をしています ...
libsensors4:armhf (1:3.3.5-2) を展開しています...
以前に未選択のパッケージ libperl5.20 を選択しています。
.../libperl5.20_5.20.2-3+deb8u6_armhf.deb を展開する準備をしています ...
libperl5.20 (5.20.2-3+deb8u6) を展開しています...
以前に未選択のパッケージ libsnmp-base を選択しています。
.../libsnmp-base_5.7.2.1+dfsg-1_all.deb を展開する準備をしています ...
libsnmp-base ( を展開しています...
以前に未選択のパッケージ libsnmp30:armhf を選択しています。
.../libsnmp30_5.7.2.1+dfsg-1_armhf.deb を展開する準備をしています ...
libsnmp30:armhf ( を展開しています...
以前に未選択のパッケージ snmp を選択しています。
.../snmp_5.7.2.1+dfsg-1_armhf.deb を展開する準備をしています ...
snmp ( を展開しています...
以前に未選択のパッケージ snmpd を選択しています。
.../snmpd_5.7.2.1+dfsg-1_armhf.deb を展開する準備をしています ...
snmpd ( を展開しています...
man-db ( のトリガを処理しています ...
systemd (215-17+deb8u5) のトリガを処理しています ...
libsensors4:armhf (1:3.3.5-2) を設定しています ...
libperl5.20 (5.20.2-3+deb8u6) を設定しています ...
libsnmp-base ( を設定しています ...
libsnmp30:armhf ( を設定しています ...
snmp ( を設定しています ...
snmpd ( を設定しています ...
adduser: 警告: ホームディレクトリ `/var/lib/snmp' は、現在作成中のユーザの所属になっていません。
libc-bin (2.19-18+deb8u6) のトリガを処理しています ...
systemd (215-17+deb8u5) のトリガを処理しています ...

snmpconfツールを使用してsnmpd.confを作成します。 SNMPv3を使用する前提で質問に回答していきます。

$ snmpconf -g basic_setup

The following installed configuration files were found:

   1:  /etc/snmp/snmp.conf
   2:  /etc/snmp/snmpd.conf

Would you like me to read them in?  Their content will be merged with the
output files created by this session.

Valid answer examples: "all", "none","3","1,2,5"

Read in which (default = all): 2
*** Beginning basic system information setup ***
Do you want to configure the information returned in the system MIB group (contact info, etc)? (default = y): n
Do you want to configure the agent's access control? (default = y): y
Do you want to allow SNMPv3 read-write user based access (default = y): n
Do you want to allow SNMPv3 read-only user based access (default = y): y

Configuring: rouser
  a SNMPv3 read-only user
    arguments:  user [noauth|auth|priv] [restriction_oid]

Enter the SNMPv3 user that should have read-only access to the system: snmpuser
The minimum security level required for that user [noauth|auth|priv, default = auth]: priv
The OID that this community should be restricted to [if appropriate]: 

Finished Output: rouser  snmpuser priv 
Do another rouser line? (default = y): n
Do you want to allow SNMPv1/v2c read-write community access (default = y): n
Do you want to allow SNMPv1/v2c read-only community access (default = y): n
*** Beginning trap destination setup ***
Do you want to configure where and if the agent will send traps? (default = y): n
*** Beginning monitoring setup ***
Do you want to configure the agent's ability to monitor various aspects of your system? (default = y): n

The following files were created:


These files should be moved to /usr/share/snmp if you
want them used by everyone on the system.  In the future, if you add 
the -i option to the command line I'll copy them there automatically for you.

Or, if you want them for your personal use only, copy them to
/home/pi/.snmp .  In the future, if you add the -p option to the
command line I'll copy them there automatically for you.


$ sudo mv /etc/snmp/snmpd.conf{,.org}
$ sudo mv snmpd.conf /etc/snmp/
$ sudo chown root:root /etc/snmp/snmpd.conf
$ sudo chmod 600 /etc/snmp/snmpd.conf
$ ls -l /etc/snmp/*
-rw-r--r-- 1 root root  211  4月 15  2015 /etc/snmp/snmp.conf
-rw------- 1 root root  472  1月  9 17:39 /etc/snmp/snmpd.conf
-rw------- 1 root root 7116  4月 18  2015 /etc/snmp/snmpd.conf.org


$ sudo systemctl stop snmpd
$ sudo cp -p /var/lib/snmp/snmpd.conf{,.org}
$ ls -l /var/lib/snmp/snmpd.conf*
-rw------- 1 snmp snmp 1089  1月  9 17:43 /var/lib/snmp/snmpd.conf
-rw------- 1 snmp snmp 1089  1月  9 17:43 /var/lib/snmp/snmpd.conf.org
$ sudo vi /var/lib/snmp/snmpd.conf
createUser snmpuser SHA snmp_pass AES snmp_pass
$ sudo systemctl start snmpd


$ snmpwalk -v 3 -u snmpuser -l authPriv -a SHA -A snmp_pass -x AES -X snmp_pass localhost .



$ sudo iptables -A INPUT -m state --state NEW -m udp -p udp -s --dport 161 -j ACCEPT


$ sudo netfilter-persistent save


↓Cactiにログイン。User NamePasswordを入力してLoginをクリックします。




↓デバイスの登録完了画面。SNMP Informationにデバイスの情報が表示されていることを確認します。Create Graphs for this Hostをクリックします。



↓左のメニューからGraph Treesをクリックし、Default Treeをクリックします。