Closed marcanpilami closed 1 year ago
Pinging @elastic/fleet (Team:Fleet)
@marcanpilami the docs mention
The pin is a base64-encoded string of the SHA-256 fingerprint.
However, your value is the raw fingerprint with colons removed (why?), not its base64-encoded value.
Regardless, I was having the same issue. While poking around the console I understood the reason.
Below, the first output was created statically via Kibana's configuration. The second output was created via the UI.
Notice that both are setting a different field: ca_sha256
vs. ca_trusted_fingerprint
.
(Please note that I mixed up values formats in my example, so both a wrong, please ignore.)
The solution for me was to set the output via xpack.fleet.outputs, where all fields are exposed.
Related issue (and linked PR): https://github.com/elastic/kibana/issues/120608
I had removed the columns because that was what the API returned when inputing the hash through the UI.
I can confirm that setting the output with ca_trusted_fingerprint
works perfectly.
So thanks a lot!
Kibana version:
8.3.3
Elasticsearch version:
8.3.3
Server OS version:
Linux (Ubuntu 22.04, Kernel 5.10.102.1) + Docker CE (20.10.17) (also reproduced outside Docker)
Browser version:
Any.
Browser OS version:
Any
Original install method (e.g. download page, yum, from source, etc.):
Docker compose file (provided below)
Describe the bug:
The
xpack.fleet.agents.elasticsearch.ca_sha256
value inside a Kibana config file is supposed according to https://www.elastic.co/guide/en/kibana/current/fleet-settings-kb.html to allow setting the certificate thumbprint for agent communications with elasticsearch.When set manually inside the Kibana UI, it works perfectly.
However, when set using the configuration file, it seems ignored. The other parameters (like
xpack.fleet.agents.elasticsearch.hosts
) are correctly imported, but ca_sha256 is not. It does not appear inside the Kibana UI, and it is not usable by agents until manually set in the UI so it is likely not a display bug.Steps to reproduce:
Just run the following docker compose file, simplified from by the official doc. The script inside the first container creates a Kibana config file with the correct fingerprint.
Check the configuration file was correctly generated (the fingerprint will change in your results):
After that go to http://localhost:5701/app/fleet/settings/outputs/fleet-default-output and check that the "Elasticsearch CA trusted fingerprint" field is empty instead of populated (while the "hosts" field is populated as expected).
Expected behavior:
Field is populated by certificate fingerprint.
Screenshots (if relevant):
N/A
Errors in browser console (if relevant):
N/A
Provide logs and/or server output (if relevant):
Kibana startup log:
Any additional context:
N/A