Mein hausinterner Monitoring- und Nameserver wollte sich nicht ohne Zicken von 14.04 auf 16.04 schubsen lassen. Also setzte ich diesen neu auf und durfte dann OMD neu installieren. Meine Notizen:
wget https://mathias-kettner.de/support/1.2.8p15/check-mk-raw-1.2.8p15_0.xenial_amd64.deb dpkg -i check-mk-raw-1.2.8p15_0.xenial_amd64.deb apt-get install -f service apache2 restart omd create bdjlhome su - bdjlhome
In /omd/sites/bdjlhome ist dessen Homeverzeichnis gelandet. Dort dann ausführen:
omd config omd start exit
Das OMD Config stellte ich auf Web GUI sowie Multisite und übernahm dort im Wesentlichen die vorhandenen Einstellungen:
Um den Monitoring-Server ebenfalls überwachen zu können folgte die Installation und Konfiguration (die dann auf allen zu überwachenden Clients ebenfalls durchgeführt werden muss):
apt-get install check-mk-agent xinetd nagios-plugins-basic apt-get install -f
Die /etc/xinetd.d/check_mk sieht nach den nötigen Anpassungen wie folgt aus:
service check_mk { type = UNLISTED port = 6556 socket_type = stream protocol = tcp wait = no user = root server = /usr/bin/check_mk_agent # If you use fully redundant monitoring and poll the client # from more then one monitoring servers in parallel you might # want to use the agent cache wrapper: # server = /usr/bin/check_mk_caching_agent # configure the IP address(es) of your Nagios server here: only_from = 127.0.0.1 # Don't be too verbose. Don't log every check. This might be # commented out for debugging. If this option is commented out # the default options will be used for this service. log_on_success = disable = no }
Für die Clients muss dann bei only_from die IP des Monitoring-Servers eingetragen werden.
Weiter geht es für die mrpe.cfg:
mkdir /etc/check_mk vi /etc/check_mk/mrpe.cfg
Hier schaltete ich APT und SSH Checks frei:
# APT Check APT_CHECK /usr/lib/nagios/plugins/check_apt # SSH Check SSH_CHECK /usr/lib/nagios/plugins/check_ssh localhost
Fail2ban soll ebenfalls überwacht werden:
vi /opt/omd/sites/bdjlhome/local/share/check_mk/agents/plugins/fail2ban
In der Config für diesen Agent steht
#!/bin/sh echo '<<<fail2ban>>>' if [ -x /usr/bin/fail2ban-client ]; then JAILS=`/usr/bin/fail2ban-client status | grep "Jail list" | tr -s [:blank:] | cut -f2- -d':' | sed -e 's/,/ /g'` echo "Detected jails: $JAILS" for jail in $JAILS do /usr/bin/fail2ban-client status $jail done fi
und dann muss diese noch ausführbar sein:
chmod 755 /opt/omd/sites/bdjlhome/local/share/check_mk/agents/plugins/fail2ban
755 ist etwas arg dick aufgetragen, tut es aber für’s Heimnetz.
Dann den xinetd und den Apache neu starten:
service xinetd restart service apache2 restart
Ob überhaupt Daten ankommen ist zu prüfen:
telnet localhost 6556
Die Anmeldung an OMD erfolgt im Browser an der lokalen IP (bei mir an dieser Stelle noch ohne Namensauflösung: https://10.16.X.X/bdjlhome) als omdadmin mit omd als Passwort, das nach dem ersten erfolgreichen Login geändert wird.
Im Main Menü unter Hosts wird dann der lokale Monitoring-Server eingerichtet. Rechts oben gibt es den Schalter New host. Diesem einen Namen und die passende IP (in diesem Fall 127.0.01) geben und über Save & go to Services speichern. Wenn alles klappt lässt sich hier gleich eine Service discovery durchführen und für diesen Host abspeichern.
Zurück im Main Menu: Wie üblich bei OMD müssen die Änderungen durch eine Reihe von Klicks auf farblich hervorgehobene Schalterchen erst aktiviert werden.
Ein Klick auf Hosts zeigt die Liste der schon eingetragenen Server an. Zur nachträglichen Service Discovery folgt der Klick auf das Icon „Notizbrett mit grünem Haken“ das im Overlay „Edit the services of this hosts, do a service discovery“ anzeigt.
… und nach ein wenig mehr Geklicke sind die lokalen Hosts eingetragen. Praktisch ist die Notification Funktion. Die warnt mich per Mail, wenn auf einem der Rechner etwas aus dem Lot gerät. In Ermangelung einer statischen IP verwende ich hierzu einen Postfix als Satellitensystem – aber das ist eine andere Geschichte.