インストールガイド · 3 min read · Nov 03, 2025

CentOS 7にNginxを使用してLibreNMS監視ツールをインストールする方法

LibreNMSは、PHP/MYSQL/SNMPに基づくオープンソースの監視ツールです。これは、FreeBSD、Cisco、Linux、HPなど、幅広いネットワークハードウェアとオペレーティングシステムをサポートする完全な機能を備えたネットワーク監視システムです。

このチュートリアルでは、NginxをWebサーバーとして、MariaDBをデータベースとして使用してLibreNMSをインストールおよび構成する方法を示します。CentOS 7サーバーをメインサーバーとして使用します。

何をするか

  1. 必要なパッケージをインストール
  2. Nginx Webサーバーをインストール
  3. PHP-FPMをインストールおよび構成
  4. MariaDBをインストールおよび構成
  5. LibreNMSをダウンロードおよび構成
  6. LibreNMSのWebベースのインストール
  7. 最終構成

前提条件

  • CentOS 7サーバー
  • ルート権限

ステップ1 - 必要なパッケージをインストール

LibreNMSをサーバーにインストールする前に、ImageMagickrrdtoolSNMPgitなどのいくつかのパッケージをインストールする必要があります。以下のコマンドで必要なものをインストールできます。

yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git

すべてが正常に進んだ場合は、次のステップに進みます。

ステップ2 - Nginx Webサーバーをインストール

このステップでは、nginx Webサーバーのインストールのためにepel-repositoryをインストールします。EPEL(Enterprise Linuxのための追加パッケージ)リポジトリは、CentOS 7を含むrpmベースのOS用の追加リポジトリです。

以下のyumコマンドを使用してEPELリポジトリをインストールします。

yum -y install epel-release

次に、nginxをインストールします。

yum -y install nginx

nginxのインストール後、サービスを開始し、次のsystemctlコマンドを使用して自動的に起動するように設定します。

systemctl start nginx  
systemctl enable nginx

これで、EPELリポジトリからシステムにNginx Webサーバーがインストールされました。

Nginx Webサーバーを開始して確認する

ステップ3 - PHP-FPMをインストールおよび構成

進む前に、共有する価値のある情報があります:

LibreNMSのインストールにはPHP-FPMバージョン7を使用します。CentOS 7用のすべてのPHP 7パッケージはサードパーティのリポジトリで利用可能であり、’webtatic’リポジトリからPHP 7バージョンを使用します。

それでは始めましょう。

以下のrpmコマンドを使用してPHP 7 webtaticリポジトリをシステムに追加します。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

yumを使用してwebtaticリポジトリからPHP 7と必要なすべての拡張機能をインストールします。

yum -y install php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-pear php70w-curl php70w-common php70w-fpm php70w-mcrypt

次に、PEARリポジトリを更新し、pearコマンドを使用していくつかのPEAR(PHP拡張およびアプリケーションリポジトリ)拡張機能をインストールします。

pear channel-update pear.php.net  
pear install Net_IPv4-1.3.4  
pear install Net_IPv6-1.2.2b2

いくつかのpearパッケージをインストール

このようにして、必要なすべてのPHPパッケージをインストールできます。

次に、LibreNMSインストールのためにPHP-FPMを構成します。php.iniファイルでデフォルトのタイムゾーンを定義し、タイムゾーンがシステムで使用されている現在のタイムゾーンと一致することを確認する必要があります。以下のコマンドでシステムで使用されている現在のタイムゾーンを確認できます。

timedatectl

以下のスクリーンショットは、上記のコマンドの実行を示しています:

timedatectlコマンドを使用

したがって、私たちは’ Europe/Paris ‘タイムゾーンを使用しています。

次に、vimを使用して’/etc/php.ini’ファイルを編集します。

vim /etc/php.ini

次に、’date.timezone’行のコメントを外し、サーバーのタイムゾーン’Europe/Paris’の値を設定します。

data.timezone = Europe/Paris

同様に、cgi行のコメントを外し、値を’ 0 ‘に変更します。

cgi.fix_pathinfo=0

それでおしまいです。変更を保存してエディタを終了します。

次に、システムでPHP-FPMがどのように実行されるかを定義する必要があります。私たちの場合、PHP-FPMはサーバーポートの代わりに’sock’ファイルの下で実行されます。

vimを使用して’www.conf’ファイルを編集してPHP-FPMを構成します。

vim /etc/php-fpm.d/www.conf

‘listen’ポート行を以下のようにsockファイルに変更します。

listen = /var/run/php-fpm/php7.0-fpm.sock

sockファイルの所有者、グループ、および権限のための’listen’行のコメントを外します。

listen.owner = nginx  
listen.group = nginx  
listen.mode = 0660

それでおしまいです。変更を保存してエディタを終了します。

これでPHP-FPMの構成が完了しました。次のコマンドを使用してサービスを開始し、自動的に起動するように設定します。

systemctl start php-fpm  
systemctl enable php-fpm

これでPHP-FPMがsockファイルの下で実行されています。netstatコマンドで確認できます。

netstat -pl | grep php

‘/var/run/php-fpm/php7.0-fpm.sock’ファイルの結果が得られることを確認してください。

ステップ4 - MariaDBをインストールおよび構成

LibreNMSは、すべてのデータを保存するためにMySQLデータベースを使用しています。このガイドでは、MariaDBデータベースバージョンを使用します。これはリポジトリにあり、LibreNMSのインストールのためにデータベースとユーザーを追加するなどの構成をインストールおよび追加する必要があります。

以下のyumコマンドを使用してMariaDBをインストールします。

yum -y install mariadb mariadb-server

MariaDBサービスを開始し、自動的に起動するように設定します。

systemctl start mariadb  
systemctl enable mariadb

MariaDBデータベースを設定する

次に、以下の’mysql_secure_installation’コマンドを使用してMariaDBのrootパスワードを構成します。

mysql_secure_installation

MariaDBデータベースの新しいrootパスワードといくつかの他の質問が求められます。

‘Y’と入力してEnterを押して確認します。

Set root password? [Y/n] Y  
 Remove anonymous users? [Y/n] Y  
 Disallow root login remotely? [Y/n] Y  
 Remove test database and access to it? [Y/n] Y  
 Reload privilege tables now? [Y/n] Y

これでMariaDBがインストールされました。次に、LibreNMS用の新しいデータベースと新しいユーザーを作成する必要があります。mysqlクライアントを使用してmysqlシェルコマンドラインにログインし、新しいパスワードでログインします。

mysql -u root -p

librenms ‘という名前の新しいデータベースと、’ librenms ‘という名前の新しいユーザーを’ hakase-labs123 ‘というパスワードで作成します。

以下のMySQLクエリを使用してすべてを作成します。

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;  
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';  
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';  
FLUSH PRIVILEGES;

LibreNMSインストール用の新しいユーザーとデータベースが作成されました。

librenms MySQLユーザーを追加する

次に、my.cnfファイルを編集して新しいmysql構成を追加する必要があります。vimを使用して’/etc/my.cnf’ファイルを編集します。

vim /etc/my.cnf

以下の追加構成を’ [mysqld] ‘セクションの下に貼り付けます。

innodb_file_per_table=1  
 sql-mode=""  
 lower_case_table_names=0

vimを保存して終了し、次にMariaDBサーバーを再起動します。

systemctl restart mariadb

MariaDB設定を構成する

ステップ5 - LibreNMSをダウンロードおよび構成

このステップでは、LibreNMSインストールのためにシステムを構成します。

- ユーザーを追加し、LibreNMSソースコードをダウンロード

‘librenms’という名前の新しいシステムユーザーを作成し、次にユーザーのホームディレクトリを’/opt/librenms’ディレクトリに定義し、最後に’librenms’ユーザーを’nginx’グループに追加します。

useradd librenms -d /opt/librenms -M -r  
usermod -a -G librenms nginx

‘/opt/‘ディレクトリに移動し、以下のgit cloneコマンドを使用してLibreNMSソースコードをダウンロードします。

cd /opt/  
git clone https://github.com/librenms/librenms.git librenms

LibreNMSをインストール

LibreNMSログとrrdファイル用の新しいディレクトリを作成します。

mkdir -p /opt/librenms/logs/  
mkdir -p /opt/librenms/rrd/  
chmod 775 /opt/librenms/rrd/

次に、’/opt/librenms’ディレクトリ内のすべてのファイルとディレクトリの所有権を’librenms’ユーザーとグループに変更します。

chown -R librenms:librenms /opt/librenms/

- LibreNMS仮想ホストを構成

LibreNMSはWebベースのアプリケーションであり、Nginx Webサーバーを使用してホストしています。

nginxの’conf.d’ディレクトリに新しい仮想ホストファイル’librenms.conf’を作成します。

vim /etc/nginx/conf.d/librenms.conf

以下の構成を貼り付けます。

server {  
   
     # 自分のドメイン名を追加してください  
     listen      80;  
     server_name librenms.irsyadf.me;  
   
     # LibreNMS Webrootディレクトリ  
     root        /opt/librenms/html;  
     index       index.php;  
   
     # LibreNMSログ  
     access_log  /opt/librenms/logs/access_log;  
     error_log   /opt/librenms/logs/error_log;  
       
     # NginxでGzip圧縮を有効にする  
     charset utf-8;  
     gzip on;  
     gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;  
       
     location / {  
         try_files $uri $uri/ /index.php?$query_string;  
     }  
       
     location /api/v0 {  
         try_files $uri $uri/ /api_v0.php?$query_string;  
     }  
   
     # PHP-FPMがすべての.phpファイルリクエストを処理  
     location ~ \.php {  
         include fastcgi.conf;  
         fastcgi_split_path_info ^(.+\.php)(/.+)$;  
         fastcgi_pass unix:/var/run/php-fpm/php7.0-fpm.sock;  
     }  
  
     location ~ /\.ht {  
         deny all;  
     }  
 }

それでおしまいです。変更を保存してVimを終了します。

nginxの構成をテストし、エラーがないことを確認します。次に、Webサーバーを再起動します。

ginx -t  
systemctl restart nginx

- Firewalld構成

firewalldパッケージがシステムにインストールされていることを確認してください。そうでない場合は、以下のyumコマンドを使用してfirewalldをインストールできます。

yum -y install firewalld

firewalldを開始し、次のsystemctlコマンドを使用して自動的に起動するように設定します。

systemctl start firewalld  
systemctl enable firewalld

ファイアウォールを構成する

以下のようにfirewall-cmdコマンドを使用して新しいHTTP、HTTPS、およびSNMPポート161/udpを開きます。

firewall-cmd --add-service=http --permanent  
firewall-cmd --add-service=https --permanent  
firewall-cmd --add-port=161/udp --permanent

firewalldをリロードして構成を適用し、すべてのサービスを確認します。

firewall-cmd --reload  
firewall-cmd --list-all

HTTPおよびHTTPSサービスがリストに含まれていることを確認してください。

ステップ6 - LibreNMSのWebベースのインストール

Webブラウザを開き、アドレスバーにLibreNMSのURLを入力します。

http://librenms.hakase-labs.me/

インストールページ’install.php’にリダイレクトされます。

- PHPモジュールサポートの確認

必要なすべてのphpモジュールと拡張機能がシステムにインストールされていることを確認してください。

LibreNMS Webベースのインストーラー

次に’Next Stage’をクリックして続行します。

- データベース構成

以下のデータベースの詳細を入力します:

  1. DBユーザー: ‘ librenms
  2. DB名: ‘ librenms
  3. DBパス: ‘ hakase-labs123

データベースを構成する

次に’Next Stage’をクリックして続行します。

- MySQLデータベースのインポート

インストールページを閉じないでください。データベースのインポートが表示されます。エラーがないことを確認してください。

MySQLデータベーススキームをインポート

プロセスが完了したら、’Goto Add User’をクリックして新しい管理ユーザーを追加します。

- 管理ユーザーを追加

管理ユーザー、メール、およびパスワードを入力します。

管理ユーザーを追加する

‘Add User’をクリックしてインストールを続行します。

- 設定ファイルを生成

設定ファイルを生成

‘Generate Config’ボタンをクリックすると、以下のようなページが表示されます。

設定ファイルの設定

ボックス内のphpコードをコピーし、’/opt/librenms/‘ディレクトリに新しい’config.php’ファイルを作成します。

cd /opt/librenms/  
vim config.php

新しいファイルにコピーしたコードを貼り付け、変更を保存してエディタを終了します。次に、config.phpファイルの所有権を’librenms’ユーザーとグループに変更します。

chown librenms:librenms config.php

シェルで設定ファイルを保存

ブラウザに戻り、ページの下部にある’Finish Install’ボタンをクリックします。次のようなウェルカムメッセージが表示されます。

LibreNMS監視ツールがインストールされました

この時点で、Webベースのインストールは完了です。ターミナル/シェルに戻り、さらに構成を追加します。

ステップ7 - 最終構成

このステップでは、LibreNMSインストールのためにいくつかの構成を追加します。

- fpingコマンドを定義

LibreNMS構成ファイルを編集して’fping’コマンドを定義します。’/opt/librenms/‘ディレクトリに移動し、vimエディタを使用してconfig.phpファイルを編集します。

cd /opt/librenms/  
vim config.php

ファイルの下部に以下の行を追加します。

$config['fping'] = "/usr/sbin/fping";

変更を保存してエディタを終了します。

- SNMP構成

‘/etc/snmp/‘ディレクトリにあるデフォルトのsnmp.confファイルをバックアップし、librenmsディレクトリから新しいものをコピーします。

mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.asli  
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

新しい構成を編集します。

vim /etc/snmp/snmpd.conf

テキスト’RANDOMSTRINGGOESHERE’を自分のコミュニティ名に変更します。

com2sec readonly  default         hakaselabs

それでおしまいです。変更を保存してVimを終了します。

ランダム文字列を設定

次に、追加したオペレーティングシステムを検出するためのlibrenms-agentスクリプトをダウンロードします。Linux OSを追加すると、スクリプトは特定のLinuxディストリビューションを検出します。

curlを使用してスクリプトをダウンロードし、実行可能にします。

curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro  
chmod +x /usr/bin/distro

次に、以下のsystemctlコマンドを使用してSNMPサービスを再起動します。

systemctl restart snmpd

- LibreNMSのLogrotateを構成

LibreNMSはlogrotate構成のための構成を提供しており、’/opt/librenms/misc’ディレクトリにあります。

サンプル構成を’/etc/logrotate.d’ディレクトリにコピーします。

cp misc/librenms.logrotate /etc/logrotate.d/librenms

- LibreNMSのcronjob構成

‘opt/librenms’ディレクトリに移動し、crontabスクリプト’librenms.nonroot.cron’ファイルを’cron.d’ディレクトリにコピーします。

cd /opt/librenms/  
cp librenms.nonroot.cron /etc/cron.d/librenms

スクリプトが自動的に実行されるまで数分待ちます。

- LibreNMS構成の検証

インストールを確認するには、validate.phpスクリプトを使用します。’/opt/librenms/‘ディレクトリに移動し、スクリプトを実行します。

cd /opt/librenms/  
./validate.php

エラーが発生しない場合、次のような出力が表示されるはずです。

セットアップを検証する

これで、CentOS 7上のNginx WebサーバーでのLibreNMSのインストールが完了しました。

参考

Share: X/Twitter LinkedIn

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

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