My Kibana version 7.5.1 and it seems that x-pack is a default setting.
I added the configuration following in elasticsearch.yml:
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
In kibana.yml
elasticsearch.username: "elastic"
elasticsearch.password: "pass"
xpack.security.sessionTimeout: 600000
When I started the kibana service and checked the status:
Jan 14 19:15:27 node kibana[7744]: {"type":"log","@timestamp":"2020-01-14T11:15:27Z","tags":["warning","legacy-plugins"],"pid":7744,"path":"/usr/share/kibana/src/legacy/core_plugins/visualizations","message":"Skipping non-plugin directory at /usr/share/kibana/src/legacy/core_plugins/visualizations"}
Jan 14 19:15:27 node kibana[7744]: {"type":"log","@timestamp":"2020-01-14T11:15:27Z","tags":["warning","plugins","licensing"],"pid":7744,"message":"License information could not be obtained from Elasticsearch for the [data] cluster. [security_exception] failed to authenticate user [elastic], with { header={ WWW-Authenticate="Basic realm=\"security\" charset=\"UTF-8\"" } } :: {"path":"/_xpack","statusCode":401,"response":"{\"error\":{\"root_cause\":[{\"type\":\"security_exception\",\"reason\":\"failed to authenticate user [elastic]\",\"header\":{\"WWW-Authenticate\":\"Basic realm=\\\"security\\\" charset=\\\"UTF-8\\\"\"}}],\"type\":\"security_exception\",\"reason\":\"failed to authenticate user [elastic]\",\"header\":{\"WWW-Authenticate\":\"Basic realm=\\\"security\\\" charset=\\\"UTF-8\\\"\"}},\"status\":401}","wwwAuthenticateDirective":"Basic realm=\"security\" charset=\"UTF-8\""}"}
Jan 14 19:15:27 node kibana[7744]: {"type":"log","@timestamp":"2020-01-14T11:15:27Z","tags":["info","plugins-system"],"pid":7744,"message":"Starting [8] plugins: [timelion,features,code,security,licensing,spaces,translations,data]"}
Jan 14 19:15:27 node kibana[7744]: {"type":"log","@timestamp":"2020-01-14T11:15:27Z","tags":["warning","migrations"],"pid":7744,"message":"Unable to connect to Elasticsearch. Error: [security_exception] failed to authenticate user [elastic], with { header={ WWW-Authenticate="Basic realm=\"security\" charset=\"UTF-8\"" } }"}
When I accessed http://node:5601 from the browser, It also showed Kibana server is not ready yet.
In http://node:9200, It popped up an authentification required, but when I typed the user name: elastic; password: pass as I set on the kibana.yml. It still can't log in.
How can I make my kibana service start with login page?