監視ツール · 2 min read · Oct 21, 2025

Ubuntu 16.04にNagiosサーバーモニタリングをインストールする方法

Nagiosはシステムおよびネットワーク監視のためのオープンソースソフトウェアです。Nagiosはホストとそのサービスの活動を監視し、サーバーで何か悪いことが起こった場合に警告/アラートを提供します。NagiosはLinuxオペレーティングシステムで実行できます。今回は、インストールにUbuntu 16.04を使用しています。

前提条件

  • 2つのUbuntu 16.04 - 64bitサーバー - 1 - Nagiosホスト、IP: 192.168.1.9
  • 2 - Ubuntuクライアント、IP: 192.168.1.10
  • Root/Sudoアクセス

このチュートリアルで行うこと:

  1. LAMPなどのソフトウェアパッケージの依存関係をインストールします。
  2. ユーザーとグループの設定。
  3. Nagiosのインストール。
  4. Apacheの設定。
  5. Nagiosサーバーのテスト。
  6. 監視するホストの追加。

前提条件のインストール

Nagiosはコンパイルのためにgccコンパイラとbuild-essentials、Nagiosウェブインターフェースのために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

Nagiosのインストール

ステップ1 - Nagiosコアのダウンロードと抽出

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

ステップ2 - 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

ステップ3 - Nagiosプラグインのインストール

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

ステップ4 - Nagiosの設定

インストールフェーズが完了したら、/usr/local/nagios/にNagiosのデフォルト設定があります。

NagiosとNagiosの連絡先を設定します。

vimでデフォルトのnagios設定を編集します:

vim /usr/local/nagios/etc/nagios.cfg

ホストモニター設定のために51行のコメントを外します。

cfg_dir=/usr/local/nagios/etc/servers

保存して終了します。

serversという名前の新しいフォルダーを追加します:

mkdir -p /usr/local/nagios/etc/servers

Nagiosの連絡先はcontact.cfgファイルで設定できます。開くには:

vim /usr/local/nagios/etc/objects/contacts.cfg

その後、デフォルトのメールアドレスを自分のメールアドレスに置き換えます。

Apacheの設定

ステップ1 - Apacheモジュールを有効にする

sudo a2enmod rewrite  
sudo a2enmod cgi

htpasswdコマンドを使用して、Nagiosウェブインターフェース用のユーザーnagiosadminを設定できます。

sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

そして、パスワードを入力します。

ステップ2 - Nagiosの仮想ホストを有効にする

sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

ステップ3 - ApacheとNagiosを起動する

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はapache htpasswdでログインします。

Nagiosログイン

Nagios管理ダッシュボード

Nagiosダッシュボード

監視するホストの追加

このチュートリアルでは、上記で作成したNagiosサーバーに監視するUbuntuホストを追加します。

NagiosサーバーIP : 192.168.1.9  
UbuntuホストIP : 192.168.1.10

ステップ1 - Ubuntuホストに接続

ssh [email protected]

ステップ2 - NRPEサービスをインストール

sudo apt-get install nagios-nrpe-server nagios-plugins

ステップ3 - NRPEを設定

インストールが完了したら、nrpeファイルを編集します /etc/nagios/nrpe.cfg:

vim /etc/nagios/nrpe.cfg

… そしてNagiosサーバーIP 192.168.1.9をserver_addressに追加します。

server_address=192.168.1.9

ステップ4 - NRPEを再起動

service nagios-nrpe-server restart

ステップ5 - UbuntuホストをNagiosサーバーに追加

Nagiosサーバーに接続してください:

ssh [email protected]

次に、/usr/local/nagios/etc/servers/にホスト設定用の新しいファイルを作成します。

vim /usr/local/nagios/etc/servers/ubuntu_host.cfg

次の行を追加します:

# Ubuntuホスト設定ファイル

define host {
        use                          linux-server
        host_name                    ubuntu_host
        alias                        Ubuntuホスト
        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

… 設定が正しいかどうかを確認します。

ステップ6 - すべてのサービスを再起動

UbuntuホストでNRPEサービスを開始します:

service nagios-nrpe-server restart

… そしてNagiosサーバーでApacheとNagiosを開始します:

service apache2 restart  
service nagios restart

ステップ7 - Ubuntuホストのテスト

ブラウザからNagiosサーバーを開き、ubuntu_hostが監視されているのを確認します。

Ubuntuホストは監視されているホストとして利用可能です。

監視されているサーバーがリストされています

すべてのサービスがエラーなしで監視されています。

すべてのサービスが正常です

結論

Nagiosはシステムを監視するためのオープンソースアプリケーションです。Nagiosは設定の容易さから広く使用されています。Nagiosはさまざまなプラグインによってサポートされており、自分自身のプラグインを作成することもできます。詳細については、こちらを参照してください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。