LibreNMSは、PHPに基づいており、自動検出をサポートするオープンソースのネットワーク監視システムです。これは、GPLv3ライセンスの下でリリースされたObservium監視ソフトウェアのコミュニティフォークです。 LibreNMSを使用すると、Linux、Windows、BSDなどのオペレーティングシステムを監視できます。また、Aruba、Cisco、Dell、D-Link、HP、Mikrotikなどの複数のベンダーの幅広いネットワークハードウェアをサポートしています。
フル機能の監視システムとして、LibreNMSは、複数の統合と複数のプロトコルデータ収集を備えた豊富な機能を提供します。
以下は、LibreNMSのいくつかの注目すべき機能です。
- CDP、BGP、SNMP、OSPF、ARPなどの複数のプロトコルを使用してネットワーク全体を自動検出します。
- メール、スラックス、IRC、Rocket.chat、Telegramなどを使用した複数のアラート方法
- 監視システムからデータを管理、グラフ化、取得するための広範なAPI。
- ネットワークの使用状況または転送に基づいて帯域幅の請求書を生成するための請求システムをサポートします。
- MySQL、Radius、LDAP、HTTP、ActiveDirectoryなどの複数の認証方法をサポートします。
- 2要素認証をサポートします
- Graylog、NfSen、Nagiosプラグイン、Oxidized、RANCIDなどのサードパーティアプリケーションとの複数の統合。
- ハードウェアベンダーの幅広いサポートについては、こちらでベンダーを確認してください。
- ユーザーフレンドリーでカスタマイズ可能なダッシュボード。
- 自動更新をサポートするLibreNMSソフトウェアを維持します。
- コア機能を提供するAndroidおよびiOS用のネイティブアプリケーション。
このガイドでは、Debian11BullseyeにLibreNMS監視ツールをインストールして設定する方法を学習します。
このガイドを完了するには、次の要件があることを確認してください。
- オペレーティングシステム:Debian 11 Bullseye
- root権限
それでは、インストールを開始しましょう。
この最初のステップでは、LireNMSの基本パッケージと必須パッケージをインストールします。 LEMPスタック、Pythonパッケージ、snmpd、およびcurl、fping、git、imagemagickなどの追加のシステムユーティリティをインストールします。
1.次のコマンドを使用して、Debianリポジトリを更新および更新します。
sudo apt update
2.次に、次のコマンドを実行して、パッケージの依存関係をインストールします。
sudo apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-gmp php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-pip python3-systemd rrdtool snmp snmpd whois
「y」と入力してインストールを確認し、「Enter」を押して続行します。
3.パッケージの依存関係のインストールが完了したら、次のコマンドを実行して、Nginx、MariaDB、PHP-FPM、snmpdなどのサービスを開始して有効にします。
sudo systemctl enable --now nginx
sudo systemctl enable --now mariadb
sudo systemctl enable --now php7.4-fpm
sudo systemctl enable --now snmpd.service
これで、LibreNMSのパッケージ依存関係のインストールが完了しました。
このステップでは、新しいシステムユーザー「librenms」を作成します。 LibreNMS監視ツールは「librenms」ユーザーの下で実行されます。
1.次のコマンドを実行して、新しい「librenms」ユーザーを作成します。
useradd librenms -d /opt/librenms -M -r -s "$(which bash)"
知っておくべきオプション:
- -d / opt / librenms: ユーザー「librenms」のデフォルトのホームディレクトリを「/opt/librenms」に設定します。
- -M: ユーザー「librenms」のホームディレクトリを作成しないでください。
- -r: このユーザーをシステムユーザーとして「librenms」にします。
- -s "$(which bash)" :ユーザー'librenms'のデフォルトシェルを設定します。シェルは、コマンド「whichbash」の出力になります。
2.次に、次のコマンドを使用して、ユーザー「librenms」の新しいパスワードを作成します。
passwd librenms
新しい強力なパスワードを入力して繰り返します。
次の段階に進んで、LibreNMSインストール用にシステムを構成します。
時間は監視の重要な部分です。このステップでは、PHPとシステムのタイムゾーンのデフォルトのタイムゾーンを設定します。両方(PHPとシステム)のタイムゾーンが同期され、同じタイムゾーンを使用していることを確認してください。
1.次のコマンドを使用して、PHP-FPMおよびCLIの構成「php.ini」を編集します。
sudo nano /etc/php/7.4/fpm/php.ini
sudo nano /etc/php/7.4/cli/php.ini
オプション「date.timezone」のコメントを解除し、その後にタイムゾーンを配置します。この例では、タイムゾーン' Europe / Paris'を使用しています。 。
date.timezone = Europe/Paris
両方の構成を保存して終了します。
2.次に、PHP-FPMを再起動して、次のコマンドを使用して新しい構成を適用します。
sudo systemctl restart php7.4-fpm
3.その後、以下のtimedatectlコマンドを実行して、デフォルトのシステムタイムゾーンを「 Europe / Paris」に設定します。 '。
sudo timedatectl set-timezone Europe/Paris
PHPとシステムのタイムゾーン設定が完了しました。
MariaDBをセットアップしてデータベースを作成
このステップでは、LibreNMS要件としてMariaDBの構成を追加してから、LibreNMSインストール用の新しいMariaDBデータベースとユーザーを作成します。
1.MariaDBサーバー構成を編集します'/etc/mysql/mariadb.conf.d/50-server.cnf 'nanoエディターを使用します。
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
セクション'[mysqld]'の下に次の構成を追加します 。
[mysqld]
.....
....
innodb_file_per_table=1
lower_case_table_names=0
構成を保存して終了します。
2.新しいMariaDB構成を適用するには、以下のsystemctlコマンドを使用してサービスを再起動します。
sudo systemctl restart mariadb
これで、MariaDBサーバーに構成が追加されました。
3.次に、コマンド' mysqlを使用してMariaDB/MySQLシェルにログインします。 'ユーザーとして'root '以下のように。
mysql -u root -p
パスワードを入力するか、「 Enter」を押します 'ログインします。
4.次に、次のMariaDBクエリを実行して、新しいデータベースとユーザー' librenmsを作成します。 '。また、必ずパスワードを変更してください' LibreNMSPassword '強力なパスワードを使用します。
CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'LibreNMSPassword';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
「exit」と入力して「Enter」を押します 'MariaDBシェルからログアウトします。
これで、LibreNMSをインストールするためのデータベースとユーザーが作成されました。
FastCGI Process Manager(FPM)またはPHP-FPMを使用すると、PHPアプリケーションのカスタムプールを行うことができます。デフォルトでは、構成が「/etc/php/7.4/fpm/pool.d/www.conf」で「www」プールを実行しているPHP-FPM 。
彼のステップでは、LibreNMS用の新しいカスタムPHP-FPMプールを作成します。新しいPHP-FPMプールを作成します'librenms '構成'/etc / php / 7.4 / fpm / pool.d / librenms.conf '、およびユーザー' librenmsの下で実行されます '。
1.まず、デフォルトのプール構成をコピーします' www.conf 'から'librenms.conf '次のコマンドを使用します。
cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf
2.nanoエディターを使用してカスタムの「librenms.conf」プール構成を編集します。
sudo nano /etc/php/7.4/fpm/pool.d/librenms.conf
行の先頭で、デフォルトのユーザーを'[www]'から変更します。 ' [librenms]' 。
[librenms]
デフォルトのユーザーとグループを'librenmsに変更します '。
user = librenms
group = librenms
デフォルトのPHP-FPMSockファイルを'/run/php-fpm-librenms.sockに変更します '。
listen = /run/php-fpm-librenms.sock
構成を保存して終了します。
3.次に、PHP-FPMサービスを再起動して、新しい構成を適用します。
sudo systemctl restart php7.4-fpm
これで、PHP-FPMは、sockファイル'/run/php/php-fpm-librenms.sock'を使用して新しいプール'librenms'を生成します。 。
4.' librenmsを確認します '次のコマンドを使用してsockファイル。
ss -anl | grep librenms
以下のような出力が表示されます。
u_str LISTEN 0 511 /run/php/php-fpm-librenms.sock 69199 * 0 users:(("php-fpm7.4",pid=26105,fd=10),("php-fpm7.4",pid=26104,fd=10),("php-fpm7.4",pid=26103,fd=7))
これで、LibreNMS監視ツールをダウンロードしてインストールする準備が整いました。
LibreNMSをダウンロード
このステップでは、LibreNMSソースコードをダウンロードし、そのアクセス許可とアクセス制御を設定します。
1.作業ディレクトリを「/opt」に変更し、以下のようにgitコマンドを使用してLibreNMSソースコードをダウンロードします。
cd /opt/
git clone https://github.com/librenms/librenms.git
LibreNMSのインストールは'/ opt / librenms 'ディレクトリ。
2.次のコマンドを使用して、LibreNMSインストールの所有権と権限を変更します。
chown -R librenms:librenms /opt/librenms
chmod 771 /opt/librenms
3.次に、LibreNMSインストールディレクトリのアクセス制御リスト(ACL)を設定します。次のsetfaclコマンドを使用して、グループが以下の各ディレクトリで読み取り/書き込み実行できるようにします。
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
LibreNMSのPHP依存関係をインストールするための次のステップに進みます。
LibreNMSPHP依存関係のインストール
LibreNMS PHPの依存関係をインストールするには、ユーザー「librenms」としてログインし、LibreNMSソースコードに含まれているcomposer_wrapperを使用する必要があります。
1.次のコマンドを使用して、ユーザー「librenms」としてログインします。
su - librenms
2.PHPスクリプト'composer_wrapper.phpを実行します 'LibreNMSのPHPパッケージの依存関係をインストールします。
./scripts/composer_wrapper.php install --no-dev
3.すべてのダウンロードプロセスが完了したら、「 exit」と入力します 'を押して'Enter 'ユーザーからログアウトするには'librenms '。
これで、LibreNMSのPHP依存関係のインストールが完了しました。
LibreNMS用のNginxの構成
このステップでは、LibreNMS監視ツール用の新しいNginxサーバーブロックを作成します。この例では、ドメイン名「librenms.example.io」を使用します。
1.新しいNginxサーバーブロック構成を作成します'librenms 'nanoエディターを使用します。
sudo nano /etc/nginx/sites-available/librenms
次の構成をコピーして貼り付けます。また、ドメイン名は必ずドメインに合わせて変更してください。
server {
listen 80;
server_name librenms.example.io;
root /opt/librenms/html;
index index.php;
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 ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php-fpm-librenms.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi.conf;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
HTTPS LibreNMSを安全にインストールするには、次の構成を使用します。また、SSL証明書のドメイン名とパスを必ず変更してください。
server {
listen 80;
server_name librenms.example.io;
rewrite ^ https://$server_name$request_uri? permanent;
}
server {
server_name librenms.example.io;
root /opt/librenms/html;
index index.php;
listen 443 ssl http2;
server_name example.io;
ssl_certificate /etc/letsencrypt/live/librenms.example.io/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/librenms.example.io/privkey.pem;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
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 ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php/php-fpm-librenms.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi.conf;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
次に、構成を保存して終了します。
2.次に、新しい仮想ホスト' librenmsをアクティブ化します 'そして、次のコマンドを使用してnginx構成を確認します。
sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/
sudo nginx -t
構成が正しい場合は、「テストは成功しました」などの出力メッセージが表示されます。 。
3.最後に、nginxサービスを再起動して、新しい構成を適用します。
sudo systemctl restart nginx
これで、LibreNMSのNginxサーバーブロック構成が完了しました。これで、LibreNMSのインストールを開始する準備が整いました。
LibreNMSのインストールを開始します
LibreNMSのインストールを開始するには、Webブラウザーを開き、アドレスバーにLibreNMSドメイン名を入力します。
https://librenms.example.io。
1.LibreNMSのインストール前のチェックが表示されます '。すべてのステータスマークが緑色になっていることを確認してから、アイコンデータベースをクリックして続行します。
2.データベース、ユーザー、およびパスワードを入力します。次に、[資格情報の確認]ボタンをクリックします '。
これにより、MariaDBデータベースとユーザーのチェックが実行されます。成功すると、「データベースクレデンシャル」に緑色のマークが表示されます。 '。
3.次に、[データベースの構築]ボタンをクリックします。 'LibreNMSのデータベーススキーマをインポートします。
データベースの構成が完了したら、両方のセクションのデータベースの資格情報を確認してください。 'および'データベースの構築 '緑色としてマークします。
4.次に[キー]をクリックします 'アイコンで続行します。
新しいユーザー、パスワード、および電子メールアドレスを入力して、LibreNMS管理者ユーザーを作成します。
[ユーザーの追加]ボタンをクリックします '。
管理者ユーザーが作成されている場合は、以下のページにユーザー管理者が表示されます。
5.マークアイコンをクリックしてインストールを完了します。以下は、取得する出力です。
LibreNMSのインストールを完了するには、以下のようにLibreNMS検証ページを開きます。
https://librenms.example.io/validate
6.そして、LibreNMSログインページにリダイレクトされます。
管理者ユーザーとパスワードを入力し、[ログイン]をクリックします 'ボタン
7. LibreNMS検証ページで、以下のようなエラーが表示されます。
さまざまなエラーが発生する可能性がありますが、LibreNMS検証ページにエラーの解決策が記載されています。
8.以下は、インストールのエラーとその修正方法です。
-データベースのタイムゾーンを修正
rootユーザーを使用してMariaDBシェルにログインします。
mysql -u root -p
現在のデータベースを「librenms」に変更します。
use librenms;
次に、次のクエリを実行して、データベースのタイムゾーンエラーを修正します。
SET TIME_ZONE='+00:00';
ALTER TABLE `notifications` CHANGE `datetime` `datetime` timestamp NOT NULL DEFAULT '1970-01-02 00:00:00' ;
ALTER TABLE `users` CHANGE `created_at` `created_at` timestamp NOT NULL DEFAULT '1970-01-02 00:00:01' ;
バイナリコマンドLibreNMS'lnms'を'/ usr / binに追加します '次のコマンドを使用したディレクトリ。
sudo ln -s /opt/librenms/lnms /usr/bin/lnms
コマンド「lnms」のbash補完を有効にします。
sudo cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
最後に、LibreNMSのlogrotate構成をディレクトリ'/etc/logrotate.d/'にコピーします。
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
9. LibreNMSエラーを修正した後、LibreNMS検証ページに戻り、ページをリロードします。
ここで、すべてのステータスが「 OK」であることを確認します '。
10.[概要]をクリックします 'ダッシュボードを表示するメニュー。
これで、Debian11BullseyeへのLibreNMSのインストールが完了しました。
おめでとうございます!これで、LibreNMS監視ツールとNginx、PHP-FPM、およびMariaDBデータベースが最新のDebian11Bullseyeに正常にインストールされました。さらに、カスタムPHP-FPMプールを作成し、LibreNMSインストールのいくつかのエラーを修正する方法を学びました。
次のステップでは、監視するホストをLibreNMS監視ツールに追加する方法を学習します。