Zum Inhalt springen

Digitale Vernetzung und Industrial IoT – Vernetzung ohne Gefährdung von Anlagen gestalten

Aus MOOCsWiki Staging
aiMOOC-Siegel aiMOOC

Digitale Vernetzung und Industrial IoT – Vernetzung ohne Gefährdung von Anlagen gestalten

QR-Code


Einleitung

Digitale Vernetzung und Industrial IoT – Vernetzung ohne Gefährdung von Anlagen gestalten

Zielgruppe: Ausbildung, sieben kurze Lerneinheiten. Auftrag: Für die vollständig erfundene Verpackungslinie F-07 sollen Temperaturen auf einem Dashboard sichtbar werden. Die Steuerung selbst darf vom Dashboard aus weder verändert noch bedient werden.

Sicher üben: Sämtliche Beispiele verwenden erfundene Angaben. Verwende nur Deinen eigenen Rechner oder eine ausdrücklich autorisierte isolierte Übungsumgebung. Keine echten SPS, fremden Netze, Anlagen-, Zugangs- oder Kundendaten; keine Cloudverbindungen.

Christoph Roser, CC BY-SA 4.0, Wikimedia Commons.


Einheit 1 – Beobachten statt Steuern

10 Minuten. Eine SPS steuert einen Maschinenablauf. IIoT kann freigegebene Zustandswerte zur Auswertung bereitstellen. Eine Anzeige soll keine Start-, Stopp- oder Sollwertbefehle auslösen.

Bisgaard, CC BY-SA 3.0, Wikimedia Commons.

Basisaufgabe: Nenne zwei geeignete Messwerte und einen unzulässigen Steuerbefehl. Rückmeldung: Temperatur und Stückzahl sind denkbare Anzeigen; Start oder Stopp gehören nicht ins Dashboard.


Einheit 2 – Datenweg mit Trennung

10 Minuten. Ein autorisierter Sammler liest nur freigegebene Werte. Eine geprüfte Kopie im Austauschbereich versorgt das Dashboard. Der direkte Zugang vom Dashboard zur Steuerung bleibt gesperrt.

OT: Sensor → SPS → lesender Sammler
                     ↓
Grenzbereich:     Datenkopie
                     ↓
IT:               Dashboard

Nicht vorgesehen: Dashboard → SPS
Nicht vorgesehen: Schreiben an die Steuerung

Die Darstellung ist ein Soll-Modell. Erst entsprechend konfigurierte Zugriffsrechte und Netzgrenzen setzen die Trennung technisch durch.

Vshebordaev, CC BY-SA 3.0, Wikimedia Commons.

Einführung in OPC UA; externes Video.

OPC UA unterstützt Lesen, Schreiben und Methoden. Leserechte müssen deshalb ausdrücklich beschränkt werden.

Anwendungsaufgabe: Zeichne einen erlaubten Datenweg und einen gesperrten Steuerungszugriff. Rückmeldung: Die Anzeige liest nur die bereitgestellte Kopie, niemals unmittelbar die SPS.


Einheit 3 – Netze und Rechte

10 Minuten. Segmentierung trennt OT, kontrollierten Austauschbereich und IT. Eine DMZ kann Daten kontrolliert bereitstellen. Ein VLAN allein gewährleistet keine ausreichende Zugriffskontrolle.

Datei:DMZ network diagram 2 firewall.svg

Sangre viento/Pbroks13, Public Domain, Wikimedia Commons; allgemeines Konzept.

Purdue-Modell der industriellen Netze; externes Video.

Anfrage Freigabe Begründung
Sammler liest Simulator Ja Ausdrücklich genehmigter Messwert
Dashboard liest Datenkopie Ja Reiner Anzeigezugriff
Dashboard liest Simulator direkt Nein Zonengrenze
Dashboard schreibt Sollwert Nein Keine Steuerbefugnis

Transferaufgabe: Was passiert, wenn die Anzeige ausfällt? Rückmeldung: Die Maschinensteuerung muss unabhängig von ihr weiterarbeiten können.


Einheit 4 – Daten verstehen

10 Minuten. Messwerte benötigen eine Einheit, einen Zeitbezug und eine Plausibilitätskontrolle. Veraltete Angaben dürfen nicht den Eindruck eines aktuellen Maschinenzustands erzeugen.

Minute Fiktive Temperatur Visualisierung Hinweis
Eins 36 °C ██████ Normal
Zwei 38 °C ███████ Normal
Drei 41 °C ████████ Normal
Vier 48 °C ██████████ Warnung
Fünf 45 °C █████████ Normal

Python-Labor A: Speichere als trend.py. Ausführung lokal mit Python 3, ohne weitere Pakete oder Netzwerkverbindungen.

werte = [36, 38, 41, 48, 45]
grenze = 46
for minute, wert in enumerate(werte, 1):
    status = "WARNUNG" if wert >= grenze else "OK"
    print(f"{minute}: {wert} °C {'█' * (wert // 3)} {status}")

Teste: Setze die Grenze auf 40 °C. Rückmeldung: Anstelle einer werden drei Warnungen angezeigt. Das Programm beobachtet ausschließlich fiktive Zahlen.


Einheit 5 – Rechte simulieren

10 Minuten. Diese isolierte Übung verarbeitet nur Zeichenketten im lokalen Arbeitsspeicher. Sie konfiguriert keine echten Geräte.

erlaubt = {("sammler", "simulator", "lesen"),
           ("dashboard", "kopie", "lesen")}
pruefungen = [("dashboard", "kopie", "lesen"),
              ("dashboard", "simulator", "lesen"),
              ("dashboard", "kopie", "schreiben")]
for fall in pruefungen:
    print(fall, "FREI" if fall in erlaubt else "GESPERRT")

Teste: Ergänze eine weitere Schreibaktion. Rückmeldung: Sie bleibt gesperrt, weil ausschließlich ausdrücklich aufgenommene Kombinationen zulässig sind. Reale Sicherheitsregeln müssten zusätzlich auf den betroffenen Systemen umgesetzt werden.


Einheit 6 – Lokalen Lesedienst erproben

15 Minuten. Ein lokaler Dienst wird nur über die Loopback-Adresse 127.0.0.1 erreicht, nutzt einen frei gewählten Port und hält ausschließlich eine fiktive Temperatur bereit. Nach der Probe wird er geschlossen. Speichere als labor.py und starte das Programm lokal mit Python 3.

from http.server import BaseHTTPRequestHandler, HTTPServer
from urllib.request import urlopen
import json
import threading

class Labor(BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path != "/daten":
            self.send_response(404)
            self.end_headers()
            return
        inhalt = json.dumps({"linie": "F-07-Labor", "grad_c": 48}).encode()
        self.send_response(200)
        self.send_header("Content-Type", "application/json")
        self.send_header("Content-Length", str(len(inhalt)))
        self.end_headers()
        self.wfile.write(inhalt)

    def do_POST(self):
        self.send_response(405)
        self.end_headers()

    do_PUT = do_POST
    do_DELETE = do_POST

    def log_message(self, *args):
        pass

server = HTTPServer(("127.0.0.1", 0), Labor)
thread = threading.Thread(target=server.serve_forever, daemon=True)
thread.start()
try:
    url = f"http://127.0.0.1:{server.server_port}/daten"
    with urlopen(url, timeout=2) as antwort:
        print(json.loads(antwort.read()))
finally:
    server.shutdown()
    server.server_close()
    thread.join()

Ergebnis: Die lokalen fiktiven Angaben werden angezeigt. Schreibmethoden sind nicht vorgesehen. Einordnung: Dies ist ein Lehrmodell ohne produktive Authentifizierung oder Transportabsicherung, kein einsatzfähiger OT-Dienst.


Einheit 7 – Technische Freigabe begründen

10 Minuten. Prüfe für F-07: Was darf gelesen werden? Wer hat Zugriff? Welche Wege bleiben gesperrt? Was passiert bei Ausfall des Sammlers? Das Dashboard darf keine Voraussetzung für die Maschinensteuerung sein.

OPC-UA-Sicherheit; externes Vertiefungsvideo.


Gestufte Hilfen

Stufe 1: Denkanstoß
Überlege zuerst, welche Komponente Steuerbefehle ausführen darf.
Stufe 2: Hinweis
Markiere die direkte Verbindung zwischen Dashboard und SPS als unzulässig.
Stufe 3: Lösung
Die SPS steuert. Der Sammler liest. Die getrennte Datenkopie versorgt das Dashboard. Schreiben bleibt gesperrt.


Interaktive Aufgaben


Quiz: Teste Dein Wissen

Welche Aufgabe erfüllt das Dashboard? (Anzeige ausgewählter Messwerte) (!Starten der Anlage) (!Ändern der Steuerungslogik) (!Schreiben von Sollwerten)



Was übernimmt die Ablaufsteuerung? (Die SPS) (!Das Dashboard) (!Der Webbrowser) (!Der Lernserver)



Welche Datenquelle nutzt die Anzeige? (Die freigegebene Datenkopie) (!Den direkten SPS-Zugang) (!Die Motorsteuerung) (!Einen fremden Server)



Was bedeutet Segmentierung? (Trennung unterschiedlicher Schutzbereiche) (!Freigabe aller Kommunikationswege) (!Entfernung aller Berechtigungen) (!Gemeinsamer Zugriff auf alle Geräte)



Was gilt für OPC UA? (Schreibrechte müssen getrennt begrenzt werden) (!Es erlaubt grundsätzlich nur Lesen) (!Es ersetzt jede Firewall) (!Es steuert immer direkt eine Maschine)



Was benötigt ein Messwert? (Einheit und Zeitbezug) (!Ein Startsignal) (!Einen Schreibbefehl) (!Einen offenen Internetzugang)



Welche Aktion lässt Labor B zu? (Dashboard liest die Datenkopie) (!Dashboard schreibt die Datenkopie) (!Dashboard liest die Steuerung direkt) (!Sammler verändert die SPS)



Wo läuft der lokale Lehrdienst? (Auf der Loopback-Adresse) (!In einer fremden Produktionsanlage) (!Auf einem öffentlichen Cloudserver) (!Auf einer echten SPS)



Welche Aussage gilt für die Python-Beispiele? (Sie nutzen erfundene Werte) (!Sie benötigen Kundendaten) (!Sie prüfen fremde Netze) (!Sie verändern reale Maschinen)



Was gilt bei Dashboard-Ausfall? (Die Steuerung bleibt unabhängig) (!Die Maschine benötigt das Dashboard zum Start) (!Alle Rechte werden aufgehoben) (!Die SPS wird durch das Dashboard ersetzt)




Memory

Sensor Erfasst eine Messgröße
SPS Führt Steuerungsabläufe aus
Sammler Liest freigegebene Werte
Replikat Hält eine Datenkopie bereit
Dashboard Visualisiert Zustände
Firewall Kontrolliert Verbindungen




Drag and Drop

Ordne die richtigen Begriffe zu. Funktion
Messfühler Temperaturerfassung
Steuergerät Ablaufsteuerung
Datensammler Lesender Datenzugriff
Austauschbereich Kontrollierte Bereitstellung
Anzeigeseite Visualisierung




Kreuzworträtsel

Sensor Was erfasst physikalische Werte?
Gateway Was vermittelt Daten zwischen Systemen?
Firewall Was kontrolliert zugelassene Verbindungen?
Dashboard Was zeigt Zustandswerte übersichtlich an?
Replikat Wie heißt eine bereitgestellte Datenkopie?
Simulator Womit wird eine fiktive Anlage nachgebildet?




LearningApps

Externe Seite; gib keine Betriebsdaten ein.


Lückentext

Vervollständige den Text.
Die fiktive Linie trägt die Kennung

.
Den Ablauf steuert eine

.
Das Dashboard dient der

.
Ein freigegebener Sammler benötigt

.
Die ausgewählten Daten liegen als

vor.
Eine kontrollierte Zwischenzone heißt

.
Die Kommunikation begrenzt eine

.
Die lokalen Labore nutzen

.
Die Verbindung zur Steuerung muss

bleiben.



Offene Aufgaben


Leicht – Basisaufgaben

  1. Sensor: Zeichne zwei Messgrößen. Feedback: Messwerte sollen sichtbar sein, keine Befehle auslösen.
  2. SPS: Beschreibe die Steuerungsaufgabe. Feedback: Sie bleibt von der Anzeige getrennt.
  3. Diagramm: Markiere die höchste Temperatur. Feedback: 48 °C ist der Spitzenwert.
  4. Python: Ändere die Warnschwelle. Feedback: Die Anzahl der Meldungen folgt dem Vergleich.


Standard – Anwendungsaufgaben

  1. Netzwerksegmentierung: Zeichne drei Bereiche. Feedback: Die Anzeige erhält keinen SPS-Direktzugriff.
  2. Zugriffskontrolle: Ergänze einen verbotenen Fall. Feedback: Nicht freigegebene Aktionen bleiben gesperrt.
  3. Datenvisualisierung: Ergänze einen fiktiven Messwert. Feedback: Der Wert muss mit der Anzeige übereinstimmen.
  4. HTTP: Ändere die fiktive Temperatur im lokalen Dienst. Feedback: Nur die gelesene Darstellung verändert sich.


Schwer – Transferaufgaben

  1. Risikobewertung: Beurteile einen direkten Dashboard-SPS-Zugriff. Feedback: Unnötige Steuerungswege erhöhen das Risiko.
  2. Betriebssicherheit: Entwickle einen Plan bei Anzeigeausfall. Feedback: Der Maschinenablauf bleibt unabhängig.
  3. Berechtigungskonzept: Entwickle eine Rechtefreigabe. Feedback: Nur erforderliche Messgrößen und Leserollen sind vorgesehen.
  4. Technikfolgenabschätzung: Vergleiche logische Trennung mit gesicherter Einbahnübertragung. Feedback: Begründe Schutzwirkung und Grenzen beider Ansätze.




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

  1. Datenqualität: Begründe, weshalb ein alter Temperaturwert sichtbar gekennzeichnet werden muss.
  2. Netzwerksegmentierung: Erarbeite eine Alternative zum direkten Zugriff eines Bürorechners auf die SPS.
  3. Zugriffskontrolle: Entscheide begründet über einen beantragten Schreibzugriff für die Anzeige.
  4. Betriebssicherheit: Beschreibe das Verhalten bei Ausfall der Datenkopie.
  5. Testkonzept: Formuliere sichere Prüfungen für Lesezugriff, Rechteprüfung und Steuerungstrennung.


Lernnachweis

  1. Zonenbild mit getrennten Wegen für Anzeige und Steuerung.
  2. Ergebnisse aller lokalen Übungen mit fiktiven Daten.
  3. Rollenmatrix für erlaubte und gesperrte Aktionen.
  4. Begründete Betrachtung eines Ausfalls der Anzeige.
  5. Quellen- und Mediennachweis mit gültigen Nutzungsbedingungen.


OERs zum Thema

Fachquellen:

  1. NIST SP 800-82 Rev. 3 zu OT-Sicherheit.
  2. OPC Foundation zu Zugriffsrechten.
  3. PROFIBUS & PROFINET International zu OPC UA.

Bildrechte und Originaldateien:

  1. Industry 4.0.png, Christoph Roser, CC BY-SA 4.0.
  2. Programmable logic controller.jpg, Bisgaard, CC BY-SA 3.0.
  3. OPC UA Application Layers.svg, Vshebordaev, CC BY-SA 3.0.
  4. DMZ network diagram 2 firewall.svg, Sangre viento/Pbroks13, Public Domain.

Hinweis: YouTube-Videos sind nicht automatisch offen lizenziert. Für eine vollständig lokale Durchführung verwende nur die Python-Labore; externe Einbettungen können beim Aufruf Verbindungsdaten übertragen.


Verknüpfte Lernbereiche


aiMOOC-Projekte



Schulfach+




aiMOOCs



aiMOOC Projekte









MOOCwiki · Deutsch

Nach dem Lernen ist vor dem Lernen

Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.

Zur MOOCwiki-Hauptseite

Mediathek

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...