我是ELK堆栈的新手,并希望在其中使用身份验证。为此,我将在elasticsearch中使用Search guard插件。 我已经在以下链接的帮助下安装了它:
https://github.com/floragunncom/search-guard-docs
然后我按照那里给出了所有步骤,但不幸的是在运行sgadmin
时遇到了以下错误An unexpected ElasticsearchSecurityException occured: Search Guard not
initialized (SG11) for indices:admin/exists
我试图通过各种链接来解决错误:
https://github.com/floragunncom/search-guard/issues/366
https://github.com/floragunncom/search-guard-docs/blob/master/sgadmin.md
https://groups.google.com/forum/#!msg/search-guard/kBwjU8JtTkk/5KShZiiwCQAJ
但没有运气...... 如果有人有任何想法来解决错误,请帮助我。 任何线索都将受到赞赏。
答案 0 :(得分:0)
您很可能使用的是带有sgadmin的节点证书,而不是管理员证书。或者您在elasticsearch.yml中将节点证书配置为管理员证书。
简而言之,sgadmin需要单独的TLS证书,并且此证书不得用作节点证书。请检查elasticsearch.yml中的以下部分:
searchguard.nodes_dn:
- 'CN=node.other.com,OU=SSL,O=Test,L=Test,C=DE'
- ...
和
searchguard.authcz.admin_dn:
- CN=admin,OU=SSL,O=Test,L=Test,C=DE
- ...
确保在searchguard.authcz.admin_dn中使用单独的证书。此证书不得列在searchguard.nodes_dn部分中。
执行sgadmin时,请确保使用searchguard.authcz.admin_dn中配置的证书。