Sie sind auf Seite 1von 27

Einführung einer Netzwerk-

Netzwerk-
Moni
Monitoring-
oring-Lösung im
firmeninternen LAN
Projektdokumentation der betrieblichen Projektarbeit von

Admin

Prüf-Nr. 66666

Betrieb: IT GROUP
Musterstadt
Projektbetreuer: Trapp Trapp
Ausführungszeit: 15. Oktober 2007 bis 05. November 2007
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Inhaltsverzeichnis
1. Projektbeschreibung........................................................................................... 3
1.1 Überblick Gesamtprojekt ........................................................................................................3
1.2 Problembeschreibung des Projekts und Zielsetzung .............................................................3
1.3 Projektumfang.........................................................................................................................4

2. Projektplanung .................................................................................................... 4
2.1 Zeitansatz ...............................................................................................................................4
2.2 Ressourcenplanung ................................................................................................................5

3. Produktphase ...................................................................................................... 5
3.1 Auswahl des Betriebssystem des Servers .............................................................................5
3.2 Auswahl der Hardware für den Server ...................................................................................5
3.3 Auswahl der Software für den Server .....................................................................................5

4. Realisierungsphase ............................................................................................ 6
4.1 Installation des Nagios Servers ..............................................................................................6
4.2 Installation der Nagios Plugins ...............................................................................................7
4.3 Einrichten des Webinterface...................................................................................................7
4.4 Nagios Grundkonfiguration ...................................................................................................10
4.4.1 Nagios.cfg...................................................................................................................10
4.4.2 Timeperiods.cfg ..........................................................................................................10
4.4.3 Contactgroups.cfg....................................................................................................... 11
4.4.4 Contacts.cfg................................................................................................................ 11
4.4.5 Hostgroups.cfg............................................................................................................12
4.4.6 Servicegroups.cfg.......................................................................................................12
4.4.7 Resource.cfg ..............................................................................................................12
4.4.8 Host Definition ...........................................................................................................12
4.4.9 Service Definition........................................................................................................13
4.4.10 Abschließen der Grundkonfiguration..........................................................................14
4.5 Erweiterte Konfiguration .......................................................................................................15
4.5.1 Performancedaten grafisch darstellen mittels PNP....................................................15
4.5.2 SMS Benachrichtigung über HTTP-Gateway.............................................................17
4.5.3 Konfiguration von NRPE.............................................................................................18

5. Projektbewertung.............................................................................................. 21
5.1 Fazit ......................................................................................................................................21

6. Anhang: ........................................................................................................... 23
6.1 Dodekatex.de PHP Script zur Übermittlung der Nagios Notifions an den HTTP-Gateway
von Mobilant.net: ..................................................................................................................23
6.2 Abbildungsverzeichniss ........................................................................................................24
6.3 Quellenverzeichnis ...............................................................................................................25
6.4 Glossar..................................................................................................................................26
6.4.1 Compiler .....................................................................................................................26
6.4.2 OpenSSL ....................................................................................................................26
6.4.3 Webserver ..................................................................................................................26
6.4.4 OpenSuSE..................................................................................................................26
6.4.5 PHP ............................................................................................................................26
6.4.6 Host ............................................................................................................................26
6.4.7 Service........................................................................................................................26
6.4.8 HTTP-Gateway...........................................................................................................26

Admin 05.11.2007 Seite 2 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

1. Projektbeschreibung
1.1 Überblick Gesamtprojekt
Im Rahmen meiner Ausbildung zum Fachinformatiker für Systemintegration in der
Firma IT GmbH bin ich zurzeit in der Abteilung Support für die Anwender in der
Friedrichshofener Straße 1s tätig.
Als Teil eines zweiköpfigen Teams sind wir für die Instandhaltung des firmeninternen
Netzwerkes, sowie den Endanwendersupport verantwortlich. Aufgrund der rasch
wachsenden Mitarbeiterzahl nimmt das firmeninterne Netzwerk an Umfang und
Komplexität stark zu. Das Tagesgeschäft sieht vor Anwender zu unterstützen,
gleichzeitig soll jedoch das Netzwerk sowie die verbauten aktiven Komponenten
überwacht und gewartet werden. Mir wurde übertragen eine Lösung zu erarbeiten, die
möglichst alle relevanten Geräte überwacht und bei einem Ausfall oder einer Störung
die Administratoren zeitnah darüber unterrichtet. Ziel ist, die Dauer zwischen
Störungsauftritt und Beseitigung der Störung zu reduzieren. Außerdem sollen
Performance Daten aufgezeichnet werden, um die Systeme besser skalieren zu
können. Angedacht ist systemspezifische Daten, wie z.B Festplattenauslastung bei
Fileservern, zu überwachen oder die CPU- und Arbeitsspeicherauslastung bei
Webservern. Nach Recherche im Internet und Fachpublikationen fiel die Wahl auf das
OpenSource Produkt Nagios. Diese Lösung wird bei unserem Großkunden eingesetzt
und von der Serverbetreuung der IT GmbH gepflegt. Die Entscheidung Nagios
einzusetzen beruht auf drei Eckpunkten:
- Nagios bietet alle gewünschten Features und lässt sich leicht
erweitern.
- Keine Plattformbeschränkung: Nagios kann Dank seiner großen
Anzahl an Schnittstellen nicht nur Windows oder Linux Maschinen
überwachen.
- Nagios wird von der IT GmbH schon eingesetzt.

1.2 Problembeschreibung des Projekts und Zielsetzung


Zu diesem Zeitpunkt wird in den Büroräumen der IT GmbH in der Friedrichshofener
Straße kein Monitoring eingesetzt. Eine Störung wird vom Support Team erst durch
Anrufe oder Emails der Anwender erkannt. Nachdem eine Störung festgestellt wurde,
versucht das Team das Problem zu lokalisieren. Fällt zum Beispiel ein Server aus,
muss festgestellt werden, ob der Server selbst das Problem darstellt oder ob ein
Switch oder Router der Auslöser der Störung ist. Funktionieren beide Geräte jedoch
korrekt, muss herausgefunden werden, ob ein Problem am Arbeitsplatz des
Anwenders vorliegt oder ein Netzwerkproblem.
Zur Lösung des Problems sollen alle aktiven Netzwerkkomponenten überwacht
werden. Fällt ein Switch aus erhält ein Administrator eine Benachrichtigung, dass der
Switch ausgefallen ist und der in Abhängigkeit zu diesem stehende Server somit
obsolet ist. Der Administrator soll die Möglichkeit haben den Ausfall zu beheben, bevor
ein Anwender auf diesen aufmerksam wird. Zum einen soll so die Zeit für die
Admin 05.11.2007 Seite 3 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Fehlersuche reduziert werden, zum anderem soll ein unterbrechungsfreies


Tagesgeschäft für die vom Funktionieren der Infrastruktur abhängigen Anwender
sichergestellt werden.

1.3 Projektumfang
Das Projekt als Teil der Abschlussprüfung besteht darin, nach Planung und Konzeption
einen Nagios Server zu installieren und zu konfigurieren. Der Schwerpunkt liegt auf der
Grundkonfiguration des Servers. Es sollen die wesentlichen Merkmale eingepflegt
werden. Dazu gehören: Monitoren der Komponenten, Benachrichtigungssystem per
Email/SMS, grafisches Aufbereiten der Performancedaten.
Es sollen Windowsserver, Linuxserver, Printserver, Switches, Netzwerkdrucker sowie
Router und Accesspoints überwacht werden.
Der Nagios Server soll später durch das Support Team stetig erweiterbar und an das
Wachstum des Netzwerks und der verwendeten Komponenten anpassbar sein.

2. Projektplanung
2.1 Zeitansatz
Die Durchführung findet im Zeitraum vom 15.10.2007 bis zum 05.11.2007 statt. Die
tägliche Bearbeitungszeit muss an das Tagesgeschäft angepasst werden.
Für die einzelnen Projektschritte ist folgender Zeitplan vorgesehen, der sich mit dem
Konzept deckt:
- Projektvorfeld - - - - - - - - - - - - - - - - - ca. 7 Std.
- Problembeschreibung ca. 1 Std.
- Projektziele (Soll-Konzept) ca. 2 Std.
- Analyse der Netzwerkumgebung ca. 2 Std.
- Mögliche Softwarelösungen ca. 2 Std.
- Produktphase - - - - - - - - - - - - - - - - - ca. 6 Std.
- Auswahl des Betriebssystems für den Server ca. 1 Std.
- Auswahl der Hardware für den Server ca. 1 Std.
- Auswahl der Software für den Server ca. 4 Std.
- Realisierungsphase - - - - - - - - - - - - - - - ca. 10 Std.
- Installation und Konfiguration der erforderlichen Komponenten ca. 10 Std.
- Testphase - - - - - - - - - - - - - - - - - - ca. 6 Std.
- Ausführlicher Test aller Komponenten in einer Testumgebung ca. 6 Std.
- Ausarbeitung der Projektdokumentation - - - - - - - - ca. 6 Std.

Geplanter Zeitaufwand ca. 35 Std.

Admin 05.11.2007 Seite 4 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

2.2 Ressourcenplanung
Zur Realisierung des Projekts wird ein Server benötigt auf dem der Nagios Server
installiert werden kann. Dieser Server sollte autark von der restlichen IT-Infrastruktur
sein.
Installations- und Konfigurationsarbeiten werden von einem Standard Arbeitsplatz der
IT GmbH erledigt (Intel Pentium D 3,0 GHz, 2048MB RAM).

3. Produktphase

3.1 Auswahl des Betriebssystem des Servers


Nagios wurde für Linuxsysteme entwickelt, eine Portierung für Windows ist mir derzeit
nicht bekannt. Die Vorraussetzung zum Betrieb und der Installation eines Nagios
Servers sind gering gehalten:
- Ein Compiler zum Übersetzen des Quelltextes
- Libgd eine Grafikbibliothek
- OpenSSL
- Ein SnmpClient
- Ein Webserver der CGI Scripte verarbeiten kann
Jede aktuelle Linux Distribution bringt diese Vorraussetzungen mit, für dieses Projekt
kommt die Distribution OpenSuSe 10.2 zum Einsatz. Die gute Paketverwaltung und die
Tatsache, dass in vorausgegangen Projekten auch OpenSuSe 10.x zum Einsatz kam,
begünstigen diese Entscheidung.

3.2 Auswahl der Hardware für den Server


Die zu erwartende Last des Nagios Servers zu Beginn der Einführung ist als gering
einzuschätzen. Die verursachte Last richtet sich nach der Anzahl der überwachten
Hosts und die Anzahl der auf den Hosts ausgeführten Dienste. Das System soll auf
maximal 50 Hosts und ca. 200 Services skaliert werden. Hierfür wurde folgende
Hardwarekonfiguration als ausreichend befunden: Intel Pentium 4 2,8 GHz, 1024 MB
RAM. Des Weiteren kommt ein Raid 1 Verbund aus zwei 36 GB SCSI Festplatten zum
Einsatz um die Verfügbarkeit bei einem Festplattenschaden zu gewährleisten. Der
Server konnte dem Bestand der IT GmbH entnommen werden.

3.3 Auswahl der Software für den Server


Nachdem als Betriebssystem OpenSuSE 10.2 festgelegt wurde, mussten die Software
Vorraussetzungen für eine Nagios Installation geschaffen werden. OpenSuSE wurde
im Minimalmodus ohne grafische Oberfläche installiert. Als Compiler kommt gcc in der
Version 4.1.2 zum Einsatz. Für die Anzeige des Webinterfaces wurde der HTTP Server
Apache 2.2.3 installiert, um später die Performance Graphen erzeugen zu können wird
php5 mit den Modulen zlib, gd und curl nachinstalliert.

Admin 05.11.2007 Seite 5 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

4. Realisierungsphase
4.1 Installation des Nagios Servers
Zuerst muss ein User und eine Gruppe für den Nagios Dienst angelegt werden. Unter
diesem User läuft später der Nagios Dienst:
Anlegen der Gruppen „nagios“ und „nagcmd“:
nagios:/tmp # groupadd -g 9000 nagios
nagios:/tmp # groupadd -g 9001 nagcmd
Anlegen des Users „nagios“, der Mitglied in beiden Gruppen ist mit dem Home
Verzeichnis „/usr/local/nagios“:
nagios:/tmp # useradd -u 9000 -g nagios -G nagcmd -d /usr/local/nagios -c "Nagios
Admin" nagios
Damit der Webserver später auf die von Nagios erzeugten Daten (z.b
Konfigurationsdateien) zugreifen kann, wird der User unter dem der Webserver läuft, in
die Gruppe „nagcmd“ aufgenommen:
nagios:/tmp # usermod -G nagcmd wwwrun
Durch das Anlegen des Users wurden keine Ordner erzeugt in denen Nagios seine
Konfigurationsdateien und Logdateien speichern kann. Dies wird nun händisch
vorgenommen:
nagios:/tmp # mkdir /usr/local/nagios /etc/nagios /var/nagios
nagios:/tmp # chown nagios.nagios /usr/local/nagios/ /etc/nagios/ /var/nagios/
Nach dem Herunterladen und Entpacken des Sourcecodes in „/tmp“ beginnt die
Installation des Nagios Servers:
nagios:/tmp/nagios-2.9 # ./configure --sysconfdir=/etc/nagios --localstatedir=/var/nagios
--with-command-group=nagcmd
Beim Configure werden die nötigen Parameter übergeben um sicher zu stellen, dass
alle Dateien im richtigen Verzeichnis initialisiert werden und Nagios der richtigen
Gruppe zugeordnet wird. Das Configure Script bestätigt die erfolgreiche Verarbeitung
mit einem Übersichtsscreen (siehe Abbildung 1).

Abbildung 1: Zusammenfassungsscreen des Configure Scripts


Admin 05.11.2007 Seite 6 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Durch das Übergeben der nötigen Parameter im Configure Script waren alle Vorgaben
korrekt und die Installation konnte mittels der folgenden Befehle beendet werden:
nagios:/tmp/nagios-2.9 # make all (Übersetzen des Source Codes)
nagios:/tmp/nagios-2.9 # make install (Kopieren der Daten in die
vorgegebenen Verzeichnisse)
nagios:/tmp/nagios-2.9 # make install-init (Kopieren des Init Scripts nach
/etc/init.d/nagios)
nagios:/tmp/nagios-2.9 # make install-config (Installieren einer
Grundkonfiguration)

4.2 Installation der Nagios Plugins


Ohne die Installation der Plugins bringt der Nagios Server selbst keinen Nutzen.
Plugins sind kleine Programme oder Shell Scripte (perl, cgi, bash), die mit
Parametern von Nagios ausgeführt werden und verschiedene Zustände
zurückgeben. Über die Plugins werden die Dienste des zu Überwachenden
Rechners geprüft. Im Nagios Umfeld heißen diese Dienste „Services“.
Die Plugins wurden wieder nach „/tmp“ herunter geladen und entpackt. Analog zur
Nagios Server Installation werden dem Configure Script Parameter übergeben, der
Quellcode übersetzt und die kompilierten Dateien in den richtigen Ordner kopiert:
nagios:/tmp/nagios-plugins-1.4.10 # ./configure --sysconfdir=/etc/nagios/ --
localstatedir=/var/nagios/
nagios:/tmp/nagios-plugins-1.4.10 # make
nagios:/tmp/nagios-plugins-1.4.10 # make install

4.3 Einrichten des Webinterface


Die Weboberfläche von Nagios ist optional, hilft den Administratoren jedoch den
Überblick zu bewahren und die Zusammenhänge der Komponenten zu
verdeutlichen. Des Weiteren kann hier z.B eine „Downtime“ für Wartungsarbeiten
festgelegt werden.
Der Apache Webserver wurde so konfiguriert, dass die Weboberfläche unter
http://dnsname/nagios aufgerufen werden kann, dies geschah über ein Alias.
Dazu muss in die Konfigurationsdatei des Webservers (httpd.conf) folgendes
eingefügt werden:
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
<Directory "/usr/local/nagios/sbin">
AllowOverride AuthConfig
Options ExecCGI
SetHandler cgi-script
Order allow,deny
Allow from ALL
</Directory>

Admin 05.11.2007 Seite 7 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Alias /nagios /usr/local/nagios/share


<Directory "/usr/local/nagios/share">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from ALL
</Directory>
Nagios beinhaltet eine rudimentäre Rechteverwaltung, um diese zu verwenden
muss eine Authentifizierung am Webserver über .htaccess erfolgen. So können sich
Anwender im Webinterface anmelden und die Hosts und Services überwachen, für
die sie als Contact definiert sind.
Dazu wurde unter „/usr/local/nagios/sbin“ die .htaccess Datei, mit folgendem Inhalt,
angelegt:
nagios:/usr/local/nagios/sbin # touch .htaccess
AuthName "IT GmbH Nagios Monitoring"
AuthType Basic
AuthUserFile /etc/nagios/htpasswd
require valid-user

In die Datei „/etc/htpasswd“ wird der Benutzername, analog zur Definition in der
Nagios Konfiguration, und das verschlüsselte Passwort eingetragen:
nagios:/etc/nagios # touch htpasswd
admin:$1$7QPT8hFG$XCiLYnzo6Ce2nFwBPFNMh.
Nagios musste noch mitgeteilt werden, dass eine Benutzerauthentifizierung
verwendet werden soll. Dazu wurden die sample Konfigurations- Dateien, die beim
Kompilieren mittels make install-config erstellt wurden, umbenannt und die Standard
Einstellungen angepasst:
nagios:/etc/nagios # mv cgi.cfg-sample cgi.cfg
nagios:/etc/nagios # mv commands.cfg-sample commands.cfg
nagios:/etc/nagios # mv localhost.cfg-sample localhost.cfg
nagios:/etc/nagios # mv nagios.cfg-sample nagios.cfg
nagios:/etc/nagios # mv resource.cfg-sample resource.cfg

Änderungen in der cgi.cfg:

authorized_for_all_services=admin
authorized_for_all_hosts=admin
Admin 05.11.2007 Seite 8 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

authorized_for_all_service_commands=admin
authorized_for_all_host_commands=admin
authorized_for_all_services=admin
authorized_for_all_hosts=admin
authorized_for_system_commands=admin
authorized_for_configuration_information=admin
authorized_for_system_information=admin

Nach dem ersten Start von Nagios über „/etc/init.d/nagios start“ wurde die
Authentifizierung getestet, indem das Webinterface aufgerufen wurde (siehe
Abbildung 2).

(Abbildung 2: Aufforderung zum Login per .htaccess)

Nach dem erfolgreichen Login zeigt das Webinterface einen Host und 5 Services
an. Dies beruht auf der Standard Konfiguration und zeigt, dass der Nagios Server
funktioniert (siehe Abbildung 3).

(Abbildung 3: Ansicht des Webinterfaces nachdem erstem erfolgreichem Login)

Admin 05.11.2007 Seite 9 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

4.4 Nagios Grundkonfiguration


Nagios wird komplett über .cfg Dateien gesteuert. Nagios bietet sehr viele
individuelle und umfangreiche Möglichkeiten, das Monitoring auf spezielle
Bedürfnisse abzustimmen. Bei dieser Installation wurden wenige Abweichungen
von einer „Standard Konfiguration“ vorgenommen. Die folgenden Unterpunkte
erklären zusammenfassend, wie die Konfigurationen ineinander greifen und was
grundsätzlich bezweckt wird. Es wird nicht auf jede Option explizit eingegangen.

4.4.1 Nagios.cfg
Im ersten Schritt wurde Nagios mitgeteilt, welche Konfigurationsdateien eingelesen
werden sollen. Dies dient dazu die Konfiguration übersichtlich zu halten.
Dazu müssen die Dateipfade der einzelnen .cfg Files in die „nagios.cfg“ eingetragen
werden. Diese Datei wird zuerst eingelesen und von dort aus werden weitere
Konfigurationen inkludiert:
cfg_file=/etc/nagios/contactgroups.cfg  Kontaktgruppen, mehrere Benutzer können
zu einer Kontaktgruppe zusammengefasst werden, z.b „Linux-Admins“.
cfg_file=/etc/nagios/contacts.cfg  Kontakte, beinhaltet die Definition der einzelnen
Mitarbeiter an die Benachrichtigungen geschickt werden sollen.
cfg_file=/etc/nagios/timeperiods.cfg  Checkperioden, für jeden Host und Service
kann definiert werden in welchem Zeitraum er überwacht werden soll.
cfg_file=/etc/nagios/hostgroups.cfg  Gruppen der Hosts, wurde zur Strukturierung der
Geräte verwendet, z.b „Printserver“.
cfg_file=/etc/nagios/servicegroups.cfg  Gruppen der Services, wurde zur
Strukturierung der Services verwendet, z.b „FTP“.
cfg_file=/etc/nagios/checkcommands.cfg  Definition der Befehle wie Nagios einen
Service oder Host überprüft.
cfg_dir=/etc/nagios/IT/hosts  Hosts Definitionen, Einbinden eines Ordners, in diesem
wurde pro Gerät eine .cfg für jeden Host angelegt
cfg_dir=/etc/nagios/IT/services  Service Definitionen, Einbinden eines Ordners, in
diesem wurde pro Gerät eine .cfg für jeden Host angelegt
cfg_dir=/etc/nagios/IT/serviceextinfo  Extensions Definitionen, hier wurden
Erweiterungen für das Webinterface eingepflegt.
#cfg_file=/etc/nagios/localhost.cfg  Auskommentieren

4.4.2 Timeperiods.cfg
In dieser Phase des Projekts wurde beschlossen alle Geräte 24 Stunden 7 Tage die
Woche zu überwachen. Es gibt keine Geräte die zum Beispiel am Wochenende
herunter gefahren werden. Weiterhin bietet sich so die Möglichkeit frühzeitig zu
reagieren, sollte ein Gerät am Wochenende ausfallen. Der einzige Eintrag in dieser
Datei definiert eine Zeitperiode die 24x7 heißt und Montag bis Sonntag 24 Stunden
überwacht:

Admin 05.11.2007 Seite 10 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

define timeperiod {
timeperiod_name 24x7
alias 24 Stunden, 7 Tage die Woche
sunday 00:00-24:00
monday 00:00-24:00
tuesday 00:00-24:00
wednesday 00:00-24:00
thursday 00:00-24:00
friday 00:00-24:00
saturday 00:00-24:00
}

4.4.3 Contactgroups.cfg
Auch hier reicht für den aktuellen Konfigurationsumfang eine Kontaktgruppe. in die die
Mitglieder des Support Teams eingetragen werden:
define contactgroup {
contactgroup_name admin
alias admin
members admin
}

4.4.4 Contacts.cfg
In dieser Datei wurden alle Benutzer angelegt, die benachrichtigt werden oder Zugriff
auf das Webinterface haben sollten. Definiert wird, in welcher „Timeperiod“, über
welche Zustände und über welches Medium der User benachrichtigt werden soll:
define contact {
contact_name Admin
alias Andreas Admin
host_notifiion_period 24x7
service_notifiion_period 24x7
host_notifiion_options d,u,r
service_notifiion_options w,u,c,r
host_notifiion_commands host-notify-by-email,host-notify-by-mobilant
service_notifiion_commands notify-by-email,notify-by-mobilant
email admin@IT-.de
pager 00491776666666
}
Admin 05.11.2007 Seite 11 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

4.4.5 Hostgroups.cfg
Es wurde für jede Gerätegattung eine Hostgruppe definiert. (Server, Printserver,
Drucker, Swichtes, etc..). Als Beispiel hier die Definition für die Router:
define hostgroup {
hostgroup_name router
alias Router
members FVL328
}

4.4.6 Servicegroups.cfg
Analog wurden für die zu überwachenden Services Gruppen definiert um die Services
strukturiert anzeigen zu können. Beispiel http Gruppe:
define servicegroup {
servicegroup_name all-http
alias ALL HTTP
}

4.4.7 Resource.cfg
In dieser Datei wurden Parameter definiert, die später global von Nagios verwendet
werden können. Vorerst wurde hier nur der Pfad definiert, indem die Plugins zum
überwachen eines Services liegen:
$USER1$=/usr/local/nagios/libexec

4.4.8 Host Definition


Für jeden Host wurde unter „/etc/nagios/IT/hosts“ eine eigene CFG angelegt. Der
Dateiname gibt den Namen des Geräts wieder, als Beispiel wird hier wieder der Router
FVL328 aufgeführt:
define host {
host_name FVL328  Gerätname.
alias DSL Router  Beschreibung.
address 10.197.147.1  IP Adresse (DNS
Name möglich).
hostgroups router  zu welcher Gruppe das
Gerät gehört.
check_command check-host-alive  Befehl zum Ausführen
des Host Checks, wurde
in checkcommands.cfg
vordefiniert.
max_check_attempts 6  Wie oft soll der Check
bei einem Fehlschlag
wiederholt werden bis
Admin 05.11.2007 Seite 12 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

eine Benachrichtigung
ausgelöst wird.
check_period 24x7  Zeitraum in dem
überwacht werden soll.
flap_detection_enabled 1  Nagios versucht
schnell wechselnde
Zustände zu erkennen.
process_perf_data 1  Performance Daten
werden aufgezeichnet,
werden später durch PNP
weiterverarbeitet.
contact_groups admin  Gruppe die für diesen
Host zuständig ist.
notifiion_interval 60  Es wird jede Stunde
neu benachrichtigt.
notifiion_period 24x7  Zeitraum in dem
benachrichtigt werden
soll.
notifiion_options d,u,r,f  Es soll bei „down“,
„unrechable“,
„recovery“ sowie
„flapping“ Benachrichtigt
werden.
notifiions_enabled 1  Aktivieren der
Benachrichtigung.
}

4.4.9 Service Definition


Jeder Service, der überwacht werden soll, muss unter Nagios konfiguriert werden. Es
gibt die Möglichkeit in einer Service Definition mehrere Hosts aufzunehmen. Analog zu
den Hosts wurde jedoch unter „/etc/nagios/IT“ ein Verzeichnis „services“ angelegt. In
diesem Verzeichnis wurde für jeden Host eine separate Konfiguration angelegt. Auch
hier wurde auf die Übersichtlichkeit Wert gelegt, weswegen auf die Verschachtelung
der Konfiguration verzichtet wurde. Als Beispiel soll hier die Konfiguration zur
Überwachung eines http Servers gezeigt werden:

define service {
host_name FVL328  bezieht sich auf den
definierten Hostnamen in der
zugehörigen Host-Definition.
service_description http  Servicebeschreibung.
servicegroups all-http  Gruppenzugehörigkeit.
check_command check_http  Checkcommand, definiert in
der Checkcommands.cfg.

Admin 05.11.2007 Seite 13 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

max_check_attempts 5  Maximale Anzahl an Checks


bis zum Statuswechsel des
Services.
normal_check_interval 5  Zeit zwischen den Checks bei
keinem Problem.
retry_check_interval 4  Abstand der Durchführung
des Checks nach Änderung des
Zustands (Bsp. OK zu Critical).
check_period 24x7  Zeitraum in dem der Service
überwacht werden soll.
parallelize_check 1  ermöglicht parallele Checks.
event_handler_enabled 1  der Eventhandler wird
aktiviert, dieser kann nach
definierten Zuständen
selbständig eingreifen und z.b
Dienste neustarten.
flap_detection_enabled 1  Nagios versucht schnell
wechselnde Zustände zu
erkennen.
process_perf_data 1  Mitschneiden der
Performancedaten für PNP.
contact_groups admin  Zu benachrichtigende Gruppe.
notifiion_interval 720  Abstand nach dem wiederholt
Benachrichtigungen verschickt
werden.
notifiion_period 24x7  Zeitraum in dem
benachrichtigt wird
notifiion_options w,u,c,r,f  Es soll bei „down“,
„unrechable“, „recovery“ sowie
„flapping“ benachrichtigt werden.
notifiions_enabled 1  Aktivieren der
Benachrichtigung.
}

4.4.10 Abschließen der Grundkonfiguration


Nach dem Anlegen der oben beschriebenen Konfigurationsdateien kann Nagios
gestartet werden. In der Konfiguration wurde zuerst nur ein Host eingebunden mit den
zwei Services „http“ und „icmp“. Weiterhin wurde die von Nagios mitgelieferte
Konfigurationsdatei checkcommands.cfg nicht verändert. Sie enthielt zu Beginn der
Testphase alle nötigen check commands und wurde erst später angepasst. Das
Webinterface zeigte wie konfiguriert einen Host mit zwei aktiven Services (siehe
Abbildung 4).

Admin 05.11.2007 Seite 14 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

(Abbildung 4: Nagios Webinterface nachdem ersten Start mit der Grundkonfiguration)

4.5 Erweiterte Konfiguration


Nach der Grundkonfiguration und dem erfolgreichen Test wurde mit der Konfiguration
der Zusatzanforderungen begonnen. Darunter fallen das Benachrichtigungsscript für
den SMS Versand, die grafische Aufbereitung der von Nagios aufgezeichneten
Performancedaten sowie die erweiterte Überwachung von lokalen
Systemeigenschaften mittels NRPE.

4.5.1 Performancedaten grafisch darstellen mittels PNP


PNP basiert auf dem „rrdtool“, das über yast nachinstalliert wurde. Anschließend wurde
der Quellcode von PNP herunter geladen und entpackt:
cd /usr/local/src/
nagios:/usr/local/src # wget http://ovh.dl.sourceforge.net/sourceforge/pnp4nagios/pnp-
0.4.3.tar.gz
nagios:/usr/local/src # tar xzvf pnp-0.4.3.tar.gz
nagios:/usr/local/src # cd pnp-0.4.3/
Die bei der Nagios Kompilierung angewandten Daten werden auch in das Configure
Script von PNP übernommen. Mittels einem „make all“ sowie dem anschließendem
„make install“ wurde die Installation abgeschlossen:
nagios:/usr/local/src/pnp-0.4.3 # ./configure --with-nagios-use=nagios --with-nagios-
group=nagios --with-rrdtool --with-perfdata-dir=/usr/local/nagios/share/perfdata --with-
rrdtool=/usr/bin/rrdtool
make all
make install
In der nagios.cfg unter „/etc/nagios“ musste das Performance Data Handling aktiviert
werden. Dazu wurden folgende Parameter für die vordefinierten Variablen gesetzt:
process_performance_data=1
service_perfdata_command=process-service-perfdata
In die Datei „/etc/nagios/checkcommands.cfg“ wurde folgende Definition zur
Verarbeitung der Daten eingefügt:
define command{
Admin 05.11.2007 Seite 15 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

command_name process-service-perfdata
command_line /usr/local/nagios/libexec/process_perfdata.pl
}
Zuletzt wurde unter „/etc/nagios/IT/serviceextinfo“ für jeden Host, dessen
Performancedaten aufgezeichnet werden sollen, eine Konfigurationsdatei angelegt.
Über diese Definition wird im Nagios Webinterface ein Button eingefügt. Dieser verlinkt
auf die PNP Graphen. Der Dateiname ist analog zu den Dateinamen in
„/etc/nagios/hosts“ sowie „/etc/nagios/services“. In der unter „serviceextinfo“
abgelegten Datei wird für jeden Service separat definiert, wo die Grafiken zu finden
sind:
define serviceextinfo{
host_name webserver  Hostname
service_description HTTP  Servicename
action_url /nagios/pnp/index.php?host=webserver&srv=http  Als URL
wird die index.php Datei im PNP Verzeichnis angegeben,
welches unterhalb des Nagios Webinterface Verzeichnis liegt.
Als Parameter werden der Hostname und der Servicename
übergeben.
}
Nachdem die Nagios Konfiguration neu eingelesen wurde, konnte ein erster Test
durchgeführt werden, beim aufrufen der URL meldete PNP „HTTP rrd not found“ was
darauf zurück zu führen war, dass noch keine Daten aufgezeichnet wurden. Bei einem
späterem Test zeigte sich eine erste Messung (siehe Abbildung 5).

Admin 05.11.2007 Seite 16 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

(Abbildung 5: PNP Grafiken nach einigen Servicechecks)

4.5.2 SMS Benachrichtigung über HTTP-Gateway


Nagios soll zusätzlich zur Email Benachrichtigung auch per SMS mitteilen, falls ein
Problem auftritt. Zu dieser Phase des Projekts wurde beschlossen, die SMS über einen
externen Anbieter zu versenden. Die Nachricht wird von Nagios generiert und an ein
PHP Script übergeben. Anschließend wird die Nachricht an einen HTTP-Gateway
verschickt, welches die Eingabe abfängt und als SMS verschickt. Das PHP Skript
stammt nicht von mir und ist in der Quellenangabe hinterlegt (siehe Quelle 5).
Das PHP Skript wird unter „/etc/nagios/notify_mobilant.php“ abgelegt (siehe Anhang
6.1 ). Die „checkcommands.cfg“ musste um die Definition zum SMS Versand erweitert
werden:
define command {
command_name host-notify-by-mobilant
command_line /etc/nagios/notify_mobilant.php "$CONTACTPAGER$" "Host
'$HOSTALIAS$' is $HOSTSTATE$ Info: $HOSTOUTPUT$ Time: $LONGDATETIME$"
>> /tmp/test
}
define command {
command_name notify-by-mobilant
command_line /etc/nagios/notify_mobilant.php "$CONTACTPAGER$" "Service:
$SERVICEDESC$ Host: $HOSTNAME$ Address: $HOSTADDRESS$ State:
Admin 05.11.2007 Seite 17 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

$SERVICESTATE$ Info: $SERVICEOUTPUT$ Date: $LONGDATETIME$" >>


/tmp/test
}
Der erste Eintrag dient zur Benachrichtigung bei Host Fehlern, der zweite für die
Services. Die Parameter konnten bei den vordefinierten Email Versand Definitionen
entnommen werden. Zuletzt wurde in der „contacts.cfg“ noch die Handynummer des
Empfängers definiert. Dazu wurde die Zeile „pager 00491773640599“ eingefügt. Nach
einem mutwillig herbeigeführten „Down“ des Hosts „webserver“ konnte das
Funktionieren des SMS Versands festgestellt werden (siehe Abbildung 6).

(Abbildung 6: Beispiel einer von Nagios versendeten Benachrichtigung)

4.5.3 Konfiguration von NRPE.


In den Anforderungen an das Netzwerk Monitoring Tool wurde definiert, dass lokale
Systemeigenschaften ebenfalls überwacht werden sollen. Dazu gehören zum einen
Performance Eigenschaften wie CPU-Last, Arbeitsspeicherverbrauch oder Festplatten
Kapazitäten. Zum anderen soll Nagios aber auch überwachen, ob z.b der Prozess des
Backupprogramms läuft.
Die IT GmbH verfügt über ein heterogenes Netz, d.h es kommen Windows und Linux
Maschinen zum Einsatz die überwacht werden sollen. Um lokale Prozesse und
Systemeigenschaften überwachen zu können, muss Nagios Zugriff auf die Maschine
gewährt werden. Nagios bietet hierfür verschiedene Möglichkeiten an. Die Wahl fiel auf
die NRPE Lösung, da es diesen Client für Windows und Linux Systeme gibt.
Alternativen wären für Linux Systeme „check_by_ssh“ und für Windows Maschinen
„NC_Net“.

4.5.3.1 NRPE Installation am Nagios Server.


NRPE setzt das OpenSSL Development Packet voraus. Dieses wurde per „yast“
nachinstalliert, anschließend der Source Code von NRPE herunter geladen, entpackt,
konfiguriert und übersetzt:
nagios:/usr/local/src # tar xzvf nrpe-2.0.tar.gz
nagios:/usr/local/src # cd nrpe-2.0/

Admin 05.11.2007 Seite 18 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

nagios:/usr/local/src/nrpe-2.0 # ./configure --sysconfdir=/etc/nagios/ --enable-ssl


make all
Das so erzeugte Plugin „check_nrpe“ wurde in das Nagios Plugins Verzeichnis kopiert,
womit die Konfiguration vorerst am Nagios Server selbst abgeschlossen wurde.

4.5.3.2 NRPE Installation am Linux Client.


Zuerst wurde ein Verzeichnis „nagios“ unter „/etc“ angelegt, analog zum Nagios Server.
Vom Server wurde die ausführbare NRPE Datei und die zugehörige
Konfigurationsdatei auf den Client kopiert:
nagios:/usr/local/src/nrpe-2.0/src # scp nrpe root@webserver:/usr/local/sbin/
nrpe 100% 83KB 83.4KB/s 00:00
nagios:/usr/local/src/nrpe-2.0/src # scp ../nrpe.cfg root@webserver:/etc/nagios/
nrpe.cfg 100% 5051 4.9KB/s 00:00
Der NRPE Client wurde mittels xinetd in das System integriert:
webserver:~ # cd /etc/xinetd.d/
webserver:/etc/xinetd.d # touch nrpe
Inhalt der Datei „/etc/xinetd.d/nrpe“:
# /etc/xinetd.d/nrpe
# description: NRPE
# default: on
service nrpe
{
flags = REUSE
socket_type = stream
wait = no
user = nobody
group = nogroup
server = /usr/local/sbin/nrpe
server_args = -c /etc/nagios/nrpe.cfg --inetd
log_on_failure += USERID
disable = no
only_from = 127.0.0.1 10.197.147.50
}
Neustarten des xinetd Dämons zum aktiveren von NRPE:
webserver:~ # /etc/init.d/xinetd restart
Shutting down xinetd: done
Starting INET services. (xinetd) done

Admin 05.11.2007 Seite 19 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Das Script startet den NRPE Client mit dem User „nobody“ und der Konfigurationsdatei
unter „/etc/nagios/nrpe.cfg“.

4.5.3.3 NRPE Installation am Windows Client


Nachdem der aktuelle Windows Client (siehe Quelle 6) und die zugehörigen Windows
Plugins (siehe Quelle 7) heruntergeladen wurden, wurde der Client nach
„C:\Windows\NRPE“ und die Plugins nach „C:\Windows\NRPE\bin“ entpackt. Als
nächstes wurde NRPE als Dienst installiert (siehe Abbildung 7).

(Abbildung 7: Installation des NRPE Dienstes)

Unter „C:\NRPE\bin\“ findet sich die Datei „nrpe.cfg“ in der die Pfade zu den Check
Plugins angepasst wurden:
allowed_hosts=10.10.9.100,10.10.9.101,192.168.1.100,10.197.147.50
command[nt_check_disk_c]=C:\NRPE\bin\diskspace_nrpe_nt.exe c: 70 90
command[nt_check_disk_d]=C:\NRPE\bin\diskspace_nrpe_nt.exe d: 70 90
command[nt_check_disk_e]=C:\NRPE\bin\bin\diskspace_nrpe_nt.exe e: 70 90
command[nt_cpuload]=C:\NRPE\bin\cpuload_nrpe_nt.exe 50 80
command[nt_memload]=C:\NRPE\bin\memload_nrpe_nt.exe 70 90
command[nt_service]=C:\NRPE\bin\service_nrpe_nt.exe "Event Log,DNS Client"
command[nt_eventlog]=C:\NRPE\bin\eventlog_nrpe_nt.exe -m 7200 -s "Service
Control Manager"
Nach dem Start des NRPE Plugins ist der Client einsatzbereit (siehe Abbildung 8).

(Abbildung 8: Erfolgreicher Start des NRPE Clients)

4.5.3.4 Test und abschließende Konfiguration am Nagios Server.


Bevor ein Service und ein Checkcommand für Nagios definiert wurde, wurde überprüft
ob der NRPE Client die Anfragen vom Nagios Server annimmt. Dazu wurde das
„check_nrpe“ Plugin manuell aufgerufen:
nagios:/usr/local/nagios/libexec # ./check_nrpe -H webserver -c check_load
OK - load average: 0.61, 0.54, 0.22|load1=0.610;15.000;30.000;0;
load5=0.540;10.000;25.000;0; load15=0.220;5.000;20.000;0;
Da der Test erfolgreich war, wurde ein neuer Service definiert, analog zur
vorangegangenen Service Definitionen. Lediglich der Paramater “check_command”
lautet: „check_command check_nrpe!check_load“.
Unter „/etc/nagios/checkcommands.cfg“ wurde für das NRPE Plugin folgender
Command definiert:
Admin 05.11.2007 Seite 20 von 27
Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

# 'check_nrpe' command definition


define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c
$ARG1"
}
Dem NRPE Plugin wird nur übergeben, welchen Check es auszuführen hat. Weitere
Parameter, wie die Warnschwellen, ließt der NRPE Client aus der lokalen Datei
„nrpe.cfg“ Datei aus. Nur wenn ein Check in der „nrpe.cfg“ auf dem Client definiert, ist
kann er vom Nagios Server aufgerufen werden. Aus Sicherheitsgründen werden keine
weiteren Parameter übergeben, da es sonst unter Umständen möglich wäre dem
Plugin beliebige Parameter und ausführbaren Code „unterzuschieben“. In der
„nrpe.cfg“ wurden mehrere, nicht in der Standard-Konfiguration enthaltene Services,
definiert. Als Beispiel hier die Definition zum Überwachen der Auslagerungsdatei:
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 10% -c 5%
Die Service Definitonen am Nagios Server sind für Windows sowie Linux Maschienen
identisch, einzig die auf dem zu überwachendem Rechner liegende NRPE.cfg
unterscheidet sich.

5. Projektbewertung
5.1 Fazit
Das Projekt konnte im vorgegeben Zeitrahmen erfolgreich abgeschlossen werden. Alle
Anforderungen konnten umgesetzt werden. Während des Projektes wurden neue
Anforderungen diskutiert und beschlossen, diese Erweiterungen werden aber zu einem
späteren Zeitpunkt realisiert. Nachdem analog zur oben beschriebenen Konfiguration
weitere Hosts und Services eingepflegt wurden, wurde der Nagios Server produktiv
gesetzt. Aufgrund der leichten Erweiterbarkeit wird der aktuelle Status wie er in dieser
Dokumentation beschrieben ist, vorerst beibehalten. Im Laufe der nächsten Wochen
will das Support Team Erfahrungen sammeln und feststellen, ob die Konfiguration
optimiert werden muss. Nach dieser Phase sollen dann Erweiterungen eingepflegt
werden. Darunter fallen z.B Escalations oder der Event Handler. Die ersten
Rückmeldungen sind positiv. Probleme und Engpässe werden in Echtzeit erfasst und
die Reaktionszeit hat sich drastisch verkürzt. Auch die Problemlösungsphase hat sich
nahezu halbiert.

Admin 05.11.2007 Seite 21 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Admin 05.11.2007 Seite 22 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

6. Anhang:
6.1 Dodekatex.de PHP Script zur Übermittlung der Nagios Notifions an den
HTTP-Gateway von Mobilant.net:
#!/usr/bin/php5
/*
Dieses Skript von Philipp Neuhaus (neuhaus@dodekatex.de) steht unter der GPL
*/
<?php
// phpinfo(); // (DEBUG)
// Dieses Skript steht unter der GPL
// Geschrieben von Philipp Neuhaus, neuhaus@dodekatex.de
// Key fuer mobilant:
$key="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
// URL von Mobilant:
$hosturl = "http://gateway.mobilant.net/";
// weitere Mobilant-Argumente (Absenderadresse, Service etc)
// in der Form: "&service=foo&absender=0000"
$mobilantoptionen="";
$handynr=$_SERVER['argv'][1];
$smstext=$_SERVER['argv'][2];
//Nun wird die Handynummer ueberprueft:
//Am Anfang zwei Nullen
// dann 3 Ziffern,die nicht 0 sein duerfen
// Dann mindestens 5 Zeichen, wobei dies Ziffern sein muessen
// Nach den Ziffern das Ende des Strings
// (Keine Leerzeichen erlaubt)
if (preg_match("/^00[1-9]{3}[0-9]{5,}$/m", $handynr) == 0) {
die ("Falsches Format der Handynumer\n");
}
//Den String auf 155 Zeichen kuerzen, damit keine zwei SMS verschickt werden
$smstext = substr($smstext, 0, 155);
//Den Text URL-Encoden
$smsurltext = urlencode($smstext);
$hosturl = $hosturl."?key=".$key."&handynr=".$handynr.$mobilantopionen."&text=".$smsurltext;
//Ab jetzt: Curl-anfrage spezifizieren
$curlanfrage = curl_init();
//URL setzen
curl_setopt($curlanfrage, CURLOPT_URL,$hosturl);

Admin 05.11.2007 Seite 23 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

//Damit nicht die Rueckgabe ausgegeben wird:


curl_setopt($curlanfrage, CURLOPT_RETURNTRANSFER, 1);
$curlresponse = curl_exec($curlanfrage);
//Zu DEBUG-Zecken letzte Zeile auskommentieren und naechste Zeile aktivieren, dann kostet
es nicht so viel ;-)
//$curlresponse = "100";
if ($curlresponse=="100") {
if ($abrechnen==true){
$anfrage="INSERT into $abrechnung_tabelle ( nummer, text, datum ) values (
'$handynr', '$smsurltext', '".mktime()."')";
$link = mysql_connect( $abrechnung_host, $abrechnung_benutzer,
$abrechnung_kennwort);
if (!$link) die ("Verbindung zu mySQL nicht moeglich, SMS trotzdem verschickt");
mysql_select_db ($abrechnung_db, $link) or die ("mySQL-select-DB nicht moeglich,
SMS trotzdem verschickt\n".mysql_error()."\n");
mysql_query ($anfrage) or die ("mySQL-Eintragung nicht moeglich, SMS trotzdem
verschickt\n".mysql_error()."\n");
mysql_close ($link);
}
} else {
print("FEHLER:\n");
print("mobilant-Response:\n".$curlresponse."curl_error:\n");
print(curl_error($curlanfrage));
}
curl_close($curlanfrage);
print("\n");

6.2 Abbildungsverzeichniss
Abbildung 1: Zusammenfassungsscreen des Configure Scripts…………………………………6
Abbildung 2: Aufforderung zum Login per .htaccess………………………………………………9
Abbildung 3: Ansicht des Webinterfaces nach erstem erfolgreichem Login…………………….9
Abbildung 4: Nagios Webinterface nach dem ersten Start mit der Grundkonfiguration………15
Abbildung 5: PNP Grafiken nach einigen Servicechecks………………………………………...16
Abbildung 6: Beispiel einer von Nagios versendeten Benachrichtigung………………………..17
Abbildung 7: Installation des NRPE Dienstes……………………………………………………...19
Abbildung 8: Erfolgreicher Start des NRPE Clients………………………………………………..19

Admin 05.11.2007 Seite 24 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

6.3 Quellenverzeichnis
(1) Nagios Dokumentation : http://nagios.sourceforge.net/docs/2_0/toc.html
(2) Nagios Portal : http://www.nagios-portal.de
(3) Nagios Wiki : http://www.nagios-wiki.de/
(4) Nagios Exchange : http://www.nagiosexchange.org/
(5) Dodekatex.de SMS Script : http://dodekatex.de/index.php?id=38
(6) NRPE_NT Client für Windows: http://www.miwi-dv.com/nrpent/
(7) NRPE_NT Windows Plugins:
http://www.nagiosexchange.org/NRPE_Plugins.66.0.html?&tx_netnagext_pi1[p_
view]=62
(8) OpenSuSE: http://de.opensuse.org
(9) Wikipedia: http://de.wikipedia.org/wiki/
(10) OpenSSL: http://de.wikipedia.org/wiki/OpenSSL
(11) Compiler: http://de.wikipedia.org/wiki/Compiler
(12) Barth, Wolfgang.: Nagios. System- und Netzwerk-Monitoring
Open Source Press; Auflage: 1 (November 2005), ISBN 3937514090

Admin 05.11.2007 Seite 25 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

6.4 Glossar

6.4.1 Compiler
Ein Compiler ist ein Computerprogramm, das ein in einer Quellsprache geschriebenes
Programm in eine Zielsprache (Zielprogramm) umwandelt. Üblicherweise handelt es
sich dabei um die Übersetzung eines von einem Programmierer in einer
Programmiersprache geschriebenen Quelltextes in Assemblersprache, Bytecode oder
Maschinensprache. Das Übersetzen eines Quellprogramms in ein Zielprogramm durch
einen Compiler wird auch als Kompilierung bezeichnet. (siehe Quelle 11)

6.4.2 OpenSSL
OpenSSL ist eine Open-Source-Implementierung des SSL/TLS-Protokolls und bietet
darüber hinaus weitergehende Funktionen zur Zertifikatsverwaltung und zu
unterschiedlichen kryptographischen Funktionen. (siehe Quelle 10)

6.4.3 Webserver
Ein Webserver ist ein Computerprogramm das auf einem Server ausgeführt wird, es
dient dazu über das http Protokoll Informationen zur Verfügung zu stellen. Die zwei
bekanntesten Webserver sind Apache und der Internet Information Server.

6.4.4 OpenSuSE
OpenSuSE ist eine freie Linux Distribution die von Novell gefördert wird.

6.4.5 PHP
PHP bedeutet Hypertext Preprocessor und ist eine an C beziehungsweise C++
angelegte Skriptsprache die im Webbereich zum Einsatz kommt

6.4.6 Host
Im Nagios Chargon wird ein physikalischer Rechner als Host definiert.

6.4.7 Service
Im Nagios Chargon wird ein Dienst als Service definiert.

6.4.8 HTTP-Gateway
Bei einem HTTP Gateway wird über die aufgerufene Adresse ein Programm
aufgerufen, die Paramter werden in der URL mitübergeben.

Admin 05.11.2007 Seite 26 von 27


Einführung einer Netzwerk-Monitoring-Lösung im firmeninternen LAN.

Selbsterklärung

Ich versichere durch meine Unterschrift, dass ich das zugrunde liegende Projekt und diesen
Bericht zur betrieblichen Projektarbeit (Projektbericht) selbstständig und ohne fremde Hilfe
angefertigt habe.

Alle fremden Quellen wie:

Softwaremodule,

Veröffentlichungen,

Andere Projektberichte

und Zuarbeiten,

die ich funktionsmäßig, wörtlich oder auch nur sinngemäß übernommen habe, sind von mir als
solche gekennzeichnet worden.

Die Arbeit hat in dieser Form keiner anderen Prüfungssituation vorgelegen!

Ort, Datum Unterschrift

Das Projekt wurde

abgenommen

nicht abgenommen

_______________ ___________________ ________________

Ort, Datum Projektverantwortlicher Stempel des Betriebs

Admin 05.11.2007 Seite 27 von 27