Zum Hauptinhalt springen

Zertifikats-Monitoring einrichten

IDIAL kann das aktuelle Zertifikat eines OPC UA-Geräts direkt abrufen und auswerten — ohne einen GDS-Push auszulösen. Dies ist nützlich, um den Zertifikatsstatus zu prüfen, Fingerabdrücke zu verifizieren oder die Restlaufzeit vor einer manuellen Erneuerung einzusehen. Zusätzlich kann ein Monitoring-Scheduler aktiviert werden, der alle Geräte im Inventar regelmäßig prüft.

Voraussetzungen

  • Das Gerät ist über Netzwerk erreichbar
  • API-Key liegt vor

Schritt 1 — Zertifikat eines einzelnen Geräts abrufen

curl -s -X POST \
-H "X-API-Key: <api-key>" \
-H "Content-Type: application/json" \
-d '{
"server": "192.168.1.100",
"port": 4840,
"fingerprint": "SHA1",
"x509": true
}' \
https://<idial-host>:5000/gds/monitor/crt

Anfrageparameter

ParameterTypStandardBeschreibung
serverstringIP-Adresse oder FQDN des OPC UA-Servers
portinteger/string4840OPC UA-Port
x509booleanfalseMenschenlesbare X.509-Zertifikatsdetails in der Antwort einschließen
fingerprintstringAlgorithmus für den Fingerabdruck: "SHA1" (Groß-/Kleinschreibung egal)
connection_securitybooleanfalseSichere OPC UA-Verbindung verwenden
disable_crl_checkbooleanfalseCRL-Prüfung überspringen

Beispielantwort

{
"url": "opc.tcp://192.168.1.100:4840",
"idial_time": "2026-03-30T14:22:05.123456",
"fingerprint": "A1:B2:C3:D4:E5:F6:07:08:09:10:11:12:13:14:15:16:17:18:19:20",
"security_policy": 8,
"security_mode": 2,
"x509": "Certificate:\n Subject: CN=OPC UA Server\n Issuer: CN=Internal CA\n Not Before: 2025-01-01\n Not After: 2027-01-01\n ..."
}

Antwortfelder

FeldBeschreibung
urlVollständige OPC UA-Verbindungs-URL. Nur vorhanden, wenn das Gerät im Inventar eingetragen ist.
idial_timeISO-8601-Zeitstempel des Abrufzeitpunkts
fingerprintSHA-1-Fingerabdruck im Hex-Format, doppelpunktgetrennt
security_policyBitmask der aktiven Security Policies (siehe Parameter-Referenz)
security_modeAktiver Security Mode (0=None, 1=Sign, 2=SignAndEncrypt)
x509Menschenlesbare X.509-Zertifikatsdetails (nur wenn x509: true)

Schritt 2 — Monitoring-Scheduler aktivieren (optional)

Der Monitoring-Scheduler prüft alle Geräte im Inventar regelmäßig und aktualisiert deren Zertifikatsstatus in der Datenbank.

curl -s -X POST \
-H "X-API-Key: <api-key>" \
-H "Content-Type: application/json" \
-d '{
"monitor_scheduler_active": true,
"monitor_scheduler_scan_interval_sec": 600
}' \
https://<idial-host>:5000/systeminfo
ParameterTypStandardBeschreibung
monitor_scheduler_activebooleanfalseMonitoring-Scheduler ein-/ausschalten
monitor_scheduler_scan_interval_secinteger ≥ 1600Prüfintervall in Sekunden (Standard: 10 Minuten)
tipp

600 Sekunden (10 Minuten) ist ein guter Ausgangswert. Bei großen Inventaren oder langsamen Netzwerken kann das Intervall erhöht werden, um das Netz nicht zu überlasten.

Schritt 3 — Scheduler-Status prüfen

curl -s \
-H "X-API-Key: <api-key>" \
https://<idial-host>:5000/systeminfo
{
"monitor_scheduler_status": "active",
"monitor_scheduler_active": true,
"monitor_scheduler_scan_interval_sec": 600
}

Zusammenfassung

POST /gds/monitor/crt → Zertifikat eines einzelnen Geräts abrufen
POST /systeminfo → Monitoring-Scheduler aktivieren/konfigurieren
GET /systeminfo → Scheduler-Status prüfen

Nächste Schritte

Fehlerbehebung

SymptomMögliche UrsacheLösung
Antwort ohne url-FeldGerät nicht im InventarGerät registrieren oder Server/Port prüfen
VerbindungsfehlerGerät nicht erreichbar oder falscher PortIP, Port und Netzwerkverbindung prüfen
fingerprint fehlt in Antwortfingerprint-Parameter nicht gesetzt"fingerprint": "SHA1" in den Request aufnehmen
disable_crl_check erforderlichCRL-Server nicht erreichbarNetzwerkverbindung zum CRL-Distributionspunkt prüfen