Closed epoch1970 closed 1 year ago
@epoch1970 thanks for providing a step by step manual for your SSL/TLS configuration
@epoch1970 : Have you tried to upgrade specific TLS version for Hawkbit? I have tried to upgrade to TLSv1.3 but it does not work as well, it's still in TLSv1.2:
server.ssl.enabled-protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
Result is here:
@epoch1970 : Have you tried to upgrade specific TLS version for Hawkbit? I have tried to upgrade to TLSv1.3 but it does not work as well, it's still in TLSv1.2:
I have not. In fact I use nginx as SSL forwarding proxy these days, not built-in SSL support.
I think the problems from Java version. Currently, Hawkbit is supported in Java 8, while TLSv1.3 is supported from Java 11. https://en.wikipedia.org/wiki/Java_version_history I have tried to upgrade Java to 11 and re-install hawkbit, it failed. Please refer issue #839 for more details.
This discussion seems to be obsolete. The configuration is on spring level, so no need to be added in hawkbit documentation.
Re: #618 et al., here is a recipe that seems to work for me. HTH.
Config for HawkBit under SSL/TLS using private CA / sub CA HawkBit (HawkBit 0.2.0-SNAPSHOT) + swupdate (v2018.03)
Purpose: Use HTTPS on a HawkBit server to avoid server spoofing. Anonymous client connections are authorized.
Recipe: A. On the PKI:
B. On the HawkBit host:
The following command imports a .p12 into a "pkcs12 Java keystore", keeping the same password:
Then you need to adapt application.properties of the HawkBit server to make use of the key. There are extra requirements to make HawkBit send well-formed artifacts to an swupdate client via HTTPS.
This is the relevant part of
<HawkBit dir>/hawkbit-runtime/hawkbit-update-server/src/main/resources/application.properties
:C. On the swupdate client host(s):
/etc/ssl/certs
. So we're using a compound "CA chain" .pem file to hold both private CA and sub-CA in our preferred location.This is the relevant part of
/etc/swupdate/swupdate.conf
: