Vor dem ersten Start des Agenten muß der Administrator das Startup Skript subagent_start.pl durchgehen und eventuell die Variablen anpassen. Zu konfigurieren sind insbesondere:
$SNMP_PORT
, $SNMP_TRAP_PORT
).
$SNMP_COMMUNITY
, $SNMP_TRAP_COMMUNITY
).
$GROUPID
, $OID
). Bei Änderung ist auch die MIB anzupassen.
$DEBUGLEVEL
).
$AGENT_HOST
).
$ProgPfad
).
$SyslogConfPfad
).
$SYSLOGPIPESOCK
).
$SYSLOGSOCKNEW
).
Anschließend kann der Syslog Agent durch den Aufruf von ./subagent_start gestartet werden. Der Subagent
benötigt dabei prinzipiell keine Root Privilegien. Soll jedoch auch die Datei /etc/syslog.conf
über den Subagent gemanaged werden, so sollte die Gruppenzugehörigkeit der Skripten Schreibrechte auf diese
Datei erlauben. Zu Testzwecken kann dem Agent durch Setzen der Variable $SyslogConfPfadWrite
mitgeteilt
werden, die Syslog Konfiguration nicht zu überschreiben, sondern in eine andere Datei zu sichern.
Beim Start des Subagenten können zwei Parameter mitgegeben werden:
$AGENT_HOST
Der Subagent meldet sich nun beim Hauptagenten an und registriert seinen MIB Teilbaum. Sollte dabei ein Fehler
auftreten, so wird das Programm beendet. Gelingt das Anmelden hingegen, so ist der Subagent betriebsbereit und
kann über einen Manager oder auch über eine Skriptdatei, die das Programm SNMPSET verwendet, konfiguriert
werden. Die Trapkonfiguration, die History Konfiguration und das Management der Syslog Konfiguration wurden
dabei bereits bei der Vorstellung der MIB besprochen. Drei weitere Variablen der MIB steuern das allgemeine
Verhalten des Subagenten: sysUpTime
beinhaltet die Startzeit des Subagenten, sysStatus
dient
zum Beenden des Agenten und sysSnmpVersion
bestimmt das Verhalten des Subagenten im Fehlerfall.
Nur die letzten beiden Variablen bedürfen der Erläuterung. Wird sysStatus
auf 0 gesetzt, so
deregistriert sich der Subagent beim Hauptagent und beendet sich. Alle anderen Werte bewirken keine
Veränderung.
Die Variable sysSnmpVersion
kann auf 1 oder 2 (entsprechend SNMPv1 und SNMPv2) gesetzt werden.
Damit hat der Administrator die Möglichkeit,
auf die Art der Tabellenverwaltung und die generierten Fehlermeldungen Einfluß zu nehmen. Der Unterschied
zwischen SNMPv1 und SNMPv2 liegt hier im Informationsgehalt der Rückmeldungen. Vereinfacht gesagt meldet
ein SNMPv1 Agent bei einem fehlerhaften GET oder SET einfach ein Fehler, ein SNMPv2 jedoch ein
Fehler, weil ... zurück.
Die Variable sysSnmpVersion
hat jedoch keinen Einfluß darauf, ob SNMPv1 oder SNMPv2 als
Kommunikationsprotokoll zwischen Agent und Manager verwendet wird. Das Verwendet von SNMPv2 Semantik bei
Fehlermeldungen mit SNMPv1 Kommunikation ist problemlos möglich und wird auch von Marshall Rose empfohlen. Der
Defaultwert der Variable ist deshalb 2 und sollte nicht verändert werden.