Observium Netzwerküberwachung auf Debian 9 installieren

Observium ist ein kostenloses und quelloffenes Netzwerkmanagement- und Monitoring-Tool, mit dem alle Netzwerkgeräte überwacht werden können. Es ist in PHP geschrieben und verwendet SNMP, um die Daten vom angeschlossenen Gerät zu sammeln und über eine Weboberfläche zu überwachen. Observium unterstützt viele Netzwerkhardware und Betriebssysteme wie Linux, Windows, FreeBSD, Cisco, Dell, NetApp und viele mehr. Observium bietet eine leistungsstarke, einfache und leicht zu bedienende Benutzeroberfläche zur Überwachung des Zustands und des Status Ihres Netzwerks.

In diesem Tutorial wird erklärt, wie man Observium auf dem Debian 9-Server installiert und konfiguriert.

Anforderungen

  • Ein neuer Debian 9-Server, der auf Ihrem System installiert ist.
  • Auf deinem Server wird ein Root-Passwort eingerichtet.

Erste Schritte

Lassen Sie uns damit beginnen, Ihr System auf die neueste stabile Version zu aktualisieren, indem wir den folgenden Befehl ausführen:

apt-get update -y
apt-get upgrade -y

Sobald Ihr System aktualisiert ist, starten Sie das System neu, um alle Updates zu übernehmen:

reboot

Melden Sie sich nach dem Neustart mit dem root-Benutzer an und installieren Sie einige erforderliche Pakete auf Ihrem System, indem Sie den folgenden Befehl ausführen:

apt-get install snmp fping python-mysqldb rrdtool subversion whois mtr-tiny ipmitool graphviz imagemagick -y

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

LAMP-Server installieren

Observium läuft auf Apache, ist in PHP geschrieben und verwendet MySQL als Datenbank. Daher müssen Sie den LAMP-Server auf Ihrem System installieren.

Installieren Sie zunächst den Apache-Webserver, indem Sie den folgenden Befehl ausführen:

apt-get install apache2 libapache2-mod-php7.0 -y

Nach der Installation von Apache starten Sie den Apache-Dienst und aktivieren Sie ihn mit dem folgenden Befehl, damit er beim Booten gestartet werden kann:

systemctl start apache2
systemctl enable apache2

Als nächstes installieren Sie PHP7 und andere benötigte Bibliotheken, indem Sie den folgenden Befehl ausführen:

apt-get install php7.0 php7.0-cli php7.0-mysql php7.0-mysqli php7.0-gd php7.0-mcrypt php7.0-json php-pear -y

Sobald PHP7 und alle erforderlichen Bibliotheken installiert sind, führen Sie den folgenden Befehl aus, um den MariaDB-Server zu installieren:

apt-get install mariadb-server -y

Als nächstes starten Sie den MariaDB-Dienst und aktivieren Sie ihn mit dem folgenden Befehl zum Startzeitpunkt:

systemctl start mysql
systemctl enable mysql

MariaDB konfigurieren

Standardmäßig ist MariaDB nicht gesichert. Du kannst es mit dem folgenden Befehl sichern:

mysql_secure_installation

Beantworten Sie alle Fragen wie folgt:

 
   set root password? [Y/n] n
    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

Sobald die MariaDB gesichert ist, müssen Sie eine Datenbank und einen Benutzer für Observium anlegen.

Melden Sie sich zunächst mit dem folgenden Befehl in der MySQL-Shell an:

mysql -u root -p

Geben Sie Ihr Root-Passwort ein und erstellen Sie dann eine Datenbank für Observium mit dem folgenden Befehl:

MariaDB [(none)]>CREATE DATABASE observiumdb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Als nächstes erstellen Sie einen Benutzer für Observium und vergeben alle Berechtigungen für die Observium-Datenbank mit dem folgenden Befehl:

MariaDB [(none)]>GRANT ALL PRIVILEGES ON observiumdb.* TO 'observium'@'localhost' IDENTIFIED BY 'password';

Als nächstes leeren Sie die Berechtigungen mit dem folgenden Befehl:

MariaDB [(none)]>FLUSH PRIVILEGES;

Schließlich beenden Sie die MySQL-Shell mit dem folgenden Befehl:

MariaDB [(none)]>\q

Observium herunterladen und installieren

Observium ist in zwei Editionen erhältlich: Open Source Edition und Subscription Edition, Open Source Edition ist mit weniger Features und wenigen Sicherheitsfixes kostenlos zum Download verfügbar, während Subscription Edition mit zusätzlichen Features und Hardwareunterstützung ausgestattet ist. Sie können die Open-Source-Version des Observiums von der offiziellen Website mit folgendem Befehl herunterladen:

wget http://www.observium.org/observium-community-latest.tar.gz

Entpacken Sie nach dem Herunterladen das heruntergeladene Archiv mit dem folgenden Befehl:

tar -xvzf observium-community-latest.tar.gz

Kopieren Sie anschließend das extrahierte Verzeichnis in das Apache-Web-Root-Verzeichnis:

cp -ar observium /var/www/html/

Als nächstes benennen Sie die Beispielkonfigurationsdatei um und nehmen einige Änderungen vor:

cd /var/www/html/observium
cp config.php.default config.php
nano config.php

Ändern Sie die Datei wie unten gezeigt:

    // Database config ---  This MUST be configured
    $config['db_extension'] = 'mysqli';
    $config['db_host']      = 'localhost';
    $config['db_user']      = 'observium';
    $config['db_pass']      = 'password';
    $config['db_name']      = 'observiumdb';

Speichern Sie die Datei und richten Sie dann das Standardschema für die MySQL-Datenbank mit dem folgenden Befehl ein:

./discovery.php -u

Wenn alles in Ordnung ist, sollten Sie die folgende Ausgabe sehen:

  ___   _                              _
 / _ \ | |__   ___   ___  _ __ __   __(_) _   _  _ __ ___
| | | || '_ \ / __| / _ \| '__|\ \ / /| || | | || '_ ` _ \
| |_| || |_) |\__ \|  __/| |    \ V / | || |_| || | | | | |
 \___/ |_.__/ |___/ \___||_|     \_/  |_| \__,_||_| |_| |_|
                         Observium Community Edition 17.9.0
                                   http://www.observium.org

Install initial database schema ... done.
-- Updating database/file schema
310 -> 311 # (db) . Done (0s).
311 -> 312 # (db) .... Done (0s).
312 -> 313 # (db)  Done (0s).
313 -> 314 # (db)  Done (0s).
314 -> 315 # (php) . Done (0s).
315 -> 316 # (db) . Done (0s).
316 -> 317 # (db) .. Done (0s).
317 -> 318 # (db) . Done (0s).
318 -> 319 # (db) ....... Done (2s).
319 -> 320 # (db) . Done (0s).
320 -> 321 # (db) . Done (0s).
321 -> 322 # (db) . Done (0s).
322 -> 323 # (db) ... Done (1s).
323 -> 324 # (db) ... Done (0s).
324 -> 325 # (db) .... Done (1s).
325 -> 326 # (db) . Done (0s).
326 -> 327 # (db) . Done (0s).
327 -> 328 # (db) . Done (0s).
328 -> 329 # (db) . Done (0s).
329 -> 330 # (db) . Done (0s).
330 -> 331 # (db) . Done (0s).
331 -> 332 # (db) ... Done (1s).
332 -> 333 # (php)  Done (0s).
333 -> 334 # (db) . Done (0s).
334 -> 335 # (php)  Done (0s).
335 -> 336 # (db) . Done (0s).
336 -> 337 # (db) . Done (1s).
337 -> 338 # (db) . Done (0s).
338 -> 339 # (db) ... Done (0s).
339 -> 340 # (db) ... Done (0s).
340 -> 341 # (db) ........ Done (1s).
341 -> 342 # (db) ............... Done (0s).
342 -> 343 # (db) ... Done (0s).
343 -> 344 # (db) .... Done (1s).
344 -> 345 # (db) .. Done (0s).
345 -> 346 # (db) . Done (0s).
346 -> 347 # (db) . Done (0s).
347 -> 348 # (db) F Done (0s, 1 errors).
348 -> 349 # (db) .. Done (0s).
349 -> 350 # (php)  Done (0s).
350 -> 351 # (db) ..... Done (1s).
351 -> 352 # (db) .. Done (0s).
-- Done.

Als nächstes müssen Sie ein Verzeichnis erstellen, in dem RRDs und Protokolle gespeichert werden:

mkdir rrd logs

Ändern Sie den Besitzer des Observium-Verzeichnisses mit dem folgenden Befehl:

chown -R www-data:www-data /var/www/html/observium

Als nächstes müssen Sie eine virtuelle Apache-Hostdatei für Observium erstellen. Erstellen Sie dazu eine neue Konfigurationsdatei observium.conf:

nano /etc/apache2/sites-available/observium.conf

Füge die folgenden Zeilen hinzu:

    <VirtualHost *:80>
     ServerAdmin admin@example.com
     ServerName example.com
    DocumentRoot /var/www/html/observium/html
    <Directory />
     Options FollowSymLinks
     AllowOverride None
    </Directory>
    <Directory /var/www/html/observium/html/>
     Options Indexes FollowSymLinks MultiViews
     AllowOverride All
     Require all granted
    </Directory>
     ErrorLog  /var/log/apache2/error.log
     LogLevel warn
     CustomLog  /var/log/apache2/access.log combined
     ServerSignature On
    </VirtualHost>

Speichern Sie die Datei, aktivieren Sie dann die Observium Virtual Host File und deaktivieren Sie die Standard Virtual Host File mit dem folgenden Befehl:

a2ensite observium
a2dissite 000-default

Als nächstes müssen Sie auch das Apache Umschreibmodul und das PHP Verschlüsselungsmodul aktivieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

a2enmod rewrite
phpenmod mcrypt

Starten Sie schließlich den Apache-Webserver mit dem folgenden Befehl neu:

systemctl restart apache2

Als nächstes erstellen Sie Ihren ersten Admin-Benutzer mit dem folgenden Befehl:

/var/www/html/observium/adduser.php admin yourpassword 10

Wenn alles gut gelaufen ist, sollten Sie die folgende Ausgabe sehen:

    Observium CE 0.17.7.8697
    Add User

    User admin added successfully. 

Zugriff auf das Observium Web Interface

Bevor Sie auf Observium zugreifen können, müssen Sie Port 80 durch die UFW-Firewall lassen. Standardmäßig ist UFW nicht auf Debian 9 installiert, daher müssen Sie es zuerst installieren.

apt-get install ufw -y

Sobald das UFW installiert ist, aktivieren Sie UFW mit dem folgenden Befehl:

ufw enable

Als nächstes erlauben Sie Port 80 durch die UFW-Firewall mit dem folgenden Befehl:

ufw allow 80

Sobald die Firewall konfiguriert ist, öffnen Sie Ihren Webbrowser und geben Sie die URL http://example.com ein, Sie sollten die folgende Seite sehen:

Geben Sie hier Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie dann auf die Schaltfläche Login. Sie sollten das Observium Standard-Dashboard wie unten beschrieben sehen:

Als nächstes müssen Sie einen Cron-Job für die Abfrage und Erkennung von Geräten aus dem Netzwerk erstellen. Sie können dies tun, indem Sie eine Cron-Datei im Verzeichnis /etc/cron.d erstellen:

nano /etc/cron.d/observium

Füge die folgenden Zeilen hinzu:

# Run a complete discovery of all devices once every 2 hours
25  */2   * * *   root    /var/www/html/observium/discovery.php -h all >> /dev/null 2>&1

# Run automated discovery of newly added devices every 10 minutes
*/10 *     * * *   root    /var/www/html/observium/discovery.php -h new >> /dev/null 2>&1

# Run multithreaded poller wrapper every 10 minutes
*/10 *     * * *   root    /var/www/html/observium/poller-wrapper.py 4 >> /dev/null 2>&1

# Run housekeeping script daily for syslog, eventlog and alert log
10 2 * * * root /var/www/html/observium/housekeeping.php -ysel >> /dev/null 2>&1

# Run housekeeping script daily for rrds, ports, orphaned entries in the database and performance data
10 1 * * * root /var/www/html/observium/housekeeping.php -yrptb >> /dev/null 2>&1

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und starten Sie dann den cron-Dienst neu, um diese Änderungen zu übernehmen:

systemctl restart cron

Fazit

Herzlichen Glückwunsch! Sie haben Observium erfolgreich auf dem Debian 9 Server installiert. Sie können nun ganz einfach den Status und die Gesundheit Ihres Netzwerks abfragen. Weitere Informationen zur Konfiguration von Geräten, Warnungen und Authentifizierungsmodulen finden Sie auf der offiziellen Dokumentationsseite von Observium.

Das könnte Dich auch interessieren …