Wie richte ich das LibreNMS-Überwachungstool mit Nginx unter Ubuntu 20.04 ein?

LibreNMS ist ein freies und quelloffenes Netzwerküberwachungswerkzeug für das Betriebssystem Linux. Mit LibreNMS können Sie verschiedene Betriebssysteme wie Linux, Windows, FreeBSD und verschiedene Netzwerkgeräte wie Cisco, Juniper, Foundry, FreeBSD, Brocade und viele andere überwachen. Es verwendet die Protokolle SNMP, ARP, CDP, FDP, LLDP, OSPF und BGP zur automatischen Erkennung des gesamten Netzwerks. Es hat eine einfache und benutzerfreundliche Webschnittstelle, mit der Sie alle Geräte vom Webbrowser aus überwachen können. Sie verfügt über eine Vielzahl von Funktionen, darunter automatische Erkennung, anpassbare Warnmeldungen, API-Zugriff, automatische Updates und vieles mehr.

In diesem Tutorial zeigen wir Ihnen Schritt für Schritt, wie Sie LibreNMS unter Ubuntu 20.04 installieren.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein Root-Passwort ist konfiguriert auf.

Erste Schritte

Zunächst wird empfohlen, Ihre Systempakete auf die neueste Version zu aktualisieren. Sie können dies mit dem folgenden Befehl tun:

apt-get update -y

Nachdem Sie alle Pakete aktualisiert haben, installieren Sie alle für LibreNMS erforderlichen Abhängigkeiten mit dem folgenden Befehl:

apt-get install rrdtool whois fping imagemagick graphviz mtr-tiny nmap python3-mysqldb snmp snmpd python3-pip python3-memcache mtr-tiny acl unzip git curl wget -y

Sobald alle Abhängigkeiten installiert sind, können Sie mit dem nächsten Schritt fortfahren.

LEMP-Server installieren

Als nächstes müssen Sie den Nginx-Webserver, den MariaDB-Server, PHP und andere PHP-Erweiterungen auf Ihrem Server installieren. Sie können sie alle installieren, indem Sie den folgenden Befehl ausführen:

apt-get install nginx mariadb-server php php-pear php-cgi php-common php-curl php-mbstring php-gd php-mysql php-bcmath php-imap php-json php-xml php-snmp php-fpm php-zip -y

Nachdem Sie alle Pakete installiert haben, müssen Sie die Zeitzone in Ihrer php.ini-Datei einstellen.

Suchen Sie zuerst Ihre Systemzeitzone mit dem folgenden Befehl:

cat /etc/timezone

Sie sollten die folgende Ausgabe sehen:

Etc/UTC

Als nächstes bearbeiten Sie beide php.ini-Dateien mit dem folgenden Befehl:

nano /etc/php/7.4/fpm/php.ini
nano /etc/php/7.4/cli/php.ini

Definieren Sie Ihre Systemzeitzone wie unten dargestellt:

date.timezone = Etc/UTC

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den PHP-FPM-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart php7.4-fpm

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

MariaDB-Datenbank konfigurieren

Als nächstes müssen Sie eine Datenbank und einen Benutzer für LibreNMS erstellen.

Melden Sie sich zunächst mit folgendem Befehl an der MariaDB-Shell an:

mysql

Sobald Sie sich angemeldet haben, erstellen Sie eine Datenbank und einen Benutzer mit dem folgenden Befehl:

MariaDB [(none)]> create database librenmsdb CHARACTER SET utf8 COLLATE utf8_unicode_ci;
MariaDB [(none)]> grant all privileges on librenmsdb.* to librenms@localhost IDENTIFIED by "password";

Als nächstes flushen Sie die Privilegien und verlassen die MariaDB-Shell mit dem folgenden Befehl:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Als nächstes bearbeiten Sie die MariaDB-Konfigurationsdatei und fügen einige gewünschte Einstellungen hinzu:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Fügen Sie die folgenden Zeilen innerhalb des Abschnitts [mysqld] ein:

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

Speichern und schließen Sie die Datei und starten Sie dann den MariaDB-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart mariadb

Zu diesem Zeitpunkt ist Ihre MariaDB konfiguriert. Sie können nun mit dem nächsten Schritt fortfahren.

Installieren und Konfigurieren von LibreNMS

Zunächst müssen Sie einen separaten Benutzer erstellen, um LibreNMS auszuführen. Sie können ihn mit dem folgenden Befehl hinzufügen:

useradd -r -M -d /opt/librenms librenms

Als nächstes fügen Sie den Benutzer librenms mit folgendem Befehl zur Gruppe www-data hinzu:

usermod -a -G librenms www-data

Wechseln Sie anschliessend in das Verzeichnis /opt und laden Sie die neueste Version von LibreNMS mit folgendem Befehl herunter:

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

Als nächstes erstellen Sie eine Log-Datei für LibreNMS mit dem folgenden Befehl:

touch /opt/librenms/logs/librenms.log

Als nächstes kopieren Sie die SNMP-Beispielkonfigurationsdatei mit folgendem Befehl: Als nächstes kopieren Sie die SNMP-Beispielkonfigurationsdatei mit folgendem Befehl:

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

Als nächstes editieren Sie die Datei snmpd.conf:

nano /etc/snmp/snmpd.conf

Suchen Sie die folgende Zeile:

com2sec readonly  default RANDOMSTRINGGOESHERE

Und, ersetzen Sie es durch die folgende Zeile:

com2sec readonly  default mysnmpserverkey        

Speichern und schließen Sie die Datei, laden Sie dann die SNMP-Distro-Binärdatei herunter und kopieren Sie sie an den gewünschten Speicherort:

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

Starten Sie dann den SNMP-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart snmpd

Als nÃ?chstes mÃ?ssen Sie auch die Cron- und Logrotate-Datei von LibreNMS an den gewÃ?nschten Ort kopieren. Sie können sie mit dem folgenden Befehl kopieren:

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

Wechseln Sie anschliessend in das Verzeichnis zu den Librenms und installieren Sie die erforderlichen Dependenzen mit folgendem Befehl: /opt und laden Sie die neueste Version von LibreNMS herunter:

cd /opt/librenms
./scripts/composer_wrapper.php install --no-dev

Wenn alle Abhängigkeiten installiert sind, ändern Sie den Eigentümer des Verzeichnisses librenms und erteilen Sie die erforderlichen Berechtigungen mit dem folgenden Befehl:

chown -R www-data:librenms /opt/librenms
chmod -R 775 /opt/librenms
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/

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren von Nginx für LibreNMS

Als Nächstes müssen Sie eine Nginx-Konfigurationsdatei für den virtuellen Host für LibreNMS erstellen. Sie können sie mit dem folgenden Befehl erstellen:

nano /etc/nginx/conf.d/librenms.conf

Fügen Sie die folgenden Zeilen hinzu:

server {
 listen      80;
 server_name librenms.example.com;
 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 /api/v0 {
  try_files $uri $uri/ /api_v0.php?$query_string;
 }
 location ~ \.php {
  include fastcgi.conf;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
 }
 location ~ /\.ht {
  deny all;
 }
}

Speichern und schließen Sie die Datei und überprüfen Sie Nginx mit folgendem Befehl auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe sehen:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Starten Sie anschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart nginx

Sie können den Status des Nginx-Service auch mit dem folgenden Befehl überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe erhalten:

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-09-05 06:15:20 UTC; 4min 5s ago
       Docs: man:nginx(8)
    Process: 28239 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 28250 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 28253 (nginx)
      Tasks: 3 (limit: 2353)
     Memory: 3.4M
     CGroup: /system.slice/nginx.service
             ??28253 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??28254 nginx: worker process
             ??28255 nginx: worker process

Sep 05 06:15:20 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Sep 05 06:15:20 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Zugang zur LibreNMS-Web-Schnittstelle

Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://librenms.example.com auf die LibreNMS zu. Sie werden auf die Seite zur Überprüfung vor der Installation weitergeleitet:

Überprüfung vor der Installation

Stellen Sie sicher, dass alle erforderlichen Erweiterungen installiert sind, und klicken Sie dann auf die Datenbank-Einstellungen. Sie sollten die folgende Seite sehen:

Konfigurieren Sie die Datenbank

Geben Sie Ihren Datenbank-Benutzernamen, den Datenbanknamen und das Passwort ein und klicken Sie auf die Schaltfläche Check Credentials. Sobald dies erfolgreich war, sollten Sie die folgende Seite sehen:

Aufbau der Datenbank

Klicken Sie jetzt auf die Schaltfläche Datenbank erstellen. Sie sollten die folgende Seite sehen:

Datenbank konfigurieren

Klicken Sie dann auf die Schaltfläche Admin-Benutzer anlegen. Sie sollten die folgende Seite sehen:

Admin-Benutzer erstellen

Geben Sie Ihren Administrator-Benutzernamen, Ihre E-Mail-Adresse und Ihr Passwort ein und klicken Sie auf die Schaltfläche Benutzer hinzufügen. Sie sollten die folgende Seite sehen:

Installation abgeschlossen

Als nächstes klicken Sie auf die Schaltfläche Installation beenden. Sie sollten die folgende Seite sehen:

Installation abschließen

Als nächstes klicken Sie auf „Validieren Sie Ihre Installation„. Sie sollten die Login-Seite von LibreNMS sehen:

FreeNMS-Anmeldung

Geben Sie Ihren LibreNMS-Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Login. Sie sollten das Dashboard von LibreNMS sehen:

LibreNMS-Konfiguration

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben das LibreNMS-Netzwerküberwachungs-Tool erfolgreich auf dem Ubuntu 20.04-Server installiert und konfiguriert. Sie können nun ein Gerät oder einen Host hinzufügen und die Überwachung über das LibreNMS-Dashboard starten. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.

Das könnte dich auch interessieren …