# [solved] Installation von Nagios  => Icinga

## ixo

Hallo,

irgendwie bekomme ich es nicht gebacken, Nagios zum Laufen zu bringen. Es dürfte an meinen mehr als bescheidenen Apache Kenntnissen liegen   :Embarassed:  .

Der Apache "an sich" funktioniert und greift auf /var/www/localhost/htdocs zu.

Nagios ist über den Paketmanager installiert.

In /etc/conf.d/apache2 steht:

```

APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D NAGIOS"

```

/etc/apache2/modules.d/99_nagios3.conf ist vorhanden und die benannten Verzeichnisse existieren und scheinen mir auch die richtigen Rechte zu haben; Inhalt:

```

<IfDefine NAGIOS>

   ScriptAlias /nagios/cgi-bin/ /usr/lib/nagios/cgi-bin/

   <Directory "/usr/lib/nagios/cgi-bin/">

      AllowOverride AuthConfig

      Options ExecCGI

      Order allow,deny

      Allow from 127.0.0.1 192.168.172.0/24

   </Directory>

   Alias /nagios /usr/share/nagios/htdocs

   <Directory "/usr/share/nagios/htdocs">

      AllowOverride AuthConfig

      Order allow,deny

      Allow from 127.0.0.1 192.168.172.0/24

   </Directory>

</IfDefine>

```

Wenn ich mit dem Browser auf Nagios zugreifen will (der Server heißt lotte) (http://lotte/nagios) kommt folgende Fehlermeldung:

```

/var/log/apache2/error_log [Mon May 21 12:54:40 2012] [error] [client 192.168.172.49] (13)Permission denied: Could not open password file: /etc/nagios/auth.users

```

```

# ls -la /etc/nagios 

total 70

drwxr-x---   3 nagios nagios   240 May  8 07:58 .

drwxr-xr-x 100 root   root    5640 May 21 12:25 ..

-rw-r--r--   1 root   root       0 May  7 14:42 .keep_net-analyzer_nagios-core-0

-rw-r--r--   1 nagios nagios    50 May  8 07:58 auth.users

-rw-rw-r--   1 nagios nagios 11399 May  7 14:42 cgi.cfg

-rw-rw-r--   1 nagios nagios 43522 May  7 14:42 nagios.cfg

drwxrwxr-x   2 nagios nagios   304 May  7 14:42 objects

-rw-rw----   1 nagios nagios  1340 May  7 14:42 resource.cfg

```

Irgendwie kapiere ich das nicht. Es gibt Leserechte für alle auf dem Verzeichnis und der Datei. Was übersehe ich??

Grüße, ixoLast edited by ixo on Tue May 22, 2012 9:21 am; edited 1 time in total

----------

## disi

Schuss ins Blaue  :Smile:  Bedeutet das nicht, dass eben nicht Jeder lesen darf? Also mal 755 auf den uebergeordneten Ordner?

```
drwxr-x---   3 nagios nagios   240 May  8 07:58 . 
```

----------

## ixo

Klar, das war wirklich blöd. Irgendwann ist man betriebsblind   :Laughing:  .

Danke für die schnelle Antwort.

Jetzt kommt:

```

/var/log/apache2/error_log [Mon May 21 13:13:10 2012] [error] [client 192.168.172.49] Directory index forbidden by Options directive: /usr/share/nagios/htdocs/

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:13:13:11 +0200] "GET /nagios/ HTTP/1.1" 403 264

/var/log/apache2/error_log [Mon May 21 13:13:11 2012] [error] [client 192.168.172.49] Directory index forbidden by Options directive: /usr/share/nagios/htdocs/

```

```

# ls -lah /usr/share/nagios/htdocs/

total 36K

drwxrwxr-x 9 nagios nagios  408 May  8 07:56 .

drwxr-xr-x 3 root   root     72 May  7 14:42 ..

-rw-r--r-- 1 root   root     95 May  8 07:56 .htaccess

-rw-rw-r-- 1 nagios nagios  536 May  7 14:42 config.inc.php

drwxrwxr-x 2 nagios nagios 1.6K May  7 14:42 contexthelp

drwxrwxr-x 3 nagios nagios   72 May  7 14:42 docs

drwxrwxr-x 3 nagios nagios 2.3K May  7 14:42 images

drwxrwxr-x 3 nagios nagios  104 May  7 14:42 includes

-rw-rw-r-- 1 nagios nagios 1.6K May  7 14:42 index.php

-rw-rw-r-- 1 nagios nagios 6.1K May  7 14:42 main.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 media

-rw-rw-r-- 1 nagios nagios   28 May  7 14:42 robots.txt

-rw-rw-r-- 1 nagios nagios 5.6K May  7 14:42 side.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 ssi

drwxrwxr-x 2 nagios nagios  584 May  7 14:42 stylesheets

```

Da dürfte mit den Dateirechten alles ok sein. (Ich komme auch als normaler User an alle Dateien, man wird ja vorsichtig, wenn man gerade so einen Bock geschossen hat.   :Wink:  )

Grüße, ixo

----------

## disi

Ich glaube das liegt an den Rechten in der 99_nagios3.conf oder in der .htaccess im Ordner...

//edit: spiel mal bisschen rum, z.B. Order Deny, Allow anstelle von Order Allow, Deny  :Smile:  Ist ja sowieso ein privates Netzwerk. Und mal die .htaccess umbenennen oder so?!?

----------

## Christian99

```
/var/log/apache2/error_log [Mon May 21 13:13:10 2012] [error] [client 192.168.172.49] Directory index forbidden by Options directive: /usr/share/nagios/htdocs/ 
```

"directory index" heißt, dass er versucht, das Verzeichnis, das du angibst (/usr/share/nagios/htdocs/ aufgerufen durch http://lotte/nagios) zu listen, also wie ein filebrowser, was er aber nicht darf, weil das (standardmäßig) verboten ist.

Ich vermute mal, du möchtest das die Datei index.php aus diesem verzeichnis angezeigt wird. Damit der apache das macht, muss man ihm das sagen, wie die datei heißen soll die er anzeigt, wenn man nicht explizit eine angibt. Default mäßig sollte das index.htm und index.html sein, wodurch deine index.php nicht abgedeckt wird. Wenn du an http://lotte/nagios jetzt noch /index.php anhängst, sollte er die Datei index.php anzeigen.

deiner apache.conf zufolge hast du aber auch mod_php nicht aktiviert, was dazu führen wird, dass du von der index.php den quellcode siehst, und nicht das generierte html, was du vermutlcih auch nicht möchtest. Wenn du einfach "-D PHP" oder so ähnlich (genau sollte dabeistehen) noch mit an die APACHE2_OPTS anhängst, dürfte es wie erwartet funktionieren. (ich glaube, dadurch wird auch "index.php" zu den indexseiten dazugepackt, so dass du sie nicht mehr explizit angeben musst.

Schöne Grüße

Christian

----------

## ixo

Hi,

ich habe jetzt -D PHP angehängt, was beim Neustart nicht zu Fehlermeldungen führt; sollte also ok sein (?)

Bei Aufruf von http://lotte/nagios kommt:

```
You don't have permission to access /nagios/ on this server

Apache Server at lotte Port 80

```

Im log:

```
/var/log/apache2/access_log 127.0.0.1 - nagiosadmin [21/May/2012:14:27:51 +0200] "GET /nagios/ HTTP/1.1" 403 268

/var/log/apache2/error_log [Mon May 21 14:27:51 2012] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /usr/share/nagios/htdocs/

```

Aufruf von http://lotte/nagios/index.php:

```
The requested URL /nagios/< was not found on this server.

Apache Server at localhost Port 80
```

Im log:

```
/var/log/apache2/access_log 127.0.0.1 - nagiosadmin [21/May/2012:14:29:53 +0200] "GET /nagios/%3C?php%20echo%20$corewindow;?%3E HTTP/1.1" 404 268

/var/log/apache2/error_log [Mon May 21 14:29:53 2012] [error] [client 127.0.0.1] File does not exist: /usr/share/nagios/htdocs/<, referer: http://localhost/nagios/index.php

```

Die Linke Spalte von nagios wird angezeigt (mit html / cgi code drin) und rechts die o.g. Fehlermeldung).

```
# ls -al /usr/share/nagios/htdocs

total 36

drwxrwxr-x 9 nagios nagios  408 May  8 07:56 .

drwxr-xr-x 3 root   root     72 May  7 14:42 ..

-rw-r--r-- 1 root   root     95 May  8 07:56 .htaccess

-rw-rw-r-- 1 nagios nagios  536 May  7 14:42 config.inc.php

drwxrwxr-x 2 nagios nagios 1560 May  7 14:42 contexthelp

drwxrwxr-x 3 nagios nagios   72 May  7 14:42 docs

drwxrwxr-x 3 nagios nagios 2312 May  7 14:42 images

drwxrwxr-x 3 nagios nagios  104 May  7 14:42 includes

-rw-rw-r-- 1 nagios nagios 1551 May  7 14:42 index.php

-rw-rw-r-- 1 nagios nagios 6241 May  7 14:42 main.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 media

-rw-rw-r-- 1 nagios nagios   28 May  7 14:42 robots.txt

-rw-rw-r-- 1 nagios nagios 5730 May  7 14:42 side.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 ssi

drwxrwxr-x 2 nagios nagios  584 May  7 14:42 stylesheets

```

Kann es vielleicht damit zu tun haben, dass ich virtuelle Hosts konfiguriert habe (übrigens nach Anleitung aus diesem Forum)?

Grüße und Danke, ixo

----------

## ixo

Ich habe /etc/apache2/modules.d/99_nagios3.conf jetzt folgendermaßen geändert:

```
<IfDefine NAGIOS>

   ScriptAlias /nagios/cgi-bin/ /usr/lib/nagios/cgi-bin/

   <Directory "/usr/lib/nagios/cgi-bin/">

      DirectoryIndex index.html index.php

      AllowOverride AuthConfig

      Options ExecCGI

      Order allow,deny

      Allow from 127.0.0.1 192.168.172.0/24

   </Directory>

   Alias /nagios /usr/share/nagios/htdocs

   <Directory "/usr/share/nagios/htdocs">

      DirectoryIndex index.html index.php

      AllowOverride AuthConfig

      Order allow,deny

      Allow from 127.0.0.1 192.168.172.0/24

   </Directory>

</IfDefine>

```

also 'DirectoryIndex index.html index.php' eingefügt.

Damit bekomme ich bei http://lotte/nagios dasselbe Ergebnis wie http://lotte/nagios/index.php

Nach Passworteingabe kommen nach Reload folgende Meldungen:

```
/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/ HTTP/1.1" 200 1551

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/side.php HTTP/1.1" 200 5730

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/%3C?php%20echo%20$corewindow;?%3E HTTP/1.1" 404 264

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/stylesheets/common.css HTTP/1.1" 200 3465

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/images/sblogo.png HTTP/1.1" 200 3194

/var/log/apache2/access_log 192.168.172.49 - nagiosadmin [21/May/2012:15:11:42 +0200] "GET /nagios/images/greendot.gif HTTP/1.1" 200 329

/var/log/apache2/access_log 192.168.172.49 - - [21/May/2012:15:11:42 +0200] "GET /images/favicon.ico HTTP/1.1" 404 271

/var/log/apache2/error_log [Mon May 21 15:11:42 2012] [error] [client 192.168.172.49] File does not exist: /usr/share/nagios/htdocs/<, referer: http://lotte/nagios/

/var/log/apache2/error_log [Mon May 21 15:11:42 2012] [error] [client 192.168.172.49] File does not exist: /var/www/localhost/htdocs/images
```

Auf dem Bildschirm sind (wie oben geschrieben) links ein Teil der Nagios-Leiste mit cgi code und rechts nur die Fehlermeldung "The requested URL /nagios/< was not found on this server".

```
# ls -lha /usr/share/nagios/htdocs/

total 36K

drwxrwxr-x 9 nagios nagios  408 May  8 07:56 .

drwxr-xr-x 3 root   root     72 May  7 14:42 ..

-rw-r--r-- 1 root   root     95 May  8 07:56 .htaccess

-rw-rw-r-- 1 nagios nagios  536 May  7 14:42 config.inc.php

drwxrwxr-x 2 nagios nagios 1.6K May  7 14:42 contexthelp

drwxrwxr-x 3 nagios nagios   72 May  7 14:42 docs

drwxrwxr-x 3 nagios nagios 2.3K May  7 14:42 images

drwxrwxr-x 3 nagios nagios  104 May  7 14:42 includes

-rw-rw-r-- 1 nagios nagios 1.6K May  7 14:42 index.php

-rw-rw-r-- 1 nagios nagios 6.1K May  7 14:42 main.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 media

-rw-rw-r-- 1 nagios nagios   28 May  7 14:42 robots.txt

-rw-rw-r-- 1 nagios nagios 5.6K May  7 14:42 side.php

drwxrwxr-x 2 nagios nagios   48 May  7 14:42 ssi

drwxrwxr-x 2 nagios nagios  584 May  7 14:42 stylesheets

```

Das Directory /var/www/localhost/htdocs/images gibt's nicht. Das gibt's unter /usr/share/nagios/htdocs/, auf das er ja scheinbar nicht zugreifen kann !?

----------

## Christian99

 *Quote:*   

> Aufruf von http://lotte/nagios/index.php:
> 
> ```
> 
> The requested URL /nagios/< was not found on this server.
> ...

 

hm, das ist ein bisschen seltsam. wie sieht denn die .htaccess datei aus?

----------

## ixo

```
# ls -l /usr/share/nagios/htdocs/.htaccess

-rw-r--r-- 1 root root 95 May  8 07:56 /usr/share/nagios/htdocs/.htaccess

 # cat /usr/share/nagios/htdocs/.htaccess 

AuthName "Nagios Access"

AuthType Basic

AuthUserFile /etc/nagios/auth.users

Require valid-user

```

```
# ls -l /etc/nagios/auth.users

-rw-r--r-- 1 nagios nagios 50 May  8 07:58 /etc/nagios/auth.users

# cat /etc/nagios/auth.users

nagiosadmin:$apr1$Yyl295yE$w./EP3TPKzDnoh9pXXXXX

```

(Password Hash habe ich ein bisschen verunstaltet.)

----------

## Christian99

 *ixo wrote:*   

> Ich habe /etc/apache2/modules.d/99_nagios3.conf jetzt folgendermaßen geändert:
> 
> ```
> <IfDefine NAGIOS>
> 
> ...

 

Also, das sollte eigentlich nicht nötig sein. wie sieht denn deine /etc/apache2/modules/70_mod_php5.conf aus?

 *Quote:*   

> 
> 
> Nach Passworteingabe kommen nach Reload folgende Meldungen:
> 
> ```
> ...

 

Also, dass er die Datei "<" sucht, kommt mir ein bisschen komisch vor... Woran das liegt kann ich dir auch nciht sagen (Fehler in Nagios?)

 *Quote:*   

> 
> 
> ```
> # ls -lha /usr/share/nagios/htdocs/
> 
> ...

 

das mit /var/www/localhost/htdocs/images, da versucht er glaub ich nur ein icon für die seite (das, was oben in der Tableiste erscheint, oder auch nicht) zu laden. [/quote]das macht nix wenn das nicht da ist. auf "/usr/share/nagios/htdocs/images" kann er sehr wohl zugreifen, siehe oben die GET anfragen, die mit 200 (=OK) beantwortet werden.

----------

## ixo

```
fDefine PHP5>

   # Load the module first

   <IfModule !mod_php5.c>

#      LoadModule php5_module    modules/libphp5.so

   </IfModule>

   # Set it to handle the files

   <IfModule mod_mime.c>

      AddHandler application/x-httpd-php .php .php5 .phtml

      AddHandler application/x-httpd-php-source .phps

   </IfModule>

   DirectoryIndex index.php index.phtml

</IfDefine>

```

Den Kommentar vor LoadModule php5_module ... habe ich probeweise mal entfernt, das bringt aber nichts.

Es muss irgendetwas mit der Datei '<' zu tun haben.

Wenn ich links auf den schwarzen Frame (?) mit den Links klicke, kommt immer nur 

```
The requested URL /nagios/< was not found on this server.

Apache Server at lotte Port 80
```

Links im Browser steht z.B.:

```
General

Home

Documentation

Current Status

/tac.cgi" target="">Tactical Overview

/statusmap.cgi?host=all" target="">Map

/status.cgi?hostgroup=all&style=hostdetail" target="">Hosts

/status.cgi?host=all" target="">Services

/status.cgi?hostgroup=all&style=overview" target="">Host Groups

/status.cgi?hostgroup=all&style=summary" target="">Summary

/status.cgi?hostgroup=all&style=grid" target="">Grid

/status.cgi?servicegroup=all&style=overview" target="">Service 
```

An einen so gravierenden Fehler in Nagios kann ich nicht glauben. Dass hätte schon tausendfach auffallen müssen.

Nochmals die Frage: Kann es etwas mit den virtuellen Hosts zu tun haben? Einer läuft auf Port 80 und der andere auf Port 443. Es geht darum, dass bei Port 443 eine Passwort-Abfrage erfolgt und auf Port 80 nicht.

(Das war hier der Thread: https://forums.gentoo.org/viewtopic-t-892176.html?sid=83afe63a219334233c8c25e85b2f3bc1)

Danke für die Hilfe, ixo

----------

## ixo

Noch etwas, was m.E. unwahrscheinlich sein dürfte, aber man weiß ja nie. Beim Starten des Apaches kommen ein paar Fehlermeldungen:

```
init.d/apache2 start

 * Starting apache2 ...

apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.172.201 for ServerName                                      [ ok ]

/var/log/apache2/ssl_error_log [Mon May 21 16:42:26 2012] [warn] RSA server certificate CommonName (CN) `xxxxx' does NOT match server name!?

/var/log/apache2/ssl_error_log [Mon May 21 16:42:27 2012] [warn] RSA server certificate CommonName (CN) `xxxxx' does NOT match server name!?

/var/log/apache2/error_log [Mon May 21 16:42:28 2012] [notice] Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/1.0.0j configured -- resuming normal operations

```

Offensichtlich habe ich da beim Generieren der Schlüssel etwas falsch gemacht (da stand nicht xxxx), aber das ist ihm ja scheint's egal.

Grüße, ixo

----------

## Christian99

Also, die Apache fehler haben meiner ansicht nach nichts damit zu tun, aber wenn du ssl produktiv nutzen willst, solltest du mal schaun was das ist.

und auch die virtuellen hosts dürften da nix machen.

----------

## ixo

Produktiv einsetzen eher nicht. Nur zu Hause auf meinem Server, allerdings um damit für meine berufliche Tätigkeit ein bisschen Erfahrung zu sammeln.

Ich habe inzwischen alle möglichen Konfigurationsdateien durchgesehen, aber keinen Fehler, der auf das '<' hindeutet, gefunden.   :Sad: 

Wenn hier keinem zu dieser blöden Fehlermeldung mehr etwas einfällt, sollte ich vielleicht mal in einem Apache Forum fragen?

Icinga scheint (laut netways.de) eine völlig neue Weboberfläche zu haben - würde es Sinn machen, das mal auszuprobieren? Also sind die Konfigurationsdateien noch kompatibel zu Nagios? Ansonsten würde ich mir definitiv das Falsche beibringen.

Grüße und Danke für die Tipps, ixo

----------

## disi

 *ixo wrote:*   

> Produktiv einsetzen eher nicht. Nur zu Hause auf meinem Server, allerdings um damit für meine berufliche Tätigkeit ein bisschen Erfahrung zu sammeln.
> 
> Ich habe inzwischen alle möglichen Konfigurationsdateien durchgesehen, aber keinen Fehler, der auf das '<' hindeutet, gefunden.  
> 
> Wenn hier keinem zu dieser blöden Fehlermeldung mehr etwas einfällt, sollte ich vielleicht mal in einem Apache Forum fragen?
> ...

 

Hast du mal ein

```
$ cat /etc/apache2/whatever | grep '<' | wc -l

$ cat /etc/apache2/whatever | grep '>' | wc -l
```

versucht? Dann die Zahlen verglichen?

Vielleicht ist da irgendwo ein nicht geschlossener Tag...

----------

## ixo

 *disi wrote:*   

> 
> 
> Hast du mal ein
> 
> ```
> ...

 

Ich habe:

```
FILE='*.conf'; cat $FILE | egrep -v '^#' | grep '<' | wc -l ; cat $FILE | egrep -v '^#' | grep '>' | wc -l 
```

und mir die Unterschiede anschließend mit:

```
cat apache2.conf | egrep -v '^#' | perl -p -e 's/^\s*$//'
```

angesehen. Es gab nur welche bei /etc/apache2/apache2.conf, und zwar:

```
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined

LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

LogFormat "%h %l %u %t \"%r\" %>s %O" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent
```

Hat also wohl leider nichts gebracht.

Ich habe inzwischen (zum Testen) Nagios und Icinga in zwei verschiedenen VMs auf Kubuntu am Laufen. Icinga lief "out of the box" - bei Nagios war ein wenig Fummelei nötig. Ich vermute, dass beim Debian / Ubuntu Paket Netways die Finger mit drin hat - weiß ich aber nicht.

Die Konfigurationsdateien scheinen 1:1 dasselbe zu sein (wobei Icinga ja noch Erweiterungen hat), die Plugins sind definitiv kompatibel. Es legt sich genauso den Kram an wie Nagios. Die Oberfläche (GUI) ist komplett anders.

Wahrscheinlich werde ich's auf der Gentoo Kiste (meinem Server) mal ausprobieren. 

Falls noch jemand eine Idee zu dem Fehler hat - ich würde mich freuen. (Wahrscheinlich bekomme ich bei Icinga denselben   :Evil or Very Mad:  )

Grüße, ixo

----------

## ixo

Also,

um icinga zu installieren, muss man nagios-core deinstallieren.

Eine Anleitung für Gentoo für icinga habe ich leider nicht gefunden.

nagios-core habe ich deinstalliert, anschließend 'emerge icinga'. Dann in /etc/conf.d/apache2 auf Verdacht '-D NAGIOS' durch '-D ICINGA' ersetzt.

Dann musste ich noch die Datei /etc/icinga/htpasswd.users anlegen:

```
# htpasswd -c /etc/icinga/htpasswd.users icingaadmin
```

Da war einiges ein bisschen geraten bzw. aus Fehlermeldungen des Logfiles. Jedenfalls - unglaublich - es scheint zu laufen. Ich werde dann wohl bei icinga bleiben, obwohl ich mir extra ein Nagios Buch gekauft habe. Aber die Konfigurationsdateien scheinen ja (weitgehend) identisch zu sein (hoffentlich).

Danke für die Tipps, ixo

-- Noch was von Edith: Hier gibt's einen interessanten Artikel über Nagios und Icinga: http://www.freesoftwaremagazine.com/articles/nagios_and_icinga

-- und noch was von Edit: Die Rechte auf /etc/icinga habe ich auch ändern müssen: 'chmod 755 /etc/icinga'

Eine Alternative wäre wohl, apache in die icinga Gruppe zu packen.

----------

