Debian – SNMP Server und SNMPD Client Installation

Kurze Übersicht zur Installation von SNMP und SNMPD im lokalen Netzwerk.

System ist ein Debian Squeezy/Wheezy
Ziel soll es sein auf einem Rechner den SNMP Server/Agent und auf dem anderen Rechner den SNMP Client zu installieren.

Client = snmpd (laufender Dienst im Hintergrund der auf Abfragen wartet)
Server = snmp (Tool um Abfragen auszuführen)

SNMP Server Installation
# aptitude install snmp snmp-mibs-downloader

SNMP Client Installation

# aptitude install snmpd snmp-mibs-downloader

Konfiguration /etc/snmp/snmpd.conf anpassen
Damit die Abfragen von anderen Rechnern z.B. aus dem selben Netzwerk erfolgen können, ist die snmpd.conf im Bereich “Agent Behaviour” anzupassen.

Agend Behaviour

von nur lokal lauschend: agentAddress udp:127.0.0.1:161
auf UDP Port 161 lauschend umstellen: agentAddress udp:161,udp6:[:.1]:161

Access Control
Hier erlaube ich den Zugriff von einem bestimmten Rechner mit dem Communitystring public im Netz:

rocommunity public 192.168.0.x

Ich entfernen den System only Zugriff, durch auskommentieren der Zeile:

rocommunity public default -V systemonly in #rocommunity public default -V systemonly

Als nächstes berechtige ich nur das Netzwerk, in dem die Clients sich befinden und der SNMP Server auf diese Zugreifen darf:

 rocommunity secret 192.168.0.0/24 # für das gesamte Netz von 192.168.0.1-192.168.0.254

Als nächstes die /etc/snmp/snmp.conf

von mibs: auf #mibs: ändern

Als nächstes passe ich den Pfad für die MIBS in der “/etc/default/snmpd” an:

von:
export MIBS=

zu
export MIBS=ALL
export MIBSDIR=/usr/share/mibs

Abschließend den SNMPD Dienst neustarten:
/etc/init.d/snmpd restart

Prüfung durch Abfrage vom Server des zuvor eingerichteten Clients: hier die Laufzeit des SNMPD Dienstes:

snmpget -v 2c -c public client-name SNMPv2-MIB::sysUpTime.0
SNMPv2-MIB::sysUpTime.0 = Timeticks: (89053) 0:14:50.53

Sicherheit

Grundlegend benötigt man den sogenannten Community String und ein Passwort. Aber es gibt Strings die vordefiniert und allg. bekannt sind. Darunter zählen:

Community String = “get” – dieser ist Read Only und ermöglicht entsprechend nur den betrachtenden Zugriff, meistens ist das Standardpasswort “public” gesetzt
Community STring = “set” – dieser ist schreib und lese berechtigt und ermöglich neben dem Lesen auch das Aktualisieren von Parametern

Weiterhin kann man auf Protokollebene also den Versionen Sicherheit gewährleisten. Ab der Version 3 ist eine verschlüsselte Übertragung möglich.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

This site uses Akismet to reduce spam. Learn how your comment data is processed.