Check_MK: Cluster Checks bauen

Hier ein kleines Beispiel wie man einen Cluster Check implementieren kann. Testumgebung: 3 Nodes node1,node2 und node3 welche als Clusterobjekt cluster zusammengefasst sind. Die Daten kommen von Piggybacks. Clustercheck ist mycluster und ist ein Beispiel Check. Schritt 1: Nodes anlegen In WATO 3 Nodes anlegen mit der IP 127.0.0.1 (Testumgebung, Daten kommen von Piggybacks), Agent: … Weiterlesen

DNS Blacklist Check

Check um zu Überprüfen ob ein Mailserver auf einer Blacklist ist. Der Check lässt sich auch in Check_MK einbinden, dazu das Script in ~/local/lib/nagios/plugins/ ablegen und eine Regel „Classical active and passive Monitoring checks“ für den Mailserver erstellen. Eine native Check_MK Implementierung folgt noch 😉 #!/usr/bin/env python # -*- encoding: utf-8; py-indent-offset: 4 -*- # # … Weiterlesen

Python: Einfacher IMAP Client

Die Überschrift sagt eigentlich schon alles. Das Code Snippet dient dazu von einem IMAP Server Mails zu laden und mit dem Payload Dinge anzustellen. #!/usr/bin/env python import imaplib import sys import email import re import email.header import base64 from HTMLParser import HTMLParser username = „blah@blah.de“ password = „xxxxxx“ imap_rz1 = „imap.xxx.de“ imap_rz2 = „imap-rz2.xxxxx.de“ class … Weiterlesen

Check_MK: Host custom variables

Check_MK bietet auch die Möglichkeit die Host Variablen zu erweitern um z.B. ein Host Description Feld hinzuzufügen. Die Erweiterung muss in ~/local/share/check_mk/web/plugins/wato/ abgelegt werden. Die Dateiendung ist zwingend .py. OMD[dev1]:~/local/share/check_mk/web/plugins/wato$ cat host_custom_vars.py #!/usr/bin/env python declare_host_attribute( NagiosTextAttribute( # Sektion / Gruppe „MY_HOST_CUSTOM_VARIABLES“, # Variable mit beginnenden Unterstrich „_HOST_MAGIC“, # Feldbeschreibung _(„Host Magic“), # Hilfe _(„Hilfe“), ), … Weiterlesen

Check_MK: Service custom variables

Die Service Variablen lassen sich genau so Erweitern wie die Host Variablen. Dazu muss man eine neue Definition erstellen im Folder ~/local/share/check_mk/web/plugins/wato/. Die Dateiendung muss .py sein. #!/usr/bin/env python register_rule( # Sektion „Test“, # Variable „extra_service_conf:_test_test“, # Parameter TextUnicode( title = _(„TEST TEST“), help = _(„Test test“), size = 80, attrencode = True, ), itemtype … Weiterlesen

Check_MK: yield statt return in der Check Funktion

Check_MK erwartet bei der Check Funktion ein Tuple mit 2 (ohne Performance Daten) bzw. 3 Werten (mit Performance Daten). <STATUS>, <MESSAGE>, <PERFOMANCEDATA> Wenn man in einem Service mehrere Werte aggregieren möchte z.B. man hat mehrere Lüfter im System möchte aber nicht für jeden einen eigenen Service sondern nur einen einzigen, so muss man die Werte … Weiterlesen

Check_MK: Piggyback Checkergebnisse anderer Hosts bereitstellen

Es gibt die Möglichkeit Check Ergebnisse wenn ein Host nicht direkt erreichbar ist für Check_MK oder man bestimmte Dinge z.B. Erreichbarkeit eines TCP Services von einem anderen Host aus testen möchte, als Piggyback über den Agenten eines anderen Hosts mitzugeben. In den Beispiel haben wir einen Host (router) der ein Check Ergebnis von einem anderen … Weiterlesen

Check_MK: Mit gespeicherten SNMP Walks Checks entwickeln

Es ist keine schlechte Idee seine Checks auf einer Testinstanz zu entwickeln, geht etwas schief wird das Produktionssystem davon nicht beeinflusst. Check_MK bietet die Möglichkeit einen SNMP Walk zu exportieren und diesen für die Checkentwicklung zu verwenden. Schritt 1: Export eines SNMP Walks in Check_MK OMD[test1]:~$ cmk -v –snmpwalk router router: Walk on „.1.3.6.1.2.1″…2939 variables. … Weiterlesen

Check_MK: Helferlein und Treasures

Check_MK hat ein paar kleine Helferlein & Treasures an Board die nicht jeder kennt. mkcheck Mkcheck ist ein Script das ein Template für einen neuen eigenen Check erzeugt. Zu finden ist es unter ~/share/doc/check_mk/helpers/mkcheck OMD[test1]:~$ ~/share/doc/check_mk/helpers/mkcheck -h DESCRIPTION: This script creates a basic check file or if ‚-m‘ specified a manual page. You have to … Weiterlesen

Check_MK: Eigener Agent Check

Neben den lokalen Checks gibt es noch Checks die als Plugin im Agenten laufen. Der Unterschied liegt darin das auf dem Host auf dem der Agent läuft keine Bewertung der Informationen stattfindet, diese werden dem Check_MK Monitoring nur als Text zur Verfügung gestellt. Somit basiert ein Agent Plugin aus einem Host Teil (Agent Plugin) und … Weiterlesen

Check_MK: Einfacher lokaler Check (Agent)

Dem Check_MK Agenten ist es egal mit welcher Sprache ein lokaler Check geschrieben ist, er muss vom Betriebsystem ausführbar sein. Somit kann jede Scriptsprache (Perl, PHP, Python, Powershell, VBS, etc.) verwendet werden. Der Agent erwartet folgendes Format: <checkresult> <name> <perfdata> <status_text> Checkresult 0 = OK – 1 = Warning – 2 = Crtitcal – 3 … Weiterlesen

Cisco ASA überflüssige Syslog Nachrichten deaktivieren

Das Syslog auf der Cisco ASA ist sehr geschwätzig und viele Nachrichten sind für das nachvollziehen von Verbindungen nicht notwendig. Cisco Syslog Messages ASA: http://www.cisco.com/c/en/us/td/docs/security/asa/syslog/b_syslog.html Folgende Syslog Typen lassen sich problemlos deaktivieren: Config: no logging message 302012 no logging message 302013 no logging message 302014 no logging message 302015 no logging message 302016 no logging message … Weiterlesen

Enterasys Logging & Debugging

Kürzlich wurde ich von einem Kunden mit einem Problem konfrontiert das im Enterasys NetSight im Traplog immer wieder „Incorrect Community Name“ auftaucht. SNMP war im NetSight korrekt konfiguriert. Der Kunde wollte wissen wer versucht auf dem Switch zuzugreifen per SNMP. In der Trap Meldung wird diese Information leider nicht mitgesendet. Die bekannten Debug Befehle die … Weiterlesen

Ubuntu/Debian: Eigene Rootzertifikate importieren und vertrauen

Um Zertifikatsfehler bei eigenen CAs zu beseitigen muss man das Root CA Zertifikat dem Zertifikatsstore des Betriebssystems bekannt machen. Das Root CA Zertifikat muss im Ordner /usr/share/ca-certificates abgelegt werden mit der Endung .crt (nicht .pem). Man sollte einen passenden und aussagekräfigen Namen für die Datei vergeben. Bei Ubuntu sind zusätzlich die Zertifikate in verschiedene Unterordner einsortiert. … Weiterlesen

Postfix: Mail-Relay mit SMTP-Auth via Submission/TLS für ausgehende Mails

Ein Server soll als Relayhost (oder in der Windowswelt auch Smarthost gennant) dienen. Wer keine feste IP Adresse mit passenden DNS Reverse Eintrag hat wird schlechte Chancen haben das ein richtig konfigurierter Mailserver die Mails annehmen wird. Die Lösung ist die Mails an einen anderen Relayhost oder Mailserver zu schicken und dieser stellt dann die … Weiterlesen

Massenhafte Änderungen von Datei und Verzeichnis Rechten unter Linux

Ich habe gerade das Tool OpenTimeTool auf einem Server installiert. Im Paket sind alle Dateien und Verzeichnisse mit 777 Rechten vorhanden. Man sollte wenn die Kiste im Internet steht die Berechtungungen schon ein wenig restriktiver vergeben. Normalerweise haben Dateien auf einem Webserver eine 644 Maske und Verzeichnisse eine 755 Maske. foo@bar:/var/www/bar/opentimetool/test# ls -la insgesamt 2404 … Weiterlesen