How To: Schutzmaßnahmen in der CODESYS-Umgebung
Schützen Sie Schritt für Schritt alle Bereiche Ihrer Automatisierungsumgebung, indem Sie die CODESYS-Schutzmaßnamen konsequent anwenden.
Ein installiertes CODESYS Development System kann grundsätzlich dadurch gefährdet sein, dass zusätzliche Installationen oder verwendete Bibliotheken manipuliert oder ausgetauscht werden können. Um die Integrität der Entwicklungsumgebung zu gewährleisten, werden verschiedene Signierungsmechanismen unterstützt.
Signieren Sie Add-on-Packages im CODESYS Package Designer.
Signieren Sie Bibliotheken beim Speichern in CODESYS Development System.
Signieren Sie HTML5-Steuerelementen im Visualisierungselemente-Repository.
Erstellen Sie ein Projekt für das Programmieren Ihrer Applikation(en) in CODESYS.
Legen Sie eine Projekt-Benutzerverwaltung an. Konfigurieren Sie Zugangsdaten für Benutzer, sowie deren Zugriffsrechte. Sie können für jedes Objekt in seinen Eigenschaften die Zugriffskontrolle individuell konfigurieren.
Verschlüsseln Sie das Projekt über die Projekteinstellungen, Kategorie Sicherheit mindestens mit einem Passwort, besser noch mit einem Zertifikat.
Für weitere Informationen siehe: How To: Entwicklung und Quellcode schützen
Wenn Sie eine Bibliothek erstellen, die zur Verwendung in anderen Projekten installiert werden soll, schützen Sie diese durch eine Signatur. Jede Komponente, die zusätzlich installiert werden kann, bietet Hackern Angriffsmöglichkeit auf das Programmiersystem.
Für weitere Informationen siehe: Übersetzte Bibliotheken schützen und signieren
Als Bibliotheksentwickler können Sie mit Hilfe der Bibliothek
CmpX509Cert.libraryfür bestimmte Bausteine Zertifikate auf der SPS anlegen.Für weitere Informationen siehe: How To:
CmpX509Certfür Zertifikatserzeugung nutzenVerwalten Sie das Projekt in einem Versionsverwaltungssystem wie CODESYS Git, zum Zweck der Datensicherheit und des gesicherten Austauschs mit anderen.
Für weitere Informationen siehe: Projekt an Versionsverwaltung anbinden
Vor dem Download der erstellten Applikation:
Verschlüsseln und/oder signieren Sie die Applikation mit einem Zertifikat. Die nötigen Aktionen starten Sie am Besten im Dialog Eigenschaften der Applikation, Registerkarte Security.
Für weitere Informationen siehe: How To: Bootapplikation verschlüsseln oder signieren
Mit der Bibliothek
CmpX509Cert.librarykönnen Sie X.509-Zertifikate gezielt aus Ihrer IEC-Applikation heraus erzeugen. Die Zertifikate lassen sich gezielt einer bestimmten Applikation oder einer Einheit innerhalb der Applikation zuordnen.Für weitere Informationen siehe: How To:
CmpX509Certfür Zertifikatserzeugung nutzenKonfigurieren Sie die Verbindung zur SPS und schützen Sie diese:
Stellen Sie sicher, dass im Geräteeditor die Security-Einstellung Verschlüsselte Kommunikation aktiviert ist. Suchen Sie im Netzwerk nach der SPS.
Nach der Auswahl der SPS werden Sie angeleitet, ein zumindest begrenzt gültiges Zertifikat für die verschlüsselte Kommunikation zu erstellen und zu installieren.
Aktivieren Sie auf die Nachfrage hin die Gerätebenutzerverwaltung. Konfigurieren Sie auf die nächste Aufforderung hin einen Gerätebenutzer. Loggen Sie sich mit den dafür vergebenen Zugangsdaten auf der SPS ein.
Für weitere Informationen siehe: How To: Kommunikation mit Zertifikat verschlüsseln und Sicherheitsrichtlinie ändern
Sie können nun die Applikation auf der SPS ausführen.
Überlegen Sie, ob Sie nicht unmittelbar ein längerfristig gültiges Zertifikat für die verschlüsselte Kommunikation installieren wollen. Prüfen Sie die Laufzeitsystem-Sicherheitsrichtlinie und passen Sie diese bei Bedarf an.
Für weitere Informationen siehe: How To: Kommunikation mit Zertifikat verschlüsseln und Sicherheitsrichtlinie ändern
Die Applikation läuft auf der Steuerung. Folgendes können Sie noch für verbesserte Security tun: Audit-Log, Bestimmte kritische Benutzeraktionen über Applikation ausschließen, SPS-Betriebsarten verwenden, Interaktiven Login konfigurieren.
Verwenden Sie einen OPC UA-Server und Symbolgruppen für den Austausch mit der SPS?
Verschlüsseln Sie die Kommunikation zwischen OPC UA-Server und Client mit einem Zertifikat, das beim ersten Verbindungsaufbau mit Hilfe des Security-Screens eingerichtet werden kann. Konfigurieren Sie die CODESYS Benutzer- und Rechteverwaltung auch für Aktionen auf dem OPC UA-Server. Schränken Sie den Zugriff auf Symbole für bestimmte Gerätebenutzergruppen ein.
Für weitere Informationen siehe: How To: OPC UA Server sicher verwenden, How To: Symbolgruppen konfigurieren
Verwenden Sie eine WebVisu oder TargetVisu?
Für eine Visualisierung sollten Sie die "Laufzeitbasierte Benutzerverwaltung" verwenden, die mit der Benutzerverwaltung auf der Steuerung gekoppelt wird. Für eine WebVisu muss die Kommunikation mit dem WebServer zertifikatsverschlüsselt laufen. Außerdem sollten Sie die verwendeten HTML5-Steuerelemente immer signieren, da sie zusätzlich installiert werden können und damit eine Angriffsfläche für Hacker bieten.
Auch für eine Remote TargetVisu sollten Sie die Kommunikation mit der betreffenden SPS verschlüsseln.
Für weitere Informationen siehe: How To: HTML5-Steuerelement signieren, How To: Kommunikation zur WebVisu schützen, How To: Kommunikation zur Remote TargetVisu schützen
Verwenden Sie den Automation Server?
Sie haben bereits beim Kauf ein Server-Passwort vergeben. Nutzen Sie die Multi-Faktor-Authentifizierung (MFA) beim Anmelden. Konfigurieren Sie die CAS-eigene Benutzerverwaltung und vergeben Sie gezielt Zugriffsrechte für Aktionen auf dem Server und auf Server-Objekten. Konfigurieren Sie die zertifikatsverschlüsselte Verbindung zwischen Automation Server und Edge Gateway. Ein "Quick Setup" erleichtert dies. Setzen Sie die Funktion "Audit-Trail" zur Nachvollziehbarkeit von vorgenommenen Aktionen und Zugriffen ein.
Für weitere Informationen siehe: How To: Security beim CODESYS Automation Server
Verwenden Sie CODESYS Git
Verwenden Sie beim Einsatz der Scripting-Schnittstelle möglichst SecureString-Passwörter.
Für weitere Informationen siehe: Projekt an Versionsverwaltung anbinden
Denken Sie rechtzeitig an Backup-Aktionen. Mögliches Wiederherstellen verlorener Daten gehört ebenfalls zu den Security-Maßnahmen.
Für weitere Informationen siehe: How To: Backup und Restore