Das SNMP-Modul ist eine Erweiterung, mit der der Status des Apache-HTTP-Servers über SNMP (Simple Network Management Protocol) abgerufen werden kann. SNMP ist ein bekanntes Framework für das Internet, das es Hardware (wie z.B. Routern, Brücken und Modems) und Software (wie Betriebssystem. Netzebenen und Anwendungen) ermöglicht, ihren Status über eine MIB (Management Information Base) bereitzustellen. Die MIB ist eine Sammlung von verwalteten Objekten ferner Einheiten, auf die mit Hilfe von SNMP-Agenten zugegriffen werden kann. Die Systemverantwortlichen können von einem Agenten dann die Werte der vom Agenten verwalteten Objekte abfragen.
Der IBM HTTP Server unterstützt die folgenden MIBs:
MIB | Beschreibung |
SNMPv2-MIB | Eine verbindliche MIB für alle SNMP-Agenten. Die MIB wurde von der SNMPv2 Working Group definiert. |
Web-MIB | Eine für die Verwaltung von Web-Services definierte MIB. Die MIB wird in der SYSAPPL MIB Working Group des IETF definiert. |
APACHE-MIB | Eine spezifische MIB für den Apache-HTTP-Server. |
Sie müssen zur Aktivierung von SNMP das SNMP-Modul mit Hilfe der Anweisung LoadModule laden.
Für Windows NT:
Syntax:LoadModule snmp_agt_module modules/IBMModuleSNMP.dll
Für Unix:
Syntax:LoadModule snmp_agt_module libexec/mod_snmp.so
Die entsprechende Anweisung "AddModule" lautet: AddModule mod_snmp.c
Syntax:SNMPenable
Wenn Sie die Anweisung "SNMPenable" nicht definieren, wird SNMP inaktiviert.
Syntax:<SNMP Nummer>...</SNMP>
Modul: snmp_agt_module
Mit dem Parameter Nummer wird der Netzwerk-Port definiert, an dem der SNMP-Agent Anforderungen entgegennimmt. Als Wert für den Parameter Nummer kann eine Zahl zwischen 0 und 65635 angegeben werden. Einige Port-Nummern (insbesondere unterhalb von 1024) sind für bestimmte Protokolle reserviert. Eine Liste einiger definierter Ports finden Sie in der Datei "/etc/services". Der Standard-Port für das SNMP-Protokoll ist Port 161.
Port 161 ist einer der Sonder-Ports unter Unix. Alle Ports unterhalb von Port 1024 sind für das System reserviert, d. h. "normale" Benutzer (also nicht Root) können diese Ports nicht verwenden. Sie können lediglich höhere Port-Nummern verwenden. Sie müssen zur Verwendung von Port 161 den Server als Root starten.
Wenn Sie Port 161 nicht verwenden können, wählen Sie einen anderen nicht verwendeten Port aus. Andere Benutzer als Root müssen eine Port-Nummer oberhalb von 1023, wie z. B. Port 8000, auswählen.
Beispiel:
<SNMP 80>
SNMPcommunity public
sysContact Admins@email.address
sysLocation Ihr_Ort.Ihr_Land.Ihre_Welt.Ihr_Universum
</SNMP>
Lesen Sie dazu auch die Beschreibungen im Apache User's Guide in den Abschnitten SNMPcommunity, sysDescr, sysContact und sysLocation.
Syntax: SNMPcommunity Zeichenfolge
Standardeinstellung: community public
Modul: snmp_agt_module
Mit "Community" werden die Benutzergemeinschaften definiert, die auf den SNMP-Agenten zugreifen können. In SNMP Version 1 und Version 2C wird die Benutzergemeinschaft (Community) für die Sicherheit eingesetzt. Nur gültige Benutzergemeinschaften haben Zugriff auf die vom SNMP-Agenten bereitgestellten Informationen.
Die bekannteste Benutzergemeinschaft ist 'public'. Viele Benutzer verwenden diese Benutzergemeinschaft, allerdings ist dies nicht erforderlich. Wenn keine Benutzergemeinschaft angegeben ist, wird die Standardbenutzergemeinschaft verwendet. Die maximal zulässige Länge der Zeichenfolge für den Namen der Benutzergemeinschaft beträgt 64 Zeichen.
SICHERHEIT: Wenn Sie verhindern möchten, dass die vom SNMP-Agenten bereitgestellten Informationen für andere Benutzer zugänglich sind, müssen Sie bekannte Namen oder Wörter aus dem Wörterverzeichnis verwenden.
Beispiel:
SNMPcommunity public
Syntax: sysDescr Zeichenfolge
Standardeinstellung: Wird standardmäßig einkompiliert und gibt die verschiedenen
Versions-/Protokoll-Flags sowie andere Details an.
Modul: snmp_agt_module
Mit der Anweisung "sysDescr" kann die Systembeschreibung des Host definiert werden, auf dem der für das Objektexemplar "sysDescr" der SNMPv2-MIB (auch bekannt als Teil von MIB-II) eingesetzte SNMP-Agent (also Server) läuft.
Die Definition sagt folgendes:
"Eine Textbeschreibung der Entität. Dieser Wert muss den vollständigen Namen und die Versions-ID des Systemhardwaretyps, des Betriebssystems und der Netzsoftware enthalten."
Beispiel:
sysDescr IHS HTTP/1.1 mit SNMP
Weitere Informationen finden Sie im Apache User's Guide im Abschnitt sysContact und sysLocation.
Syntax: sysContact Zeichenfolge
Modul: snmp_agt_module
Mit der Anweisung "sysContact" kann die Kontaktadresse für das für das Objektexemplar "sysContact" der SNMPv2-MIB (auch bekannt als Teil von MIB-II) verwendete System definiert werden.
Die Definition sagt folgendes:
"Die Textbeschreibung der Kontaktperson für den verwalteten Knoten sowie Informationen zur Kontaktaufnahme mit dieser Person. Wenn keine Kontaktinformationen bekannt sind, ist der Wert eine leere Zeichenfolge."
Beispiel:
sysContact Admins@email.address
Weitere Informationen finden Sie im Apache User's Guide im Abschnitt sysDescr und sysLocation.
Syntax:
sysLocation Zeichenfolge
Modul: snmp_agt_module
Mit der Anweisung "sysLocation" kann die Position des Host definiert werden, auf dem der SNMP-Agent (also der Server) läuft. Diese Angabe wird für das Objektexemplar "sysLocation" der SNMPv2-MIB (auch bekannt als Teil von MIB-II) verwendet.
Die Definition sagt folgendes:
"Die physische Adresse des Knotens (z. B. `Telefonzelle im 3. Stock'). Wenn die Adresse nicht bekannt ist, ist der Wert eine leere Zeichenfolge."
Beispiel:
sysLocation Erdgeschoss, Raum 44
Weitere Informationen finden Sie im Apache User's Guide im Abschnitt sysDescr und sysContact.
Sie müssen das Statusmodul mit der Anweisung LoadModule für die MIBs von apScoreBoardGroup laden.
Für Windows NT:
Syntax:LoadModule Statusmodul modules/ApacheModuleStatus.dll
Für Unix:
Syntax:LoadModule Statusmodul libexec/mod_status.so
Die entsprechende AddModule-Anweisung lautet AddModule mod_status.c
Syntax:<ExtendedStatus On>
Modul: mod_status
Wird ExtendedStatus nicht definiert, können Anforderungen von apScoreBoardGroup-Daten nicht verarbeitet werden.
Syntax:<LocationMatch Server-Status>...</LocationMatch>
Modul: mod_status
Beispiel:
<LocationMatch Server-Status>
SetHandler Server-Status
</LocationMatch>