Dieses Tutorial bietet eine Kurzdarstellung von:
Das Simple Network Management Protocol (SNMP) ist ein Anwendungsprotokoll, das vom Internet Architecture Board (IAB) in RFC1157 für den Austausch von Managementinformationen zwischen Netzwerkgeräten definiert wurde. Es ist Teil der Protokollsuite Transmission Control Protocol ⁄ Internet Protocol (TCP ⁄ IP).
SNMP ist eines der weit verbreiteten Protokolle zur Verwaltung und Überwachung von Netzwerkelementen. Die meisten professionellen Netzwerkelemente werden im Bundle mit SNMP-Agenten geliefert. Diese Agenten müssen aktiviert und konfiguriert sein, um mit dem Netzwerk-Management-System (NMS) zu kommunizieren.
Ein Manager oder Management-System ist eine separate Einheit, die für die Kommunikation mit dem SNMP-Agenten verantwortlich ist. Dies ist in der Regel ein Computer, auf dem ein oder mehrere Netzwerk-Management-Systeme ausgeführt werden.
Ein „Managed Device“ oder Netzwerkelement ist ein Teil des Netzwerks, das eine Form der Überwachung und Verwaltung erfordert, z. B. Router, Switches, Server, Workstations, Drucker, USVs etc.
Der Agent ist ein Programm, das in ein Netzelement eingebettet ist. Nach der Aktivierung kann der Agent die Management Information Base lokal vom Gerät beziehen und sie dem SNMP-Manager zur Verfügung stellen, wenn dieser abgefragt wird. Dabei kann es sich um Standard-Agenten handeln (z. B. Net-SNMP) oder spezifische Anbieter-Agenten (z. B. HP Insight Agent).
Jeder SNMP-Agent hat eine Informationsdatenbank zur Verfügung, in der die verwalteten Geräteparameter enthalten sind. Der SNMP-Manager verwendet diese Datenbank, um den Agenten nach bestimmten Informationen zu fragen und übersetzt die Informationen bei Bedarf für das Network Management System (NMS). Diese gemeinsam genutzte Datenbank zwischen dem Agenten und dem Manager wird als Management Information Base (MIB) bezeichnet.
Typischerweise enthält diese MIB einen Standardsatz von Statistik- und Steuerwerten, die für Hardwareknoten in einem Netzwerk definiert sind. SNMP ermöglicht auch die Erweiterung dieser Standardwerte um agentenspezifische Werte durch den Einsatz von privaten MIBs.
Kurz gesagt, MIB-Dateien sind die Anfragen, die ein SNMP-Manager an den Agenten richten kann. Der Agent bezieht diese Daten lokal und speichert sie, wie in der MIB definiert. Daher sollte der SNMP-Manager sowohl Standardanfragen als auch spezifische Anfragen für jeden Agententyp kennen.
Die Suite of Free Tools von ManageEngine enthält einen SNMP MIB Browser, der das MIB-Load/Unload und Abrufen von MIB-Daten von SNMP (v1, v2c, v3)-Agenten unterstützt. Der SNMP MIB Browser ist ein komplettes Tool zur Überwachung von SNMP-fähigen Geräten und Servern. Sie können mehrere MIB-Module laden, anzeigen und die SNMP-Operationen GET, GETNEXT und SET durchführen. Dieses Tool ist einfach zu bedienen und ermöglicht es Ihnen, SNMP-Traps anzuzeigen, zu konfigurieren und zu analysieren. Sie können auch SNMP-Operationen von Windows- und Linux-Geräten aus durchführen.
Die Management Information Base (MIB) ist eine Sammlung von Informationen zur Verwaltung von Netzwerkelementen. Die MIBs umfassen verwaltete Objekte, die durch den Object Identifier (Object ID oder OID) identifiziert werden.
Jeder Identifier ist eindeutig und bezeichnet spezifische Merkmale eines verwalteten Geräts. Bei der Abfrage kann der Rückgabewert jedes Identifiers unterschiedlich sein, z. B. Text, Nummer, Zähler etc.
Es gibt zwei Arten von Managed Objects und Object IDs: Scalar und Tabular. Anhand eines Beispiels wird deutlich, worum es geht:
Scalar: Gerätename des Herstellers, es kann nur ein Ergebnis geben (gemäß der Definition, dass ein Scalar Object nur eine einzelne Objektinstanz definiert)
Tabular: Die CPU-Auslastung eines Quad-Prozessors: Das würde für jede CPU ein separates Ergebnis liefern, d. h. es gibt 4 Ergebnisse für diese spezielle Object ID (gemäß der Definition, dass ein Tabular Object mehrere zugehörige Objektinstanzen aufweist, die in MIB-Tabellen gruppiert sind)
Jede Object ID ist in der MIB hierarchisch organisiert. Die MIB-Hierarchie kann in einer Baumstruktur mit einem einzelnem, variablem Identifier dargestellt werden.
Eine typische Object ID ist eine Abfolge von ganzen Zahlen. Beispielsweise lautet die OID in RFC1213 für „sysDescr“ .1.3.6.1.2.1.1.1.1.1.1
Die Einfachheit des Informationsaustausches hat das SNMP zu einem allgemein akzeptierten Protokoll gemacht. Der Hauptgrund hierfür ist der prägnante Befehlssatz, wie im Folgenden wiedergegeben:
Als Teil der IP-Protokoll-Suite TCP ⁄ IP werden die SNMP-Nachrichten als User Datagram Protocol (UDP) und intern im Internetprotokoll verpackt und übertragen. Das folgende Diagramm veranschaulicht das vom Department of Defense (DoD) entwickelte Vier-Layer-Modell.
Seit der Gründung von SNMP hat es erhebliche Verbesserungen erfahren. Die SNMP-Protokolle v1 und v2c sind jedoch die am häufigsten implementierten Versionen von SNMP. Die Unterstützung des SNMP-Protokolls v3 hat in jüngster Zeit aufgeholt, da es im Vergleich zu seinen älteren Versionen sicherer ist, es hat jedoch noch keinen nennenswerten Marktanteil erreicht.
Das ist die erste Version des SNMP-Protokolls, das in den RFCs 1155 und 1157 definiert ist.
Das ist das überarbeitete Protokoll, das Erweiterungen von SNMPv1 in den Bereichen Protokoll-Paket-Typen, Transport-Zuordnungen und MIB-Strukturelemente beinhaltet, aber weiterhin die bestehende SNMPv1-Verwaltungsstruktur nutzt („community based“ und damit SNMPv2c). Sie ist definiert in RFC 1901, RFC 1905, RFC 1906, RFC 2578.
SNMPv3 definiert die sichere Version des SNMP. Das SNMPv3-Protokoll ermöglicht auch die Fernkonfiguration der SNMP-Entitäten. Es ist definiert durch RFC 1905, RFC 1906, RFC 3411, RFC 3412, RFC 3414, RFC 3415.
Obwohl jede Version in Richtung umfassender Funktionalitäten ausgereift war, wurde bei jedem Upgrade ein zusätzlicher Schwerpunkt auf den Sicherheitsaspekt gelegt. Hier ist ein kleiner Video-Clip zu jedem Sicherheitsaspekt der Versionen.
SNMP v1 | Community-basierte Sicherheit |
SNMP v2c | Community-basierte Sicherheit |
SNMP v2u | User-basierte Sicherheit |
SNMP v2 | Parteien-basierte Sicherheit |
SNMP v3 | User-basierte Sicherheit |