Mit SNMP Monitoring einfach Switches, Drucker und mehr überwachen

Inhalt

Das Netzwerkprotokoll SNMP ist ein etablierter Standard für die Überwachung und das Management von Netzwerkgeräten. Die weite Verbreitung macht es zu einem nützlichen Tool, um den Alltag des Admins zu erleichtern. In diesem Use Case erfahren Sie, wie sie mit Enginsight ein SNMP-Monitoring aufbauen und informiert werden, wenn Handlungsbedarf besteht.

Was ist SNMP?

Das Simple Network Management Protocol (SNMP) wurde 1988 von der IETF entwickelt. Ziel war es, alle netzwerkfähigen Geräte damit überwachen und verwalten zu können. Durch den einfachen und modularen Aufbau, seine Flexibilität und die breite Herstellerunterstützung ist es in diesem Bereich zum Standard geworden.

MIBs und OIDs

Die einzelnen Werte und Metriken der Geräte werden als OIDs (Object Idendifier) gespeichert. Diese bestehen aus durch Punkte getrennten Zahlen und ergeben einen eindeutigen Bezeichner für Objekte in einem hierarchisch aufgebauten Namensraum. Beispielsweise steht die OID 1.3.6.1.2.1.43.18.1.1.7 für den Wert “prtAlertCode” und spezifiziert Warnmeldungen eines Druckers.

Eine Definition von OIDs erfolgt in den sogenannten MIBs (Management Information Base). Dort sind die Datentypen der Rückgabewerte festgelegt und sie enthalten eine kurze Beschreibung. Es existieren generische MIBs, welche die Standard OIDs eines bestimmten Gerätetyps wie z.B. Drucker beschreiben. Sie fokussieren sich auf die wichtigsten Werte. Manche Gerätehersteller stellen auch eigene MIBs mit spezialisierten Werten für das jeweilige Gerät zur Verfügung. Welche OIDs ein Gerät unterstützt und wie gut es über SNMP verwaltet werden kann, ist somit immer herstellerabhängig.

Wofür können Sie SNMP verwenden?

SNMP eignet sich durch seine weite Verbreitung für eine ganze Reihe von Anwendungsfällen. Ganz klassisch ist das Monitoring bestimmter Werte eines Netzwerkgerätes, zum Beispiel der Fehlerstatus eines Druckers oder die aktuelle Netzwerkauslastung einer Router Schnittstelle. Über SNMP Write können auch Änderungen an der Konfiguration eines Gerätes vorgenommen werden. Die Einsatzmöglichkeiten hängen dabei von den im Gerät implementierten OIDs ab.

Wie machen Sie SNMP sicher?

Die Kommunikation mit SNMP fähigen Netzwerkgeräten erfolgt über die UDP Ports 161 und 162 (Traps). Die Sicherheit ist in den SNMP Versionen v1 und v2c nur unzureichend, da die gesamte Kommunikation im Klartext erfolgt. Bei einem SNMP Request erfolgt die Authentifizierung in diesen Versionen über Community-Strings. Man kann sich diese als Kennwort vorstellen, die in den SNMP Requests mitgesendet werden.

Es existieren zwei Arten von Community Strings:

  • Read-only, wobei nur lesender Zugriff auf OIDs gewährt wird.
  • Read-Write, wobei sowohl Lese- als auch Schreibzugriff zugelassen sind.

Die meisten Hersteller verwenden dabei “public” (Read-only) und “private” (Read-Write) als Standardwerte für die Community-Strings. Da die Übertragung der Nachricht im Klartext ohne Verschlüsselung erfolgt, kann durch Netzwerk-Sniffing leicht der Community-String ermittelt werden.

In Version v3 wurde die verschlüsselte Authentifizierung und Übertragung der Daten implementiert. Sie liegt in drei verschiedenen Sicherheitsstufen vor.

noAuthNoPrivÜbertragung aller Daten im Klartext. Benutzername muss angegeben werden.
authNoPrivVerschlüsselte Kennwortabfrage (MD5 oder SHA). Datenübertragung jedoch weiterhin im Klartext.
authPrivVerschlüsselte Kennwortabfrage (MD5 oder SHA) und Datenübertragung (DES oder AES).

Die Verfügbarkeit der Sicherheitsstufen ist herstellerabhängig. Es kann sein, dass SNMP v3 grundsätzlich verfügbar ist, jedoch nur bis zu der Stufe “authNoPriv”. Aus Sicherheitsgründen sollte möglichst auf eine komplette Verschlüsselung des Datenverkehrs zurückgegriffen werden (“authPriv”). Sollte es nötig sein, auf die Versionen v1 oder v2c zurückzugreifen, sollten besonders schützenswerte Systeme durch eine Firewall Regel abgesichert und kein Schreibzugriff gewähren werden.

Da unsichere SNMP-Konfigurationen weit verbreitet sind, wird das SNMP-Protokoll auch von Angreifern genutzt, um Hackingattacken vorzubereiten. Sind SNMP-Zugriffe nicht geschützt und öffentlich zugänglich, können die Informationen genutzt werden, um mögliche Angriffsszenarien auszuloten.

Der automatisierte Penetrationstest von Enginsight überprüft deshalb auch SNMP-Verbindungen und warnt zum Beispiel,

  • wenn Informationen über das Betriebssystem und installierte Software zugänglich sind.
  • gewöhnliche Community Strings verwendet werden.
  • Lese- und Schreibzugriffe möglich sind.

Mehr Informationen zu Penetrationstests mit Enginsight erhalten Sie in unserem Blogbeitrag Sicherheitsaudit der gesamten IT mit automatisiertem Pentest.

Für welche Anwendungsfälle ist SNMP die richtige Wahl?

Die Stärke von SNMP ist die weite Verbreitung und die Möglichkeit, Daten von Geräten zu beziehen, auf die sonst nur schwierig zugegriffen werden kann. So eignet sich SNMP besonders für die Verwaltung von Switchen, Routern, aber auch Druckern und vielen weiteren SNMP fähigen Geräten. Der Umfang der unterstützten Funktionen (OIDs) kann dabei von Gerät zu Gerät stark variieren. Stets sollten Aspekte der IT-Sicherheit berücksichtigt überprüft werden. Die Überwachung eines Netzwerkdruckers ist vergleichsweise unkritisch. Handelt es sich bei dem Zielgerät um einen Core-Switch, ist jedoch eine umsichtige Einrichtung wichtig.

Auch bedeutet die Nutzung des SNMP Protokolls einen gewissen Aufwand für den Administrator, um die unterstützten OIDs eines Gerätes zu ermitteln und eine passende MIB zu finden. Der Einsatz auf einem Server oder Client mit Linux oder Windows Betriebssystem ist grundsätzlich über einen SNMP Daemon möglich. In den meisten Fällen ist von einem solchen Anwendungsfall jedoch abzuraten.

Einfacher und schneller kommen Sie auf Linux- und Windows-Geräten zum Beispiel mit unserem Enginsight Pulsar-Agent an die Monitoring-Daten. Darüber hinaus liefert er wichtige Security-Features. Zum Beispiel ein hostbasiertes Intrusion Detection System sowie ein Schwachstellenscanning (CVE). Zur Installation eines Pulsar-Agent muss lediglich ein Skript ausgeführt werden und Sie brauchen sich nicht mit OIDs, MIBs oder sicherer Verschlüsselung beschäftigen.

Um Netzwerkgeräte, auf denen kein Pulsar-Agent installiert werden kann, in ein Monitoringsystem zu integrieren, ist SNMP jedoch ideal. Hier spielt das Protokoll mit seiner Flexibilität und hohen Verbreitung seine vollen Stärken aus.

SNMP Monitoring mit Enginsight

Durch unser SNMP-Modul lassen sich SNMP Assets ohne Weiteres in das Monitoring System integrieren. Dies bietet den Vorteil, dass sie alle Assets auf einem Blick sehen und so jederzeit über deren Status informiert sind. Durch das Setzen von Grenzwerten können sie sich warnen lassen, falls unerwartete Werte auftreten.

Die Einrichtung der SNMP-Assets wurde in Enginsight vereinfacht und bietet ihnen eine große Auswahl an bereits vorhandenen MIBs. Falls die gesuchte MIB nicht vorhanden ist, können Sie auch eigene MIBs nachladen. Beim Erstellen eines SNMP Sensors werden ihnen direkt die konfigurierbaren OIDs angezeigt. Diese sind mit Beschreibungen versehen, sodass sie während der Einrichtung besser die für sie passenden OIDs auswählen können.

SNMP Monitoring einrichten

Um das SNMP-Monitoring in ihrem Enginsight System einzurichten, installieren Sie zuerst einen Watchdog als Sensor im Netzwerk, der das SNMP-Monitoring durchführt. Im Bereich Observations können Sie alle von Ihnen gewünschten SNMP-Assets hinzufügen und Ihre aktiven SNMP-Überwachungen einsehen.

Beim Anlegen einer SNMP-Überwachung geben Sie ihren Watchdog an, von dem aus sie das Zielsystem überwachen wollen. Tragen Sie anschließend die IP-Adresse des Zielsystems ein. Geben Sie nun die gewünschte SNMP-Version an und hinterlegen Sie den Community String bzw. Passwörter und Protokolle.

Aus der durchsuchbaren Liste aller vorhandenen MIBs wählen Sie die passende MIB aus und klicken sie auf Testen. Nun wird die Kompatibilität der MIB mit dem Zielsystem geprüft. Ist diese kompatibel, wird eine Liste aller konfigurierbaren OIDs mit Beschreibungstext ausgegeben. Wählen Sie die für Sie zutreffenden Werte aus. Sobald die Auswahl abgeschlossen ist, können sie den Sensor mit “SNMP Sensor hinzufügen” in Ihrem System anlegen.

Erwartungswerte definieren und Alarme einrichten

Möchten Sie benachrichtigt werden, wenn einer der Werte den Normbereich verlässt, so können Sie für diesen einen Grenzwert festlegen. Setzen Sie dazu in der OID Liste einen Haken bei “Erwartungswert überwachen” und geben sie den gewünschten Bereich an. Abhängig vom Datentyp kann dies ein einzelner Wert sein oder aus einem Minimum und einem Maximum bestehen.

Um einen Alarm für Ihre SNMP-Überwachungen einzurichten, erstellen Sie unter Alarme einen neuen Alarm. Wählen Sie die Alarmart Observation. Sie können mit einem Tag einen gemeinsamen Alarm auf mehrere oder alle SNMP-Überwachungen schalten. Als Szenario wählen Sie „Unerwarteter SNMP Status“.

Sobald ein Wert vom definierten Erwartungswert abweicht, öffnet sich ein Issue und Sie erhalten, wenn gewünscht eine E-Mail.

Alarm über unerwarteten Status eines SNMP Sensors
Lassen Sie sich per E-Mail benachrichtigen, wenn unerwartete Werte auftreten. (Zum Vergrößern klicken)

Beispiel: SNMP Monitoring eines Druckers und Switches

Im folgenden Beispiel wird die Einrichtung eines SNMP-Sensors für einen Drucker und Switch beschrieben. In der Übersicht erkennen Sie bereits, ob alles in Ordnung ist, sofern Erwartungswerte definiert wurden.

Übersicht aller SNMP Sensoren
Alles ok? Das entnehmen Sie schon der Übersicht. (Zum Vergrößern klicken)

Drucker

SNMP Monitoring eines Druckers
Gab es Fehlermeldungen und ist noch genug Papier und Toner vorhanden? (Zum Vergrößern klicken)

Überwachte Metriken

WertBeschreibung
prtAlertCodeGibt Fehlermeldungen aus, wie z.B. Papierstau, Toner leer, Abdeckung geöffnet
prtMarkerSuppliesLevelGibt an wie viel Toner noch vorhanden ist.
prtInputCurrentLevelGibt an wie viel Papier im Schubfach liegt.
hrPrinterStatusGibt den aktuellen Status des Druckers an.

Die oben beschriebenen Werte können mit der “PRINTER-MIB” zusammen mit der “HOST-RESOURCES-MIB” verwaltet werden. Je nach Modell und eigenen Bedürfnissen können noch weitere oder andere Werte hinzugefügt werden. Da die Werte von der herstellerseitigen Implementation des SNMP-Protokolls abhängig sind, können die Werte des Papier- oder Tonervorrats bei Ihnen sogar noch detaillierter als in diesem Beispiel sein.

Switch

SNMP Monitoring eines Switches
Wie ist der Switch ausgelastet? Wurden Netzwerkpakete verworfen? (Zum Vergrößern klicken)

Überwachte Metriken

ifAdminStatusGibt an, welcher Zustand für den Port administrativ definiert ist. Link down zeigt z.B. einen deaktivierten Port an.  
ifOperStatusDer aktuelle Zustand des Ports. Up bedeutet, dass ein Netzwerkverkehr stattfindet. Down zeigt an, dass momentan keine Verbindung besteht.
ifInErrorsAnzahl der einkommenden Pakete mit Fehlern die verworfen wurden
ifOutErrorsAnzahl der ausgehenden Pakete mit Fehlern die verworfen wurden
ifInDiscardsAnzahl der einkommenden Pakete die durch den Switch verworfen wurden
ifOutDiscardsAnzahl der ausgehenden Pakete die durch den Switch verworfen wurden
ifInBroadcastPktsAnzahl der einkommenden Pakete die an eine Broadcast Adresse gesendet wurden
ifOutBroadcastPktsAnzahl der ausgehenden Pakete die an eine Broadcast Adresse gesendet wurden
ifInUcastPktsAnzahl der Einkommenden Pakete die an eine Unicast Adresse gesendet wurden
ifOutUcastPktsAnzahl der Ausgehenden Pakete die an eine Unicast Adresse gesendet wurden

Die oben beschriebenen Werte können in der “IF-MIB” verwaltet werden. Auch hier gilt wiederum das sich die möglichen Metriken von Ihren Geräten unterscheiden können. Über die Parameter “ifInErrors” und “ifOutErrors” kann erkannt werden, ob es im Netzwerk Hosts mit einem fehlerhaft implementierten Netzwerk-Stack gibt. Auch “ifInDiscards” und “ifOutDiscards” können ein Hinweis darauf sein. Außerdem können sie ein Zeichen für eine Überlastung des Switchs sein. Die weiteren Metriken wie “ifInUcastPkts” und “ifOutBroadcastPkts” geben einen Einblick in die momentane Netzwerkauslastung. Diese werden für jede Schnittstelle angegeben. Mit den Werten “ifAdminStatus“ und “ifOperStatus” können sie auf einen Blick den administrativ konfigurierten Portstatus und den aktuellen Zustand der Ports sehen.

Enginsight kostenlos testen

Sie wollen das SNMP-Monitoring mit Enginsight kennenlernen? Dann registrieren Sie sich einfach und testen 14 Tage lang den vollen Funktionsumfang von Enginsight: inklusive automatisierten Penetrationstests, der Überwachung Ihrer Webseite und dem Monitoring Ihrer Server und Clients mit dem Pulsar-Agent.

Jetzt kostenlos registrieren!

Share on linkedin
Share on twitter
Share on facebook
Der IT-Security Newsletter

News rund um Enginsight und IT-Sicherheit für clevere Admins, CISOs und alle Sicherheits-Verantwortlichen

Weitere interessante Security-Beiträge

Neuigkeiten über Enginsight, IT-Sicherheit, IT-Monitoring, Asset-Management, Risikomanagement und vieles mehr aus der Security-Branche, erfahren Sie in unserem Blog.

Release Notes 2.17.0 – 25.02.2020

Individuelle Passwortliste für Bruteforce | Verbessertes Footprinting durch Deep Scans | Ausnahmelisten für Dienste und Verbindungen | Neuer Alarm: „Endpunktbewertung verschlechtert“ | Parallelisierung von Observer-Scans | Endpunkt-Verantwortliche hinterlegen

Weiterlesen »
NGS-Fantasy
7-Tage Newsletter
Werden Sie zum Helden Ihrer Kunden

7 Tage Wissen und Insights für IT-Security Dienstleister.

Enginsight Logo