So installieren Sie das LibreNMS-Überwachungstool mit Nginx auf centOS 7

Wir wissen sehr gut, dass wir bei der Verwendung von Linux-Distributionen die Möglichkeit haben, Hunderte oder vielleicht Tausende von Open-Source-Anwendungen und -Programmen zu implementieren, die nicht nur kostenlos sind, sondern auch die Fähigkeiten unserer Teams drastisch erhöhen.

Für jeden Bereich einer Organisation gibt es Anwendungen, die Solvetic heute im Detail analysieren wird, wie das LibreNMS-Tool installiert wird, und uns als Administratoren so ein leistungsstarkes Analyse- und Überwachungstool zur Verfügung stellen, damit wir sich aller Änderungen bewusst, die die Distribution betreffen, an der wir arbeiten.

Was ist LibreNMSLibreNMS ist ein Open-Source-Monitoring-Tool auf Basis von PHP, MYSQL und SNMP. LibreNMS ist ein voll funktionsfähiges Netzwerküberwachungssystem für eine breite Palette von Netzwerkhardware und Betriebssystemen, einschließlich FreeBSD, Cisco, Linux, HP und mehr.

Bei der Verwendung von LibreNMS haben wir die folgenden Eigenschaften:

  • Automatische Erkennung, da das gesamte Netzwerk mithilfe von CDP, FDP, LLDP, OSPF, BGP, SNMP und ARP automatisch erkannt werden kann
  • Konfigurierbare Benachrichtigungen, die es uns ermöglichen, Benachrichtigungen per E-Mail, IRC, Slack und mehr zu erhalten
  • Zugriff über API, um Daten aus Ihrer Installation zu verwalten, grafisch darzustellen und abzurufen
  • Es verfügt über ein Inkassosystem, über das wir Bandbreitenrechnungen für Netzwerkports nach Nutzung oder Übertragung erstellen können
  • Es hat automatische Updates
  • Hohe Skalierbarkeit
  • Es hat Anwendungen für Android und iOS
  • Breite Geräteunterstützung
  • Mobilfreundliche Web-Benutzeroberfläche
  • Unix-Agent
  • Kann mit NfSen, Collectd, SmokePing, RANCID und Oxidized integriert werden
  • Unterstützt MySQL-, HTTP-, LDAP-, Radius- und Active Directory-Authentifizierungsmethoden

Bisherige AnforderungenUm LibreNMS zu installieren und zu verwenden, benötigen Sie Folgendes:

  • CentOS 7 Minimal
  • Benutzer mit Root-Rechten

1. Installieren der erforderlichen Linux-Pakete


Vor der Installation von LibreNMS auf CentOS 7 müssen einige Pakete installiert werden, darunter ImageMagick, rrdtool, SNMP, git und mehr. Diese Pakete können mit dem folgenden Befehl installiert werden:
 yum -y install net-snmp ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils cronie fping git

VERGRÖSSERN

Sobald die Installation abgeschlossen ist, sehen wir Folgendes:

VERGRÖSSERN

2. So installieren Sie den Nginx-Server


Nginx [engine x] ist ein HTTP-Server und Reverse-Proxy, ein Mail-Proxy-Server und ein generischer TCP / UDP-Proxy-Server, der ursprünglich von Igor Sysoev geschrieben wurde. Es läuft seit langem auf vielen stark belasteten russischen Websites wie Yandex, Mail.Ru, VK und Rambler und wird derzeit weltweit als HTTP-Server verwendet.

Schritt 1
Vor der Installation von Nginx müssen wir die epel-Repositorys für die Nginx-Webserverinstallation installieren. Das EPEL-Repository (Additional Packages for Enterprise Linux) ist ein zusätzliches Repository für RPM-basierte Betriebssysteme, einschließlich CentOS 7. Wir werden Folgendes ausführen:

 yum -y epel-release installieren

VERGRÖSSERN

Schritt 2
Nun fahren wir mit der Installation des Nginx-Servers mit folgendem Befehl fort:

 yum -y installiere nginx

VERGRÖSSERN

Schritt 3
Sobald Nginx auf CentOS 7 installiert ist, sehen wir Folgendes:

VERGRÖSSERN

Schritt 4
Nach der Installation von Nginx auf CentOS 7 starten wir den Dienst und aktivieren ihn automatisch beim Start mit den folgenden systemctl-Befehlen:

 systemctl nginx starten systemctl nginx aktivieren

VERGRÖSSERN

Schritt 5
Daher wurde der Nginx-Webserver aus dem EPEL-Repository auf dem System installiert und wir können ihn überprüfen, indem wir die folgende Zeile ausführen:

 netstat -plntu

VERGRÖSSERN

Dort sehen wir die Ports, über die wir uns mit Nginx verbinden.

3. So installieren und konfigurieren Sie PHP-FPM

Schritt 1
In diesem Fall verwenden wir Version 7 von PHP-FPM für die LibreNMS-Installation. Alle PHP 7-Pakete für CentOS 7 sind über das Drittanbieter-Repository verfügbar, und wir werden die PHP 7-Version des 'webtatic'-Repositorys verwenden.
Dazu fügen wir zunächst das Webtatic-Repository von PHP 7 mit dem folgenden rpm-Befehl zum System hinzu:

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

VERGRÖSSERN

Schritt 2
Als nächstes installieren wir PHP 7 und alle notwendigen Erweiterungen aus dem Wet-Repository mit yum:

 yum -y installiere php70w php70w-cli php70w-gd php70w-mysql php70w-snmp php70w-birne php70w-curl php70w-common php70w-fpm php70w-mcrypt

VERGRÖSSERN

Schritt 3
Nach dem Herunterladen und Installieren aktualisieren wir das PEAR-Repository und installieren einige PEAR-Erweiterungen (PHP Extension and Application Repository) mit dem Befehl pear:

 Birne Kanal-Update Birne.php.net Birne installieren Net_IPv4-1.3.4 Birne installieren Net_IPv6-1.2.2b2

VERGRÖSSERN

Als nächstes konfigurieren wir PHP-FPM für die LibreNMS-Installation.

Schritt 4
Zuerst müssen Sie die Standardzeitzone in der Datei php.ini definieren und sicherstellen, dass die Zeitzone mit der aktuellen Zeitzone des Systems übereinstimmt. Wir können die aktuelle Zeitzone Ihres Systems mit dem folgenden Befehl überprüfen:

 timedatectl

VERGRÖSSERN

Schritt 5
Sobald wir die Zeitzone definiert haben, bearbeiten wir die Datei php.ini im folgenden Pfad: /etc/php.ini, wir können dies mit jedem Editor wie nano oder vim tun:

 nano /etc/php.ini
In der angezeigten Datei nehmen wir folgende Änderungen vor:

Wir werden die Zeile date.timezone auskommentieren und die vom Befehl timedatectl angezeigte Zone hinzufügen

VERGRÖSSERN

Wir werden die Zeile cgi.fix_pathinfo auskommentieren und ihren Wert auf Null (0) zuweisen.

VERGRÖSSERN

Wir speichern die Änderungen mit der Tastenkombination Strg + O und verlassen den Editor mit Strg + X.

Schritt 6
Der nächste Schritt besteht darin, zu definieren, wie PHP-FPM auf dem System ausgeführt wird. In diesem Fall läuft PHP-FPM unter der 'sock'-Datei anstelle des Server-Ports. Bearbeiten Sie die Datei 'www.conf' mit nano, um PHP-FPM zu konfigurieren:

 nano /etc/php-fpm.d/www.conf
Dort ändern wir die Listenzeile, die den Standardwert 127.0.0.1:9000 hat, wie folgt:
 hören = /var/run/php-fpm/php7.0-fpm.sock

VERGRÖSSERN

Schritt 7
In derselben Datei werden wir die folgenden Zeilen auskommentieren. Wir speichern die Änderungen auf dem Server.

 listen.owner = nginx listen.group = nginx listen.mode = 0660
PHP-FPM ist nun abgeschlossen, wir können den Dienst starten und ihn mit den folgenden Befehlen automatisch beim Start ausführen lassen:
 systemctl starte php-fpm systemctl aktiviere php-fpm
Wir werden überprüfen, ob PHP-FPM unter der Sock-Datei ausgeführt wird, dies kann mit dem Befehl netstat überprüft werden:
 netstat -pl | grep php

VERGRÖSSERN

4. So installieren und konfigurieren Sie MariaDB

Schritt 1
LibreNMS verwendet die MySQL-Datenbank, um alle Daten zu speichern. In diesem Fall verwenden wir die im Repository verfügbare Version der MariaDB-Datenbank, und es müssen einige Konfigurationen für die LibreNMS-Installation installiert und hinzugefügt werden, einschließlich des Hinzufügens der Datenbank und des Benutzers für LibreNMS.

Wir werden MariaDB installieren, indem wir Folgendes ausführen:

 yum -y installiere mariadb mariadb-server

VERGRÖSSERN

Schritt 2
Nach der Installation starten wir den MariaDB-Dienst und aktivieren ihn automatisch beim Booten:

 systemctl start mariadb systemctl aktivieren mariadb 

VERGRÖSSERN

Schritt 3
Wir können den Dienst mit seinem jeweiligen Port überprüfen, indem wir Folgendes ausführen:

 netstat -plintu

VERGRÖSSERN

Schritt 4
Jetzt müssen wir das MariaDB-Root-Passwort mit dem Befehl ‚mysql_secure_installation‘ konfigurieren: In den angezeigten Fragen beantworten wir Folgendes:

 Root-Passwort setzen? [J / n] J Anonyme Benutzer entfernen? [J / n] J Root-Anmeldung aus der Ferne verbieten? [J / n] J Testdatenbank entfernen und darauf zugreifen? [J / n] J Berechtigungstabellen jetzt neu laden? [J / n] Ja

VERGRÖSSERN

Auf diese Weise wurde MariaDB installiert.

Schritt 5
Der nächste Schritt besteht darin, eine neue Datenbank und einen neuen Benutzer für LibreNMS zu erstellen. Melden Sie sich mit dem mysql-Client und mit dem neuen zugewiesenen Passwort an der MySQL-Shell-Befehlszeile an:

 mysql -u root -p
Erstellen Sie eine neue Datenbank namens 'librenms', einen neuen Benutzer 'librenms' mit dem Passwort 'password123'
 CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci; CREATE USER 'librenms' @ 'localhost' IDENTIFIED BY 'password123'; GEWÄHRLEISTEN SIE ALLE PRIVILEGIEN AUF librenms * TO 'librenms' @ 'localhost'; Flush-Privilegien;
Wir beenden MariaDB, indem wir den Exit-Befehl ausführen.

VERGRÖSSERN

5. So konfigurieren Sie MySQL


Jetzt müssen wir die Datei my.cnf bearbeiten, um eine neue MySQL-Konfiguration hinzuzufügen. Wir werden die Datei /etc/my.cnf mit nano bearbeiten:
 nano /etc/my.cnf
In die angezeigte Datei fügen wir im Abschnitt [mysqld] Folgendes ein:
 innodb_file_per_table = 1 sql-mode = "" lower_case_table_names = 0

VERGRÖSSERN

Wir speichern die Änderungen. Jetzt starten wir den MariaDB-Dienst neu, indem wir Folgendes ausführen:

 systemctl neustart mariadb

6. So laden Sie LibreNMS herunter und konfigurieren es


Wenn alles oben konfiguriert ist, besteht der nächste Schritt darin, das System für LibreNMS vorzubereiten. Dazu werden wir Folgendes tun.

Schritt 1
An dieser Stelle erstellen wir einen neuen Systembenutzer namens 'librenms', definieren dann das Home-Verzeichnis für den Benutzer im Verzeichnis /opt/librenms und fügen schließlich den librenms-Benutzer der nginx-Gruppe hinzu:

 useradd librenms -d / opt / librenms -M -rusermod -a -G librenms nginx
Sobald der Benutzer erstellt und der entsprechenden Gruppe hinzugefügt wurde, gehen wir in das Verzeichnis /opt/ und laden den LibreNMS-Quellcode mit dem Befehl git clone wie folgt herunter:
 useradd librenms -d / opt / librenms -M -r usermod -a -G librenms nginx

VERGRÖSSERN

Schritt 2
Wir werden ein neues Verzeichnis für die LibreNMS-Protokolle und rrd-Dateien erstellen:

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

VERGRÖSSERN

Jetzt ändern wir den Besitz aller Dateien und Verzeichnisse im Verzeichnis /opt/librenms auf den Benutzer und die Gruppe librenms, indem wir Folgendes ausführen:

 chown -R librenms: librenms / opt / librenms /

7. So konfigurieren Sie den virtuellen LibreNMS-Host


LibreNMS ist eine webbasierte Anwendung und bis jetzt verwenden wir einen Nginx-Webserver, um sie zu hosten.
Wir erstellen eine neue virtuelle Hostdatei librenms.conf im Verzeichnis nginx conf.d, indem wir Folgendes ausführen:
 nano /etc/nginx/conf.d/librenms.conf
In diese neue Datei fügen wir Folgendes ein:
 server {# Eigenen Domainnamen hinzufügen listen 80; Servername librenms.irsyadf.me; # LibreNMS Webroot-Verzeichnis root / opt / librenms / html; index.php; # LibreNMS-Protokolle access_log / opt / librenms / logs / access_log; error_log / opt / librenms / logs / error_log; # Aktivieren der Gzip-Komprimierung für den Nginx-Zeichensatz utf-8; gzip an; gzip_types Text / CSS-Anwendung / Javascript-Text / JavaScript-Anwendung / x-Javascript-Bild / SVG + XML-Text / Nur-Text / xsd-Text / xsl-Text / xml-Bild / x-Symbol; Speicherort / {try_files $ uri $ uri / /index.php?$query_string; } Speicherort / api / v0 {try_files $ uri $ uri / /api_v0.php?$query_string; } # PHP-FPM verarbeitet alle .php-Dateien Anforderungen Speicherort ~ \ .php {include fastcgi.conf; fastcgi_split_path_info (. + \. php) (/.+) $; fastcgi_pass unix: /var/run/php-fpm/php7.0-fpm.sock; } location ~ /\.ht {alle verweigern; }}

VERGRÖSSERN

Wir können die Änderungen mit den Tasten Strg + O speichern und den Editor mit Strg + X verlassen. Jetzt können wir die Nginx-Konfiguration testen, indem wir Folgendes ausführen:

 nginx -t

VERGRÖSSERN

Wir werden den Nginx-Dienst neu starten, indem wir Folgendes ausführen:

 systemctl Neustart nginx

8. So konfigurieren Sie die Firewall in CentOS 7


Wir müssen überprüfen, ob die Firewalld-Pakete auf Ihrem System installiert sind. Wenn nicht, können wir Firewalld mit dem folgenden yum-Befehl installieren:
 yum -y Firewall installierend
Nach der Installation starten wir Firewalld und aktivieren es beim Booten mit den folgenden systemctl-Befehlen:
 systemctl Firewalld starten systemctl Firewall aktivieren
Nach der Aktivierung fügen wir die folgenden Zeilen hinzu, um die jeweiligen Dienste zu aktivieren:
 Firewall-cmd --add-service = http --permanent Firewall-cmd --add-service = https --permanent Firewall-cmd --add-port = 161 / udp -permanent
Wir übernehmen die Änderungen, indem wir Firewalld mit dem folgenden Befehl neu laden:
 Firewall-cmd -reload
Wir können die Regeln auflisten, um zu bestätigen, dass die Dienste korrekt hinzugefügt wurden:
 Firewall-cmd --list-all

VERGRÖSSERN

Wir werden von jedem Browser aus zugreifen, indem wir die IP-Adresse des Servers eingeben, wir geben die Anmeldeinformationen ein und dies ist die LibreNMS-Umgebung:

VERGRÖSSERN

Von dort aus können wir die gesamte Verwaltung der zugehörigen Geräte durchführen.

wave wave wave wave wave