PKI-Endpunkt konfigurieren und einem Gerät zuweisen
IDIAL unterstützt mehrere PKI-Typen für die Ausstellung von OPC UA-Anwendungszertifikaten. Dieser Guide erklärt, wie Sie die konfigurierten PKI-Endpunkte einsehen, das CA-Zertifikat herunterladen und verifizieren, und einem GDS-Push-Gerät einen PKI-Endpunkt zuweisen.
PKI-Endpunkte werden bei der IDIAL-Installation vorkonfiguriert. Die Verwaltung von EST-PKI-Endpunkten (Hinzufügen, Bearbeiten, Löschen) erfolgt über IDIAL-APP.
PKI-Typen in IDIAL
IDIAL kennt drei PKI-Typen:
| Typ-ID | Name | Beschreibung |
|---|---|---|
1 | INTERNAL | Integrierte CA — IDIAL signiert Zertifikate direkt mit der konfigurierten CA (OpenSSL). Kein externer PKI-Server erforderlich. |
2 | EST | EST-Protokoll (RFC 7030) — Zertifikatsanfragen werden an einen externen EST-Server weitergeleitet. |
3 | CMP | CMP-Protokoll (RFC 4210) — Zertifikatsanfragen über Certificate Management Protocol. |
Schritt 1: Konfigurierte PKI-Endpunkte anzeigen
Rufen Sie alle in IDIAL konfigurierten PKI-Endpunkte ab. Die pki_id wird benötigt, um einen Endpunkt einem Gerät zuzuweisen.
curl -X GET https://idial.example.com/pki \
-H "X-API-Key: your-api-key"
Erwartete Antwort (200):
[
{
"pki_id": 1,
"pki_type": "INTERNAL",
"pki_connection": "internal",
"username": "",
"opcua_server_template_uri": "",
"opcua_client_template_uri": "",
"opcua_webserver_template_uri": "",
"ssh_webserver_template_uri": ""
},
{
"pki_id": 2,
"pki_type": "EST",
"pki_connection": "https://est.example.com/.well-known/est",
"username": "estuser",
"opcua_server_template_uri": "est-opcua-server-template",
"opcua_client_template_uri": "est-opcua-client-template",
"opcua_webserver_template_uri": "",
"ssh_webserver_template_uri": ""
}
]
Antwortfelder
| Feld | Beschreibung |
|---|---|
pki_id | Eindeutiger Bezeichner des PKI-Endpunkts — wird für die Gerätezuweisung benötigt |
pki_type | PKI-Typ: INTERNAL, EST oder CMP |
pki_connection | Verbindungskennung: "internal" für den internen Typ, URL für EST/CMP |
username | Benutzername für die Authentifizierung am EST/CMP-Server (leer bei internem PKI) |
opcua_server_template_uri | CA-Template-URI für OPC UA Server-Zertifikate |
opcua_client_template_uri | CA-Template-URI für OPC UA Client-Zertifikate |
opcua_webserver_template_uri | CA-Template-URI für OPC UA Web-Server-Zertifikate |
ssh_webserver_template_uri | CA-Template-URI für SSH Web-Server-Zertifikate |
Notieren Sie für die folgenden Schritte:
- Die
pki_iddes gewünschten Endpunkts, z. B.1für den internen PKI
Schritt 2: CA-Zertifikat herunterladen und prüfen
Laden Sie das CA-Zertifikat der internen PKI herunter und prüfen Sie ob es dem erwarteten Aussteller entspricht. Dieser Endpunkt erfordert keine Authentifizierung.
# PEM-Format herunterladen
curl -X GET https://idial.example.com/pki/ca \
-H "Accept: application/x-pem-file" \
-o ca.pem
# DER-Format herunterladen (Standard)
curl -X GET https://idial.example.com/pki/ca \
-o ca.der
Zertifikat mit OpenSSL prüfen:
openssl x509 -in ca.pem -noout -subject -issuer -dates
Erwartete Ausgabe:
subject=CN=IDIAL CA, O=BxC Security GmbH, C=DE
issuer=CN=IDIAL CA, O=BxC Security GmbH, C=DE
notBefore=Jan 1 00:00:00 2025 GMT
notAfter=Jan 1 00:00:00 2030 GMT
Das CA-Zertifikat ist selbstsigniert (subject = issuer). Es muss in den Trust Stores der OPC UA-Geräte eingetragen werden, damit von IDIAL ausgestellte Zertifikate als vertrauenswürdig akzeptiert werden. Der GDS-Push-Prozess übernimmt dies automatisch bei Verwendung von issuer: true.
Schritt 3: CRL herunterladen (optional)
Laden Sie die aktuelle Certificate Revocation List der internen CA herunter.
# PEM-Format
curl -X GET https://idial.example.com/pki/crl \
-H "Accept: application/x-pem-file" \
-o crl.pem
# CRL prüfen
openssl crl -in crl.pem -noout -issuer -lastupdate -nextupdate
Schritt 4: PKI-Endpunkt einem GDS-Push-Gerät zuweisen
Weisen Sie dem Inventareintrag des Geräts den gewünschten PKI-Endpunkt zu. Verwenden Sie dafür PATCH /gds/inventory mit dem Feld pki und der entsprechenden pki_id aus Schritt 1.
curl -X PATCH https://idial.example.com/gds/inventory \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"server": "192.168.1.10",
"port": 4840,
"pki": 1
}'
| Feld | Beschreibung |
|---|---|
server | IP-Adresse oder FQDN des Geräts — identifiziert den Inventareintrag |
port | OPC UA Port des Geräts |
pki | pki_id aus Schritt 1 |
Erwartete Antwort (200):
{
"id": 42,
"name": "PLC Linie 1",
"url": "opc.tcp://192.168.1.10:4840",
"server": "192.168.1.10",
"port": 4840,
"device_status": 1,
"device_status_name": "active",
"pki_endpoint": "internal",
"cert_expdays": 365,
"cert_revoked": false
}
Das Feld pki_endpoint zeigt nach dem Update den Verbindungswert des zugewiesenen PKI-Endpunkts ("internal" oder eine EST/CMP-URL).
Schritt 5: Zuweisung bestätigen
Rufen Sie den Inventareintrag ab und verifizieren Sie dass pki_endpoint korrekt gesetzt ist.
curl -X GET "https://idial.example.com/gds/inventory/192.168.1.10" \
-H "X-API-Key: your-api-key"
Prüfen Sie in der Antwort:
| Feld | Erwarteter Wert |
|---|---|
pki_endpoint | "internal" (Typ 1) oder EST-URL (Typ 2) — entspricht dem zugewiesenen Endpunkt |
Ablauf-Übersicht
Schritt 1 GET /pki → pki_id und pki_type einsehen
↓
Schritt 2 GET /pki/ca → CA-Zertifikat herunterladen und prüfen
↓
Schritt 3 GET /pki/crl (optional) → CRL herunterladen
↓
Schritt 4 PATCH /gds/inventory → pki_id dem Gerät zuweisen
↓
Schritt 5 GET /gds/inventory/{host} → Zuweisung bestätigen
Nächste Schritte
Nach der PKI-Konfiguration kann der GDS-Push-Workflow ausgeführt werden. Die vollständige Anleitung zur Geräteregistrierung finden Sie unter OPC UA GDS-Push-Gerät registrieren.
Fehlerbehebung
| Symptom | Mögliche Ursache | Lösung |
|---|---|---|
GET /pki gibt leere Liste zurück | PKI-Endpunkte noch nicht konfiguriert | IDIAL-APP zur PKI-Konfiguration verwenden |
GET /pki/ca gibt 404 zurück | CA-Zertifikat nicht auf dem IDIAL-Container vorhanden | CA-Zertifikat in der IDIAL-Containerkonfiguration hinterlegen |
pki_endpoint bleibt leer nach PATCH | pki-Feld nicht korrekt übergeben oder pki_id ungültig | GET /pki aufrufen und gültige pki_id prüfen |
| GDS Push schlägt fehl nach PKI-Zuweisung | Template-URI nicht konfiguriert oder EST-Server nicht erreichbar | opcua_server_template_uri in IDIAL-APP prüfen, Konnektivität zum EST-Server testen |