ElasticSearch 添加用户访问权限

     上次因为Apache Log4j2安全漏洞问题,把这个给漏洞也给搞出来了,本来访问这个ES只需要ip和端口,感觉还可以。哈哈哈哈,但是他不安全,如果它没检测出来,我就自然忽略就行了。

但是既然已经暴漏了,只能硬着头皮去做了。我看了安全漏洞分析的提示我,让我去用elasticsearch-http-basic这个插件,我顿时感觉人生有了目标。

 

 于是我开始百度这个插件,废了就牛二虎之力下载到了这个最新版本的插件。

 

 于是我又开始百度,这个插件如何使用,我按照流程做了配置,结果无论怎末都访问不了。不知到怎末回事。最后我又百度了一下什么原因,结果我看到了,这个ES6.8版本以后就不支持这个了,他有自己的一套认证了,那就是xpack。顿时感觉挺蛋疼的。哎,还是搜一下这个叫xpack如何使用吧。

 就这样我又开始百度了,网上介绍的也不少,功夫不负有心人,终于被窝给搞定了。

 具体怎末做的,下面我一一道来:

首先停掉ES服务:

 

 然后在elasticsearch.yml配置文件中加上这句代码:xpack.security.enabled: true

 

 找到elasticsearch的bin文件夹:

 

 然后cmd 定位到bin文件夹,执行   ./elasticsearch-setup-passwords interactive

执行设置用户名和密码的命令,需要设置:elastic ,kibana,logstash_system,beats_system

 

 然后重启一下ES服务,重新运行一下ES,出现的用户名和密码的认证了。

 

 然后打开headmaster看看效果

 

 看上去应该没啥问题了,但是我要如何通过代码访问ES数据库呢,因为以前访问就是直接ip和端口,现在肯定时不行了,那要如何访问呢,其实很简单,不需要大改只需要对访问es数据库

的http链接稍作修改就行:

    http://ip:port/  改为  http://用户名:密码@ip:端口    就可以了。

 

posted @ 2021-12-24 15:22  代码如风~~~  阅读(1946)  评论(0编辑  收藏  举报