Sprachauswahl:
Skip to main navigation Skip to main content Skip to page footer

Didactum Monitoring und GroundWork Monitor Integration

Vollständige Schritt-für-Schritt-Anleitung zur Einbindung von Didactum Monitoring-Geräten und Sensoren in GroundWork Monitor via SNMP – inklusive Host-Profil, Command-Konfiguration, Service-Checks für alle Sensortypen, SNMP Trap-Integration via SNMPTT und E-Mail-Alarmierung.

Architektur-Hinweis: 

GroundWork Monitor nutzt Nagios als Polling- und Notification-Engine sowie Nagios-Plugins für die Ausführung von Service-Checks. Für SNMP-Abfragen ruft Nagios einen lokalen SNMP-Client auf und übergibt Host-Adresse sowie OID. Die Konfiguration erfolgt wahlweise über das grafische Monarch-Web-Interface oder direkt als Nagios-Konfigurationsdateien.

  • Software: GroundWork Monitor (Open Source oder Enterprise Edition)
  • Engine: Nagios + Monarch (Web-Konfigurations-Tool)
  • SNMP Traps: SNMPTT (SNMP Trap Translator)
  • Protokoll: SNMP v1 / v2c / v3
  • Geräte: Didactum Monitoring System 100 / 500T / 500 II
  • Sensoren: Temperatur, Leckage, Luftfeuchtigkeit, Türkontakt, Rauch

1. Voraussetzungen und Systemüberblick

GroundWork Monitor Server

  • GroundWork Monitor installiert (Open Source oder Enterprise)
  • Web-Interface (Monarch) erreichbar: <Server-IP>/monarch
  • Status-Konsole erreichbar: <Server-IP>/gwos
  • UDP-Port 161 ausgehend für SNMP Polling geöffnet
  • UDP-Port 162 eingehend für SNMP Traps geöffnet (Enterprise Edition)
  • Netzwerkzugang zum Didactum-Gerät

Didactum-Gerät

  • Monitoring System 100T, 300T, 500T oder 550T
  • SNMP aktiviert (v2c empfohlen)
  • Gerät per ICMP vom GroundWork-Server erreichbar
  • MIB-Datei im Web-Interface verfügbar

Architektur & Datenfluss

[GroundWork Monitor Server]         [Didactum Monitoring System]
  IP: 192.168.1.10                    IP: 192.168.1.50
  /usr/groundwork/
  Monarch (Web-Konfig)
  Nagios (Polling-Engine)
  SNMPTT (Trap-Handler)
                     --check_snmp UDP/161-->
                     <--SNMP Traps UDP/162--

Wichtige GroundWork-Pfade

/usr/groundwork/nagios/etc/         <-- Nagios-Konfiguration
/usr/groundwork/nagios/etc/objects/ <-- Hosts, Services, Commands
/usr/groundwork/etc/snmptt/         <-- SNMPTT-Konfiguration
/usr/share/snmp/mibs/               <-- MIB-Dateien
/usr/groundwork/nagios/plugins/     <-- Nagios-Plugins (check_snmp)

2. SNMP auf dem Didactum-Gerät aktivieren

Schritt 1 – Web-Interface öffnen

Im Browser aufrufen: 192.168.1.50 (IP des Didactum-Geräts anpassen)

Schritt 2 – SNMP-Einstellungen aufrufen

Systemeinstellungen → SNMP

Schritt 3 – Folgende Werte eintragen

Feld im Didactum Web-InterfaceWert
SNMP aktivierenAktiviert
SNMP-Versionv2c (empfohlen)
Community Stringdidactum_groundwork (nicht „public" verwenden!)
SNMP-Port161
Trap-Empfänger IP192.168.1.10 (IP des GroundWork-Servers)
Trap-Port162
Trap-Versionv2c

SNMPv3-Einstellungen (optional)

FeldWert
Security Namegroundwork_user
Auth-ProtokollSHA
Auth-Passwortmind. 8 Zeichen
Priv-ProtokollAES
Priv-Passwortmind. 8 Zeichen
Security LevelauthPriv

Pakete & Plugins auf dem GroundWork-Server installieren

# SNMP-Tools und Plugins installieren
sudo apt update
sudo apt install -y snmp snmp-mibs-downloader \
    nagios-plugins monitoring-plugins

# check_snmp Plugin testen
/usr/lib/nagios/plugins/check_snmp --help | head -5

# Alternative: GroundWork-eigener Plugin-Pfad
ls /usr/groundwork/nagios/plugins/check_snmp

SNMP-Verbindung zum Didactum-Gerät vorab testen:

# Alle Sensor-Werte auflisten
snmpwalk -v 2c -c didactum_groundwork 192.168.1.50 \
    .1.3.6.1.4.1.46501.5.1.1

# Temperaturwert (Rohwert ÷ 10 = Grad Celsius)
snmpget -v 2c -c didactum_groundwork 192.168.1.50 \
    .1.3.6.1.4.1.46501.5.1.1.7.101001

4. MIB-Datei installieren

Schritt 1 – MIB aus dem Didactum Web-Interface laden

Systemeinstellungen → SNMP → "MIB-Datei herunterladen" → didactum.mib

Schritt 2 – MIB auf dem GroundWork-Server installieren

sudo cp didactum.mib /usr/share/snmp/mibs/
echo "mibdirs /usr/share/snmp/mibs" | sudo tee -a /etc/snmp/snmp.conf
echo "mibs ALL" | sudo tee -a /etc/snmp/snmp.conf

# Test mit MIB-Namen
snmpwalk -v 2c -c didactum_groundwork -m ALL 192.168.1.50 \
    DIDACTUM-MIB::sensorValue

Schritt 3 – MIB für SNMPTT bereitstellen (Trap-Empfang)

sudo cp didactum.mib /usr/groundwork/etc/snmptt/mibs/
# oder:
sudo cp didactum.mib /usr/share/snmp/mibs/

5. check_snmp-Commands in Monarch definieren

Variante A – Über das Monarch Web-Interface

Monarch → Configuration → Commands → Add Command

Command: Didactum Temperatur

FeldWert
Command Namecheck_didactum_temperature
Command Typecheck
Command Line$USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -P 2 -o $ARG2$ -w $ARG3$ -c $ARG4$ -l "Temperatur" -u "0.1Grad"

Command: Didactum Leckage

FeldWert
Command Namecheck_didactum_leakage
Command Line$USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -P 2 -o $ARG2$ -w 0:0 -c 1:1 -l "Leckage"

Command: Didactum Sensor-Status

FeldWert
Command Namecheck_didactum_status
Command Line$USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -P 2 -o $ARG2$ -w 0:0 -c 1:2 -l "$ARG3$"

Command: Didactum Luftfeuchtigkeit

FeldWert
Command Namecheck_didactum_humidity
Command Line$USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -P 2 -o $ARG2$ -w $ARG3$ -c $ARG4$ -l "Luftfeuchtigkeit" -u "%"

Variante B – Direkt als Nagios-Konfigurationsdatei

sudo nano /usr/groundwork/nagios/etc/objects/didactum-commands.cfg
# ================================================================
# Didactum SNMP Check-Commands
# Datei: /usr/groundwork/nagios/etc/objects/didactum-commands.cfg
# ================================================================

# ARG1=Community, ARG2=OID, ARG3=Warning, ARG4=Critical
define command {
    command_name    check_didactum_temperature
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ \
                    -C $ARG1$ -P 2 -o $ARG2$ \
                    -w $ARG3$ -c $ARG4$ \
                    -l "Temperatur" -u "0.1Grad"
}

# ARG1=Community, ARG2=OID
define command {
    command_name    check_didactum_leakage
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ \
                    -C $ARG1$ -P 2 -o $ARG2$ \
                    -w 0:0 -c 1:1 -l "Leckage"
}

# ARG1=Community, ARG2=OID, ARG3=Label
define command {
    command_name    check_didactum_status
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ \
                    -C $ARG1$ -P 2 -o $ARG2$ \
                    -w 0:0 -c 1:2 -l "$ARG3$"
}

# ARG1=Community, ARG2=OID, ARG3=Warning, ARG4=Critical
define command {
    command_name    check_didactum_humidity
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ \
                    -C $ARG1$ -P 2 -o $ARG2$ \
                    -w $ARG3$ -c $ARG4$ \
                    -l "Luftfeuchtigkeit" -u "%"
}

# ARG1=Community, ARG2=OID
define command {
    command_name    check_didactum_door
    command_line    $USER1$/check_snmp -H $HOSTADDRESS$ \
                    -C $ARG1$ -P 2 -o $ARG2$ \
                    -w 1:1 -l "Tuerkonakt"
}

6. Host-Profil für Didactum anlegen (Monarch)

Host-Profile in Monarch bündeln Host-Template und Service-Profile für die Wiederverwendung bei mehreren Geräten.

Schritt 1 – Host-Template anlegen

Monarch → Configuration → Host Templates → Add Template
FeldWert
Namedidactum-monitoring-template
Check Commandcheck-host-alive
Max Check Attempts3
Check Interval5
Retry Interval1
Check Period24x7
Notification Interval60
Notification Period24x7
Notification Optionsd, u, r

Schritt 2 – Service-Profile für Didactum anlegen

Monarch → Configuration → Service Profiles → Add Profile
  Profile Name: Didactum-Sensoren
  Description: SNMP Service-Checks für Didactum Monitoring System

Alle Didactum-Services diesem Profil zuweisen (nach Anlage der Services in Abschnitt 8).

Schritt 3 – Host-Profil anlegen

Monarch → Configuration → Host Profiles → Add Profile
  Profile Name:     Didactum-Monitoring-System
  Host Template:    didactum-monitoring-template
  Service Profile:  Didactum-Sensoren

7. Didactum-Host einbinden

Variante A – Über Monarch Web-Interface

Monarch → Configuration → Hosts → Add Host
FeldWert
Host Namedidactum-monitor-01
AliasDidactum Monitoring System 01
IP Address192.168.1.50
Host ProfileDidactum-Monitoring-System
Contact Groupsadmins
Host GroupsDidactum-Monitoring (neue Gruppe anlegen)

Auf Save klicken.

Variante B – Als Nagios-Konfigurationsdatei

sudo nano /usr/groundwork/nagios/etc/objects/didactum-hosts.cfg
# ================================================================
# Didactum Host-Konfiguration
# Datei: /usr/groundwork/nagios/etc/objects/didactum-hosts.cfg
# ================================================================

define host {
    use                     didactum-monitoring-template
    host_name               didactum-monitor-01
    alias                   Didactum Monitoring System 01
    address                 192.168.1.50
    contact_groups          admins
    hostgroups              didactum-monitoring
}

define hostgroup {
    hostgroup_name  didactum-monitoring
    alias           Didactum Monitoring Geräte
    members         didactum-monitor-01
}

8. Service-Checks für alle Sensortypen anlegen

Variante A – Über Monarch Web-Interface

Monarch → Configuration → Services → Add Service

Service: Temperatursensor

FeldWert
Service NameDidactum-Temperatur-Sensor-01
Host Namedidactum-monitor-01
Check Commandcheck_didactum_temperature
ARG1 (Community)didactum_groundwork
ARG2 (OID).1.3.6.1.4.1.46501.5.1.1.7.101001
ARG3 (Warning)280 (= 28,0 °C – Rohwert × 10)
ARG4 (Critical)350 (= 35,0 °C – Rohwert × 10)
Check Interval5 Minuten
Max Check Attempts3
Service GroupsDidactum-Sensoren

Service: Leckagesensor

FeldWert
Service NameDidactum-Leckage-Sensor-01
Check Commandcheck_didactum_leakage
ARG1 (Community)didactum_groundwork
ARG2 (OID).1.3.6.1.4.1.46501.5.1.1.7.107001
Check Interval2 Minuten
Max Check Attempts1 (sofort kritisch)

Service: Temperatursensor-Status

FeldWert
Service NameDidactum-Temp-Status-Sensor-01
Check Commandcheck_didactum_status
ARG1 (Community)didactum_groundwork
ARG2 (OID).1.3.6.1.4.1.46501.5.1.1.6.101001
ARG3 (Label)Temp-Status

Service: Luftfeuchtigkeit

FeldWert
Service NameDidactum-Luftfeuchtigkeit-Sensor-01
Check Commandcheck_didactum_humidity
ARG1didactum_groundwork
ARG2.1.3.6.1.4.1.46501.5.1.1.7.102001
ARG3 (Warning)80
ARG4 (Critical)90

Service: Türkontakt

FeldWert
Service NameDidactum-Tuerkonakt-01
Check Commandcheck_didactum_door
ARG1didactum_groundwork
ARG2.1.3.6.1.4.1.46501.5.1.1.7.104001
Check Interval1 Minute

Variante B – Alle Services als Nagios-Konfigurationsdatei

sudo nano /usr/groundwork/nagios/etc/objects/didactum-services.cfg
# ================================================================
# Didactum Service-Konfiguration
# Datei: /usr/groundwork/nagios/etc/objects/didactum-services.cfg
# WICHTIG: Temperaturschwellen sind Rohwerte × 10
#          28°C = 280, 35°C = 350
# ================================================================

define servicegroup {
    servicegroup_name   Didactum-Sensoren
    alias               Didactum Sensor-Services
}

# --- Temperaturmesswert ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Temperatur-Sensor-01
    check_command           check_didactum_temperature!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.7.101001!280!350
    check_interval          5
    retry_interval          1
    max_check_attempts      3
    notification_interval   60
    notification_options    w,c,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

# --- Temperatur-Status ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Temp-Status-Sensor-01
    check_command           check_didactum_status!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.6.101001!Temp-Status
    check_interval          5
    retry_interval          1
    max_check_attempts      3
    notification_options    c,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

# --- Leckagesensor ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Leckage-Sensor-01
    check_command           check_didactum_leakage!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.7.107001
    check_interval          2
    retry_interval          1
    max_check_attempts      1
    notification_interval   30
    notification_options    c,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

# --- Luftfeuchtigkeit ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Luftfeuchtigkeit-Sensor-01
    check_command           check_didactum_humidity!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.7.102001!80!90
    check_interval          5
    retry_interval          1
    max_check_attempts      3
    notification_options    w,c,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

# --- Türkontakt ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Tuerkonakt-01
    check_command           check_didactum_door!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.7.104001
    check_interval          1
    retry_interval          1
    max_check_attempts      1
    notification_interval   30
    notification_options    w,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

# --- Rauchmelder ---
define service {
    use                     generic-service
    host_name               didactum-monitor-01
    service_description     Didactum-Rauchmelder-01
    check_command           check_didactum_leakage!didactum_groundwork!.1.3.6.1.4.1.46501.5.1.1.7.106001
    check_interval          1
    retry_interval          1
    max_check_attempts      1
    notification_interval   30
    notification_options    c,r
    contact_groups          admins
    servicegroups           Didactum-Sensoren
}

Konfiguration in nagios.cfg einbinden

sudo nano /usr/groundwork/nagios/etc/nagios.cfg

Folgende Zeilen hinzufügen:

cfg_file=/usr/groundwork/nagios/etc/objects/didactum-commands.cfg
cfg_file=/usr/groundwork/nagios/etc/objects/didactum-hosts.cfg
cfg_file=/usr/groundwork/nagios/etc/objects/didactum-services.cfg

9. SNMP Traps mit SNMPTT empfangen

SNMPTT (SNMP Trap Translator) ist ein in Perl geschriebener SNMP-Trap-Handler für den Einsatz mit dem Net-SNMP snmptrapd-Programm. SNMPTT unterstützt Linux, UNIX und Windows und kann Traps an Text-Log, Syslog, NT-Eventlog oder eine SQL-Datenbank senden sowie externe Programme aufrufen, um übersetzte Traps an E-Mail-Clients oder Nagios weiterzureichen.

Schritt 1 – SNMPTT installieren

sudo apt install snmptrapd snmptt -y

Schritt 2 – snmptrapd konfigurieren

sudo nano /etc/snmp/snmptrapd.conf
# Community String für Trap-Empfang
authCommunity execute,log,net didactum_groundwork

# Alle Traps an SNMPTT weiterleiten
traphandle default /usr/sbin/snmptthandler

Schritt 3 – SNMPTT-Konfiguration für Didactum anlegen

sudo nano /usr/groundwork/etc/snmptt/snmptt.conf

Folgenden Block eintragen:

# ================================================================
# Didactum SNMP Trap Definitionen für SNMPTT
# ================================================================

# Leckage-Trap: Wasser erkannt
EVENT didactumLeakAlarm .1.3.6.1.4.1.46501.5.1.1.7.107001 "Status Events" Critical
FORMAT DIDACTUM LECKAGE ALARM: Wasser erkannt – Sensor $2 – Wert: $4
EXEC /usr/groundwork/nagios/etc/snmptt-to-nagios.sh "didactum-monitor-01" "Didactum-Leckage-Sensor-01" "2" "CRITICAL: Leckage erkannt – Wert: $4"
SDESC
Didactum Wassersensor hat Wasser erkannt (Wert = 1)
EDESC

# Temperatur-Alarm-Trap
EVENT didactumTempAlarm .1.3.6.1.4.1.46501.5.1.1.6.101001 "Status Events" Critical
FORMAT DIDACTUM TEMPERATUR ALARM: Sensor $2 – Status: $4
EXEC /usr/groundwork/nagios/etc/snmptt-to-nagios.sh "didactum-monitor-01" "Didactum-Temp-Status-Sensor-01" "2" "CRITICAL: Temperatur-Alarm – Status: $4"
SDESC
Didactum Temperatursensor meldet Alarmzustand
EDESC

# Rauchmelder-Trap
EVENT didactumSmokeAlarm .1.3.6.1.4.1.46501.5.1.1.7.106001 "Status Events" Critical
FORMAT DIDACTUM RAUCHMELDER ALARM: Rauch erkannt – Sensor $2
EXEC /usr/groundwork/nagios/etc/snmptt-to-nagios.sh "didactum-monitor-01" "Didactum-Rauchmelder-01" "2" "CRITICAL: Rauch erkannt!"
SDESC
Didactum Rauchmelder hat Rauch erkannt
EDESC

# Tür-Alarm-Trap
EVENT didactumDoorAlarm .1.3.6.1.4.1.46501.5.1.1.7.104001 "Status Events" Warning
FORMAT DIDACTUM TUER ALARM: Tuer geoeffnet – Sensor $2
EXEC /usr/groundwork/nagios/etc/snmptt-to-nagios.sh "didactum-monitor-01" "Didactum-Tuerkonakt-01" "1" "WARNING: Tür geöffnet"
SDESC
Didactum Türkontakt meldet geöffnete Tür
EDESC

Schritt 4 – Nagios Passive Check Skript erstellen

sudo nano /usr/groundwork/nagios/etc/snmptt-to-nagios.sh
#!/bin/bash
# ================================================================
# SNMPTT → Nagios Passive Check Weiterleitung
# Argumente: $1=Hostname, $2=Service, $3=Status(0-3), $4=Meldung
# ================================================================

NAGIOS_CMD="/usr/groundwork/nagios/var/rw/nagios.cmd"
HOST="$1"
SERVICE="$2"
STATUS="$3"
MESSAGE="$4"
TIMESTAMP=$(date +%s)

if [ -p "$NAGIOS_CMD" ]; then
    echo "[$TIMESTAMP] PROCESS_SERVICE_CHECK_RESULT;$HOST;$SERVICE;$STATUS;$MESSAGE" \
        >> "$NAGIOS_CMD"
fi
sudo chmod +x /usr/groundwork/nagios/etc/snmptt-to-nagios.sh

Schritt 5 – Passive Services für Trap-Empfang anlegen

Folgendes in die Konfigurationsdatei eintragen (passiver Empfang ohne aktives Polling):

define service {
    host_name               didactum-monitor-01
    service_description     Didactum-SNMP-Trap-Empfaenger
    check_command           check_dummy!0!"Warte auf SNMP Traps"
    active_checks_enabled   0
    passive_checks_enabled  1
    max_check_attempts      1
    check_interval          10
    check_period            24x7
    notification_interval   30
    notification_period     24x7
    notification_options    c,r
    contact_groups          admins
}

Schritt 6 – Dienste starten

sudo systemctl enable snmptrapd snmptt
sudo systemctl start snmptrapd snmptt

10. SNMP OID-Referenz

Alle Didactum-OIDs beginnen mit .1.3.6.1.4.1.46501 (ältere Firmware) bzw. .1.3.6.1.4.1.39052 (neuere Modelle). Die Sensor-ID wird am Ende angehängt.

OID-Felder je Sensor

FeldBedeutungBeispiel
.1.x.SENSOR_IDSensor-ID.1.3.6.1.4.1.46501.5.1.1.1.101001
.5.x.SENSOR_IDSensor-Name.1.3.6.1.4.1.46501.5.1.1.5.101001
.6.x.SENSOR_IDStatus (0=OK, 1=Alarm, 2=Kein Signal).1.3.6.1.4.1.46501.5.1.1.6.101001
.7.x.SENSOR_IDMesswert (aktuell).1.3.6.1.4.1.46501.5.1.1.7.101001

Sensortypen mit OIDs und Schwellwerten

SensortypSensor-IDOID MesswertOID Statuscheck_snmp Schwellwert
Temperatursensor (digital)101001.1.3.6.1.4.1.46501.5.1.1.7.101001.1.3.6.1.4.1.46501.5.1.1.6.101001-w 280 -c 350 (Rohwert × 10)
Temperatursensor (analog)201001.1.3.6.1.4.1.39052.5.2.1.7.201001.1.3.6.1.4.1.39052.5.2.1.6.201001-w 280 -c 350
Wassersensor / Leckage107001.1.3.6.1.4.1.46501.5.1.1.7.107001.1.3.6.1.4.1.46501.5.1.1.6.107001-w 0:0 -c 1:1
Luftfeuchtigkeit102001.1.3.6.1.4.1.46501.5.1.1.7.102001.1.3.6.1.4.1.46501.5.1.1.6.102001-w 80 -c 90 (direkt in %)
Potentialfreier Kontakt101003.1.3.6.1.4.1.39052.5.1.1.7.101003.1.3.6.1.4.1.39052.5.1.1.6.101003-w 1:1 (1=geschlossen=Warnung)
Türkontakt104001.1.3.6.1.4.1.46501.5.1.1.7.104001.1.3.6.1.4.1.46501.5.1.1.6.104001-w 1:1 (1=offen=Warnung)
Rauchmelder106001.1.3.6.1.4.1.46501.5.1.1.7.106001.1.3.6.1.4.1.46501.5.1.1.6.106001-w 0:0 -c 1:1

Sensor-ID herausfinden: 

Im Didactum Web-Interface unter Systembaum → Sensor auswählen → Details. Diese ID wird ans Ende der OID angehängt.

Temperaturschwellwerte: 

Das Didactum-Gerät liefert Temperaturwerte als Rohwert × 10. 28,0 °C = OID-Wert 280. Alle check_snmp-Schwellwerte müssen daher ebenfalls × 10 angegeben werden.

MIB-Prefix je Modell: 

Ältere Geräte verwenden .1.3.6.1.4.1.46501, neuere eventuell .1.3.6.1.4.1.39052. Entnehmen Sie die genauen OIDs der MIB-Datei Ihres Geräts.

11. E-Mail-Alarmierung konfigurieren

Schritt 1 – Kontakt anlegen

Monarch → Configuration → Contacts → Add Contact
FeldWert
Contact Nameadmin
AliasAdministrator
Emailadmin@ihredomain.de
Host Notification Period24x7
Host Notification Optionsd, u, r
Service Notification Period24x7
Service Notification Optionsw, c, r
Host Notification Commandsnotify-host-by-email
Service Notification Commandsnotify-service-by-email

Schritt 2 – Kontaktgruppe anlegen

Monarch → Configuration → Contact Groups → Add Group
  Group Name: admins
  Alias: Administratoren
  Members: admin

Schritt 3 – Mailversand sicherstellen

sudo apt install postfix mailutils -y
echo "Test GroundWork" | mail -s "Test" admin@ihredomain.de

Schritt 4 – GroundWork Notification-Commands prüfen

# Vorhandene Notification-Commands anzeigen:
grep -A5 "notify-service-by-email" \
    /usr/groundwork/nagios/etc/objects/commands.cfg

12. Test und Fehlersuche

Nagios-Konfiguration validieren

# Konfiguration prüfen
sudo /usr/groundwork/nagios/bin/nagios -v \
    /usr/groundwork/nagios/etc/nagios.cfg

# Erwartete Ausgabe: "Things look okay - No serious problems..."

# Nagios neu laden
sudo /usr/groundwork/bin/gwservices restart nagios
# oder:
sudo systemctl reload nagios

check_snmp direkt testen

# Temperaturwert (Rohwert ÷ 10 = Grad Celsius)
/usr/lib/nagios/plugins/check_snmp \
    -H 192.168.1.50 -C didactum_groundwork -P 2 \
    -o .1.3.6.1.4.1.46501.5.1.1.7.101001 \
    -w 280 -c 350 -l "Temperatur"
# Erwartete Ausgabe: SNMP OK - 235

# Leckage-Status
/usr/lib/nagios/plugins/check_snmp \
    -H 192.168.1.50 -C didactum_groundwork -P 2 \
    -o .1.3.6.1.4.1.46501.5.1.1.7.107001 \
    -w 0:0 -c 1:1 -l "Leckage"
# Erwartete Ausgabe bei trockenem Sensor: SNMP OK - 0

Service-Status in GroundWork prüfen

GroundWork Status-Konsole: 192.168.1.10/gwos
→ Services → Filter: Host = didactum-monitor-01
→ Status aller Didactum-Services anzeigen

Fehlermeldungen und Lösungen

ProblemUrsache & Lösung
check_snmp: No responseFirewall blockiert UDP 161; SNMP am Didactum nicht aktiv; Community String falsch
Service bleibt UNKNOWNPlugin nicht gefunden; Plugin-Pfad in Command falsch → which check_snmp ausführen
Temperatur erscheint 10× zu hochSchwellwerte × 10 nicht berücksichtigt → -w 280 statt -w 28 eingeben
Nagios-Konfigurationsfehler beim Reloadnagios -v nagios.cfg ausführen und Fehler korrigieren
Keine E-Mail bei AlarmPostfix läuft nicht; Kontakt hat keine E-Mail; Kontaktgruppe nicht dem Host/Service zugewiesen
SNMP-Trap kommt nicht ansnmptrapd läuft nicht; UDP 162 blockiert; SNMPTT nicht konfiguriert
Monarch zeigt Änderung nichtNach Monarch-Konfiguration immer „Commit" ausführen: Monarch → Commit → Deploy

Logs einsehen

# Nagios Log
sudo tail -f /usr/groundwork/nagios/var/nagios.log

# SNMPTT Log
sudo tail -f /var/log/snmptt/snmptt.log

# GroundWork Application Log
sudo tail -f /usr/groundwork/var/log/groundwork.log

# Systemd Journal
sudo journalctl -u nagios -f --since "1 hour ago"

Monarch-Konfiguration nach Änderungen deployen

Monarch → File → Commit (oder Revert)
→ "Deploy Configuration to Nagios" klicken
→ Nagios lädt Konfiguration automatisch neu

13. Abschluss-Checkliste

Didactum-Gerät

  • SNMP aktiviert (v2c oder v3)
  • Community String gesetzt (nicht „public"): didactum_groundwork
  • Trap-Empfänger-IP auf GroundWork-Server gesetzt
  • Trap-Port 162 eingetragen
  • MIB-Datei heruntergeladen
  • snmpwalk-Test vom GroundWork-Server erfolgreich

GroundWork Server – Pakete & MIB

  • Pakete snmp, snmp-mibs-downloader, nagios-plugins installiert
  • MIB-Datei unter /usr/share/snmp/mibs/ gespeichert
  • check_snmp Plugin vorhanden und funktionsfähig
  • UDP 161 ausgehend, UDP 162 eingehend geöffnet

Monarch / Nagios Konfiguration

  • check_snmp-Commands für alle Sensortypen definiert
  • Host-Template und Host-Profil für Didactum angelegt
  • Host didactum-monitor-01 eingebunden
  • Services für Temperatur, Leckage, Luftfeuchtigkeit, Türkontakt, Rauchmelder angelegt
  • Temperaturschwellwerte × 10 eingegeben (28°C = 280)
  • Konfiguration mit nagios -v validiert (kein Fehler)
  • Monarch: Commit und Deploy ausgeführt
  • Status-Konsole: Alle Services sichtbar und grün

SNMP Traps (Enterprise Edition)

  • snmptrapd und snmptt installiert und konfiguriert
  • snmptt.conf: Didactum Trap-Definitionen eingetragen
  • Nagios Passive Check Skript erstellt und ausführbar
  • Passiver Service für Trap-Empfang angelegt
  • Test-Trap empfangen und in Nagios sichtbar

Benachrichtigung

  • Postfix / Mailversand funktioniert (Test-Mail erhalten)
  • Kontakt mit E-Mail-Adresse angelegt
  • Kontaktgruppe admins dem Host/Service zugewiesen
  • Test-Alarm ausgelöst und E-Mail empfangen

Diese Webseite nutzt Cookies

Diese Webseite nutzt Cookies zur Verbesserung des Erlebnisses unserer Besucher. Indem Sie weiterhin auf dieser Webseite navigieren, erklären Sie sich mit unserer Verwendung von Cookies einverstanden.

Essenzielle Cookies ermöglichen grundlegende Funktionen und sind für die einwandfreie Funktion der Website erforderlich.
Statistik Cookies erfassen Informationen anonym. Diese Informationen helfen uns zu verstehen, wie unsere Besucher unsere Website nutzen.
Marketing-Cookies werden von Drittanbietern oder Publishern verwendet, um personalisierte Werbung anzuzeigen. Sie tun dies, indem sie Besucher über Websites hinweg verfolgen.