问题描述
我正在使用Elastic 7.9.2版本,并且想使用安全性。 所以我跑了:
bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
然后添加
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p1
在config/elasticsearch.yaml
现在,当我运行ES时,
bin/elasticsearch
出现以下错误:
"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials
for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-
8\""}}],"type":"security_exception","reason":"missing authentication credentials for REST
request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-
8\""}},"status":401}root@ip-localhost:/var/log/elasticsearch
任何人都可以帮忙!
解决方法
我已启用安全性并且用户身份验证有效。 Kibana 加载良好。
我有一个 3 节点集群并在每个节点上停止了 elasticsearch 服务,因此我可以添加传输 ssl。
启用 xpack.security.transport.ssl.enabled
和密钥库和信任库设置后,我在 Kibana 中遇到了相同的“缺少 REST 请求的身份验证凭据”错误。原来是因为我只有一个节点在运行,并且至少需要两个。之后在另一个节点上启用传输 ssl 并启动它,kibana 再次工作。
如果你为你的集群启用了安全性,但在 AUTH 你的客户端上仍然有一些错误,文档写道,你需要为客户端启用 ssl 可选或必需。请阅读原始主题:https://discuss.elastic.co/t/missing-authentication-for-rest-request/154807/13