Nagiosは、システムとネットワークを監視するためのオープンソースソフトウェアです。 Nagiosは、ホストとそのサービスのアクティビティを監視し、サーバーで何か問題が発生した場合に警告/アラートを提供します。 NagiosはLinuxオペレーティングシステムで実行できます。現時点では、インストールにUbuntu16.04を使用しています。
- 2Ubuntu16.04-64ビットサーバー
- 1-IPを使用するNagiosホスト:192.168.1.9
- 2-IPを使用するUbuntuクライアント:192.168.1.10
- ルート/Sudoアクセス
このチュートリアルで行うこと:
- -LAMPなどのパッケージ依存関係をソフトウェア化する
- ユーザーとグループの構成。
- Nagiosのインストール。
- Apacheの構成。
- Nagiosサーバーのテスト。
- 監視するホストの追加。
Nagiosには、コンパイル用のgccコンパイラとビルドエッセンシャル、Nagios Webインターフェイス用のLAMP(Apache、PHP、MySQL)、およびサーバーからアラートを送信するためのSendmailが必要です。これらすべてのパッケージをインストールするには、次のコマンドを実行します(1行だけです):
sudo apt-get install wget build-essential apache2 php apache2-mod-php7.0 php-gd libgd-dev sendmail unzip
Nagiosを実行するには、Nagiosの新しいユーザーを作成する必要があります。ユーザーに"nagios"という名前を付けます さらに、 "nagcmd"という名前のグループを作成します 。以下に示すように、新しいユーザーをグループに追加します。
useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagios,nagcmd www-data
cd ~
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.2.0.tar.gz
tar -xzf nagios*.tar.gz
cd nagios-4.2.0
Nagiosをビルドする前に、以前に作成したユーザーとグループでNagiosを構成する必要があります。
./configure --with-nagios-group=nagios --with-command-group=nagcmd
詳細については、./configure--helpを使用してください。
Nagiosをインストールする:
make all
sudo make install
sudo make install-commandmode
sudo make install-init
sudo make install-config
/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-available/nagios.conf
そして、evenhandlerディレクトリをnagiosディレクトリにコピーします:
cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/
chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers
Nagiosプラグインをダウンロードして抽出します:
cd ~
wget https://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
tar -xzf nagios-plugins*.tar.gz
cd nagios-plugin-2.1.2/
以下のコマンドを使用してNagiosプラグインをインストールします。
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
make
make install
インストールフェーズが完了すると、/ usr / local /nagios/でNagiosのデフォルト構成を見つけることができます。
NagiosとNagiosの連絡先を構成します。
vimでデフォルトのnagios設定を編集します:
vim /usr/local/nagios/etc/nagios.cfg
コメント解除行51 ホストモニター構成用。
cfg_dir=/usr/local/nagios/etc/servers
保存して終了します。
サーバーという名前の新しいフォルダを追加します:
mkdir -p /usr/local/nagios/etc/servers
Nagiosの連絡先は、contact.cfgファイルで構成できます。開くには、次を使用します:
vim /usr/local/nagios/etc/objects/contacts.cfg
次に、デフォルトのメールを自分のメールに置き換えます。
sudo a2enmod rewrite
sudo a2enmod cgi
htpasswdコマンドを使用して、nagiosウェブインターフェースのユーザーnagiosadminを設定できます
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
パスワードを入力してください。
sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/
service apache2 restart
service nagios start
Nagiosを起動すると、次のエラーが表示される場合があります:
Starting nagios (via systemctl): nagios.serviceFailed
そして、これはそれを修正する方法です:
cd /etc/init.d/
cp /etc/init.d/skeleton /etc/init.d/nagios
次に、Nagiosファイルを編集します:
vim /etc/init.d/nagios
...そして次のコードを追加します:
DESC="Nagios"
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock
実行可能にしてNagiosを起動します:
chmod +x /etc/init.d/nagios
service apache2 restart
servuce nagios start
Nagiosサーバーのテスト
ブラウザを開いて、NagiosサーバーのIPにアクセスしてください。私の場合は、 http://192.168.1.9/nagios 。
Nagiosはapachehtpasswdでログインします。
Nagios管理ダッシュボード
このチュートリアルでは、監視するUbuntuホストを上記で作成したNagiosサーバーに追加します。
Nagios Server IP : 192.168.1.9
Ubuntu Host IP : 192.168.1.10
ssh [email protected]
sudo apt-get install nagios-nrpe-server nagios-plugins
インストールが完了したら、nrpeファイル/etc/nagios/nrpe.cfgを編集します:
vim /etc/nagios/nrpe.cfg
...そしてNagiosサーバーIP192.168.1.9をserver_addressに追加します。
server_address =192.168.1.9
service nagios-nrpe-server restart
Nagiosサーバーに接続してください:
ssh [email protected]
次に、/ usr / local / nagios / etc /servers/にホスト構成用の新しいファイルを作成します。
vim /usr/local/nagios/etc/servers/ubuntu_host.cfg
次の行を追加します:
# Ubuntu Host configuration file define host { use linux-server host_name ubuntu_host alias Ubuntu Host address 192.168.1.10 register 1 } define service { host_name ubuntu_host service_description PING check_command check_ping!100.0,20%!500.0,60% max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1 } define service { host_name ubuntu_host service_description Check Users check_command check_local_users!20!50 max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1 } define service { host_name ubuntu_host service_description Local Disk check_command check_local_disk!20%!10%!/ max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1 } define service { host_name ubuntu_host service_description Check SSH check_command check_ssh max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1 } define service { host_name ubuntu_host service_description Total Process check_command check_local_procs!250!400!RSZDT max_check_attempts 2 check_interval 2 retry_interval 2 check_period 24x7 check_freshness 1 contact_groups admins notification_interval 2 notification_period 24x7 notifications_enabled 1 register 1 }
多くのcheck_commandは/usr/local/nagios/etc/objects/commands.cfgファイルにあります。 DHCP、POPなどのサービスをさらに追加したい場合はそこを参照してください。
次に、構成を確認します:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
...構成が正しいかどうかを確認します。
UbuntuホストでNRPEサービスを開始します:
service nagios-nrpe-server restart
...そしてNagiosサーバーで、ApacheとNagiosを起動します:
service apache2 restart
service nagios restart
ブラウザからNagiosサーバーを開き、監視されているubuntu_hostを確認します。
Ubuntuホストは監視対象ホストで利用できます。
すべてのサービスがエラーなしで監視されました。
Nagiosは、システムを監視するためのオープンソースアプリケーションです。 Nagiosは、構成が簡単なため、広く使用されています。 Nagiosはさまざまなプラグインでサポートされており、独自のプラグインを作成することもできます。詳細については、こちらをご覧ください。