Einrichten einer Zertifikatskette zwischen WinCC OA und Mosquito Broker

Diese Anleitung führt Sie durch die erforderlichen Schritte zum Einrichten einer Zertifikatskette für den MQTT-Treiber. In diesem Beispiel werden WinCC OA und Mosquitto verwendet.

  1. Erstellen Sie eine Root-CA, siehe Erstellen des Root-Paares (OpenSSL CA).
  2. Erstellen Sie eine Zwischen-CA, siehe Erstellen des Zwischenpaares (OpenSSL CA).
    Die zwischengeschaltete CA wird benötigt, um die Server- und Client-Zertifikate zu erstellen.
  3. Erstellen Sie Server- und Client-Zertifikate, siehe Server- und Client-Zertifikate signieren (OpenSSL CA).
  4. Richten Sie Ihre Mosquitto-Konfiguration ein.
    Um Mosquitto zu konfigurieren, muss die .conf-Datei angepasst und die Zertifikate müssen bereitgestellt werden.
    1. Aktualisieren Sie die .config-Datei:
      listener 8883
      protocol mqtt
      certfile <path-to-server-public-key>
      keyfile <path-to-server-private-key>
      require_certificate true
      cafile <path-to-ca-public-key>
      allow_anonymous true
                              
    2. Starten Sie Mosquitto.
      Führen Sie den folgenden Befehl aus, um den Mosquitto-Broker zu starten:
      mosquitto.exe -c <myConf>.conf [-v]
      • -c - gibt die Konfigurationsdateien an, die verwendet werden sollen
      • -v - Log-Level verbose (optional)
  5. Konfigurieren Sie den WinCC OA MQTT Treiber:
    1. Anmerkung: Die Zertifikate in mqtt/cert/certs müssen alphabetisch aufsteigend benannt werden, so dass das leave-Zertifikat sicher an erster Stelle ist.
      Erstellen Sie die Zertifikatsstruktur in Ihrem Projekt.
      mqtt
      └─cert
        │  ca.crt
        ├─certs
        │  client.crt
        │  intermediate.crt
        └─private
           client.key
      Abbildung 1. Projekt-Zertifikat-Ordner - mqtt/cert/
      Abbildung 2. Projekt-Zertifikat-Ordner - mqtt/cert/certs/
      Abbildung 3. Projekt-Zertifikat-Ordner - mqtt/cert/private/
    2. Konfigurieren Sie den MQTT-Treiber im Konfigurationspanel.
      Abbildung 4. MQTT driver - Verbindungseinstellungen
      Abbildung 5. MQTT driver - Verbindungseinstellungen