按照下述步骤创建本地超级账户,然后使用api接口本地超级账户重置elastic账户的密码
(1) 停止elasticsearch服务
(2) 确保你的配置文件中支持本地账户认证支持,如果你使用的是xpack的默认配置则无需做特殊修改;如果你配置了其他认证方式则需要确保配置本地认证方式在ES_HOME/config/elasticsearch.yml中;
(3) 使用命令ES_HOME/bin/x-pack/users创建一个基于本地问价认证的超级管理员
bin/x-pack/users useradd my_admin -p my_password -r superuser
(4) 启动elasticsearch服务
(5) 通过api重置elastic超级管理员的密码
curl -u my_admin -XPUT 'http://localhost:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password" : "new_password"
}
'
(6) 校验下密码是否重置成功
curl -u elastic 'http://localhost:9200/_xpack/security/_authenticate?pretty'
(7) 如果你确定后续不再使用本地认证则可将elasticsearch.yml文件中的本地文件认证方式删除掉;