apache2 设置用户名访问_如何给ElasticSearch设置用户名和密码

前言:最近在工作中用到了ElasticSearch。由于上线需要设置用户名和密码,发现ES7.7以后的版本将安全认证功能免费开放了。并将X-pack插件集成了到了开源的ElasticSearch版本中。下面将图文介绍如何利用X-pack给ElasticSearch相关组件设置用户名和密码。

环境说明:

  1. ES7.7.1官方docker 安装
  2. 宿主机器为centos7
  3. 单机单节点模式

详细步骤:

  1. 进入ES的安装目录修改elasticsearch.yml文件在最后一行添加xpack.security.enabled: true开源版本默认是关闭的。

a6c75379a166b0c26f92ce554546eab3.png

2.重新启动ES:./bin/elasticsearch -d(这一步非常重要,必须启动才能新增用户名和密码);

3.以交互的方式设置用户名和密码:(记住你所设置的密码)

./bin/elasticsearch-setup-passwords interactive

4cf573f418dc6278a2f325ff4105dc95.png

4.到此已经完成ES及相关组件的加密了,后续访问和使用相关组件都需要验证用户名和密码了。

  • curl localhost:9200会出现如下错误提示:

e4080f27eb8db6ce66831f35892aa46c.png
  • 使用curl localhost:9200 -u elastic:{password}如下方式访问则正常:

61a01dcf713a7f20a0e8fc54424620d6.png

后记:

1.如果你觉得之前用户的密码设置的太简单了,你想修改密码可以采用如下方式:

curl -XPOST -u elastic "localhost:9200/_security/user/elastic/_password" -H 'Content-Type: application/json' -d'{"password" : "abcd1234"}'

60768ee0f0fbe9c4bcbcb5048365d003.png

这种方式修改密码需要注意的是:(1)之前设置过elastic的用户密码;(2)还记的用户elastic用户的密码。

2. 如果忘记之前elastic用户的密码,这个时候又要用到ES的加密功能,那需要重置ES的密码认证;详细步骤如下:

  • 修改config/elasticsearch.yml;注释掉 xpack.security.enabled: true这一行;
  • 重启ES,查看下索引,发现多了一个.security-7

5be184024750b116f150049eefe3f8c9.png
  • 删除掉.security-7索引:

c9750d85a5200e0c60d0f3ca32253abd.png
  • 到此就回到ES没有设置密码的阶段了,如果想重新设置密码,请重头开始参考本文。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值