Changes for page STARFACE
Last modified by Sebastian Marsching on 2024/01/09 23:21
From version 8.1
edited by Sebastian Marsching
on 2022/07/17 16:33
on 2022/07/17 16:33
Change comment:
There is no comment for this version
To version 9.1
edited by Sebastian Marsching
on 2024/01/09 23:21
on 2024/01/09 23:21
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -84,5 +84,27 @@ 84 84 -in root-ca.pem \ 85 85 -out root-ca.cer \ 86 86 -outform DER 87 -``` `87 +``` 88 88 89 +# TLS-Zertifikate mit ECDSA-Schlüsseln 90 + 91 +Zur Zeit (STARFACE 8.1.1.1) unterstützt STARFACE keine Zertifikate mit ECDSA-Schlüsseln, d.h. es muss zwingend ein Zertifikat mit einem RSA-Schlüssel installiert werden. 92 + 93 +Der Grund liegt nicht in der Software selbst sondern in der Tomcat-Konfiguration der STARFACE: In der `ciphers`-Liste des TLS-Connectors werden nur RSA-basierte Cipher-Suites aufgelistet. Dies führt dazu, dass bei Verwendung eines ECDSA-basierten Zertifikats keine Verbindung hergestellt werden kann. In Firefox erhält man z.B. die Fehlermeldung `SSL_ERROR_NO_CYPHER_OVERLAP`. 94 + 95 +Ein temporärer Workaround liegt darin, sich per SSH auf der STARFACE einzuloggen und die Datei /opt/tomcat/conf/server.xml so zu bearbeiten, dass das `cipher`-Attribut des Connectors für Port 8081 zusätzlich die folgenden Cipher-Suites enthält: 96 + 97 +* TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 98 +* TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384 99 +* TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 100 +* TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256 101 +* TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 102 +* TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 103 +* TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 104 +* TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 105 + 106 +Je nach verwendetem Browser reicht wahrscheinlich auch nur die erste oder zweite Cipher-Suite. 107 + 108 +Anschließend muss Tomcat mit `systemctl restart tomcat.service` neugestartet werden. Nach erfolgreichem Neustart kann man sich wieder in der Administrationsoberfläche anmelden und das Zertifikat durch eines ersetzen, das einen RSA-Schlüssel verwendet. 109 + 110 +Den oben genannten Workaround dauerhaft zu verwenden empfiehlt sich eher nicht, da die hinzugefügten Cipher-Suites wieder entfernt werden, wenn STARFACE die Konfigurationsdatei neu schreibt. Dafür werden anscheinend die Templates in `/opt/tomcat/webapps/localhost/starface/WEB-INF/classes/de/vertico/starface/helpers/tomcat/https-connector-template.xml` und `/opt/tomcat/webapps/localhost/starface/WEB-INF/classes/de/vertico/starface/helpers/tomcat/provisioning-https-connector-template.xml` verwendet, d.h. man könnte prinzipiell diese Templates anpassen. Allerdings ist es sehr wahrscheinlich, dass diese Templates überschrieben werden, wenn die STARFACE-Version aktualisiert wird, d.h. eine solche Lösung würde regelmäßig manuelle Nacharbeiten erfordern. Einfach ein Zertifikat mit RSA-Schlüssel zu verwenden ist in dieser Hinsicht die einfachere Lösung. Dies funktioniert übrigens auch, wenn die übergeordnete CA selbst einen ECDSA-Schlüssel verwendet.