OPC UA Security & Zertifikate
Sicherheit ist in OPC UA eingebaut, nicht nachträglich angeflanscht. Eine Verbindung handelt eine SecurityPolicy und einen Modus aus, danach authentifizieren sich Client und Server gegenseitig mit X.509-Zertifikaten. Wer diese beiden Ideen (Modi und Vertrauen) versteht, klärt damit die meisten Sicherheitsfragen und Verbindungsfehler.
Die vier Säulen
| Säule | Was es schützt |
|---|---|
| Verschlüsselung | Vertraulichkeit: niemand kann den Verkehr mitlesen |
| Signieren | Integrität: Nachrichten können nicht manipuliert werden |
| Authentifizierung | Identität: der Anwendung (Zertifikat) und des Benutzers |
| Autorisierung | Berechtigungen: was ein authentifizierter Benutzer darf |
Sicherheitsmodi
- None : keine Signierung/Verschlüsselung. Nur für isolierte Tests.
- Sign : Nachrichten werden signiert (Integrität + Authentizität), aber nicht verschlüsselt.
- Sign & Encrypt : signiert und verschlüsselt. Für den Produktivbetrieb verwenden.
Jeder Modus ist mit einer SecurityPolicy gepaart (der Cipher Suite, z. B. Basic256Sha256 oder den neueren Aes256-Policies). Bevorzugen Sie moderne Policies und deaktivieren Sie veraltete.
Wie Zertifikatsvertrauen funktioniert
Jede OPC-UA-Anwendung hat ihr eigenes Instanzzertifikat. Beim Verbinden tauschen Client und Server Zertifikate aus; jeder führt einen kleinen PKI-Speicher:
pki/
├─ own/ # this application's own cert + private key
├─ trusted/certs # certificates we trust
├─ trusted/crl # certificate revocation lists
├─ issuer/ # CA certs (if using a CA)
└─ rejected/ # certs seen but not yet trusted
rejected/. Verschieben Sie es nachtrusted/certsauf beiden Seiten, dann neu verbinden. Dieser eine Schritt behebt die meisten „BadSecurityChecksFailed“-Fehler.Selbstsigniert vs. CA-signiert
Selbstsignierte Zertifikate sind für kleine, statische Installationen in Ordnung, Sie vertrauen jedem einzeln von Hand. Für größere Bestände skaliert eine Certificate Authority (oder der OPC UA GDS, Global Discovery Server) das Vertrauen: der CA einmal vertrauen, und jedes von ihr ausgestellte Zertifikat ist automatisch vertrauenswürdig.
Benutzerauthentifizierung
Die Anwendungsidentität (Zertifikat) ist von der Benutzeridentität getrennt. Ein Server kann anonyme, Benutzername/Passwort- oder Benutzerzertifikat-Token akzeptieren. Richten Sie sich nach dem, was der Server erwartet, und ziehen Sie im Produktivbetrieb benannte Benutzer dem anonymen Zugriff vor, damit Aktionen zuordenbar sind.
Härtungs-Checkliste
- Verwenden Sie Sign & Encrypt mit einer aktuellen Policy; deaktivieren Sie None und veraltete Policies.
- Ersetzen Sie Standard- und selbstsignierte Zertifikate durch verwaltete; setzen Sie eine sinnvolle Gültigkeit und rotieren Sie.
- Verlangen Sie benannte Benutzer; deaktivieren Sie anonym, wo möglich.
- Wenden Sie Autorisierung nach dem Least-Privilege-Prinzip an: nur lesend, sofern nicht wirklich Schreibzugriff nötig ist.
- Halten Sie CRLs aktuell; entfernen Sie veraltete Zertifikate aus
trusted/. - Betreiben Sie OPC UA in einem segmentierten Netz; beschränken Sie den Port auf bekannte Clients.
- Patchen Sie Ihren OPC-UA-Stack: behandeln Sie ihn wie jeden anderen Netzwerkdienst.
Zuletzt aktualisiert am 4. September 2026 · Lernressource.