Elasticsearch X-Pack安全功能未启用的解决方案

发布于:2025-07-22 ⋅ 阅读:(19) ⋅ 点赞:(0)

报错:

Unexpected response code [500] from calling GET http://172.17.0.3:9200/_security/_authenticate?pretty
It doesn't look like the X-Pack security feature is enabled on this Elasticsearch node.
Please check if you have enabled X-Pack security in your elasticsearch.yml configuration file.


ERROR: X-Pack Security is disabled by configuration.

Elasticsearch X-Pack安全功能未启用的解决方案

问题诊断

您遇到的错误表明Elasticsearch节点的X-Pack安全功能未启用,导致无法进行身份验证。错误信息明确指出:

  • 返回了500错误代码
  • X-Pack安全功能被配置禁用
  • 无法执行安全认证请求

解决方案

1. 启用X-Pack安全功能

在elasticsearch.yml配置文件中添加以下设置:

xpack.security.enabled: true

配置文件位置取决于安装方式:

  • 压缩包安装:$ES_HOME/config/elasticsearch.yml
  • 包管理安装:/etc/elasticsearch/elasticsearch.yml

2. 单节点集群额外配置

如果是单节点集群,还需添加:

discovery.type: single-node

3. 重启Elasticsearch服务

修改配置后必须重启服务:

  • 压缩包安装:从ES_HOME目录运行./bin/elasticsearch
  • 系统服务:sudo systemctl restart elasticsearch

4. 设置内置用户密码

服务重启后,执行以下命令设置密码:

./bin/elasticsearch-setup-passwords auto

或使用交互模式:

./bin/elasticsearch-setup-passwords interactive

后续配置

Kibana连接配置

  1. 在kibana.yml中添加:
elasticsearch.username: "kibana_system"
  1. 创建Kibana密钥库并添加密码:
./bin/kibana-keystore create
./bin/kibana-keystore add elasticsearch.password

验证步骤

  1. 测试Elasticsearch连接:
curl -u elastic:密码 http://localhost:9200
  1. 访问Kibana:http://localhost:5601 使用elastic用户登录

注意事项

  • 生产环境多节点集群必须配置TLS加密
  • 密码设置命令只能执行一次
  • 确保Elasticsearch和Kibana版本一致

网站公告

今日签到

点亮在社区的每一天
去签到