MRTG (Multi Router Traffic Grapher) ist ein in Perl geschriebenes Open-Source-Tool, das zum Überwachen und Messen der Verkehrslast auf Netzwerkverbindungen und zum Präsentieren von Daten in grafischer Form verwendet wird. Mit diesem Tool können Sie Netzwerkanomalien wie Spitzen im Netzwerkverkehr zu ungewöhnlichen Zeiten nachverfolgen und beheben.
MRTG funktioniert mit allen Netzwerkgeräten, die das SNMP-Protokoll unterstützen. Es überwacht SNMP-Netzwerkgeräte und zeichnet hübsche Bilder, die zeigen, wie viel Datenverkehr durch jede Schnittstelle gegangen ist. MRTG läuft auf Unix/Linux-, Windows- und Netware-Systemen.
In diesem Beitrag sehen wir uns an, wie man MRTG unter Ubuntu 18.04/20.04 installiert und konfiguriert.
MRTG-Voraussetzungen
Sie müssen Apache installiert haben, bevor Sie MRTG auf Ihrem Computer ausführen können. Unter Ubuntu 18.04 können Sie Apache ganz einfach installieren, indem Sie das Paket aus dem offiziellen Repository ziehen.
$ sudo apt install apache2
SNMP-Pakete für Ubuntu installieren:
$ sudo apt install snmpd snmp
Um SNMP zu konfigurieren, aktiviere ich gerne den vollen Zugriff von localhost:
$ sudo vim /etc/snmp/snmpd.conf
Fügen Sie der Datei snmpd.conf den folgenden SNMP-Community-String hinzu:
rocommunity public localhost
Sie müssen den snmpd-Dienst neu starten, damit die Änderung wirksam wird.
$ sudo systemctl restart snmpd
Standardmäßig lauscht SNMP auf localhost. Mit dem Befehl ss können Sie überprüfen, auf welchem Port oder welcher IP SNMP lauscht.
Installieren Sie MRTG auf Ubuntu 18.04/20.04
Alle Voraussetzungen sind in Ordnung, also können wir MRTG auf Ubuntu installieren, indem wir den folgenden Befehl ausführen:
$ sudo apt install mrtg
Akzeptieren Sie alle Popup-Eingabeaufforderungen und klicken Sie auf Ja, um die Installation zu starten.
MRTG konfigurieren
Sobald der Installationsvorgang abgeschlossen ist, müssen Sie ihn konfigurieren, bevor Sie mit der Überwachung von Zielgeräten beginnen können. Wir legen das MRTG-Arbeitsverzeichnis auf /var/www/mrtg fest
$ sudo mkdir /var/www/mrtg
Stellen Sie sicher, dass Sie den Eigentümer dieses Verzeichnisses auf www-data
ändern , das das Standardbenutzerkonto für den Apache-Webserver ist.
$ sudo chown -R www-data:www-data /var/www/mrtg
Bearbeiten Sie dann /etc/mrtg.conf um das Arbeitsverzeichnis festzulegen:
$ sudo cat /etc/mrtg.cfg | grep -v "^#"
Ausgabe:
WorkDir: /var/www/mrtg
WriteExpires: Yes
Title[^]: Traffic Analysis for
Erstellen Sie die MRTG-Konfiguration aus der geänderten Datei neu:
$ sudo cfgmaker public@localhost > /etc/mrtg.cfg
Ausgabe:
--base: Get Device Info on public@localhost:
--base: Vendor Id: Unknown Vendor - 1.3.6.1.4.1.8072.3.2.10
--base: Populating confcache
--base: Get Interface Info
--base: Walking ifIndex
--snpd: public@localhost: -> 1 -> ifIndex = 1
--snpd: public@localhost: -> 2 -> ifIndex = 2
--snpd: public@localhost: -> 3 -> ifIndex = 3
--base: Walking ifType
--snpd: public@localhost: -> 1 -> ifType = 24
--snpd: public@localhost: -> 2 -> ifType = 6
--snpd: public@localhost: -> 3 -> ifType = 6
--base: Walking ifAdminStatus
--snpd: public@localhost: -> 1 -> ifAdminStatus = 1
--snpd: public@localhost: -> 2 -> ifAdminStatus = 1
--snpd: public@localhost: -> 3 -> ifAdminStatus = 1
--base: Walking ifOperStatus
--snpd: public@localhost: -> 1 -> ifOperStatus = 1
--snpd: public@localhost: -> 2 -> ifOperStatus = 1
--snpd: public@localhost: -> 3 -> ifOperStatus = 1
--base: Walking ifMtu
--snpd: public@localhost: -> 1 -> ifMtu = 65536
--snpd: public@localhost: -> 2 -> ifMtu = 1500
--snpd: public@localhost: -> 3 -> ifMtu = 1500
--base: Walking ifSpeed
--snpd: public@localhost: -> 1 -> ifSpeed = 10000000
--snpd: public@localhost: -> 2 -> ifSpeed = 0
--snpd: public@localhost: -> 3 -> ifSpeed = 0
$ ls /var/www/mrtg/
index.html mrtg-l.png mrtg-m.png mrtg-r.png
Indexdatei für Webserver erstellen:
$ sudo indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html
Als letztes müssen Sie eine VirtualHost-Datei für die Site erstellen.
$ sudo vim /etc/apache2/sites-available/mrtg.conf
Fügen Sie dieser neuen Datei Folgendes hinzu:
Alias /mrtg "/var/www/mrtg/"
<Directory "/var/www/mrtg/">
Options None
AllowOverride None
Require all granted
</Directory>
Aktivieren Sie die Website und laden Sie den Apache-Dienst neu.
$ sudo sudo a2ensite mrtg
Apache-Dienst neu laden:
$ sudo systemctl reload apache2
Zugriff auf die MRTG-Benutzeroberfläche
Gehen Sie zu http://ip-address/mrgt oder http://servername/mrtg, um auf die MRTG-Webschnittstelle zuzugreifen. Die Schnittstellenüberwachung sollte den Datenverkehr anzeigen:
Es gibt standardmäßig auch ein Standard-Tagesdiagramm für eine Schnittstelle.
Sie können MRTG konfigurieren, um andere Dinge wie RAM, CPU-Auslastung, Swap, Festplatte usw. zu überwachen.
Konfigurieren Sie MRTG so, dass es alle X Minuten Metriken abfragt
Ich werde einen Cron-Job erstellen, der nach Änderungen in der Konfigurationsdatei sucht und neue PNG-Bilder generiert, die auf der Weboberfläche angezeigt werden können. Stellen Sie sicher, dass Sie den Cron-Job als Root-Benutzer erstellen.
# crontab -e
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg.cfg
Dies wird alle fünf Minuten ausgeführt.
Schlussfolgerung
In diesem Tutorial haben wir gelernt, wie man MRTG unter Ubuntu 18.04/20.04 installiert und konfiguriert.
Vielen Dank fürs Lesen. Bitte geben Sie Ihr Feedback und Ihre Vorschläge im Kommentarbereich ein.