Ubuntu13.04へのzabbix2 のインストール(Apache)


Ubuntu13.04にzabbix2を入れてネットワーク内のモニタリングを実行し、何か障害がおこった場合にはすぐにメールで通知してくれるようにします。

apt-getでインストールできるようなので、aptでインストールしてしまいます。

sudo apt-get install zabbix-server-mysql zabbix-agent zabbix-frontend-php

MySQLのデフォルトのcharsetをutf-8にしておく。

DBをutf-8にしておかないと、zabbixのインストール後に画面上のパンくずリストが文字化けします(文字化けしたのでDB消してやり直しました)。DB作る際にutf-8を指定しても良いのですが、たいていの場合、デフォルトでutf-8にしておいた方が文字化けに悩まされないので。

sudo vi /etc/mysql/my.cnf

下記の2行を各々の設定箇所に追加しておきます。mysqldの方は、mysql5.5でcharacter-set-serverに変更になったとの事です。

[client]
default-character-set=utf8

[mysqld]
character-set-server = utf8

DBの準備

create database zabbix;
grant all on zabbix.* to zabbix@localhost identified by 'yourpassword';
flush privileges;

mysql -uzabbix -p zabbix << /usr/share/zabbix-server-mysql/schema.sql
mysql -uzabbix -p zabbix << /usr/share/zabbix-server-mysql/images.sql
mysql -uzabbix -p zabbix << /usr/share/zabbix-server-mysql/data.sql

設定ファイル編集

sudo vi /etc/zabbix/zabbix_server.conf

ListenPort=10051
DBName=zabbix
DBUser=zabbix
DBPassword=yourpassword
DBSocket=/var/run/mysqld/mysqld.sock

設定ファイル編集

sudo vi /etc/default/zabbix-server

START=yes

zabbix-serverを起動させる

sudo /etc/init.d/zabbix-server start

Apache用の設定ファイルを設置

cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf /etc/apache2/conf.d/zabbix.conf

ブラウザでアクセスする。

http://<<zabbix-serverのアドレス>>/zabbix/

インストール画面が下記のように表示される。

zabbix_1

phpの設定が間違っていたりすると、警告を出してくれる。

zabbix_2

sudo vi /etc/php5/apache2/php.ini

/etc/php5/apache2/php.ini ファイルを編集します。

date.timezone = "Asia/Tokyo"
post_max_size = 16M
max_execution_time = 300
max_input_time = 300

apacheを再起動してエラーが直ったのでそのまますすめます。

zabbix_3

DBの設定情報を聞いてくるので、先にDB作成時に設定した情報を入力します。

zabbix_4

Test connectionボタンを押して、OKと出れば、そのままNextで先に進みむと、zabbixサーバの情報を聞かれるので入力します。localhostで良いと思います。

zabbix_5

最終確認画面。

zabbix_6

zabbix_7

Nextで次に行ったら、/etc/zabbix/zabbix.conf.php を書き込めないとエラーを出しました。本当はよろしくないのですが、セットアップ中のみパーミッションを777にしておきます。

cd /etc/zabbix
sudo touch zabbix.conf.php
sudo chmod 777 zabbix.conf.php

でRetryを推したら問題なく設定できました。

zabbix_8

忘れずにパーミッションを戻しておきます。

cd /etc/zabbix
sudo chmod 644 zabbix.conf.php

やっとログイン画面が出てきました。

zabbix_9

初期パスワードは下記の通り

user : admin
pass : zabbix

ログインした画面です。

zabbix_10

OS起動時に自動起動するようにしてから、OS起動直後にサービスが上がっていることを確認する為に再起動します。

sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf --level 35 apache2 on
sudo sysv-rc-conf --level 35 zabbix-server on
sudo sysv-rc-conf --level 35 zabbix-agent on
sudo reboot

動作確認をした後に、iptablesの設定をして終了です。

## 変数の定義
LOCAL_ETH='eth0'
LOCAL_NETWORK='172.20.1.0/24'
LOCAL_MY_IP='172.20.1.3'
MANAGE_HOST='172.20.1.128/25'
DMZ_NETWORK='172.20.2.0/24'

# iptablesのプログラム
IPTABLES='/sbin/iptables'
IPTABLES_SAVE='/sbin/iptables-save'
IPTABLES_SAVE='/sbin/iptables-save'
IPTABLES_RULES='/etc/iptables/rules.v4'

$IPTABLES -P INPUT ACCEPT
$IPTABLES -P OUTPUT ACCEPT

# ルールの初期化
$IPTABLES -F
# ローカルループバックを許可
$IPTABLES -A INPUT  -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT

# 明らかにおかしいパケットは拒否
$IPTABLES -A INPUT   -p tcp -m state --state INVALID -j DROP
$IPTABLES -A OUTPUT  -p tcp -m state --state INVALID -j DROP

# サーバから外部サーバへのアクセス許可(パッケージアップデート等の為)
$IPTABLES -A INPUT  -i $LOCAL_ETH -d $LOCAL_MY_IP -p udp -m multiport --sports 53 -j ACCEPT
$IPTABLES -A INPUT  -i $LOCAL_ETH -d $LOCAL_MY_IP -p tcp -m multiport --sports 25,53,80,443,587,10050 -j ACCEPT
$IPTABLES -A OUTPUT -o $LOCAL_ETH -s $LOCAL_MY_IP -p udp -m multiport --dports 53 -j ACCEPT
$IPTABLES -A OUTPUT -o $LOCAL_ETH -s $LOCAL_MY_IP -p tcp -m multiport --dports 25,53,80,443,587,10050 -j ACCEPT

# zabbixサーバにHTTPアクセスできるようにする
$IPTABLES -A INPUT  -i $LOCAL_ETH -d $LOCAL_MY_IP -s $MANAGE_HOST -p tcp -m multiport --dports 80,443 -j ACCEPT
$IPTABLES -A OUTPUT -o $LOCAL_ETH -s $LOCAL_MY_IP -d $MANAGE_HOST -p tcp -m multiport --sports 80,443 -j ACCEPT

# zabbixサービスの公開ポート
$IPTABLES -A INPUT  -i $LOCAL_ETH -d $LOCAL_MY_IP -s $LOCAL_NETWORK,$DMZ_NETWORK -p tcp -m multiport --dport 10051 -j ACCEPT
$IPTABLES -A OUTPUT -o $LOCAL_ETH -s $LOCAL_MY_IP -d $LOCAL_NETWORK,$DMZ_NETWORK -p tcp -m multiport --sport 10051 -j ACCEPT

# ssh
$IPTABLES -A INPUT  -i $LOCAL_ETH -d $LOCAL_MY_IP -s $MANAGE_HOST -p tcp --sport 1024:65535 --dport 22 -j ACCEPT
$IPTABLES -A OUTPUT -o $LOCAL_ETH -s $LOCAL_MY_IP -d $MANAGE_HOST -p tcp --sport 22 --dport 1024:65535 -j ACCEPT

$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

# ルールセットの保存
$IPTABLES_SAVE >> $IPTABLES_RULES

インストールについては以上で完了です。

各種サーバへのAgentのインストールは、Linuxのパッケージ管理ツールで行うか、Windowsの場合にはZabbixのオフィシャルサイトから、Agentをダウンロードしてインストールしてください。

WindowsへのAgentのインストールマニュアル

zabbixは設定項目が多いので、下記のサイトを参考に設定してください。また、日本語での参考書も出ています。著者の方のセミナーに参加した時に著書にサインをもらっておけば良かったなと後悔していたりw

設定の為に参考になるサイトと書籍

タグ付けされた , . ブックマークする へのパーマリンク.

コメントを残す

メールアドレスが公開されることはありません。