Selbstsignierte Zertifikate regenerieren
Führen Sie die folgenden Befehle aus, um die Dateien orchestration.csr und orchestration.crt im Verzeichnis <ThingWorx_Flow_Install_Location>/SSL zu regenerieren:
1. Sichern Sie das Verzeichnis <ThingWorx_Flow_Install_Location>/SSL.
2. Löschen Sie alle Dateien im Verzeichnis <ThingWorx_Flow_Install_Location>/SSL.
3. Führen Sie mit dem Dienstprogramm openssl die folgenden Befehle aus, um die Zertifikate zu generieren:
◦ <openssl_cmd> req -nodes -sha256 -newkey rsa:2048 -config <openssl_conf> -keyout "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.key" -subj "/C=<C>/O=<O>/OU=<OU>/CN=<CN>" -out "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.csr"
◦ <openssl_cmd> x509 -req -days 365 -sha256 -in "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.csr" -signkey "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.key" -out "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.crt"
, wobei
<C> – Ländername (2-stelliger Code)
<O> – Organisationsname (z.B. Firma)
<OU> – Name der Organisationseinheit (z.B. Bereich)
<CN> – Allgemeiner Name (z.B. Server-FQDN). Der vollständig qualifizierte Domänenname (z.B. win-f3ai9djq75j)
<openssl_cmd> – Windows: Führen Sie cd C:/opscode/chef/embedded/bin/openssl oder cd C:/cinc-project/cinc/embedded/bin aus, geben Sie openssl ein, und führen Sie den obigen Befehl aus.
Linux: Geben Sie openssl ein, und führen Sie den obigen Befehl aus.
<openssl_conf> – Windows: C:/opscode/chef/embedded/ssl/openssl.cnf oder C:/cinc-project/cinc/embedded/ssl/openssl.cnf
Linux: /etc/pki/tls/openssl.cnf
Beispiel:
Windows – C:/opscode/chef/embedded/bin/openssl req -nodes -sha256 -newkey rsa:2048 -config C:/opscode/chef/embedded/ssl/openssl.cnf -keyout "C:\orchestration.key" -subj "/C=US/O=PTC/OU=IT Department/CN=WIN-F3AI9DJQ75J" -out "C:\orchestration.csr"
Windows – C:/opscode/chef/embedded/bin/openssl x509 -req -days 365 -sha256 -in "C:\PROGRA~1\twx\THINGW~2/SSL/orchestration.csr" -signkey "C:\orchestration.key" -out "C:\orchestration.crt"
4. Für ThingWorx Flow 9.1.0 und höher sowie ThingWorx Flow 9.0.3 und höher:
a. Erstellen Sie im Ordner <ThingWorx_Flow_Installationsspeicherort>/SSL die Datei nginx-keyfile und ein neues Passwort für den verschlüsselten privaten Schlüssel.
b. Führen Sie mit dem Dienstprogramm "openssl" den folgenden Befehl aus, um den privaten Nginx-Schlüssel zu verschlüsseln:
<openssl_cmd> rsa -aes256 -passout pass:<Dasselbe Passwort wie in nginx-keyfile definiert> -in "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration.key" -out "<ThingWorx_Flow_Installationsspeicherort>/SSL/orchestration_enc.key"
c. Löschen Sie orchestration.key, und benennen Sie orchestration_enc.key in orchestration.key um.
5. (Nur Linux) Legen Sie die folgenden Berechtigungen fest:
◦ sudo chown flowuser:flowuser <ThingWorx_Flow_Installationsspeicherort>\SSL\orchestration.crt, wobei flowuser der Benutzer ist, der das ThingWorx Flow Installationsprogramm ausgeführt hat.
◦ sudo chown flowuser:flowuser <ThingWorx_Flow_Installationsspeicherort>\SSL\orchestration.key
. wobei flowuser der Benutzer ist, der das ThingWorx Flow Installationsprogramm ausgeführt hat.
◦ sudo chcon -t httpd_sys_content_t <ThingWorx_Flow_Installationsspeicherort>\SSL\orchestration.crt
◦ sudo chcon -t httpd_sys_content_t <ThingWorx_Flow_Installationsspeicherort>\SSL\orchestration.key
◦ Für ThingWorx Flow 9.1.0 und ThingWorx Flow 9.03 und höher:
▪ sudo chown flowuser:flowuser <ThingWorx_Flow_Installationsspeicherort>/SSL/nginx-keyfile
. wobei flowuser der Benutzer ist, der das ThingWorx Flow Installationsprogramm ausgeführt hat.
▪ sudo chcon -t httpd_sys_content_t <ThingWorx_Flow_Installationsspeicherort>/SSL/nginx-keyfile
6. Ändern Sie die Datei extra.crt im Ordner <ThingWorx Flow Installationsverzeichnis>\SSL, und ersetzen Sie den Inhalt des ersten Zertifikats durch einen neuen selbstsignierten Zertifikatinhalt.
7. Starten Sie die Dienste RabbitMQ, ThingWorx-Flow, Nginx und ThingWorx-Foundation neu.