GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So richten Sie das LibreNMS-Überwachungstool mit Nginx unter Ubuntu 16.04 LTS ein

LibreNMS ist ein Open-Source-Überwachungstool, das auf PHP/MYSQL/SNMP basiert. Es ist ein Netzwerküberwachungssystem mit Funktionen, das Unterstützung für eine breite Palette von Netzwerkhardware und Betriebssystemen bietet, darunter FreeBSD, Cisco, Linux, HP usw.

In diesem Tutorial zeige ich Ihnen, wie Sie das Open-Source-Überwachungstool „LibreNMS“ mit Nginx als Webserver, MariaDB als Datenbank und Ubuntu 16.04-Server als Hauptserver installieren und konfigurieren. Wir führen Sie Schritt für Schritt durch die Installation und Konfiguration von „LibreNMS“ auf dem Ubuntu 16.04 Xenial Xerus-Server.

Was wir tun werden

  1. Pakete installieren
  2. Nginx-Webserver installieren
  3. Installieren und konfigurieren Sie PHP-FPM
  4. MariaDB installieren und konfigurieren
  5. Laden Sie LibreNMS herunter und konfigurieren Sie es
  6. LibreNMS-Web-Installer
  7. Endgültige Konfiguration

Voraussetzungen

  • Ubuntu 16.04-Server
  • Root-Berechtigungen

Schritt 1 - Pakete installieren

Der erste Schritt, den wir für die Installation von LibreNMS Monitoring Tools ausführen müssen, besteht darin, einige Pakete zu installieren, die auf dem Server benötigt werden. Verbinden Sie sich mit Ihrem Server und aktualisieren Sie das Repository.

ssh [email protected]
sudo apt update

Installieren Sie alle erforderlichen Pakete für LibreNMS aus dem Ubuntu-Repository mit dem folgenden Befehl.

apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd  rrdtool git snmp graphviz

Fahren Sie nach Abschluss der Installation mit dem nächsten Schritt fort.

Schritt 2 – Nginx-Webserver installieren

In diesem Tutorial führen wir LibreNMS unter dem Nginx-Webserver aus. Nginx ist ein leistungsstarker Webserver, der in den Ubuntu-Repositories verfügbar ist.

Installieren Sie nginx mit dem apt-Befehl aus dem Repository auf folgende Weise.

apt install nginx

Starten Sie anschließend den Dienst und aktivieren Sie ihn so, dass er bei jedem Systemstart automatisch ausgeführt wird.

systemctl start nginx
systemctl enable nginx

Der Nginx-Webserver wird unter dem Standardport 80 ausgeführt. Wir können den Port mit dem Befehl netstat überprüfen und Nginx mit dem Befehl curl überprüfen, um den HTTP-Statuscode zu erhalten, wie unten gezeigt.

netstat -plntu | grep 80
curl -I localhost

Die Nginx-Installation ist abgeschlossen.

Schritt 3 – PHP-FPM installieren und konfigurieren

LibreNMS ist ein PHP-basiertes Überwachungstool für Webanwendungen. Es bietet Unterstützung für die neue PHP-Version 7.0 und wir werden es für dieses Handbuch verwenden.

Installieren Sie PHP, PHP-FPM und alle für die LibreNMS-Installation erforderlichen Erweiterungen/Module mit dem folgenden apt-Befehl.

apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6

Als nächstes müssen wir den php.ini-Dateien einige Konfigurationen hinzufügen. Wir müssen die Standardzeitzone in der php.ini-Datei definieren und sicherstellen, dass die Zeitzone mit der aktuellen vom System verwendeten Zeitzone übereinstimmt.

Überprüfen Sie die aktuell vom System verwendete Zeitzone mit dem folgenden Befehl.

timedatectl

Sie sollten ein ähnliches Ergebnis wie das folgende erhalten.

Wie Sie sehen, verwendet der Server die Datei „Europe/Paris ' Zeitzone.

Gehen Sie nun in das PHP-Konfigurationsverzeichnis und bearbeiten Sie die php.ini-Dateien für die cli- und fpm-Konfiguration.

cd /etc/php/7.0/
vim fpm/php.ini
vim cli/php.ini

Kommentieren Sie „date.time“ aus ' Zeile und ändern Sie den Wert mit unserer Systemzeitzone 'Europe/Paris '.

date.time = Europe/Paris

Entkommentieren Sie die CGI-Konfiguration unten, ändern Sie den Wert auf 0.

cgi.fix_pathinfo = 0

Speichern und beenden.

Die gesamte Konfiguration ist abgeschlossen. Starten Sie nun den Dienst und aktivieren Sie ihn so, dass er jedes Mal beim Systemstart gestartet wird, indem Sie die folgenden systemctl-Befehle verwenden.

systemctl start php7.0-fpm
systemctl enable php7.0-fpm

PHP-FPM läuft jetzt auf dem Ubuntu-Server - es läuft unter der Sockendatei. Überprüfen Sie es mit dem netstat-Befehl.

netstat -pl | grep php

Schritt 4 – MariaDB installieren und konfigurieren

In diesem Schritt installieren wir den Mariadb-Server für die LibreNMS-Datenbank. Wir installieren, konfigurieren und erstellen eine neue Datenbank und einen neuen Benutzer für die LibreNMS-Installation.

Installieren Sie mariadb-server aus dem Ubuntu-Repository mit dem folgenden apt-Befehl.

apt install mariadb-server mariadb-client mariadb

Wenn dies erledigt ist, starten Sie den Dienst und aktivieren Sie ihn so, dass er beim Systemstart automatisch ausgeführt wird, was Sie mit den folgenden systemctl-Befehlen tun können.

systemctl start mysql
systemctl enable mysql

Der Datenbankserver mariadb läuft jetzt. Als nächstes müssen wir das Root-Passwort für Mariadb konfigurieren. Wir können den 'mysql_secure_installation'-Befehl unten verwenden, um das Root-Passwort zu konfigurieren.

mysql_secure_installation

Sie werden nach dem neuen Root-Passwort gefragt - geben Sie Ihr Passwort ein und drücken Sie die Eingabetaste, um fortzufahren.

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

Das Root-Passwort für Mariadb wurde konfiguriert.

Als nächstes müssen wir eine neue Datenbank und einen neuen Benutzer für LibreNMS erstellen. Wir erstellen eine neue Datenbank namens „librenms“, einen neuen Benutzer namens „librenms“ mit dem Passwort „hakase-labs123“.

Melden Sie sich mit dem folgenden Befehl bei der Mariadb-Shell an.

mysql -u root -p
Type the ROOT Password:

Führen Sie unten Mariadb-Abfragen aus, um eine neue Datenbank und einen neuen Benutzer zu erstellen, und gewähren Sie dem neuen Benutzer alle Berechtigungen für die Datenbank.

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;

Eine neue Datenbank und ein neuer Benutzer für LibreNMS wurden erstellt.

Für die LibreNMS-Installation müssen wir der Konfigurationsdatei einige Konfigurationen hinzufügen. Gehen Sie in das Verzeichnis ‚/etc/mysql/‘ und bearbeiten Sie die Mariadb-Konfigurationsdatei.

cd /etc/mysql/
vim mariadb.conf.d/50-server.cnf

Fügen Sie die Konfiguration unten unter „[mysqld]“ ein ' Abschnitt.

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

Speichern und beenden.

Wenden Sie nun die neue Konfiguration an, indem Sie den Dienst neu starten.

systemctl restart mysql

Die Konfiguration der Mariadb-Datenbank ist abgeschlossen.

Schritt 5 – LibreNMS herunterladen und konfigurieren

In diesem Schritt konfigurieren wir das System für die Installation von LibreNMS.

- Neuen Benutzer hinzufügen und LibreNMS herunterladen

Erstellen Sie einen neuen Systembenutzer namens „librenms“, definieren Sie „/opt/librenms“ als Standard-Home-Verzeichnis für den Benutzer und weisen Sie den neuen Benutzer „librenms“ der www-data-Gruppe zu.

Führen Sie den folgenden Befehl aus, um alles zu erledigen.

useradd librenms -d /opt/librenms -M -r
usermod -a -G librenms www-data

Gehen Sie nun in das Verzeichnis ‚/opt/‘ und laden Sie den LibreNMS-Quellcode mit dem Befehl git herunter.

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

Erstellen Sie als Nächstes ein neues Verzeichnis für libreNMS-Protokolldateien und rrd-Dateien.

mkdir -p /opt/librenms/{logs,rrd}

Ändern Sie die Eigentumsberechtigungen für das Verzeichnis „rrd“ auf „775“ und ändern Sie den Eigentümer des Verzeichnisses „librenms“ in den Benutzer und die Gruppe „librenms“.

chmod -R 775 /opt/librenms/rrd/
chown -R librenms:librenms /opt/librenms/

Eine neue „librenms“ wurde erstellt und der LibreNMS-Quellcode wurde heruntergeladen.

- LibreNMS Virtualhost konfigurieren

Wechseln Sie in das Konfigurationsverzeichnis „nginx“ und erstellen Sie eine neue virtuelle Hostdatei „librenms“ mit vim

cd /etc/nginx/
vim sites-available/librenms

Fügen Sie dort die folgende Konfiguration des virtuellen LibreNMS-Hosts ein.

server {

    # Add your own domain name
    listen      80;
    server_name librenms.irsyadf.me;

    # LibreNMS Webroot directory
    root        /opt/librenms/html;
    index       index.php;

    # LibreNMS logs
    access_log  /opt/librenms/logs/access_log;
    error_log   /opt/librenms/logs/error_log;
   
    # Enabling Gzip compression on Nginx
    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 handle all .php files requests
    location ~ \.php {
        include fastcgi.conf;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }
 
    location ~ /\.ht {
        deny all;
    }
}

Speichern und schließen. Aktivieren Sie nun den virtuellen Host.

ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/

Testen Sie die nginx-Konfiguration und stellen Sie sicher, dass kein Fehler vorliegt. Starten Sie dann den Dienst neu.

nginx -t
systemctl restart nginx

- Konfigurieren Sie die UFW-Firewall

Fügen Sie der Firewall neue Ports hinzu. Fügen Sie der ufw-Firewall neue ssh, http, https und den von snmpd verwendeten Port 161 udp hinzu.

Führen Sie die folgenden ufw-Befehle aus.

ufw allow ssh
ufw allow http
ufw allow https
ufw allow 161/udp

Starten Sie die ufw-Firewall mit dem Befehl ufw enable wie unten gezeigt.

ufw enable

Geben Sie „y“ ein und drücken Sie zur Bestätigung „Enter“. Starten und aktivieren Sie es, um es jedes Mal beim Systemstart zu starten.

Wenn Sie den Firewall-Status sehen möchten, führen Sie den Befehl „ufw status“ aus.

ufw status

Sie erhalten den Firewall-Status – aktiv oder inaktiv – und die Liste der Ports und Dienste, die der Firewall hinzugefügt wurden.

Schritt 6 – LibreNMS-Web-Installer

Nachdem alle oben genannten Schritte abgeschlossen sind, müssen wir LibreNMS über den Webbrowser installieren. Öffnen Sie Ihren Webbrowser, geben Sie den LibreNMS-Domainnamen „librenms.hakase-labs.co“ in die Adressleiste ein und drücken Sie die Eingabetaste.

- PHP-Module prüfen

Sie werden auf die Seite install.php umgeleitet, die das Ergebnis der Überprüfungen der PHP-Modulunterstützung anzeigt. Stellen Sie sicher, dass alle Status grün sind, wie unten gezeigt.

Klicken Sie auf "Nächste Stufe". ' um fortzufahren.

- Datenbankkonfiguration

Füllen Sie alle Datenbankinformationen mit Ihrer eigenen Datenbank aus.

  • DB-Benutzer:librenms
  • DB-Pass:hakase-labs123
  • DB-Name:librenms

Und klicken Sie auf „Nächste Phase '.

- Importieren der MySQL-Datenbank

Warten Sie, bis das Installationsskript eine Beispieldatenbank in unsere Datenbank importiert hat. Schließen Sie während dieses Vorgangs nicht den Browser-Tab.

Nachdem alle Datenbanken importiert wurden, klicken Sie auf „Gehe zu Benutzer hinzufügen '.

- Admin-Benutzer hinzufügen

Geben Sie hier Ihren Admin-Benutzer, Ihre E-Mail-Adresse und Ihr Passwort ein.

Klicken Sie auf "Nutzer hinzufügen". '.

- Generieren Sie die LibreNMS-Konfiguration

Klicken Sie auf 'Konfiguration generieren ' Schaltfläche.

Und Sie erhalten eine Konfigurationsdatei ähnlich der unten gezeigten.

Kopieren Sie das PHP-Konfigurationsskript und kehren Sie zu Ihrer SSH-Sitzung zurück. Gehen Sie in das Verzeichnis „/opt/librenms“ und erstellen Sie die Datei „config.php“ manuell mit vim.

cd /etc/librenms/
vim config.php

Fügen Sie die Konfiguration dort ein und ändern Sie den Eigentümer der Datei in librenms user and group.

chown librenms:librenms config.php

Kehren Sie zu Ihrem Webbrowser zurück und klicken Sie auf „Installation abschließen“. ' Schaltfläche.

Jetzt gelangen Sie zur letzten Seite des librenms-Webinstallers – siehe unten.

Schritt 7 – Endgültige Konfiguration

Nachdem die Installation über den Webbrowser abgeschlossen ist, müssen wir einige weitere Schritte ausführen.

- SNMP konfigurieren

Sichern Sie die Standardkonfigurationsdatei und kopieren Sie die Beispielkonfiguration in das Verzeichnis „/etc/snmp/“.

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

Bearbeiten Sie die neue Konfiguration mit vim.

vim /etc/snmp/snmpd.conf

Ersetzen Sie die Zeile „RANDOMSTRINGGOESHERE“ durch Ihren eigenen Community-Namen „hakaselabs“, wie unten gezeigt.

com2sec readonly  default         hakaselabs

Speichern und beenden.

Als nächstes müssen wir das Distributionserkennungsskript herunterladen. Laden Sie es mit curl herunter, machen Sie das Skript ausführbar und starten Sie schließlich den SNMP-Dienst neu.

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

- Crontab- und Logrotate-Konfiguration

Wechseln Sie in das Verzeichnis librenms und kopieren Sie die Beispielkonfiguration für Crontab und Logrotate.

cd /opt/librenms/

Kopieren Sie die Konfiguration.

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

Starten Sie nun den Cron-Dienst neu und laden Sie die Logrotate-Konfiguration neu.

systemctl restart cron
logrotate -f /etc/logrotate.conf

- Konfiguration validieren

Warten Sie einige Zeit, bis das Cron-Skript auf dem System ausgeführt wird. Sobald dies erledigt ist, validieren Sie mit dem Skript „validate.php“.

Wechseln Sie in das librenms-Verzeichnis und führen Sie das Validierungsskript aus.

cd /opt/librenms/
./validate.php

Wenn Ihre Installation korrekt ist, erhalten Sie das unten gezeigte Ergebnis.

Die LibreNMS-Installation mit Nginx-Webserver auf Ubuntu 16.04 ist abgeschlossen.


Ubuntu
  1. So installieren Sie Nextcloud mit Nginx auf Ubuntu 18.04 LTS

  2. So installieren Sie das Zabbix-Überwachungstool unter Ubuntu 18.04 LTS

  3. So installieren Sie Seafile mit Nginx unter Ubuntu 20.04 LTS

  4. So installieren Sie das LibreNMS-Überwachungstool mit Nginx unter CentOS 7

  5. So stellen Sie Modsecurity mit Nginx auf Ubuntu 20.04 LTS bereit

So installieren Sie phpMyAdmin mit Nginx (LEMP) unter Ubuntu 18.04 LTS

So installieren Sie Nginx mit dem Ngx_Pagespeed-Modul unter Ubuntu 16.04 LTS

So installieren Sie Joomla mit Nginx unter Ubuntu 18.04 LTS

So installieren Sie phpMyAdmin mit Nginx unter Ubuntu 18.04 LTS

So installieren Sie phpMyAdmin mit Nginx unter Ubuntu 20.04 LTS

So installieren Sie LibreNMS auf Ubuntu 20.04 LTS