In diesem Artikel möchte ich euch zeigen wie man die EventLogs eines Windows-Rechners mit Nagios überwacht.

Es gibt viele Möglichkeiten eine EventLog Überwachung zu realisieren. Nach langem suchen und testen mit NSClient++, WMI, NagEventLog oder sogar SNMP-Traps ist mein erste Wahl der Nagios Cross-Platform Agent, kurz NCPA.

NCPA ist ein moderner Agent für alle gängigen Betriebssysteme. Er unterstützt aktive und passive Checks, Custom Scripts, hat eine einheitliche API und eine sehr ansehnliche Web-GUI.

In meinem Beispiel versuche ich den Eintrag mit der Event-ID 10016 aus den System Logs abzufragen. Das hat keinen speziellen Grund, ihr könnt das ganz nach Bedarf anpassen.

Nagios_NCPA_EventLog

Windows Client Installation

  1. Download des NCPA Clients für Windows:
    https://www.nagios.org/ncpa/#downloads
  2. Nach Aufruf des Setups können die Einstellungen auf Default gelassen werden, nur bei dem Token muss ein sicheres Passwort für die Agent-Kommunikation gewählt werden:
    NCPA_Setup_Token
  3. Ob die Installation erfolgreich war kann über die Web-GUI des Agents überprüft werden, indem man mit dem Browser auf https://localhost:5693/ navigiert. Hier hat man auch die Möglichkeit die gewünschte Abfrage vorab zu testen:
    NCPA_WebGUI

Check Installation am Nagios Server

  1. Installation des Nagios Plugins check_ncpa.py:
    wget https://assets.nagios.com/downloads/ncpa/check_ncpa.tar.gz
    tar xzvf check_ncpa.tar.gz
  2. Test der Agent-Kommunikation:
    python check_ncpa.py -H 192.168.1.161 -t 2XI3ADFIMlaRlpC3 -P 5693 -M system/agent_version
    OK: Agent_version was ['2.0.3']
  3. Command-Definition in der commands.cfg anlegen:
    define command {
     command_name check_ncpa
     command_line python $USER1$/check_ncpa.py -H $HOSTADDRESS$ $ARG1$
    }
  4. Service-Definition des Hosts konfigurieren:
    define service{
     use generic-service
     host_name Windows Test Machine
     service_description EventID 10016
     check_command check_ncpa!-t '2XI3ADFIMlaRlpC3' -P 5693 -M logs -q name=System,severity=ERROR,logged_after=1h,event_id=10016 -c 0
    }
  5. Nagios Konfiguration neu laden
  6. Fertig! Hier die Ansicht im Dashboard:
    Nagios_EventLog_Monitoring