So installierst du Cacti Network Monitoring Tool unter Debian 11

Cacti ist ein in PHP geschriebenes, webbasiertes Open-Source-Tool zur Netzwerküberwachung. Cacti ist das Frontend des Industriestandards RRDtool. Cacti erstellt mithilfe von SNMP (Simple Network Management Protocol) Diagramme zur CPU-Last und zur Auslastung der Netzwerkbandbreite. Es wurde speziell für die Überwachung von Netzwerkgeräten wie Switches, Routern und Servern entwickelt. Cacti speichert alle notwendigen Daten in der MySQL-Datenbank, um verschiedene Diagramme zu erstellen.

Diese Anleitung zeigt dir, wie du die Cacti Monitoring Tools unter Debian 11 installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein Root-Passwort wurde auf dem Server eingerichtet.

Erste Schritte

Bevor du beginnst, ist es immer eine gute Idee, dein Basissystem auf die neueste Version zu aktualisieren. Führe den folgenden Befehl aus, um alle Pakete zu aktualisieren:

sudo apt update
sudo apt upgrade

Nach der Paketaktualisierung kannst du mit dem nächsten Installationsschritt fortfahren.

Abhängigkeiten installieren

Da Cacti SNMP verwendet, musst du die erforderlichen Abhängigkeiten installieren, indem du den folgenden Befehl ausführst:

sudo apt install snmp snmpd php-snmp rrdtool librrds-perl unzip curl git gnupg2

LAMP-Server installieren

Du musst Apache, PHP und MySQL/MariaDB auf deinem Server installieren.

Apache-Webserver installieren

Du kannst den Apache-Webserver mit dem folgenden Befehl installieren:

sudo apt install apache2 -y

Starte als Nächstes den Apache-Dienst und sorge dafür, dass der Apache-Dienst beim Booten gestartet wird, indem du folgenden Befehl ausführst

sudo systemctl start apache2
sudo systemctl enable apache2

PHP installieren

Du musst PHP und andere erforderliche PHP-Erweiterungen installieren:

apt install php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y

Als Nächstes nimmst du einige Änderungen an der Datei php.ini vor:

vim /etc/php/*/apache2/php.ini

Nimm die Änderungen wie unten gezeigt vor:

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Speichere und schließe die Datei und bearbeite anschließend die php.ini für CLI:

vim /etc/php/*/cli/php.ini

Als Nächstes nimmst du die folgenden Änderungen vor:

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Speichere und schließe die Datei und starte den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Datenbankserver für Cacti installieren und konfigurieren

MySQL/MariaDB ist das Backend für Cacti. Du kannst MariaDB installieren, indem du den folgenden Befehl ausführst:

sudo apt install mariadb-server

Starte als Nächstes den MariaDB-Dienst, aktiviere den Dienst beim Systemstart und überprüfe den Status des MariaDB-Dienstes mit dem folgenden Befehl:

sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo systemctl status mariadb

Melde dich in der MariaDB-Shell an, indem du den folgenden Befehl ausführst:

mysql

Nach der Anmeldung erstellst du eine Datenbank und einen Benutzer für Cacti, indem du den folgenden Befehl ausführst:

CREATE DATABASE cactidb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
GRANT ALL PRIVILEGES ON cactidb.* TO 'cacti_user'@'localhost' IDENTIFIED BY 'password';
ALTER DATABASE cactidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Als Nächstes gibst du mit dem folgenden Befehl die Berechtigungen für die Anwendung der Änderungen frei und verlässt die MariaDB-Shell:

flush privileges;
exit;

Jetzt musst du die Zeitzonendaten in die MariaDB-Datenbank importieren. Führe den folgenden Befehl aus, um die Zeitzone zu importieren:

mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql

cacti mysql Datenbank importieren

Melde dich in der MariaDB-Shell an und erteile die erforderlichen Rechte für die MySQL-Zeitzone, indem du den folgenden Befehl ausführst:

mysql
GRANT SELECT ON mysql.time_zone_name TO cacti_user@localhost;

Entferne die Berechtigungen und beende die MariaDB-Shell:

flush privileges;
exit;

MySQL-Benutzerberechtigungen erteilen

Als Nächstes bearbeitest du die MariaDB-Standardkonfigurationsdatei:

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

Kommentiere zunächst die folgenden beiden Zeilen, indem du #tag einfügst

#collation-server      = utf8mb4_general_ci
#character-set-server  = utf8mb4

Als Nächstes fügst du die folgenden Zeilen unterhalb des Abschnitts [mariadb] hinzu bzw. änderst sie:

collation-server = utf8mb4_unicode_ci
character-set-server=utf8mb4
max_heap_table_size = 128M
tmp_table_size = 128M
join_buffer_size = 128M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 1G
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000
innodb_doublewrite = 0

Nun speichere und beende die Datei und starte den MariaDB-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart mariadb

Nachdem du den Dienst neu gestartet hast, kannst du mit dem nächsten Schritt fortfahren.

Cacti installieren und konfigurieren

Lade die neueste Version von Cacti von der offiziellen Cacti-Website mit dem Befehl wget herunter:

wget https://www.cacti.net/downloads/cacti-latest.tar.gz

Entpacke dann die tar.gz-Datei mit dem folgenden Befehl:

tar -zxvf cacti-latest.tar.gz

Verschiebe das entpackte Verzeichnis in den Apache-Stammverzeichnispfad, indem du den folgenden Befehl ausführst:

mv cacti-1* /var/www/html/cacti

Als Nächstes importierst du die Datenbank mit dem folgenden Befehl in die Cacti-Datenbank „cactidb“:

mysql cactidb < /var/www/html/cacti/cacti.sql

Bearbeite nun die config.php und trage die Details deiner Cacti-Datenbank ein.

cd /var/www/html/cacti/include/
vim config.php

Nimm dann Änderungen in den folgenden Zeilen vor:

$database_type     = 'mysql';
$database_default  = 'cactidb';
$database_hostname = 'localhost';
$database_username = 'cacti_user';
$database_password = 'password';
$database_port     = '3306';

Setze die erforderlichen Berechtigungen für das Cacti-Verzeichnis mit dem folgenden Befehl:

chown -R www-data:www-data /var/www/html/cacti/
chmod -R 775 /var/www/html/cacti/

Lege nun die Häufigkeit der Datenerfassung mit dem Cronjob für Cacti fest, indem du folgenden Befehl verwendest:

vim /etc/cron.d/cacti

Füge die folgende Zeile ein, um Cacti Pollor so einzustellen, dass poller.php alle fünf Minuten ausgeführt wird.

*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1

Speichere und beende die Datei.

Den virtuellen Apache-Host für Cacti konfigurieren

Als Nächstes musst du eine separate Konfigurationsdatei für den virtuellen Apache-Host für Cacti erstellen. Du kannst sie mit dem unten stehenden Befehl erstellen:

vim /etc/apache2/sites-available/cacti.conf

Füge dann die folgenden Zeilen ein:

Alias /cacti /var/www/html/cacti
<Directory /var/www/html/cacti>
Options +FollowSymLinks
AllowOverride None
<IfVersion >= 2.3>
Require all granted
</IfVersion>
<IfVersion < 2.3>
Order Allow,Deny
Allow from all
</IfVersion>

AddType application/x-httpd-php .php

<IfModule mod_php.c>
php_flag magic_quotes_gpc Off
php_flag short_open_tag On
php_flag register_globals Off
php_flag register_argc_argv On
php_flag track_vars On
# this setting is necessary for some locales
php_value mbstring.func_overload 0
php_value include_path .
</IfModule>

DirectoryIndex index.php
</Directory>

Als Nächstes musst du diese virtuelle Hostdatei aktivieren. Führe den folgenden Befehl aus, um sie zu aktivieren.

a2ensite cacti

Überprüfe die Datei cacti.conf, indem du den folgenden Befehl ausführst:

ls -l /etc/apache2/sites-enabled/cacti.conf

Als Nächstes musst du den Apache-Dienst neu starten, um die Änderungen zu übernehmen:

systemctl restart apache2

Nachdem du den Apache-Dienst neu gestartet hast, führe den folgenden Befehl aus, um den Status des Apache-Dienstes zu überprüfen:

systemctl status apache2

Ausgabe:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-06-29 07:22:07 UTC; 3s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 63096 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 63100 (apache2)
      Tasks: 6 (limit: 1132)
     Memory: 13.6M
        CPU: 100ms
     CGroup: /system.slice/apache2.service
             ??63100 /usr/sbin/apache2 -k start
             ??63101 /usr/sbin/apache2 -k start
             ??63102 /usr/sbin/apache2 -k start
             ??63103 /usr/sbin/apache2 -k start
             ??63104 /usr/sbin/apache2 -k start
             ??63105 /usr/sbin/apache2 -k start

Jun 29 07:22:07 debian-11 systemd[1]: Starting The Apache HTTP Server…

Jetzt ist dein Cacti installiert und konfiguriert und du kannst mit dem nächsten Schritt fortfahren, um über einen Webbrowser auf Cacti zuzugreifen.

Cacti Web Interface

Öffne nun deinen Webbrowser und gib die folgende URL mit deiner IP-Adresse ein:

http://your-server-ip/cacti

Du solltest die Anmeldeseite von Cacti sehen.

Kakteen Anmeldung

Gib den Standard-Benutzernamen und das Passwort admin ein und klicke auf die Schaltfläche Login. Du wirst zum Bildschirm zum Zurücksetzen des Passworts weitergeleitet (siehe unten):

Cacti-Passwort festlegen

Nachdem du das Standardpasswort geändert hast, klicke auf die Schaltfläche Speichern. Du solltest den Bildschirm Lizenzvereinbarung sehen:

Lizenzvertrag von Cacti akzeptieren

Aktiviere das Kontrollkästchen GPL-Lizenzvereinbarung akzeptieren und klicke auf die Schaltfläche Beginnen. Auf dem nächsten Bildschirm werden der Pre-Installation Check und andere Warnhinweise angezeigt:

Kontrollen vor der Installation

Klicke auf die Schaltfläche Weiter. Du solltest den folgenden Bildschirm Installationstyp sehen:

Installationsart

Hier kannst du die gewünschte Art der Installation auswählen und dann auf die Schaltfläche Weiter klicken. Als Nächstes solltest du den Bildschirm Verzeichnisberechtigungsprüfung sehen:

Verzeichnisberechtigungsprüfungen

Klicke auf die Schaltfläche Weiter. Daraufhin wird dir der Bildschirm Kritische Binärstandorte und Versionen angezeigt (siehe unten):

Binäre Standorte und Versionen

Klicke auf die Schaltfläche Weiter. Du solltest den Bildschirm Eingabeüberprüfung Whitelist-Schutz sehen:

Eingabevalidierung

Aktiviere das Kontrollkästchen „Ich habe diese Erklärung gelesen“ und klicke auf die Schaltfläche “ Weiter“. Du solltest zum Bildschirm „Standardprofil“ weitergeleitet werden:

Netzwerk und Profil

Gib die Informationen gemäß deinen Anforderungen ein und klicke auf die Schaltfläche Weiter. Als Nächstes solltest du den Bildschirm “ Template Setup“ sehen:

Vorlage einrichten

Klicke auf die Schaltfläche Weiter und du solltest die UTF-8-Einstellung auf dem folgenden Bildschirm sehen:

Server-Zuweisung

Klicke auf die Schaltfläche Weiter. Du solltest den Bildschirm „Installation bestätigen“ sehen:

Installation bestätigen

Aktiviere das Kontrollkästchen „Installation bestätigen“ und klicke dann auf die Schaltfläche Installieren. Auf dem nächsten Bildschirm solltest du das Installationsprotokoll sehen:

Kakteen Installation abgeschlossen

Sobald die Installation abgeschlossen ist, klicke auf die Schaltfläche “ Get Started“. Du solltest den Bildschirm Cacti Dashboard sehen:

Kakteen Armaturenbrett

Fazit

Nach diesem Artikel hast du das Cacti Monitoring Tool unter Debian 11 erfolgreich installiert und konfiguriert. Jetzt kannst du Netzwerkgeräte hinzufügen, die Bandbreite deines Netzwerks überwachen, verschiedene Diagramme zur Netzwerküberwachung erstellen und vieles mehr. Du kannst ganz einfach über einen Webbrowser auf Cacti zugreifen. Bitte zögere nicht, mich zu fragen, wenn du irgendwelche Fragen hast.

Das könnte dich auch interessieren …