Sie sind auf Seite 1von 20

NAGIOS

- Copyright © 1999-2005 Ethan Galstad -

Dokumentation

©Erik Franz, 05.09.2005


erik_franz@web.de
Inhaltsverzeichnis
1 Allgemeines....................................................................................................................3
1.1 Was ist Nagios ........................................................................................................3
1.2 Verwendete Hardware.............................................................................................4
1.3 Verwendete Software ..............................................................................................4

2 Installation......................................................................................................................5
2.1 Betriebssystem installieren......................................................................................5
2.2 Nagios installieren...................................................................................................5
2.3 Plugins installieren..................................................................................................6
2.4 Web-Interface aufsetzen..........................................................................................7
2.4.1 URL anpassen .................................................................................................7
2.5 Authentifizierung einrichten....................................................................................8
2.5.1 Login ohne Passwort .......................................................................................8
2.5.1.1 .htaccess ......................................................................................................9
2.5.1.2 httpd.conf ....................................................................................................9

3 Konfiguration ...............................................................................................................10
3.1 Die Konfigurationsdateien.....................................................................................11
3.1.1 nagios.cfg......................................................................................................11
3.1.2 resource.cfg ...................................................................................................11
3.1.3 cgi.cfg ...........................................................................................................11
3.1.4 contacts.cfg ...................................................................................................11
3.1.5 contactgroups.cfg ..........................................................................................11
3.1.6 hosts.cfg ........................................................................................................12
3.1.7 hostgroups.cfg ...............................................................................................12
3.1.8 services.cfg....................................................................................................12
3.1.9 checkcommands.cfg ......................................................................................13
3.1.10 misccommands.cfg ........................................................................................13
3.1.11 timeperiods.cfg..............................................................................................13
3.1.12 hostextinfo.cfg...............................................................................................14
3.2 NRPE....................................................................................................................15
3.2.1 Server............................................................................................................15
3.2.2 Clients...........................................................................................................16
3.2.2.1 Windows ...................................................................................................16
3.2.2.2 Linux.........................................................................................................16
3.3 Anmerkungen .......................................................................................................18
3.3.1 check_cisco Plugin ........................................................................................18
3.3.2 check_compaq_insight.pl Plugin ...................................................................18
3.3.3 check_ping Plugin .........................................................................................18
3.3.4 trends.cgi, histogram.cgi und statusmap.cgi...................................................19

4 Nützliche Kommandos..................................................................................................20
4.1 Apache2................................................................................................................20
4.2 Nagios...................................................................................................................20
4.3 Web-Oberfläche....................................................................................................20

2
1 Allgemeines

1.1 Was ist Nagios


Nagios ist ein Network Monitoring Programm für die Überwachung von Hosts,
Services und Netzwerken.

Dieses Netz- und Systemüberwachungswerkzeug ist im Gegensatz zu den


kostspieligen kommerziellen Lösungen, wie z.B. Tivoli von IBM oder OpenView von
HP, völlig quelloffen (OpenSource) und steht unter GPL-Lizenz.

Es ist kostenlos und kann sehr individuell auf die jeweiligen Anforderungen
„maßgeschneidert“ werden.
Außerdem besteht inzwischen eine stetig wachsende Gemeinde von Nagios-usern
weltweit. Viele große Firmen sind inzwischen auf dieses System gewechselt, siehe
http://www.nagios.org/userprofiles/quickstats.php.
Sollte man auf programmspezifische Probleme stoßen, so wird einem in Foren und
Mailing-Listen im Internet sehr schnell weiter geholfen.

Das Programm selbst besteht aus einem in C geschriebenem Daemon, der über eine
Reihe von Konfigurationsdateien gesteuert wird, sowie einigen weiteren
Komponenten.
Statusinformationen gibt Nagios über ein Logfile, vor allem aber über ein
übersichtliches Web-Frontend aus.

Die beschriebene Installation ist nicht allgemein gültig.


Je nach verwendeten Distributionen und Programmversionen kann die Einrichtung
eines solchen Nagios-Servers von dieser Anleitung abweichen.
Deshalb bitte immer die den verschiedenen Paketen beigelegten Dokumente lesen und
gegebenenfalls berücksichtigen.

3
1.2 Verwendete Hardware
- HP ProLiant DL360 G3
- Intel Xeon Prozessor 2,8GHz
- 1024MB Arbeitsspeicher
- 2x36,4GB SCSI-Festplatten Raid1
- Ethernet-Karte 10/100/1000 Mbit

1.3 Verwendete Software


- SuSE Linux 9.3 Professional mit kernel 2.6.11.4 (http://www.suse.de)
- Apache2 2.0.53 (http://www.apache.de)
- tcpdump 3.8.3 (http://www.tcpdump.org)
- emacs 21.3 (http://www.gnu.org/software/emacs)
- nmap 3.81 (http://www.insecure.org)
- gcc 3.3.5 (http://gcc.gnu.org)
- net-snmp 5.2.1 (http://net-snmp.sourceforge.net/)
- nagios 2.0b4 (http://www.nagios.org)
- nagios plugins 1.4.1 (http://www.nagios.org)

 Die verwendete Software ist Bestandteil der vorliegenden


Suse Linux Distribution.
Wer auf Aktualität besteht, kann sich die Sourcen selbstverständlich auch auf
den oben angegebenen Seiten im Internet herunterladen und „per Hand“
Konfigurieren-Kompilieren-Installieren.
Die beiden Pakete nagios 2.0b4 und nagios plugins 1.4.1 wurden nachträglich
installiert.
Um nrpe nutzen zu können, werden außerdem die Pakete nrpe-2.0 und
nrpe_nt.0.8 benötigt (siehe 3.2 ff).

4
2 Installation

2.1 Betriebssystem installieren


- Standard-Installation mit Yast2
- 2 Partitionen erstellt, / und swap
- Minimale Software-Installation ausgewählt, weitere Applikationen wie oben
beschrieben hinzugefügt.
- Rechnername: <Rechnername>
- IP-Adresse: <IP_Nagios>
- Subnet-Mask: <Subnet_Mask>
- Domain: <domain>
- Nameserver1: <nameserver_1>
- Nameserver2: <nameserver_2>
- Default Gateway: <default_gw>
- Integrierte SuSE Firewall deaktiviert, um Komplikationen zu vermeiden. Der
Server steht im Intranet, das bereits durch eine Firewall-Lösung geschützt ist.
- root Passwort festgelegt.
- Benutzer angelegt: nagios
- Die Pakete nagios 2.0b4 und nagios plugins 1.4.1 herunterladen und in einem
separaten download-Verzeichnis abgelegt (/usr/local/src/)

2.2 Nagios installieren


- Entpacken des Nagios-Pakets mit
tar xzf nagios-2.0b4.tar.gz
- Neue Gruppe „nagios“ anlegen in YAST und den bereits bei der Installation
des Betriebssystems angelegten User „nagios“ eintragen.
- Neue Gruppe „nagcmd“ anlegen in YAST und User „nagios“ und „wwwrun“
eintragen.
- Nagios-Verzeichnis anlegen:
mkdir /usr/local/nagios
- User und Gruppe „nagios“ als Besitzer des Verzeichnisses eintragen:
chown nagios.nagios /usr/local/nagios
- Konfigurations-Script ausführen mit
./configure --with-command-group=nagcmd
- Kompilieren von Nagios und den CGIs:
make all
- Binaries und html files Installieren:
make install
- Erstellen des Runlevel Scripts "nagios" für den Systemstart in /etc/init.d:
make install-init
- make install-commandmode
- Beispieldateien installieren:
make install-config
- Das Programm gibt nach jedem Installationsschritt an, wie weiter zu verfahren
ist. Diese Ausgaben unbedingt beachten!

5
- Für nähere Informationen zur Installation, die Datei
/usr/local/src/nagios-2.0b4/INSTALLING sowie
/usr/local/nagios/share/doc/installing.html beachten.
- Im Verzeichnis /usr/local/nagios sind 5 Unterverzeichnisse:
1. bin/  Das Programm
2. etc/  Konfigurationsdateien
3. sbin/  CGIs
4. share/  HTML files
5. var/  Log files, Status files
- Im Runlevel-Editor von YAST „nagios“ für Runlevel 2, 3 und 5 eintragen.
- Eine Beispielkonfiguration ist eingerichtet. Jedoch ist Nagios damit noch nicht
startbereit.

2.3 Plugins installieren

 Plugins sind Scripte oder ausführbare Dateien, die die Dienste- und Hosts-
Überprüfung durchführen.

- Entpacken der Plugins mit


tar xzf nagios-plugins-1.4.1.tar.gz
- Konfigurations-Script ausführen mit
./configure
- Kompilieren mit
make
- Installieren mit
make install
- Plugins befinden sich im neuen Verzeichnis /usr/local/nagios/libexec/

6
2.4 Web-Interface aufsetzen
- Folgende zwei Einträge in der Datei /etc/apache2/httpd.conf hinzufügen:

ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"


<Directory "/usr/local/nagios/sbin">
Options ExecCGI
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>

Alias /nagios "/usr/local/nagios/share"


<Directory "/usr/local/nagios/share">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>

- Nach einem Neustart des Webservers mit


/etc/init.d/apache2 restart
ist die Nagios Weboberfläche unter der Adresse http://<IP_Nagios>/nagios
zu erreichen.

2.4.1 URL anpassen

Hier zwei Möglichkeiten die Adresse der Weboberfläche ein bisschen


benutzerfreundlicher zu gestalten.

- In den Document root des Apache2 (/srv/www/ht-docs/) eine Datei index.html


anlegen mit folgendem Inhalt:
<META http-equiv="refresh" content="0;URL=http://<IP_Nagios>/nagios/">

 Damit reicht es in den Browser lediglich die IP-Adresse des


Nagios-Servers einzugeben, man wird automatisch weiter
geleitet.

- die elegantere Lösung wäre es einen VirtualHost anzulegen, der auf Nagios
zeigt (http://virtualhost)
 siehe http://httpd.apache.org/docs/2.0/de/mod/core.html.de#virtualhost

7
2.5 Authentifizierung einrichten
- Erstellen einer Datei .htaccess im Verzeichnis /usr/local/nagios/sbin sowie in
/usr/local/nagios/share mit folgendem Inhalt:

AuthName "Nagios Access"


AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
require valid-user

- Damit ist die Authentifizierung auf dem Webserver aktiviert und es müssen
Benutzer angelegt werden, die auf Nagios zugreifen dürfen.
- Mit folgendem Befehl wird eine neue Datei htpasswd.users mit den
berechtigten Nutzern und deren Passwörtern im Verzeichnis
/usr/local/nagios/etc/ angelegt.
htpasswd2 -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
- Bei erneutem Aufruf (Hinzufügen weiterer User) wird Option „-c“ nicht mehr
benötigt, damit wurde Datei angelegt.
- Wichtig: Überprüfen, ob use_authentification=1 in Datei cgi.cfg gesetzt.
- Ab sofort können nur noch so angelegte Benutzer auf die Nagios
Weboberfläche zugreifen (Benutzername und Passwort werden abgefragt).

2.5.1 Login ohne Passwort


Um einer ausgewählten Gruppe von Rechnern Zugriff zu gewähren, ohne jedes
Mal nach einem Passwort gefragt zu werden, müssen die Einträge in httpd.conf
und .htaccess angepasst werden.
Steht eine IP-Adresse wie unten beschrieben in der .htaccess, hat dieser
Rechner Zugriff auf die Nagios-Oberfläche ohne Passwort-Abfrage.
Versucht ein User/Rechner mit einer nicht eingetragenen IP-Adresse die Web-
Oberfläche aufzurufen, wird nach user/password Kombination gefragt.
So konfiguriert eignet sich die Oberfläche sehr gut um diese z.B. automatisch
bei Start eines Monitoring-Rechners auf einem großen Flachbildschirm
anzuzeigen.

8
2.5.1.1 .htaccess

Die angepasste Datei sollte folgendermaßen aussehen und in beiden Verzeichnissen


(/usr/local/nagios/sbin/, /usr/local/nagios/share/) identisch sein:

AuthName "Nagios Access"


AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
require valid-user
Order deny,allow
Deny from all
Allow from 172.18.5.200
Allow from 172.18.5.137
satisfy any

 Diese beiden IP-Adressen dürfen ohne Passwort-Abfrage auf Nagios zugreifen.


 Tipp: Auch IP-Ranges werden unterstützt.
 siehe http://de.selfhtml.org/servercgi/server/htaccess.htm

2.5.1.2 httpd.conf

So sollte die Apache2-Konfigurationsdatei angepasst werden:


ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
Options ExecCGI
AllowOverride AuthConfig limit
Order allow,deny
Allow from all
</Directory>

Alias /nagios "/usr/local/nagios/share"


<Directory "/usr/local/nagios/share">
Options None
AllowOverride AuthConfig limit
Order allow,deny
Allow from all
</Directory>

 /etc/init.d/apache2 restart nicht vergessen!

9
3 Konfiguration

Über die verschiedenen Konfigurationsdateien bindet man die von Nagios zu


verwaltenden Objekte wie Hosts, Dienste und Kontaktpersonen ein.

Nagios kennt dabei für jeden Dienst einen host, der diesen Dienst anbietet; mehrere
solcher Hosts lassen sich zu einer hostgroup zusammenfassen. Über eine servicegroup
kann man dagegen die einzelnen Dienste mehrerer Hosts zusammenfassen.

Wird eine Benachrichtigung (notification) ausgelöst, geht diese entweder an einen


einzelnen contact, oder die Mitglieder einer contactgroup. Nagios enthält bereits einige
Vorschläge für solche Kontaktgruppen, beiuspielsweise Linux- oder Windows-
Administratoren.

Über das Modul NRPE (Nagios Remote Plugin Executor) kann Nagios Plugins direkt
auf einem externen Host starten; alternativ kann ein NSCA (Nagios Service Check
Acceptor) als Agent auch Ereignisse von selbst an den Nagios-Daemon melden.

Über all diese Mechanismen lassen sich beispielsweise ausgefeilte


Eskalationsstrategien nachbilden, die so manches kommerzielle
Netzwerkmanagement-System (NMS) ziemlich blaß aussehen lassen.

10
3.1 Die Konfigurationsdateien

3.1.1 /usr/local/nagios/etc/nagios.cfg
 die Hauptkonfigurationsdatei
 siehe http://nagios.sourceforge.net/docs/2_0/configmain.html

3.1.2 /usr/local/nagios/etc/resource.cfg
 Definitionen der Makros
 siehe http://nagios.sourceforge.net/docs/2_0/macros.html

3.1.3 /usr/local/nagios/etc/cgi.cfg
 CGI Konfiguration
 siehe http://nagios.sourceforge.net/docs/2_0/configcgi.html

3.1.4 /usr/local/nagios/etc/contacts.cfg
 Definitionen der verfügbaren Kontakte in Nagios
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#contact

define contact {
contact_name nagiosadmin
alias nagiosadmin
host_notification_period 24x7
host_notification_options d,u,r
host_notification_commands notify-by-email
service_notification_period 24x7
service_notification_options w,u,c,r
service_notification_commands notify-by-email
email nagios@localhost
}

3.1.5 /usr/local/nagios/etc/contactgroups.cfg
 Gruppieren der angelegten Kontakte
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#contactgroup

define contactgroup {
contactgroup_name Nagios_Admin
alias Nagios_Admin
members nagiosadmin
}

11
3.1.6 /usr/local/nagios/etc/hosts.cfg
 Definitionen der vorhandenen Hosts
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#host

define host{
host_name Switch01
alias Switch cisco
address 192.16.4.50
check_command check-host-alive
max_check_attempts 5
process_perf_data 0
retain_nonstatus_information 0
notification_interval 30
notification_period 24x7
notification_options d,u,r
contact_groups Nagios_Admin
}

3.1.7 /usr/local/nagios/etc/hostgroups.cfg
 Gruppieren der angelegten Hosts
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#hostgroup

define hostgroup{
hostgroup_name Switch
alias Switch
members Switch01, Switch02, Switch03
}

3.1.8 /usr/local/nagios/etc/services.cfg
 Definitionen der gewünschten Service Checks
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#service

define service{
host_name Switch01, Switch03
service_description Cisco Port 49 - GigabitEthernet0/1
check_command check_cisco!public!49
max_check_attempts 3
normal_check_interval 1
retry_check_interval 1
check_period 24x7
notification_interval 20
notification_period 24x7
notification_options w,c,u,r
contact_groups Nagios_Admin
}

12
3.1.9 /usr/local/nagios/etc/checkcommands.cfg
 Definitionen der Check Kommandos
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#command

# 'check_cisco' command definition


define command{
command_name check_cisco
command_line $USER1$/check_cisco -H $HOSTADDRESS$ -C
$ARG1$ -P $ARG2$
}

3.1.10 /usr/local/nagios/etc/misccommands.cfg
 Definitionen für andere Kommandos
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#command

# 'notify-by-email' command definition


define command{
command_name notify-by-email
command_line /usr/bin/printf "%b" "***** Nagios
*****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService:
$SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState:
$SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional
Info:\n\n$SERVICEOUTPUT$" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$
alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **"
$CONTACTEMAIL$
}

3.1.11 /usr/local/nagios/etc/timeperiods.cfg
 Definition des Zeitraumes wann Nagios z.B. notifications verschickt
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#timeperiod

define timeperiod {
timeperiod_name 24x7
alias 24 Hours A Day, 7 Days A Week
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
}

13
3.1.12 /usr/local/nagios/etc/hostextinfo.cfg
 optionale Informationen für Status-Anzeige
 siehe http://nagios.sourceforge.net/docs/2_0/xodtemplate.html#hostextinfo

define hostextinfo{
host_name Switchrouter
icon_image network.gif
vrml_image network.gif
statusmap_image network.gif
2d_coords 20,20
3d_coords 100.0,50.0,75.0
action_url telnet://$HOSTADDRESS$
}

 weitere Beispiele für action_url:


- action_url http://$HOSTADDRESS$
- action_url file://fileserver/J/rdpfiles/$HOSTADDRESS$.RDP

 Die Bilder/icons sollten sich im Verzeichnis /usr/local/nagios/share/images/logos/


befinden.

14
3.2 NRPE

- Mit nrpe (Nagios Remote Plugin Executor) ist es möglich, Plugins auf
entfernten Rechnern auszuführen.
- Soll zum Beispiel der verfügbare Speicherplatz auf einem entfernten Rechner
überprüft werden, wird das check_nrpe Plugin auf dem Nagios-Rechner
ausgeführt. Diese Anfrage wird an den remote-host geschickt und der dort
laufende nrpe-Dienst führt das lokale Speicherplatz-Plugin aus. Das Ergebnis
der Überprüfung wird an den Nagios Rechner zurückgeschickt.

3.2.1 Server
- Aktuelle Version (hier: nrpe-2.0.tar.gz) herunterladen
(http://www.nagiosexchange.org/NRPE.77.0.html?&tx_netnagext_pi1[p_view]
=126)
- Konfigurieren mit ./configure
- Kompilieren mit make all
- Die ausführbare Datei check_nrpe befindet sich danach im Verzeichniss src/
- Diese Datei nach /usr/local/nagios/libexec/ kopieren.
- Die zwei wichtigen Dateien services.cfg und checkcommands.cfg sollten den
eigenen Vorstellungen entsprechend angepasst werden.

- Beispiel checkcommands.cfg:

define command{
command_name nt_check_disk_c
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c
nt_check_disk_c
}

- Beispiel services.cfg:

define service{
host_name fileserver1
service_description Speicherplatz Partition C
check_command nt_check_disk_c
max_check_attempts 3
normal_check_interval 1
retry_check_interval 1
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,c,u,r
contact_groups Nagios_Admin
}

15
3.2.2 Clients

3.2.2.1 Windows

- Den aktuellen nrpe-Dienst (hier: nrpe_nt.0.8-bin.zip) herunterladen


(http://www.miwi-dv.com/nrpent/)
- Zusätzlich die Standard-Plugins herunterladen
(http://www.nagiosexchange.org/NRPE_Plugins.66.0.html?&tx_netnagext_pi1
[p_view]=62)
- Entpacken des nrpe-Dienst in C:\NRPE\
- Im Verzeichniss bin/ taucht die wichtige Konfigurationsdatei nrpe.cfg auf.
- Entpacken der Standard-Plugins in C:\NRPE\bin\
- Jetzt befinden sich die 5 Plugins in diesem Verzeichnis:
- diskspace_nrpe_nt.exe
- cpuload_nrpe_nt.exe
- memload_nrpe_nt.exe
- service_nrpe_nt.exe
- eventlog_nrpe_nt.exe
- Zum installieren des nrpe-Dienstes in der Kommandozeile (cmd)
nrpe_nt –i ausführen.
- Zum Starten des Dienste net start nrpe_nt ausführen (oder über die
Dienste-Verwaltung von Windows starten)
- Folgendes beachten bei der Konfiguration der nrpe.cfg:
- Unter „allowed_hosts“ sollte natürlich der Nagios-Server stehen!
- Standard-Port ist server_port=5666 (wenn vorhanden Firewall
anpassen!)

 Beispiel für Speicherplatz-Check:


command[nt_check_disk_c]=C:\NRPE\bin\diskspace_nrpe_nt.exe c: 80 90

 Beispiel für CPU-Auslastung:


command[nt_check_cpuload]=C:\NRPE\bin\cpuload_nrpe_nt.exe 90 95

 Beispiel für service-check:


command[nt_check_NTsyslog_service]=C:\NRPE\bin\service_nrpe_nt.exe "NTsyslog"

3.2.2.2 Linux

- Installation der Nagios-Plugins1.4.1 wie unter 2.3 beschrieben.


- Abfrage der Nagios-Plugins erfolgt durch Einloggen per ssh und lokales
Ausführen des Plugins, NICHT mithilfe eines nrpe-Dienstes!
- Auszug aus der checkcommands.cfg:

#check command fuer Platte


define command {
command_name check_local_disk_sda_by_ssh
command_line $USER1$/check_by_ssh -l <user> -H $HOSTADDRESS$ -C
'/usr/local/nagios/libexec/check_disk -x /dev/sda/ -w 80 -c 70'
}

16
- „-l <user>“ ist der User auf dem entferntem Rechner.
- Damit das funktioniert, muss natürlich ein passender ssh-key generiert werden
für die Authentifizierung. Dazu eine kleine Hilfestellung:

suse:~ # ssh-keygen -t rsa


Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
12:db:05:11:9a:53:47:3d:e4:a4:eb:31:7a:f2:c7:63 root@nagios
suse:~ # scp .ssh/id_rsa.pub
<user>@<remote_host_ip>:/home/<user>/.ssh/authorized_keys

17
3.3 Anmerkungen

3.3.1 check_cisco Plugin


- für korrekte Funktionsweise das das Paket net-snmp (hier: Version 5.2.1)
nachinstallieren.

3.3.2 check_compaq_insight.pl Plugin


- für korrekte Funktionsweise das Paket perl-Net-SNMP (hier: Version 5.0.1)
nachinstallieren.

3.3.3 check_ping Plugin


- wegen etlichen Problemen mit dem Plugin „check_ping“ wird dieses ersetzt
durch check_icmp.
Dazu Einträge in checkcommands.cfg ändern:

# 'check-host-alive' command definition


define command{
command_name check-host-alive
command_line $USER1$/check_icmp -H $HOSTADDRESS$
}

und
# 'check_ping' command definition
define command{
command_name check_ping
command_line $USER1$/check_icmp -H $HOSTADDRESS$
}

- Rechte richtig setzen nicht vergessen:


chown nagios.nagios check_icmp
chmod 000 check_icmp
chown root check_icmp
chmod 4711 check_icmp

- Wichtig: chmod +x <plugin> sollte überall gesetzt sein, sonst keine


Ausführung möglich!

18
3.3.4 trends.cgi, histogram.cgi und statusmap.cgi
- für die korrekte Anzeige von trends, histogramm und statusmap auf der Web-
Oberfläche müssen libraries und devel-Pakete von gd, png, zlib und jpeg
nachinstalliert werden.
- Bei der hier verwendeten CD-Version von Suse sind keine Devel-Pakete von
gd beigelegt, also herunterladen von http://www.boutell.com/gd/ (hier: Version
2.0.33)
 Auf der DVD-Version verfügbar!
- Entpacken und Konfigurieren mit ./configure –prefix=/usr
- Kompilieren mit make all und installieren mit make install.
- Dann im Nagios-download-Verzeichnis ein
make clean
und erneutes Konfigurieren mit
./configure --with-gd-lib=/usr/lib --with-gd-inc=/usr/include
- Anschliessend mit make all neu Kompilieren und die jetzt verfügbaren cgi´s
ins Nagios-Verzeichnis kopieren (/usr/local/nagios/sbin/).
- Damit sollten jetzt alle Funktionen der Nagios-Weboberfläche funktionieren.

19
4 Nützliche Kommandos

4.1 Apache2
Usage: /etc/init.d/apache2 <command>

start - start httpd


stop - stop httpd (sendign SIGTERM to parent)
status - check whether httpd is running
restart - stop httpd if running; start httpd
configtest - do a configuration syntax test
server-status - dump a short status screen
help - this screen

4.2 Nagios
- Konfigurationsdateien auf Richtigkeit überprüfen:
/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg
- Nagios starten:
Usage: nagios {start|stop|restart|reload|force-reload|status}
 Für Neustart am besten: /etc/init.d/nagios reload

4.3 Web-Oberfläche
- Anmelden mit verschiedenen Usern:

http://<user>@<IP_Nagios>/nagios/

20